diff --git a/apps/extension/package.json b/apps/extension/package.json index 6ca65db9..2260f188 100644 --- a/apps/extension/package.json +++ b/apps/extension/package.json @@ -33,6 +33,7 @@ "@penumbra-zone/types": "^22.0.0", "@penumbra-zone/wasm": "^27.0.0", "@radix-ui/react-icons": "^1.3.0", + "@repo/chrome-offscreen-worker": "workspace:*", "@repo/context": "workspace:*", "@repo/ui": "workspace:*", "@tanstack/react-query": "4.36.1", @@ -49,7 +50,7 @@ "zustand": "^4.5.2" }, "devDependencies": { - "@types/chrome": "0.0.268", + "@types/chrome": "^0.0.270", "@types/firefox-webext-browser": "^120.0.3", "@types/lodash": "^4.17.4", "@types/react": "^18.3.2", diff --git a/apps/extension/public/manifest.json b/apps/extension/public/manifest.json index 44268356..98d8431a 100644 --- a/apps/extension/public/manifest.json +++ b/apps/extension/public/manifest.json @@ -32,7 +32,8 @@ "open_in_tab": true }, "background": { - "service_worker": "service-worker.js" + "service_worker": "service-worker.js", + "type": "module" }, "web_accessible_resources": [ { diff --git a/apps/extension/src/entry/offscreen-handler.ts b/apps/extension/src/entry/offscreen-handler.ts index 8c8621c2..7a9f70ca 100644 --- a/apps/extension/src/entry/offscreen-handler.ts +++ b/apps/extension/src/entry/offscreen-handler.ts @@ -1,70 +1 @@ -import { ConnectError } from '@connectrpc/connect'; -import { errorToJson } from '@connectrpc/connect/protocol-connect'; -import { - ActionBuildRequest, - ActionBuildResponse, - isActionBuildRequest, - isOffscreenRequest, -} from '@penumbra-zone/types/internal-msg/offscreen'; - -chrome.runtime.onMessage.addListener((req, _sender, respond) => { - if (!isOffscreenRequest(req)) { - return false; - } - const { type, request } = req; - if (isActionBuildRequest(request)) { - void (async () => { - try { - // propagate errors that occur in unawaited promises - const unhandled = Promise.withResolvers(); - self.addEventListener('unhandledrejection', unhandled.reject, { - once: true, - }); - - const data = await Promise.race([ - spawnActionBuildWorker(request), - unhandled.promise, - ]).finally(() => self.removeEventListener('unhandledrejection', unhandled.reject)); - - respond({ type, data }); - } catch (e) { - const error = errorToJson( - // note that any given promise rejection event probably doesn't - // actually involve the specific request it ends up responding to. - ConnectError.from(e instanceof PromiseRejectionEvent ? e.reason : e), - undefined, - ); - respond({ type, error }); - } - })(); - return true; - } - return false; -}); - -const spawnActionBuildWorker = (req: ActionBuildRequest) => { - const { promise, resolve, reject } = Promise.withResolvers(); - - const worker = new Worker(new URL('../wasm-build-action.ts', import.meta.url)); - void promise.finally(() => worker.terminate()); - - const onWorkerMessage = (e: MessageEvent) => resolve(e.data as ActionBuildResponse); - - const onWorkerError = ({ error, filename, lineno, colno, message }: ErrorEvent) => - reject( - error instanceof Error - ? error - : new Error(`Worker ErrorEvent ${filename}:${lineno}:${colno} ${message}`), - ); - - const onWorkerMessageError = (ev: MessageEvent) => reject(ConnectError.from(ev.data ?? ev)); - - worker.addEventListener('message', onWorkerMessage, { once: true }); - worker.addEventListener('error', onWorkerError, { once: true }); - worker.addEventListener('messageerror', onWorkerMessageError, { once: true }); - - // Send data to web worker - worker.postMessage(req); - - return promise; -}; +import '@repo/chrome-offscreen-worker/entry'; diff --git a/apps/extension/src/message/internal.ts b/apps/extension/src/message/internal.ts new file mode 100644 index 00000000..31d5e8b4 --- /dev/null +++ b/apps/extension/src/message/internal.ts @@ -0,0 +1,22 @@ +import type { JsonValue } from '@bufbuild/protobuf'; + +export interface InternalMessage { + type: Type; + request: Req; + response: Res; +} + +export interface InternalRequest> { + type: M['type']; + request: M['request']; +} + +export type InternalResponse> = + | { + type: M['type']; + data: M['response']; + } + | { + type: M['type']; + error: JsonValue; + }; diff --git a/apps/extension/src/message/popup.ts b/apps/extension/src/message/popup.ts index 29290e34..8bb5a777 100644 --- a/apps/extension/src/message/popup.ts +++ b/apps/extension/src/message/popup.ts @@ -1,9 +1,5 @@ import type { AuthorizeRequest } from '@penumbra-zone/protobuf/penumbra/custody/v1/custody_pb'; -import type { - InternalMessage, - InternalRequest, - InternalResponse, -} from '@penumbra-zone/types/internal-msg/shared'; +import type { InternalMessage, InternalRequest, InternalResponse } from './internal'; import type { UserChoice } from '@penumbra-zone/types/user-choice'; import type { Jsonified } from '@penumbra-zone/types/jsonified'; import { OriginRecord } from '../storage/types'; diff --git a/apps/extension/src/popup.ts b/apps/extension/src/popup.ts index f1dcd177..c12b332d 100644 --- a/apps/extension/src/popup.ts +++ b/apps/extension/src/popup.ts @@ -1,7 +1,7 @@ import { sessionExtStorage } from './storage/session'; import { PopupMessage, PopupRequest, PopupType } from './message/popup'; import { PopupPath } from './routes/popup/paths'; -import type { InternalRequest, InternalResponse } from '@penumbra-zone/types/internal-msg/shared'; +import type { InternalRequest, InternalResponse } from './message/internal'; import { Code, ConnectError } from '@connectrpc/connect'; import { errorFromJson } from '@connectrpc/connect/protocol-connect'; diff --git a/apps/extension/src/service-worker.ts b/apps/extension/src/service-worker.ts index 31af0e3a..1771428f 100644 --- a/apps/extension/src/service-worker.ts +++ b/apps/extension/src/service-worker.ts @@ -43,6 +43,11 @@ import { walletIdCtx } from '@penumbra-zone/services/ctx/wallet-id'; import { backOff } from 'exponential-backoff'; +import { OffscreenWorker } from '@repo/chrome-offscreen-worker/worker'; + +globalThis.Worker = OffscreenWorker; +OffscreenWorker.configure(new URL(chrome.runtime.getURL('offscreen.html'))); + const initHandler = async () => { const walletServices = startWalletServices(); const rpcImpls = await getRpcImpls(); diff --git a/apps/extension/src/state/origin-approval.ts b/apps/extension/src/state/origin-approval.ts index d5bc7214..05309006 100644 --- a/apps/extension/src/state/origin-approval.ts +++ b/apps/extension/src/state/origin-approval.ts @@ -2,7 +2,7 @@ import { ConnectError } from '@connectrpc/connect'; import { OriginApproval, PopupType } from '../message/popup'; import { AllSlices, SliceCreator } from '.'; import { errorToJson } from '@connectrpc/connect/protocol-connect'; -import type { InternalRequest, InternalResponse } from '@penumbra-zone/types/internal-msg/shared'; +import type { InternalRequest, InternalResponse } from '../message/internal'; import { UserChoice } from '@penumbra-zone/types/user-choice'; export interface OriginApprovalSlice { diff --git a/apps/extension/src/state/tx-approval.ts b/apps/extension/src/state/tx-approval.ts index dccce394..a2678074 100644 --- a/apps/extension/src/state/tx-approval.ts +++ b/apps/extension/src/state/tx-approval.ts @@ -8,7 +8,7 @@ import { import { viewClient } from '../clients'; import { ConnectError } from '@connectrpc/connect'; import { errorToJson } from '@connectrpc/connect/protocol-connect'; -import type { InternalRequest, InternalResponse } from '@penumbra-zone/types/internal-msg/shared'; +import type { InternalRequest, InternalResponse } from '../message/internal'; import type { Jsonified, Stringified } from '@penumbra-zone/types/jsonified'; import { UserChoice } from '@penumbra-zone/types/user-choice'; import { classifyTransaction } from '@penumbra-zone/perspective/transaction/classify'; diff --git a/apps/extension/src/wasm-build-action.ts b/apps/extension/src/wasm-build-action.ts deleted file mode 100644 index 8721dee8..00000000 --- a/apps/extension/src/wasm-build-action.ts +++ /dev/null @@ -1,73 +0,0 @@ -import { - Action, - TransactionPlan, - WitnessData, -} from '@penumbra-zone/protobuf/penumbra/core/transaction/v1/transaction_pb'; -import type { JsonValue } from '@bufbuild/protobuf'; -import type { ActionBuildRequest } from '@penumbra-zone/types/internal-msg/offscreen'; -import { FullViewingKey } from '@penumbra-zone/protobuf/penumbra/core/keys/v1/keys_pb'; - -import actionKeys from '@penumbra-zone/keys'; -const keyFileNames: Partial, URL>> = - Object.fromEntries( - Object.entries(actionKeys).map(([action, keyFile]) => [ - action, - new URL('keys/' + keyFile, PRAX_ORIGIN), - ]), - ); - -// necessary to propagate errors that occur in promises -// see: https://stackoverflow.com/questions/39992417/how-to-bubble-a-web-worker-error-in-a-promise-via-worker-onerror -self.addEventListener( - 'unhandledrejection', - event => { - // the event object has two special properties: - // event.promise - the promise that generated the error - // event.reason - the unhandled error object - throw event.reason; - }, - { once: true }, -); - -const workerListener = ({ data }: { data: ActionBuildRequest }) => { - const { - transactionPlan: transactionPlanJson, - witness: witnessJson, - fullViewingKey: fullViewingKeyJson, - actionPlanIndex, - } = data; - - // Deserialize payload - const transactionPlan = TransactionPlan.fromJson(transactionPlanJson); - const witness = WitnessData.fromJson(witnessJson); - const fullViewingKey = FullViewingKey.fromJson(fullViewingKeyJson); - - void executeWorker(transactionPlan, witness, fullViewingKey, actionPlanIndex).then( - self.postMessage, - ); -}; - -self.addEventListener('message', workerListener, { once: true }); - -async function executeWorker( - transactionPlan: TransactionPlan, - witness: WitnessData, - fullViewingKey: FullViewingKey, - actionPlanIndex: number, -): Promise { - // Dynamically load wasm module - const penumbraWasmModule = await import('@penumbra-zone/wasm/build'); - - const actionType = transactionPlan.actions[actionPlanIndex]!.action.case!; - - // Build action according to specification in `TransactionPlan` - const action = await penumbraWasmModule.buildActionParallel( - transactionPlan, - witness, - fullViewingKey, - actionPlanIndex, - keyFileNames[actionType]?.href, - ); - - return action.toJson(); -} diff --git a/apps/extension/webpack.config.ts b/apps/extension/webpack.config.ts index 8ef6b768..4464f374 100644 --- a/apps/extension/webpack.config.ts +++ b/apps/extension/webpack.config.ts @@ -17,7 +17,8 @@ import WatchExternalFilesPlugin from 'webpack-watch-external-files-plugin'; // Loads default vars from `.env` file in this directory. dotenv.config({ path: '.env' }); -const keysPackage = path.dirname(url.fileURLToPath(import.meta.resolve('@penumbra-zone/keys'))); +//const keysPackage = path.dirname(url.fileURLToPath(import.meta.resolve('@penumbra-zone/keys'))); +//const servicesPackage = path.dirname(url.fileURLToPath(import.meta.resolve('@penumbra-zone/services'))); const localPackages = [ ...Object.values(rootPackageJson.dependencies), @@ -120,24 +121,29 @@ export default ({ 'page-root': path.join(entryDir, 'page-root.tsx'), 'popup-root': path.join(entryDir, 'popup-root.tsx'), 'service-worker': path.join(srcDir, 'service-worker.ts'), - 'wasm-build-action': path.join(srcDir, 'wasm-build-action.ts'), }, output: { path: path.join(__dirname, 'dist'), filename: '[name].js', + module: true, + chunkFormat: 'module', + scriptType: 'module', }, optimization: { splitChunks: { + chunks: 'async', + + /* chunks: chunk => { const filesNotToChunk = [ 'injected-connection-port', 'injected-penumbra-global', 'injected-request-listner', 'service-worker', - 'wasm-build-action', ]; return chunk.name ? !filesNotToChunk.includes(chunk.name) : false; }, + */ }, }, module: { @@ -176,13 +182,17 @@ export default ({ filename: 'videos/[hash][ext][query]', }, }, + /* + { + test: /\.bin$/, + type: 'asset/resource', + generator: { filename: 'keys/[name][ext]' }, + }, + */ ], }, resolve: { extensions: ['.ts', '.tsx', '.js'], - alias: { - '@ui': path.resolve(__dirname, '../../packages/ui'), - }, }, plugins: [ new webpack.CleanPlugin(), @@ -197,15 +207,7 @@ export default ({ }, }), DefinePlugin, - new CopyPlugin({ - patterns: [ - 'public', - { - from: path.join(keysPackage, 'keys', '*_pk.bin'), - to: 'keys/[name][ext]', - }, - ], - }), + new CopyPlugin({ patterns: ['public'] }), // html entry points new HtmlWebpackPlugin({ favicon: 'public/favicon/icon128.png', @@ -213,6 +215,7 @@ export default ({ template: 'react-root.html', filename: 'page.html', chunks: ['page-root'], + scriptLoading: 'module', }), new HtmlWebpackPlugin({ title: 'Prax Wallet', @@ -220,11 +223,13 @@ export default ({ rootId: 'popup-root', filename: 'popup.html', chunks: ['popup-root'], + scriptLoading: 'module', }), new HtmlWebpackPlugin({ title: 'Penumbra Offscreen', filename: 'offscreen.html', chunks: ['offscreen-handler'], + scriptLoading: 'module', }), // watch tarballs for changes WEBPACK_WATCH && new WatchExternalFilesPlugin({ files: localPackages }), @@ -232,6 +237,7 @@ export default ({ CHROMIUM_PROFILE && WebExtReloadPlugin, ], experiments: { + outputModule: true, asyncWebAssembly: true, }, }); diff --git a/package.json b/package.json index ab7e2c67..208ca8cc 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "@bufbuild/protobuf": "^1.10.0", "@connectrpc/connect": "^1.4.0", "@connectrpc/connect-web": "^1.4.0", + "@tsconfig/strictest": "^2.0.5", "tsx": "^4.16.2" }, "devDependencies": { @@ -53,5 +54,58 @@ "turbo": "^2.0.12", "typescript": "^5.5.3", "vitest": "^1.6.0" + }, + "pnpm": { + "overrides": { + "@penumbra-zone/bech32m": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz", + "@penumbra-zone/client": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/client/penumbra-zone-client-18.1.0.tgz", + "@penumbra-zone/crypto-web": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz", + "@penumbra-zone/getters": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz", + "@penumbra-zone/keys": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz", + "@penumbra-zone/perspective": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz", + "@penumbra-zone/protobuf": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz", + "@penumbra-zone/query": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz", + "@penumbra-zone/services": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/services/penumbra-zone-services-33.0.0.tgz", + "@penumbra-zone/storage": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz", + "@penumbra-zone/transport-chrome": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-chrome/penumbra-zone-transport-chrome-8.0.1.tgz", + "@penumbra-zone/transport-dom": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz", + "@penumbra-zone/types": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz", + "@penumbra-zone/ui": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/ui/penumbra-zone-ui-9.1.0.tgz", + "@penumbra-zone/wasm": "file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz" + }, + "peerDependencyRules": { + "allowAny": [ + "@penumbra-zone/bech32m", + "@penumbra-zone/client", + "@penumbra-zone/crypto-web", + "@penumbra-zone/getters", + "@penumbra-zone/keys", + "@penumbra-zone/perspective", + "@penumbra-zone/protobuf", + "@penumbra-zone/query", + "@penumbra-zone/services", + "@penumbra-zone/storage", + "@penumbra-zone/transport-chrome", + "@penumbra-zone/transport-dom", + "@penumbra-zone/types", + "@penumbra-zone/ui", + "@penumbra-zone/wasm", + "@penumbra-zone/bech32m", + "@penumbra-zone/client", + "@penumbra-zone/crypto-web", + "@penumbra-zone/getters", + "@penumbra-zone/keys", + "@penumbra-zone/perspective", + "@penumbra-zone/protobuf", + "@penumbra-zone/query", + "@penumbra-zone/services", + "@penumbra-zone/storage", + "@penumbra-zone/transport-chrome", + "@penumbra-zone/transport-dom", + "@penumbra-zone/types", + "@penumbra-zone/ui", + "@penumbra-zone/wasm" + ] + } } } diff --git a/packages/chrome-offscreen-worker/eslint.config.mjs b/packages/chrome-offscreen-worker/eslint.config.mjs new file mode 100644 index 00000000..b574d1d9 --- /dev/null +++ b/packages/chrome-offscreen-worker/eslint.config.mjs @@ -0,0 +1,13 @@ +import { penumbraEslintConfig } from '@repo/eslint-config'; +import { config, parser } from 'typescript-eslint'; + +export default config( + { + ...penumbraEslintConfig, + languageOptions: { + parser, + parserOptions: { project: true, tsconfigRootDir: import.meta.dirname }, + }, + }, + { rules: { '@typescript-eslint/no-unnecessary-type-arguments': 'off' } }, +); diff --git a/packages/chrome-offscreen-worker/package.json b/packages/chrome-offscreen-worker/package.json new file mode 100644 index 00000000..6cf28991 --- /dev/null +++ b/packages/chrome-offscreen-worker/package.json @@ -0,0 +1,16 @@ +{ + "name": "@repo/chrome-offscreen-worker", + "version": "0.0.0", + "type": "module", + "private": true, + "scripts": { + "lint": "eslint src" + }, + "exports": { + "./worker": "./src/worker.ts", + "./entry": "./src/entry.ts" + }, + "devDependencies": { + "@types/chrome": "^0.0.270" + } +} diff --git a/packages/chrome-offscreen-worker/src/controller.ts b/packages/chrome-offscreen-worker/src/controller.ts new file mode 100644 index 00000000..3a59a378 --- /dev/null +++ b/packages/chrome-offscreen-worker/src/controller.ts @@ -0,0 +1,136 @@ +/// + +import { OffscreenControl } from './messages/offscreen-control.js'; +import { WorkerConstructorParamsPrimitive } from './messages/primitive.js'; + +export class OffscreenController { + private sessionPort?: Promise; + private sessionId = crypto.randomUUID(); + private workers = new Map(); + + private offscreenPath: string; + + private activeWorkers = 0; + + private justification = + 'Manages workers for parallelizing heavy computation outside of the service worker thread'; + + /** + * This class manages the offscreen document and worker connections. Your + * offscreen document should use the `entry` export of this package, a + * side-effectful module which attaches listeners and manages the actual + * workers. + * + * @param offscreenUrl a fully-qualified URL to your offscreen document, as output by `chrome.runtime.getURL` + * @param timeout wait for the offscreen document to connect to this controller, upon first worker init (10s default) + */ + constructor( + offscreen: URL, + private timeout = 10_000, + ) { + if ( + offscreen.hash !== '' || + offscreen.protocol !== 'chrome-extension:' || + offscreen.host !== chrome.runtime.id || + offscreen.origin !== origin || + !offscreen.href.startsWith(chrome.runtime.getURL('/')) + ) { + throw new Error('Invalid offscreen path'); + } + this.offscreenPath = offscreen.href; + } + + private async activateOffscreen() { + const noOffscreen = chrome.runtime + .getContexts({ + contextTypes: [chrome.runtime.ContextType.OFFSCREEN_DOCUMENT], + }) + .then(offscreenContexts => !offscreenContexts.length); + + if (!this.activeWorkers || (await noOffscreen)) { + await chrome.offscreen + .createDocument({ + url: new URL(`#${this.sessionId}`, this.offscreenPath).href, + reasons: [chrome.offscreen.Reason.WORKERS], + justification: this.justification, + }) + .catch((e: unknown) => { + // the offscreen window might have been created since we checked + console.warn('Failed to create offscreen window', e); + }); + } + } + + private async releaseOffscreen() { + if (!this.activeWorkers) { + this.sessionPort = undefined; + await chrome.offscreen.closeDocument(); + } + } + + private async createOffscreen(): Promise { + this.sessionPort ??= this.activateOffscreen().then(() => { + const offscreenPort = chrome.runtime.connect({ name: this.sessionId }); + + offscreenPort.onDisconnect.addListener(() => { + void this.releaseOffscreen(); + this.workers.forEach(p => p.disconnect()); + this.workers.clear(); + }); + + return offscreenPort; + }); + + return this.sessionPort; + } + + public async constructWorker( + ...init: WorkerConstructorParamsPrimitive + ): Promise { + this.activeWorkers++; + const session = this.createOffscreen(); + + const workerId = crypto.randomUUID(); + + const newWorker: OffscreenControl<'new-Worker'> = { + control: 'new-Worker', + data: { workerId, init }, + }; + + const { + promise: workerConnection, + resolve: resolveConnection, + reject: rejectConnection, + } = Promise.withResolvers(); + + const workerConnect = (port: chrome.runtime.Port): void => { + if (port.name === workerId) { + resolveConnection(port); + chrome.runtime.onConnect.removeListener(workerConnect); + } + }; + + AbortSignal.timeout(this.timeout).onabort = function (this: AbortSignal) { + rejectConnection(this.reason); + chrome.runtime.onConnect.removeListener(workerConnect); + }; + + chrome.runtime.onConnect.addListener(workerConnect); + + (await session).postMessage(newWorker); + + void workerConnection.then(workerPort => { + this.workers.set(workerId, workerPort); + + workerPort.onDisconnect.addListener(() => { + this.activeWorkers--; + this.workers.delete(workerId); + if (!this.activeWorkers) { + void session.then(p => p.disconnect()); + } + }); + }); + + return workerConnection; + } +} diff --git a/packages/chrome-offscreen-worker/src/entry.ts b/packages/chrome-offscreen-worker/src/entry.ts new file mode 100644 index 00000000..e94befd3 --- /dev/null +++ b/packages/chrome-offscreen-worker/src/entry.ts @@ -0,0 +1,130 @@ +import { isOffscreenControl, validOffscreenControlData } from './messages/offscreen-control'; +import { isWorkerEvent, validWorkerEventInit, WorkerEvent } from './messages/worker-event'; +import { toErrorEventInit, toMessageEventInit } from './to-init'; + +declare global { + // eslint-disable-next-line no-var + var __DEV__: boolean | undefined; +} + +let unalive = setTimeout(() => window.close(), 60_000); + +const contemplate = (...reason: unknown[]) => { + if (globalThis.__DEV__) { + console.log('offscreen contemplating', ...reason); + } + unalive = setTimeout(() => window.close(), 60_000); +}; + +const persist = (...reason: unknown[]) => { + if (globalThis.__DEV__) { + console.log('offscreen persisting', ...reason); + } + clearTimeout(unalive); +}; + +const sessionId = location.hash.slice(1); + +chrome.runtime.onConnect.addListener(newSessionPort => { + if (newSessionPort.name === sessionId) { + persist('new session', sessionId); + attachSession(newSessionPort); + } +}); + +const constructWorker = ({ + workerId, + init, +}: { + workerId: string; + init: Required>; +}) => { + persist(); + console.log('constructWorker', workerId, ...init); + const [workerUrl, workerOptions] = init; + const worker = new Worker(workerUrl, { + ...workerOptions, + name: workerOptions.name ?? workerId, + }); + const caller = chrome.runtime.connect({ name: workerId }); + + worker.addEventListener('error', event => { + console.log('-- worker output error ', event); + const json: WorkerEvent<'error'> = ['error', toErrorEventInit(event)]; + caller.postMessage(json); + }); + + worker.addEventListener('messageerror', event => { + console.log('-- worker output messageerror ', event); + const json: WorkerEvent<'messageerror'> = ['messageerror', toMessageEventInit(event)]; + caller.postMessage(json); + }); + + worker.addEventListener('message', event => { + console.log('-- worker output message ', event); + const json: WorkerEvent<'message'> = ['message', toMessageEventInit(event)]; + caller.postMessage(json); + }); + + // setup disconnect handler + caller.onDisconnect.addListener(() => { + console.log('entry workerPort onDisconnect', workerId); + worker.terminate(); + }); + + // begin event dispatch + caller.onMessage.addListener((json: unknown) => { + console.log('entry callerInputListener', json, workerId); + if (isWorkerEvent(json)) { + const [event, init] = json; + switch (event) { + case 'message': { + const { data } = validWorkerEventInit('message', init); + worker.postMessage(data); + return; + } + default: + throw new Error('Unexpected event from caller', { + cause: { json, workerId }, + }); + } + } + }); + + return { workerId, caller }; +}; + +const attachSession = (sessionPort: chrome.runtime.Port) => { + console.log('attachSession', sessionPort.name); + const workers = new Map(); + + sessionPort.onMessage.addListener((json: unknown) => { + console.log('entry control', json, sessionId); + if (isOffscreenControl(json)) { + switch (json.control) { + case 'new-Worker': { + const { workerId, caller } = constructWorker( + validOffscreenControlData('new-Worker', json), + ); + workers.set(workerId, caller); + caller.onDisconnect.addListener(() => { + workers.delete(workerId); + if (!workers.size) { + contemplate('no workers'); + } + }); + return; + } + default: + throw new Error('Unknown message in offscreen control', { + cause: { message: json }, + }); + } + } + }); + + sessionPort.onDisconnect.addListener(() => { + contemplate('session disconnect'); + workers.forEach(caller => caller.disconnect()); + }); +}; diff --git a/packages/chrome-offscreen-worker/src/messages/offscreen-control.ts b/packages/chrome-offscreen-worker/src/messages/offscreen-control.ts new file mode 100644 index 00000000..fa93535a --- /dev/null +++ b/packages/chrome-offscreen-worker/src/messages/offscreen-control.ts @@ -0,0 +1,87 @@ +/* These messages appear only in the single offscreen root control channel. */ + +import { WorkerConstructorParamsPrimitive } from './primitive'; + +interface OffscreenControlMap { + 'new-Worker': { + workerId: string; + init: WorkerConstructorParamsPrimitive; + }; +} + +export type OffscreenControlType = keyof OffscreenControlMap; + +export interface OffscreenControl { + control: T; + data: T extends OffscreenControlType ? OffscreenControlMap[T] : unknown; +} + +export const isOffscreenControl = (message: unknown): message is OffscreenControl => + typeof message === 'object' && + message != null && + 'control' in message && + typeof message.control === 'string' && + 'data' in message && + typeof message.data === 'object' && + message.data != null; + +export const hasValidOffscreenControlData = (message: { + control: T | string; + data: unknown; +}): message is OffscreenControl => { + if (typeof message.data !== 'object' || message.data == null) { + return false; + } + + const { control, data } = message; + switch (control) { + case 'new-Worker': + return isNewWorkerControlData(data); + default: + return false; + } +}; + +export const validOffscreenControlData = ( + type: T, + message: OffscreenControl, +): OffscreenControl['data'] => { + if (message.control !== type || !hasValidOffscreenControlData(message)) { + throw new TypeError('invalid OffscreenRootControl'); + } + return message.data; +}; + +const isNewWorkerControlData = (data: object): data is OffscreenControlMap['new-Worker'] => + 'workerId' in data && + typeof data.workerId === 'string' && + 'init' in data && + Array.isArray(data.init) && + isNewWorkerConstructorParams(data.init); + +const isNewWorkerConstructorParams = (init: unknown): init is WorkerConstructorParamsPrimitive => { + if (Array.isArray(init) && init.length === 2) { + const [scriptURL, options] = init as [unknown, unknown]; + return ( + typeof scriptURL === 'string' && + options != null && + typeof options === 'object' && + isNewWorkerOptions(options) + ); + } + return false; +}; + +const isNewWorkerOptions = (opt: NonNullable): opt is WorkerOptions => + Object.entries(opt).every(([key, value]) => { + switch (key as keyof WorkerOptions) { + case 'credentials': + return value == null || ['include', 'omit', 'same-origin'].includes(value as string); + case 'name': + return value == null || typeof value === 'string'; + case 'type': + return value == null || ['classic', 'module'].includes(value as string); + default: + return false; + } + }); diff --git a/packages/chrome-offscreen-worker/src/messages/primitive.ts b/packages/chrome-offscreen-worker/src/messages/primitive.ts new file mode 100644 index 00000000..a2225ddc --- /dev/null +++ b/packages/chrome-offscreen-worker/src/messages/primitive.ts @@ -0,0 +1,46 @@ +export type WorkerConstructorParamsPrimitive = + Required> extends [infer S, infer O] + ? [S extends string ? S : never, { [k in keyof O]: O[k] & string }] + : never; + +export type ErrorEventInitPrimitive = Pick< + ErrorEventInit, + 'colno' | 'filename' | 'lineno' | 'message' +> & { error?: JsonObject }; + +export type MessageEventInitPrimitive = Pick, 'data'>; + +export const isMessageEventInitPrimitive = (i: object): i is MessageEventInitPrimitive => + 'data' in i && isJsonObject(i.data); + +export const isErrorEventInitPrimitive = (i: object): i is ErrorEventInitPrimitive => { + const { message, filename, lineno, colno, error } = { ...i } as Record; + return ( + (message == null || typeof message === 'string') && + (filename == null || typeof filename === 'string') && + (lineno == null || typeof lineno === 'number') && + (colno == null || typeof colno === 'number') && + (error == null || isJsonObject(error)) + ); +}; + +type JsonPrimitive = number | string | boolean | null; +// eslint-disable-next-line @typescript-eslint/consistent-type-definitions, @typescript-eslint/consistent-indexed-object-style +type JsonObject = { [k: string]: JsonValue }; +type JsonArray = JsonValue[]; +type JsonValue = JsonPrimitive | JsonObject | JsonArray; + +const isJsonPrimitive = (value: unknown): value is JsonPrimitive => + value == null || ['number', 'string', 'boolean'].includes(typeof value); + +const isJsonArray = (value: unknown): value is JsonValue[] => + Array.isArray(value) && value.every(isJsonValue); + +const isJsonValue = (value: unknown): value is JsonValue => + isJsonPrimitive(value) || isJsonObject(value) || isJsonArray(value); + +const isJsonObject = (obj: unknown): obj is JsonObject => + obj != null && + typeof obj === 'object' && + !Array.isArray(obj) && + Object.entries(obj).every(([key, value]) => typeof key === 'string' && isJsonValue(value)); diff --git a/packages/chrome-offscreen-worker/src/messages/worker-event.ts b/packages/chrome-offscreen-worker/src/messages/worker-event.ts new file mode 100644 index 00000000..1a8d8ef0 --- /dev/null +++ b/packages/chrome-offscreen-worker/src/messages/worker-event.ts @@ -0,0 +1,53 @@ +/* These messages appear only in the individual offscreen worker control channels. */ + +import { isErrorEventInitPrimitive, isMessageEventInitPrimitive } from './primitive'; + +interface WorkerEventInitMap extends Required> { + error: ErrorEventInit; + message: MessageEventInit; + messageerror: MessageEventInit; +} + +export type WorkerEventType = keyof WorkerEventMap; + +export type WorkerEvent = [ + T, + T extends WorkerEventType ? WorkerEventInitMap[T] : unknown, +]; + +export const isWorkerEvent = (message: unknown): message is WorkerEvent => { + if (Array.isArray(message) && message.length === 2) { + const [event, init] = message as [unknown, unknown]; + return typeof event === 'string' && typeof init === 'object' && init != null; + } + return false; +}; + +export const hasValidWorkerEventInit = ( + params: WorkerEvent, +): params is WorkerEvent => { + const [event, init] = params; + if (typeof init !== 'object' || init == null) { + return false; + } + switch (event) { + case 'error': + return isErrorEventInitPrimitive(init); + case 'message': + case 'messageerror': + return isMessageEventInitPrimitive(init); + default: + return false; + } +}; + +export const validWorkerEventInit = ( + event: T, + init: unknown, +): WorkerEvent[1] => { + const message = [event, init] satisfies WorkerEvent; + if (!hasValidWorkerEventInit(message)) { + throw new TypeError('invalid WorkerEvent'); + } + return message[1]; +}; diff --git a/packages/chrome-offscreen-worker/src/to-init.ts b/packages/chrome-offscreen-worker/src/to-init.ts new file mode 100644 index 00000000..654ef11d --- /dev/null +++ b/packages/chrome-offscreen-worker/src/to-init.ts @@ -0,0 +1,10 @@ +export const toMessageEventInit = ({ data }: MessageEvent): MessageEventInit => ({ + data: JSON.parse(JSON.stringify(data)) as unknown, +}); + +export const toErrorEventInit = ({ + message, + filename, + lineno, + colno, +}: ErrorEvent): ErrorEventInit => ({ message, filename, lineno, colno /*, error,*/ }); diff --git a/packages/chrome-offscreen-worker/src/worker.ts b/packages/chrome-offscreen-worker/src/worker.ts new file mode 100644 index 00000000..7677b57a --- /dev/null +++ b/packages/chrome-offscreen-worker/src/worker.ts @@ -0,0 +1,123 @@ +import { OffscreenController } from './controller'; +import type { WorkerConstructorParamsPrimitive } from './messages/primitive'; +import { isWorkerEvent, validWorkerEventInit, WorkerEvent } from './messages/worker-event'; + +export class OffscreenWorker extends EventTarget implements Worker { + private static control?: OffscreenController; + + public static configure(...params: ConstructorParameters) { + OffscreenWorker.control = new OffscreenController(...params); + } + + private params: WorkerConstructorParamsPrimitive; + + private worker: Promise; + + // user-assignable callback properties + onerror: Worker['onerror'] = null; + onmessage: Worker['onmessage'] = null; + onmessageerror: Worker['onmessageerror'] = null; + + constructor(...[scriptURL, options]: ConstructorParameters) { + if (!OffscreenWorker.control) { + throw new Error( + 'The static configure method must be called before constructing an instance of this class.', + ); + } + + console.log('offscreen worker super'); + super(); + + this.params = [ + String(scriptURL), + { name: `${this.constructor.name} ${Date.now()} ${String(scriptURL)}`, ...options }, + ]; + + console.log('calling offscreen worker construct', this.params[1].name); + this.worker = OffscreenWorker.control.constructWorker(...this.params); + + void this.worker + .then( + workerPort => { + console.log('got worker port', this.params[1].name); + workerPort.onMessage.addListener((...params) => { + console.log('activated worker output listener in background', ...params); + this.workerDispatch(...params); + }); + }, + (error: unknown) => { + this.dispatchEvent(new ErrorEvent('error', { error })); + throw new Error('Failed to attach worker port', { cause: error }); + }, + ) + .finally(() => { + console.log('worker promise settled', this.params[1].name, this.worker); + }); + + console.log('exit constructor'); + } + + private workerDispatch = (...[json]: [unknown, chrome.runtime.Port]) => { + console.debug('worker output', json); + if (isWorkerEvent(json)) { + const [event, init] = json; + switch (event) { + case 'error': { + const { colno, filename, lineno, message } = validWorkerEventInit(event, init); + const dispatch = new ErrorEvent(event, { colno, filename, lineno, message }); + this.dispatchEvent(dispatch); + this.onerror?.(dispatch); + break; + } + case 'message': + case 'messageerror': { + const { data } = validWorkerEventInit(event, init); + const dispatch = new MessageEvent(event, { data }); + this.dispatchEvent(dispatch); + this[`on${event}`]?.(dispatch); + break; + } + default: + throw new Error('Unknown event from worker', { cause: json }); + } + } + }; + + private callerDispatch = (evt: Event) => { + console.debug('worker callerInputListener', evt.type); + switch (evt.type) { + case 'message': { + const { data } = evt as MessageEvent; + const workerEventMessage: WorkerEvent<'message'> = ['message', { data }]; + void this.worker.then(port => port.postMessage(workerEventMessage)); + return; + } + case 'error': + case 'messageerror': + throw new Error('Unexpected event from caller', { cause: evt }); + default: + throw new Error('Unknown event from caller', { cause: evt }); + } + }; + + terminate: Worker['terminate'] = () => { + console.warn('worker terminate', this.params[1].name); + void this.worker.then(port => port.disconnect()); + this.postMessage = () => void 0; + }; + + postMessage: Worker['postMessage'] = (...args) => { + console.debug('worker postMessage', this.params[1].name, args); + // typescript doesn't handle the overloaded signature very well + const data: unknown = args[0]; + + const { transfer } = Array.isArray(args[1]) ? { transfer: args[1] } : { ...args[1] }; + if (transfer?.length) { + throw new Error('Transferable unimplemented', { cause: args }); + } + + const messageEvent = new MessageEvent('message', { data }); + + this.callerDispatch(messageEvent); + }; +} diff --git a/packages/chrome-offscreen-worker/tsconfig.json b/packages/chrome-offscreen-worker/tsconfig.json new file mode 100644 index 00000000..bd1eae5d --- /dev/null +++ b/packages/chrome-offscreen-worker/tsconfig.json @@ -0,0 +1,12 @@ +{ + "compilerOptions": { + "exactOptionalPropertyTypes": false, + "composite": true, + "outDir": "dist", + "preserveWatchOutput": true, + "rootDir": "src", + "target": "ESNext" + }, + "extends": "@tsconfig/strictest/tsconfig.json", + "include": ["src"] +} diff --git a/packages/chrome-offscreen-worker/tsconfig.tsbuildinfo b/packages/chrome-offscreen-worker/tsconfig.tsbuildinfo new file mode 100644 index 00000000..2358592f --- /dev/null +++ b/packages/chrome-offscreen-worker/tsconfig.tsbuildinfo @@ -0,0 +1 @@ +{"program":{"fileNames":["../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.scripthost.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.string.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.promise.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.object.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.regexp.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../node_modules/.pnpm/typescript@5.5.4/node_modules/typescript/lib/lib.esnext.full.d.ts","./src/messages/offscreen-control.ts","./src/messages/offscreen-worker.ts","./src/entry.ts","../../node_modules/.pnpm/@types+har-format@1.2.15/node_modules/@types/har-format/index.d.ts","../../node_modules/.pnpm/@types+chrome@0.0.270/node_modules/@types/chrome/har-format/index.d.ts","../../node_modules/.pnpm/@types+chrome@0.0.270/node_modules/@types/chrome/chrome-cast/index.d.ts","../../node_modules/.pnpm/@types+filewriter@0.0.33/node_modules/@types/filewriter/index.d.ts","../../node_modules/.pnpm/@types+filesystem@0.0.36/node_modules/@types/filesystem/index.d.ts","../../node_modules/.pnpm/@types+chrome@0.0.270/node_modules/@types/chrome/index.d.ts","./src/offscreen-control.ts","./src/offscreen-worker.ts","./src/index.ts","../../node_modules/.pnpm/@types+estree@1.0.5/node_modules/@types/estree/index.d.ts","../../node_modules/.pnpm/@types+json-schema@7.0.15/node_modules/@types/json-schema/index.d.ts","../../node_modules/.pnpm/@types+eslint@9.6.1/node_modules/@types/eslint/use-at-your-own-risk.d.ts","../../node_modules/.pnpm/@types+eslint@9.6.1/node_modules/@types/eslint/index.d.ts","../../node_modules/.pnpm/@types+eslint@9.6.0/node_modules/@types/eslint/use-at-your-own-risk.d.ts","../../node_modules/.pnpm/@types+eslint@9.6.0/node_modules/@types/eslint/index.d.ts","../../node_modules/.pnpm/@types+eslint-scope@3.7.7/node_modules/@types/eslint-scope/index.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/assert.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/assert/strict.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/worker_threads.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/globals.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/async_hooks.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/buffer.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/child_process.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/cluster.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/console.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/constants.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/crypto.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/dgram.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/dns.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/dns/promises.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/domain.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/events.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/dom-events.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/fs.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/fs/promises.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/http.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/http2.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/https.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/inspector.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/module.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/net.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/os.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/path.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/perf_hooks.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/process.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/punycode.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/querystring.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/readline.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/readline/promises.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/repl.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/sea.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/stream.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/stream/promises.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/stream/consumers.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/stream/web.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/string_decoder.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/test.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/timers.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/timers/promises.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/tls.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/trace_events.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/tty.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/url.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/util.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/v8.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/vm.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/wasi.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/zlib.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/globals.global.d.ts","../../node_modules/.pnpm/@types+node@20.14.13/node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","17edc026abf73c5c2dd508652d63f68ec4efd9d4856e3469890d27598209feb5",{"version":"4af6b0c727b7a2896463d512fafd23634229adf69ac7c00e2ae15a09cb084fad","affectsGlobalScope":true},{"version":"9c00a480825408b6a24c63c1b71362232927247595d7c97659bc24dc68ae0757","affectsGlobalScope":true},{"version":"0c9e4447ddca10e8097a736ce41bb37ac3389ede46e419ee78c1161a14e9e8ba","affectsGlobalScope":true},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true},{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true},{"version":"ae37d6ccd1560b0203ab88d46987393adaaa78c919e51acf32fb82c86502e98c","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"479553e3779be7d4f68e9f40cdb82d038e5ef7592010100410723ceced22a0f7","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true},{"version":"d3d7b04b45033f57351c8434f60b6be1ea71a2dfec2d0a0c3c83badbb0e3e693","affectsGlobalScope":true},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true},{"version":"d8670852241d4c6e03f2b89d67497a4bbefe29ecaa5a444e2c11a9b05e6fccc6","affectsGlobalScope":true},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true},{"version":"9d540251809289a05349b70ab5f4b7b99f922af66ab3c39ba56a475dcf95d5ff","affectsGlobalScope":true},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true},{"version":"0b11f3ca66aa33124202c80b70cd203219c3d4460cfc165e0707aa9ec710fc53","affectsGlobalScope":true},{"version":"6a3f5a0129cc80cf439ab71164334d649b47059a4f5afca90282362407d0c87f","affectsGlobalScope":true},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true},{"version":"15b98a533864d324e5f57cd3cfc0579b231df58c1c0f6063ea0fcb13c3c74ff9","affectsGlobalScope":true},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},"bde31fd423cd93b0eff97197a3f66df7c93e8c0c335cbeb113b7ff1ac35c23f4",{"version":"79a0083f0faf66b900c7b065913a48489dc25622b16bdf92aeaec69354b4b0f1","signature":"6fffd16ea8c8fdc1056608ae8711ad063b7b5dde759ac3aaf7ce8ab1f91238ee"},{"version":"6c6e8de321cbc174bdaee9c2e70733e8428586f9bbe86a69d7b440b0ee0d0e49","signature":"786d93058bc81517afab7c5fdd5a932d1e90555404dc0d388b5454a36b417df0"},{"version":"d77088cc7fdb9cc2625f1fa96f06376938de084b88178bfbec756ec8944dad7f","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},"9e4b070b543d91d0b321a481e1119e99bb8f136f4ef271d7b5ba264919fc32e2",{"version":"5f877dfc985d1fd3ac8bf4a75cd77b06c42ca608809b324c44b4151758de7189","affectsGlobalScope":true},{"version":"9698d9513bbce8e33fded9b396243b917cd7544ab192c9ebaadce5ea298c31e9","affectsGlobalScope":true},{"version":"14c2fd6220654a41c53836a62ba96d4b515ae1413b0ccb31c2445fb1ae1de5de","affectsGlobalScope":true},{"version":"4f29c38739500cd35a2ce41d15a35e34445ca755ebb991915b5f170985a49d21","affectsGlobalScope":true},{"version":"28a75fde5e1e614a6a35a33b75251fc7d2bd102d19c3ea8e8032b9964f28b8d4","affectsGlobalScope":true},{"version":"d7e7abc00143c954e063cd8366143aabc86806444a784365d545627e10479869","signature":"cef689a3a56f87b1fe6291417d6de9d486cfb817123877b436cd8f450f2dedc8"},{"version":"174a098650c007f21db8f303e8405929e5681f435a3040734fb8212cdc3c800b","signature":"3186f4bef78bbd28e306c597e63980676cda95b925037e24e6d3ae6722aa0482"},"bef9481966e3b1cdfe9013d847bb47dab419e03b683e657b8b5cc609c674cb07","ee7d8894904b465b072be0d2e4b45cf6b887cdba16a467645c4e200982ece7ea","f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","a4a39b5714adfcadd3bbea6698ca2e942606d833bde62ad5fb6ec55f5e438ff8","bbc1d029093135d7d9bfa4b38cbf8761db505026cc458b5e9c8b74f4000e5e75","a4a39b5714adfcadd3bbea6698ca2e942606d833bde62ad5fb6ec55f5e438ff8","bbc1d029093135d7d9bfa4b38cbf8761db505026cc458b5e9c8b74f4000e5e75","1f68ab0e055994eb337b67aa87d2a15e0200951e9664959b3866ee6f6b11a0fe","2db0dd3aaa2ed285950273ce96ae8a450b45423aa9da2d10e194570f1233fa6b","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419",{"version":"8704423bf338bff381ebc951ed819935d0252d90cd6de7dffe5b0a5debb65d07","affectsGlobalScope":true},{"version":"e7be367719c613d580d4b27fdf8fe64c9736f48217f4b322c0d63b2971460918","affectsGlobalScope":true},"3d77c73be94570813f8cadd1f05ebc3dc5e2e4fdefe4d340ca20cd018724ee36",{"version":"dd78bfe9dfcadb2c4cd3a3a36df38fb3ef8ed2c601b57f6ad9a29e38a17ff39c","affectsGlobalScope":true},"62f1c00d3d246e0e3cf0224f91e122d560428ec1ccc36bb51d4574a84f1dbad0","53f0960fdcc53d097918adfd8861ffbe0db989c56ffc16c052197bf115da5ed6",{"version":"662163e5327f260b23ca0a1a1ad8a74078aabb587c904fcb5ef518986987eaff","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"f85c06e750743acf31f0cfd3be284a364d469761649e29547d0dd6be48875150","affectsGlobalScope":true},"b0c0d1d13be149f790a75b381b413490f98558649428bb916fd2d71a3f47a134","3c884d9d9ec454bdf0d5a0b8465bf8297d2caa4d853851d92cc417ac6f30b969","0364f8bb461d6e84252412d4e5590feda4eb582f77d47f7a024a7a9ff105dfdc","5433f7f77cd1fd53f45bd82445a4e437b2f6a72a32070e907530a4fea56c30c8","d0ca5d7df114035258a9d01165be309371fcccf0cccd9d57b1453204686d1ed0",{"version":"9a30b7fefd7f8abbca4828d481c61c18e40fe5ff107e113b1c1fcd2c8dcf2743","affectsGlobalScope":true},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},"173b6275a81ebdb283b180654890f46516c21199734fed01a773b1c168b8c45c","304f66274aa8119e8d65a49b1cff84cbf803def6afe1b2cc987386e9a9890e22","1b9adafe8a7fefaeaf9099a0e06f602903f6268438147b843a33a5233ac71745","98273274f2dbb79b0b2009b20f74eca4a7146a3447c912d580cd5d2d94a7ae30","c933f7ba4b201c98b14275fd11a14abb950178afd2074703250fe3654fc10cd2","2eaa31492906bc8525aff3c3ec2236e22d90b0dfeee77089f196cd0adf0b3e3b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"8f5814f29dbaf8bacd1764aebdf1c8a6eb86381f6a188ddbac0fcbaab855ce52","a63d03de72adfb91777784015bd3b4125abd2f5ef867fc5a13920b5649e8f52b","d20e003f3d518a7c1f749dbe27c6ab5e3be7b3c905a48361b04a9557de4a6900",{"version":"1d4d78c8b23c9ddaaaa49485e6adc2ec01086dfe5d8d4d36ca4cdc98d2f7e74a","affectsGlobalScope":true},{"version":"44fc16356b81c0463cc7d7b2b35dcf324d8144136f5bc5ce73ced86f2b3475b5","affectsGlobalScope":true},"575fb200043b11b464db8e42cc64379c5fd322b6d787638e005b5ee98a64486d","6de2f225d942562733e231a695534b30039bdf1875b377bb7255881f0df8ede8","56249fd3ef1f6b90888e606f4ea648c43978ef43a7263aafad64f8d83cd3b8aa","139ad1dc93a503da85b7a0d5f615bddbae61ad796bc68fedd049150db67a1e26","7b166975fdbd3b37afb64707b98bca88e46577bbc6c59871f9383a7df2daacd1","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","81505c54d7cad0009352eaa21bd923ab7cdee7ec3405357a54d9a5da033a2084","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","3c1f19c7abcda6b3a4cf9438a15c7307a080bd3b51dfd56b198d9f86baf19447","2ee1645e0df9d84467cfe1d67b0ad3003c2f387de55874d565094464ee6f2927",{"version":"e16081076d61fffc090be049c493cc563148f9e88d94fe953659773e05ff8b9d","affectsGlobalScope":true},{"version":"9cf780e96b687e4bdfd1907ed26a688c18b89797490a00598fa8b8ab683335dd","affectsGlobalScope":true},"98e00f3613402504bc2a2c9a621800ab48e0a463d1eed062208a4ae98ad8f84c","9ae88ce9f73446c24b2d2452e993b676da1b31fca5ceb7276e7f36279f693ed1","e49d7625faff2a7842e4e7b9b197f972633fca685afcf6b4403400c97d087c36","b82c38abc53922b1b3670c3af6f333c21b735722a8f156e7d357a2da7c53a0a0",{"version":"b423f53647708043299ded4daa68d95c967a2ac30aa1437adc4442129d7d0a6c","affectsGlobalScope":true},{"version":"7245af181218216bacb01fbdf51095617a51661f20d77178c69a377e16fb69ed","affectsGlobalScope":true},"4f0fc7b7f54422bd97cfaf558ddb4bca86893839367b746a8f86b60ac7619673","4cdd8b6b51599180a387cc7c1c50f49eca5ce06595d781638fd0216520d98246","d91a7d8b5655c42986f1bdfe2105c4408f472831c8f20cf11a8c3345b6b56c8c","7c6929fd7cbf38499b6a600b91c3b603d1d78395046dc3499b2b92d01418b94b",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc"],"root":[[78,80],[87,89]],"options":{"allowUnreachableCode":false,"allowUnusedLabels":false,"checkJs":true,"composite":true,"esModuleInterop":true,"exactOptionalPropertyTypes":false,"noFallthroughCasesInSwitch":true,"noImplicitOverride":true,"noImplicitReturns":true,"noPropertyAccessFromIndexSignature":true,"noUncheckedIndexedAccess":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"strict":true,"target":99},"fileIdsList":[[81],[82,83,85],[90,95],[90,91,94],[95],[90,91,92],[93],[84],[97],[101],[102,107,136],[103,108,113,115,122,133,144],[103,104,113,122],[105,145],[106,107,115,123],[107,133,141],[108,110,113,122],[101,109],[110,111],[113],[112,113],[101,113],[113,115,116,133,144],[113,115,116,129,133,136],[99,102],[110,113,117,122,133,144],[113,115,117,118,122,133,141,144],[117,119,133,141,144],[97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150],[113,120],[99,121,144],[110,113,122,133],[123],[124],[101,125],[99,122,123,126,143],[127],[128],[113,129,130],[129,131,145,147],[102,113,133,134,135,136],[102,133,135],[133,134],[136],[137],[101,133],[113,139,140],[139,140],[107,122,133,141],[142],[122,143],[102,117,128,144],[107,145],[133,146],[121,147],[148],[99,102,107,113,116,125,133,144,147],[133,149],[78,79],[88],[78,79,86],[78,79,87]],"referencedMap":[[82,1],[86,2],[96,3],[95,4],[94,5],[93,6],[92,7],[85,8],[97,9],[98,9],[101,10],[102,11],[103,12],[104,13],[105,14],[106,15],[107,16],[108,17],[109,18],[110,19],[111,19],[114,20],[112,21],[113,22],[115,23],[116,24],[100,25],[117,26],[118,27],[119,28],[151,29],[120,30],[121,31],[122,32],[123,33],[124,34],[125,35],[126,36],[127,37],[128,38],[129,39],[130,39],[131,40],[133,41],[135,42],[134,43],[136,44],[137,45],[138,46],[139,47],[140,48],[141,49],[142,50],[143,51],[144,52],[145,53],[146,54],[147,55],[148,56],[99,57],[149,58],[80,59],[89,60],[87,61],[88,62]],"latestChangedDtsFile":"./dist/index.d.ts"},"version":"5.5.4"} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fa1e5cb1..9bb1df88 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,6 +4,23 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +overrides: + '@penumbra-zone/bech32m': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + '@penumbra-zone/client': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/client/penumbra-zone-client-18.1.0.tgz + '@penumbra-zone/crypto-web': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz + '@penumbra-zone/getters': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz + '@penumbra-zone/keys': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz + '@penumbra-zone/perspective': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz + '@penumbra-zone/protobuf': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz + '@penumbra-zone/query': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz + '@penumbra-zone/services': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/services/penumbra-zone-services-33.0.0.tgz + '@penumbra-zone/storage': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz + '@penumbra-zone/transport-chrome': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-chrome/penumbra-zone-transport-chrome-8.0.1.tgz + '@penumbra-zone/transport-dom': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz + '@penumbra-zone/types': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz + '@penumbra-zone/ui': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/ui/penumbra-zone-ui-9.1.0.tgz + '@penumbra-zone/wasm': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz + pnpmfileChecksum: bwtiqgusdylthorgowhneampme importers: @@ -19,6 +36,9 @@ importers: '@connectrpc/connect-web': specifier: ^1.4.0 version: 1.4.0(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0)) + '@tsconfig/strictest': + specifier: ^2.0.5 + version: 2.0.5 tsx: specifier: ^4.16.2 version: 4.16.2 @@ -46,10 +66,10 @@ importers: version: link:packages/tsconfig '@storybook/react-vite': specifier: 8.1.1 - version: 8.1.1(encoding@0.1.13)(prettier@3.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.21.2)(typescript@5.5.4)(vite@5.4.2(@types/node@20.14.13)(terser@5.31.6)) + version: 8.1.1(encoding@0.1.13)(prettier@3.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.21.1)(typescript@5.5.4)(vite@5.4.2(@types/node@20.14.13)(terser@5.31.6)) '@turbo/gen': specifier: ^1.13.4 - version: 1.13.4(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4) + version: 1.13.4(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4) '@types/node': specifier: ^20.14.5 version: 20.14.13 @@ -70,7 +90,7 @@ importers: version: 12.4.0(typescript@5.5.4) tailwindcss: specifier: ^3.4.4 - version: 3.4.7(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)) + version: 3.4.7(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)) turbo: specifier: ^2.0.12 version: 2.0.12 @@ -96,50 +116,53 @@ importers: specifier: 11.1.0 version: 11.1.0 '@penumbra-zone/bech32m': - specifier: ^7.0.0 - version: 7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + version: file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) '@penumbra-zone/client': - specifier: ^18.1.0 - version: 18.1.0(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/transport-dom@7.5.0) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/client/penumbra-zone-client-18.1.0.tgz + version: file:../../penumbra-zone/web/packages/client/penumbra-zone-client-18.1.0.tgz(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0))(@penumbra-zone/transport-dom@file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz) '@penumbra-zone/crypto-web': - specifier: ^23.0.0 - version: 23.0.0(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz + version: file:../../penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz(@penumbra-zone/types@file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0))) '@penumbra-zone/getters': - specifier: ^16.0.0 - version: 16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz + version: file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) '@penumbra-zone/keys': - specifier: ^4.2.1 - version: 4.2.1 + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz + version: file:../../penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz '@penumbra-zone/perspective': - specifier: ^29.0.0 - version: 29.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/wasm@27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz + version: file:../../penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz(7fuqecr2yrpbkm3itnn6ycinyu) '@penumbra-zone/protobuf': - specifier: ^6.0.0 - version: 6.0.0(@bufbuild/protobuf@1.10.0) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz + version: file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) '@penumbra-zone/query': - specifier: ^30.0.0 - version: 30.0.0(banmk3erwunubgvg457fwz7rvq) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz + version: file:../../penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz(crriizsah7rfvqmc3fl7vpbgsi) '@penumbra-zone/services': - specifier: ^33.0.0 - version: 33.0.0(m7lhnv2o565qvcwz2e4vqrdxsi) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/services/penumbra-zone-services-33.0.0.tgz + version: file:../../penumbra-zone/web/packages/services/penumbra-zone-services-33.0.0.tgz(mvcbgda2uftbzu275jidyxd4tu) '@penumbra-zone/storage': - specifier: ^29.0.0 - version: 29.0.0(uz3f7wsbv65r4y3vsa3krgv4bu) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz + version: file:../../penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz(agcyfo5gdhxsvhgr7tl4bcgje4) '@penumbra-zone/transport-chrome': - specifier: ^8.0.1 - version: 8.0.1(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/transport-dom@7.5.0) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-chrome/penumbra-zone-transport-chrome-8.0.1.tgz + version: file:../../penumbra-zone/web/packages/transport-chrome/penumbra-zone-transport-chrome-8.0.1.tgz(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/transport-dom@file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz) '@penumbra-zone/transport-dom': - specifier: ^7.5.0 - version: 7.5.0 + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz + version: file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz '@penumbra-zone/types': - specifier: ^22.0.0 - version: 22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz + version: file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) '@penumbra-zone/wasm': - specifier: ^27.0.0 - version: 27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz + version: file:../../penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz(dfvxwjq7p6j4ra5kf7dmezn2me) '@radix-ui/react-icons': specifier: ^1.3.0 version: 1.3.0(react@18.3.1) + '@repo/chrome-offscreen-worker': + specifier: workspace:* + version: link:../../packages/chrome-offscreen-worker '@repo/context': specifier: workspace:* version: link:../../packages/context @@ -184,8 +207,8 @@ importers: version: 4.5.4(@types/react@18.3.3)(immer@10.1.1)(react@18.3.1) devDependencies: '@types/chrome': - specifier: 0.0.268 - version: 0.0.268 + specifier: ^0.0.270 + version: 0.0.270 '@types/firefox-webext-browser': specifier: ^120.0.3 version: 120.0.4 @@ -200,7 +223,7 @@ importers: version: 18.3.0 '@types/webpack': specifier: ^5.28.5 - version: 5.28.5(@swc/core@1.7.23)(webpack-cli@5.1.4(webpack@5.93.0)) + version: 5.28.5(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4(webpack@5.93.0)) autoprefixer: specifier: ^10.4.19 version: 10.4.19(postcss@8.4.40) @@ -209,40 +232,40 @@ importers: version: 6.0.3 copy-webpack-plugin: specifier: ^12.0.2 - version: 12.0.2(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) + version: 12.0.2(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) css-loader: specifier: ^7.1.1 - version: 7.1.2(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) + version: 7.1.2(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) dotenv: specifier: ^16.4.5 version: 16.4.5 html-webpack-plugin: specifier: ^5.6.0 - version: 5.6.0(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) + version: 5.6.0(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) postcss: specifier: ^8.4.38 version: 8.4.40 postcss-loader: specifier: ^8.1.1 - version: 8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) + version: 8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) style-loader: specifier: ^4.0.0 - version: 4.0.0(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) + version: 4.0.0(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) tailwindcss: specifier: ^3.4.4 - version: 3.4.7(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@22.5.2)(typescript@5.5.4)) + version: 3.4.7(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@22.5.1)(typescript@5.5.4)) ts-loader: specifier: ^9.5.1 - version: 9.5.1(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) + version: 9.5.1(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) ts-node: specifier: ^10.9.2 - version: 10.9.2(@swc/core@1.7.23)(@types/node@22.5.2)(typescript@5.5.4) + version: 10.9.2(@swc/core@1.7.21)(@types/node@22.5.1)(typescript@5.5.4) web-ext: specifier: ^8.2.0 version: 8.2.0(body-parser@1.20.2)(express@4.19.2) webpack: specifier: ^5.91.0 - version: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + version: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) webpack-cli: specifier: ^5.1.4 version: 5.1.4(webpack@5.93.0) @@ -251,7 +274,7 @@ importers: version: 5.10.0 webpack-watch-external-files-plugin: specifier: ^3.1.0 - version: 3.1.0(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) + version: 3.1.0(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) apps/prax-marketing-site: dependencies: @@ -266,7 +289,7 @@ importers: version: 6.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) tailwindcss: specifier: ^3.4.4 - version: 3.4.7(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@22.5.2)(typescript@5.5.4)) + version: 3.4.7(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@22.5.1)(typescript@5.5.4)) devDependencies: '@types/react': specifier: ^18.3.2 @@ -276,7 +299,7 @@ importers: version: 18.3.0 '@vitejs/plugin-react-swc': specifier: ^3.7.0 - version: 3.7.0(vite@5.3.5(@types/node@22.5.2)(terser@5.31.6)) + version: 3.7.0(vite@5.3.5(@types/node@22.5.1)(terser@5.31.6)) autoprefixer: specifier: ^10.4.19 version: 10.4.19(postcss@8.4.40) @@ -288,7 +311,13 @@ importers: version: 8.4.40 vite: specifier: ^5.3.1 - version: 5.3.5(@types/node@22.5.2)(terser@5.31.6) + version: 5.3.5(@types/node@22.5.1)(terser@5.31.6) + + packages/chrome-offscreen-worker: + devDependencies: + '@types/chrome': + specifier: ^0.0.270 + version: 0.0.270 packages/context: dependencies: @@ -299,44 +328,44 @@ importers: specifier: 11.1.0 version: 11.1.0 '@penumbra-zone/bech32m': - specifier: ^7.0.0 - version: 7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + version: file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) '@penumbra-zone/crypto-web': - specifier: ^23.0.0 - version: 23.0.0(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz + version: file:../../penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz(@penumbra-zone/types@file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0))) '@penumbra-zone/getters': - specifier: ^16.0.0 - version: 16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz + version: file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) '@penumbra-zone/keys': - specifier: ^4.2.1 - version: 4.2.1 + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz + version: file:../../penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz '@penumbra-zone/perspective': - specifier: ^29.0.0 - version: 29.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/wasm@27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz + version: file:../../penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz(7fuqecr2yrpbkm3itnn6ycinyu) '@penumbra-zone/protobuf': - specifier: ^6.0.0 - version: 6.0.0(@bufbuild/protobuf@1.10.0) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz + version: file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) '@penumbra-zone/query': - specifier: ^30.0.0 - version: 30.0.0(banmk3erwunubgvg457fwz7rvq) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz + version: file:../../penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz(crriizsah7rfvqmc3fl7vpbgsi) '@penumbra-zone/services': - specifier: ^33.0.0 - version: 33.0.0(m7lhnv2o565qvcwz2e4vqrdxsi) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/services/penumbra-zone-services-33.0.0.tgz + version: file:../../penumbra-zone/web/packages/services/penumbra-zone-services-33.0.0.tgz(mvcbgda2uftbzu275jidyxd4tu) '@penumbra-zone/storage': - specifier: ^29.0.0 - version: 29.0.0(uz3f7wsbv65r4y3vsa3krgv4bu) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz + version: file:../../penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz(agcyfo5gdhxsvhgr7tl4bcgje4) '@penumbra-zone/transport-chrome': - specifier: ^8.0.1 - version: 8.0.1(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/transport-dom@7.5.0) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-chrome/penumbra-zone-transport-chrome-8.0.1.tgz + version: file:../../penumbra-zone/web/packages/transport-chrome/penumbra-zone-transport-chrome-8.0.1.tgz(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/transport-dom@file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz) '@penumbra-zone/transport-dom': - specifier: ^7.5.0 - version: 7.5.0 + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz + version: file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz '@penumbra-zone/types': - specifier: ^22.0.0 - version: 22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz + version: file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) '@penumbra-zone/wasm': - specifier: ^27.0.0 - version: 27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz + version: file:../../penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz(dfvxwjq7p6j4ra5kf7dmezn2me) exponential-backoff: specifier: ^3.1.1 version: 3.1.1 @@ -375,7 +404,7 @@ importers: version: 0.8.0(eslint@9.8.0)(typescript@5.5.4) eslint-plugin-tailwindcss: specifier: ^3.15.2 - version: 3.17.4(tailwindcss@3.4.10(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4))) + version: 3.17.4(tailwindcss@3.4.10(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4))) eslint-plugin-turbo: specifier: ^2.0.12 version: 2.0.12(eslint@9.8.0) @@ -390,10 +419,10 @@ importers: dependencies: tailwindcss: specifier: ^3.4.4 - version: 3.4.7(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)) + version: 3.4.7(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)) tailwindcss-animate: specifier: ^1.0.7 - version: 1.0.7(tailwindcss@3.4.7(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4))) + version: 1.0.7(tailwindcss@3.4.7(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4))) packages/tsconfig: {} @@ -409,23 +438,23 @@ importers: specifier: 11.1.0 version: 11.1.0 '@penumbra-zone/bech32m': - specifier: ^7.0.0 - version: 7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + version: file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) '@penumbra-zone/getters': - specifier: ^16.0.0 - version: 16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz + version: file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) '@penumbra-zone/perspective': - specifier: ^29.0.0 - version: 29.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/wasm@27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz + version: file:../../penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz(7fuqecr2yrpbkm3itnn6ycinyu) '@penumbra-zone/protobuf': - specifier: ^6.0.0 - version: 6.0.0(@bufbuild/protobuf@1.10.0) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz + version: file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) '@penumbra-zone/types': - specifier: ^22.0.0 - version: 22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz + version: file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) '@penumbra-zone/wasm': - specifier: ^27.0.0 - version: 27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) + specifier: file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz + version: file:../../penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz(dfvxwjq7p6j4ra5kf7dmezn2me) '@radix-ui/react-avatar': specifier: ^1.0.4 version: 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -476,7 +505,7 @@ importers: version: 6.4.8 '@textea/json-viewer': specifier: ^3.4.1 - version: 3.4.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 3.4.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) bignumber.js: specifier: ^9.1.2 version: 9.1.2 @@ -534,13 +563,13 @@ importers: version: 8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9))) '@storybook/addon-interactions': specifier: ^8.1.1 - version: 8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)))(vitest@2.0.5(@types/node@22.5.2)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6)) + version: 8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)))(vitest@2.0.5(@types/node@22.5.1)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6)) '@storybook/addon-links': specifier: ^8.1.1 version: 8.2.6(react@18.3.1)(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9))) '@storybook/addon-postcss': specifier: ^2.0.0 - version: 2.0.0(webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5)) + version: 2.0.0(webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5)) '@storybook/blocks': specifier: ^8.1.1 version: 8.2.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9))) @@ -552,7 +581,7 @@ importers: version: 8.2.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)))(typescript@5.5.4) '@storybook/react-vite': specifier: 8.1.1 - version: 8.1.1(encoding@0.1.13)(prettier@3.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.21.2)(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.2)(terser@5.31.6)) + version: 8.1.1(encoding@0.1.13)(prettier@3.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.21.1)(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.1)(terser@5.31.6)) '@testing-library/dom': specifier: ^10.1.0 version: 10.4.0 @@ -585,7 +614,7 @@ importers: version: 8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)) tailwindcss: specifier: ^3.4.4 - version: 3.4.7(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@22.5.2)(typescript@5.5.4)) + version: 3.4.7(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@22.5.1)(typescript@5.5.4)) packages: @@ -1926,16 +1955,16 @@ packages: '@types/react': '>=16' react: '>=16' - '@mui/core-downloads-tracker@6.0.2': - resolution: {integrity: sha512-Cg68oOlAfbJgMgvbCwcX3Y3HdygCl6X1nREYTdEWcEKUQhNarrC45Cc35mP+zA7p3ZXE/7FLiaTCCgwuSoef/Q==} + '@mui/core-downloads-tracker@6.0.0': + resolution: {integrity: sha512-x5qg4ndVmSY5jzp1AgSQSh/iI3H3oN30JwSQAKCIopH6iHGyqEzLx5/gZVbpWzlzt5xoeX8eubqPzEiUo8ClYg==} - '@mui/material@6.0.2': - resolution: {integrity: sha512-KrnkJFSyhsAh8V30DNUbWyRyxMi4ZHjFg1ikQGx+mUAIffFTYIEx9Q+Kxd3vCT0FUFGOmbsuh6F6yRhpybsjkg==} + '@mui/material@6.0.0': + resolution: {integrity: sha512-pU8L/bvoK3bBYM0MUCr8EHgdFbYwB3LIZ1yr1FWI2dZBA/751oy2qr7UgMnZznGCq+C9pTp1EOugF9FhW0G6xg==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.5.0 '@emotion/styled': ^11.3.0 - '@mui/material-pigment-css': ^6.0.2 + '@mui/material-pigment-css': ^6.0.0 '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 react: ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -1949,8 +1978,8 @@ packages: '@types/react': optional: true - '@mui/private-theming@6.0.2': - resolution: {integrity: sha512-emddFcRhA0hPGVIwIbW5g0V8vtCgw2g/H/A7jTdGe7dpCWEPpp6jPIXRRKcEUWgmg91R6rBNfV+LFHxBxmZXOQ==} + '@mui/private-theming@6.0.0': + resolution: {integrity: sha512-GaURgp4wl/E4X/v2wF7joYYR8Skzf+LBtBHi/Vb6FlwrMGiZGW9gatPPpK89aB64NZ25UPwPsXupWPoOdbmSMg==} engines: {node: '>=14.0.0'} peerDependencies: '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -1959,8 +1988,8 @@ packages: '@types/react': optional: true - '@mui/styled-engine@6.0.2': - resolution: {integrity: sha512-qd3Vlhted0SYVGotnCfVNcxff7vW2WN0fclbAexff60NeNS1qs/H/CImHEHUBiUGeNWMPRochbN6VF1arQ7/jA==} + '@mui/styled-engine@6.0.0': + resolution: {integrity: sha512-V/i+XixLUzulE1tSwlf9iJXipuD1J9XBV1Z1Yezfc0p42wAvoB9dIJImfUNMjvAsjdgw1CoRoebROQlLLy8HsQ==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.4.1 @@ -1972,8 +2001,8 @@ packages: '@emotion/styled': optional: true - '@mui/system@6.0.2': - resolution: {integrity: sha512-AZv1/C4PuHgWFTA8YraIzl3FTVLdRz0RIMRwEADWZBdIhnuTHS/4+r8qE9+3CcpTHg1WsEu8btaO3AhQahSM9A==} + '@mui/system@6.0.0': + resolution: {integrity: sha512-Y1Luj5aApIN+FnrdZTwd/UvL3QC53nHHweaWco27vO9WLC/s/bLYFR6sO9hdib2wIGLr3WCQJGUafeGpz5OWzw==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.5.0 @@ -1996,8 +2025,8 @@ packages: '@types/react': optional: true - '@mui/utils@6.0.2': - resolution: {integrity: sha512-TeFrYsxcmeoDSlkoPhX+LjIuuqC5Pyj+xz2kRceKCkUpwMNTEeVOfowXDPe+mboZwmpJ5ZxP4eiAgQMdeEasjg==} + '@mui/utils@6.0.0': + resolution: {integrity: sha512-6MlZc3Kv/KctTkq6EQyi5p1UKtJpBxcmTyqxM3HucbdhAZuUMRTYYipLVQRqvDqiUisqQcev3QDFKx1b7DMCwg==} engines: {node: '>=14.0.0'} peerDependencies: '@types/react': ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -2006,9 +2035,9 @@ packages: '@types/react': optional: true - '@noble/hashes@1.5.0': - resolution: {integrity: sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA==} - engines: {node: ^14.21.3 || >=16} + '@noble/hashes@1.4.0': + resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} + engines: {node: '>= 16'} '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -2041,110 +2070,125 @@ packages: '@penumbra-labs/registry@11.1.0': resolution: {integrity: sha512-g5FvBdWk7+bNU7PJ6q/+H67cAuMmBNIixMtJcQ74/x5S/OzWp0Kbm/Qe8DewBtSD3iOEfT1AnOZlLtEZ+2jy4A==} - '@penumbra-zone/bech32m@7.0.0': - resolution: {integrity: sha512-OqSH4G8pQ/mjy/7EfS9KlxF8Pdr3h/Ib8ZDOjDyQJB4/L+ZYkK3bWFGrFpAI8XDoc0phoMXkL77fZEpR18JoAg==} + '@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz': + resolution: {integrity: sha512-3SriabsTS9+4DT9LvN5KqQNWSnJ7sCHG6XxF2TafynynTvIcZAOrMpaC/lFqoTeMBhy0KwsLJNdpgU9L223kVQ==, tarball: file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz} + version: 7.0.0 peerDependencies: - '@penumbra-zone/protobuf': 6.0.0 + '@penumbra-zone/protobuf': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz - '@penumbra-zone/client@18.1.0': - resolution: {integrity: sha512-khXFquqIpDmXUCwQpP6RfYQnkNI4ekDqz+SP/XCo+7W1xHKJiApXnHDKBA/VsOZ1Q/qGak/R1xfq6z9aV58xSA==} + '@penumbra-zone/client@file:../../penumbra-zone/web/packages/client/penumbra-zone-client-18.1.0.tgz': + resolution: {integrity: sha512-10WjRSW5IWeshXL8sKDvjVdWaQ3hygxVG6kvbn4/xa/pOFWgH77LB2vF08OO7plp9GmV5jiBYFVosZRnsq8kfA==, tarball: file:../../penumbra-zone/web/packages/client/penumbra-zone-client-18.1.0.tgz} + version: 18.1.0 peerDependencies: '@bufbuild/protobuf': ^1.10.0 '@connectrpc/connect': ^1.4.0 - '@penumbra-zone/protobuf': 6.0.0 - '@penumbra-zone/transport-dom': 7.5.0 + '@penumbra-zone/protobuf': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz + '@penumbra-zone/transport-dom': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz - '@penumbra-zone/crypto-web@23.0.0': - resolution: {integrity: sha512-JLDIOHJE4B7gPOAIPbCT2DxF5srUq4AW95hllvMADsO2iwovh54OFXSuFbLZfvaJrLs84boVT10R/27QlTdG0A==} + '@penumbra-zone/crypto-web@file:../../penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz': + resolution: {integrity: sha512-ke4EuK22miVyzO4/BNW+VG9Id1dJi9sfg+DFyhKjemXl7wnGYi4Ubj8QzpnBCcTjl2qPW0Eaa4S4zqncwdJ6Wg==, tarball: file:../../penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz} + version: 23.0.0 peerDependencies: - '@penumbra-zone/types': 22.0.0 + '@penumbra-zone/types': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz - '@penumbra-zone/getters@16.0.0': - resolution: {integrity: sha512-c4saUCIooXKDIdl3UmXAtIspxkt/K1vZNyXRLwUyB0B0EfXj7qILlDbz2csOewU8SSKFIuzaBscIeJykOEHKXg==} + '@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz': + resolution: {integrity: sha512-InvIstvwV3TtZX5qF59NajV8htwmtFeN1kVc4UNVj5s6TqhN65QJmnGodVDyqJb050dXQsJQjJwp0/2/VFUjPw==, tarball: file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz} + version: 16.0.0 peerDependencies: '@bufbuild/protobuf': ^1.10.0 - '@penumbra-zone/bech32m': 7.0.0 - '@penumbra-zone/protobuf': 6.0.0 + '@penumbra-zone/bech32m': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + '@penumbra-zone/protobuf': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz - '@penumbra-zone/keys@4.2.1': - resolution: {integrity: sha512-1K+/8bh53Kse4u/I1afUQuRrTnZhLLA6JWIV+mFiXX8An2J2CGIVDjp1mSJkUSzFjFDUzUX052kvYHCtZYK3QA==} + '@penumbra-zone/keys@file:../../penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz': + resolution: {integrity: sha512-nQmC1bL3o11MR+39niv+ZkDCt15Jd3SxfmX+M7BdGHQkSOWLEDQ2vDznN1CZKCXlD+j6JQwYyv5MCqyz2MxaLg==, tarball: file:../../penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz} + version: 4.2.1 hasBin: true - '@penumbra-zone/perspective@29.0.0': - resolution: {integrity: sha512-9nzixSJqbaPQvwYGhANr+kCgpqwakcsz+Amp/l2CJwjW9m/dGa79O6wA8Qp3ZKgHhXy+b51+PU/Tsdaosv3Rug==} + '@penumbra-zone/perspective@file:../../penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz': + resolution: {integrity: sha512-UPzD5DxONEcgqolNyFRXJjIPMjq9CMB/TOaCXjF2tJSNwxnXd+N7AVYaNBHkl4XrWBXGPhlKTEa8BU8s2YC6uA==, tarball: file:../../penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz} + version: 29.0.0 peerDependencies: '@bufbuild/protobuf': ^1.10.0 - '@penumbra-zone/bech32m': 7.0.0 - '@penumbra-zone/getters': 16.0.0 - '@penumbra-zone/protobuf': 6.0.0 - '@penumbra-zone/wasm': 27.0.0 + '@penumbra-zone/bech32m': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + '@penumbra-zone/getters': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz + '@penumbra-zone/protobuf': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz + '@penumbra-zone/wasm': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz - '@penumbra-zone/protobuf@6.0.0': - resolution: {integrity: sha512-x+g2plwEnYwzB692oAIzA9yzqcbsJt1f1lYmPNJpWOqNA9wC3OPDOfzQa7rgP4v6+KNd5IbRfRNyGPd/6zxYNg==} + '@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz': + resolution: {integrity: sha512-FwcsuAkLFyf4nSUPoLlQ1wu7F8HjAy2/sRDrf6dZX9B6p6bmb7FPbIr9HzI5aZmd4z12dRe4zR/V7i3ksmCOiA==, tarball: file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz} + version: 6.0.0 peerDependencies: '@bufbuild/protobuf': ^1.10.0 - '@penumbra-zone/query@30.0.0': - resolution: {integrity: sha512-rr+xAlOk49ORWWsTsVnynIXkk/HGz9O4myOOIdWqH1YpEcHu6AHjwPJl5mq/B5uptopyPgwS7uW4qIt8CCCJtA==} + '@penumbra-zone/query@file:../../penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz': + resolution: {integrity: sha512-C+0rCITbTD7dUmwacpl+msOT8+KJeIWMXT8CA8XEz/8kH/N2Ku+g264yzHZ14SiSGfRhTjf5BFSeXbqMWD08ew==, tarball: file:../../penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz} + version: 30.0.0 peerDependencies: - '@penumbra-zone/bech32m': 7.0.0 - '@penumbra-zone/crypto-web': 23.0.0 - '@penumbra-zone/getters': 16.0.0 - '@penumbra-zone/protobuf': 6.0.0 - '@penumbra-zone/types': 22.0.0 - '@penumbra-zone/wasm': 27.0.0 + '@penumbra-zone/bech32m': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + '@penumbra-zone/crypto-web': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz + '@penumbra-zone/getters': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz + '@penumbra-zone/protobuf': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz + '@penumbra-zone/types': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz + '@penumbra-zone/wasm': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz - '@penumbra-zone/services@33.0.0': - resolution: {integrity: sha512-HFIh0rw/mqLSgPFtyYPVreizg/wO+eIsoNQYSdb2RSiKRlCkBEogpTXytrzTw10XHSLXbsZrJR7ReTeJBGp5ZA==} + '@penumbra-zone/services@file:../../penumbra-zone/web/packages/services/penumbra-zone-services-33.0.0.tgz': + resolution: {integrity: sha512-i58k0F9LRTIAQGPIu9Dq7u4/meXRKt5as3sUI8pEY84Y5wDAED80dzP6nluxz/Pludgg8ascvpNhv38IGkPXOw==, tarball: file:../../penumbra-zone/web/packages/services/penumbra-zone-services-33.0.0.tgz} + version: 33.0.0 peerDependencies: '@bufbuild/protobuf': ^1.10.0 '@connectrpc/connect': ^1.4.0 - '@penumbra-zone/bech32m': 7.0.0 - '@penumbra-zone/crypto-web': 23.0.0 - '@penumbra-zone/getters': 16.0.0 - '@penumbra-zone/protobuf': 6.0.0 - '@penumbra-zone/query': 30.0.0 - '@penumbra-zone/storage': 29.0.0 - '@penumbra-zone/transport-dom': 7.5.0 - '@penumbra-zone/types': 22.0.0 - '@penumbra-zone/wasm': 27.0.0 - - '@penumbra-zone/storage@29.0.0': - resolution: {integrity: sha512-m11GuRFMl7b8BV/L64tkjIbecTaOmEAIrTHfmpZKyQXdyw7povVbIegBw/PXAqxH9Gf0BAwLL+lBvRA9/JHcKA==} + '@penumbra-zone/bech32m': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + '@penumbra-zone/crypto-web': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz + '@penumbra-zone/getters': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz + '@penumbra-zone/keys': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz + '@penumbra-zone/protobuf': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz + '@penumbra-zone/query': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz + '@penumbra-zone/storage': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz + '@penumbra-zone/transport-dom': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz + '@penumbra-zone/types': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz + '@penumbra-zone/wasm': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz + + '@penumbra-zone/storage@file:../../penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz': + resolution: {integrity: sha512-XKSG/2+1+whdfyHXz4663ha6lM4jTxObfCwNEXMT/nntEpX86QcxvUkC/mAJvlMKvpMea98IlEKOMDUT7jR4aA==, tarball: file:../../penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz} + version: 29.0.0 peerDependencies: '@bufbuild/protobuf': ^1.10.0 '@penumbra-labs/registry': 11.1.0 - '@penumbra-zone/bech32m': 7.0.0 - '@penumbra-zone/getters': 16.0.0 - '@penumbra-zone/protobuf': 6.0.0 - '@penumbra-zone/types': 22.0.0 - '@penumbra-zone/wasm': 27.0.0 + '@penumbra-zone/bech32m': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + '@penumbra-zone/getters': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz + '@penumbra-zone/protobuf': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz + '@penumbra-zone/types': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz + '@penumbra-zone/wasm': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz - '@penumbra-zone/transport-chrome@8.0.1': - resolution: {integrity: sha512-Bk5/6N60hkeDwtx/ebP5u5DgZWNdRh6FQHgOXNP93FJjg4oobNOkjdoH0Gdqevj+sawGnyXFCyC6WeHB6D2LTA==} + '@penumbra-zone/transport-chrome@file:../../penumbra-zone/web/packages/transport-chrome/penumbra-zone-transport-chrome-8.0.1.tgz': + resolution: {integrity: sha512-EvskMEqtMxIDM1efuruNALYzeMjgHDWZt45Hl1txgGxTaWcVrVYSkeajaqSFtLJCFRND+5vrmQ4M7MVkjmOSzg==, tarball: file:../../penumbra-zone/web/packages/transport-chrome/penumbra-zone-transport-chrome-8.0.1.tgz} + version: 8.0.1 peerDependencies: - '@bufbuild/protobuf': 1.10.0 - '@connectrpc/connect': 1.4.0 - '@penumbra-zone/transport-dom': 7.5.0 + '@bufbuild/protobuf': ^1.10.0 + '@connectrpc/connect': ^1.4.0 + '@penumbra-zone/transport-dom': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz - '@penumbra-zone/transport-dom@7.5.0': - resolution: {integrity: sha512-8xFIEDeXODl18AITfiIrJJoE8Y6y/+apO+BhrqCmXP+yqGo8LBzcW3iWDQkOc6Go2c1MGJT97B25r079Km1kuA==} + '@penumbra-zone/transport-dom@file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz': + resolution: {integrity: sha512-L2H7kv9Do3bImxmQqYtTblipbTqzzDNRzuRNUZStVOV1tfHo0BagKT4kK2lMAVq3hYln6W1qfptdnj4ozrHH5w==, tarball: file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz} + version: 7.5.0 - '@penumbra-zone/types@22.0.0': - resolution: {integrity: sha512-cl0OTcGXJehkL1B18HTVMXY+aqZ6pIfD12DhP9kAi8xkOiIbjNwu48NHzs2BXospnTMaiW8aqdpBRy6nCJCF0A==} + '@penumbra-zone/types@file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz': + resolution: {integrity: sha512-RjFabWzEDITYiBoqe8qUy46zQUIAUPxJFGaDI744BM+vCWkcXaniOwZ4K5WCrmjuojXnreEgtiqUnnTpjT2NOQ==, tarball: file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz} + version: 22.0.0 peerDependencies: '@bufbuild/protobuf': ^1.10.0 - '@penumbra-zone/bech32m': 7.0.0 - '@penumbra-zone/getters': 16.0.0 - '@penumbra-zone/protobuf': 6.0.0 + '@penumbra-zone/bech32m': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + '@penumbra-zone/getters': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz + '@penumbra-zone/protobuf': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz - '@penumbra-zone/wasm@27.0.0': - resolution: {integrity: sha512-+ttIMQeOUbFSx4IC7LnHGixwGoV3F4gvNo7sHqR60T2DL3rWpBiSsTm9BFBfSmKLnOdAgkfr+2/uGFJvibaVnw==} + '@penumbra-zone/wasm@file:../../penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz': + resolution: {integrity: sha512-WcLzm4OnTU5WeOuYArgsIhvHIE7Ertr6ojkGWE2Y6SAc2rjlf+H7AZ8rHH1GuRbp4uTp2awr29GMQDwAwtsIGQ==, tarball: file:../../penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz} + version: 27.0.0 peerDependencies: '@bufbuild/protobuf': ^1.10.0 - '@penumbra-zone/bech32m': 7.0.0 - '@penumbra-zone/protobuf': 6.0.0 - '@penumbra-zone/types': 22.0.0 + '@penumbra-zone/bech32m': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz + '@penumbra-zone/protobuf': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz + '@penumbra-zone/types': file:///Users/yet/Developer/github.com/penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} @@ -2883,8 +2927,8 @@ packages: cpu: [arm] os: [android] - '@rollup/rollup-android-arm-eabi@4.21.2': - resolution: {integrity: sha512-fSuPrt0ZO8uXeS+xP3b+yYTCBUd05MoSp2N/MFOgjhhUhMmchXlpTQrTpI8T+YAwAQuK7MafsCOxW7VrPMrJcg==} + '@rollup/rollup-android-arm-eabi@4.21.1': + resolution: {integrity: sha512-2thheikVEuU7ZxFXubPDOtspKn1x0yqaYQwvALVtEcvFhMifPADBrgRPyHV0TF3b+9BgvgjgagVyvA/UqPZHmg==} cpu: [arm] os: [android] @@ -2893,8 +2937,8 @@ packages: cpu: [arm64] os: [android] - '@rollup/rollup-android-arm64@4.21.2': - resolution: {integrity: sha512-xGU5ZQmPlsjQS6tzTTGwMsnKUtu0WVbl0hYpTPauvbRAnmIvpInhJtgjj3mcuJpEiuUw4v1s4BimkdfDWlh7gA==} + '@rollup/rollup-android-arm64@4.21.1': + resolution: {integrity: sha512-t1lLYn4V9WgnIFHXy1d2Di/7gyzBWS8G5pQSXdZqfrdCGTwi1VasRMSS81DTYb+avDs/Zz4A6dzERki5oRYz1g==} cpu: [arm64] os: [android] @@ -2903,8 +2947,8 @@ packages: cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-arm64@4.21.2': - resolution: {integrity: sha512-99AhQ3/ZMxU7jw34Sq8brzXqWH/bMnf7ZVhvLk9QU2cOepbQSVTns6qoErJmSiAvU3InRqC2RRZ5ovh1KN0d0Q==} + '@rollup/rollup-darwin-arm64@4.21.1': + resolution: {integrity: sha512-AH/wNWSEEHvs6t4iJ3RANxW5ZCK3fUnmf0gyMxWCesY1AlUj8jY7GC+rQE4wd3gwmZ9XDOpL0kcFnCjtN7FXlA==} cpu: [arm64] os: [darwin] @@ -2913,8 +2957,8 @@ packages: cpu: [x64] os: [darwin] - '@rollup/rollup-darwin-x64@4.21.2': - resolution: {integrity: sha512-ZbRaUvw2iN/y37x6dY50D8m2BnDbBjlnMPotDi/qITMJ4sIxNY33HArjikDyakhSv0+ybdUxhWxE6kTI4oX26w==} + '@rollup/rollup-darwin-x64@4.21.1': + resolution: {integrity: sha512-dO0BIz/+5ZdkLZrVgQrDdW7m2RkrLwYTh2YMFG9IpBtlC1x1NPNSXkfczhZieOlOLEqgXOFH3wYHB7PmBtf+Bg==} cpu: [x64] os: [darwin] @@ -2923,8 +2967,8 @@ packages: cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-gnueabihf@4.21.2': - resolution: {integrity: sha512-ztRJJMiE8nnU1YFcdbd9BcH6bGWG1z+jP+IPW2oDUAPxPjo9dverIOyXz76m6IPA6udEL12reYeLojzW2cYL7w==} + '@rollup/rollup-linux-arm-gnueabihf@4.21.1': + resolution: {integrity: sha512-sWWgdQ1fq+XKrlda8PsMCfut8caFwZBmhYeoehJ05FdI0YZXk6ZyUjWLrIgbR/VgiGycrFKMMgp7eJ69HOF2pQ==} cpu: [arm] os: [linux] @@ -2933,8 +2977,8 @@ packages: cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.21.2': - resolution: {integrity: sha512-flOcGHDZajGKYpLV0JNc0VFH361M7rnV1ee+NTeC/BQQ1/0pllYcFmxpagltANYt8FYf9+kL6RSk80Ziwyhr7w==} + '@rollup/rollup-linux-arm-musleabihf@4.21.1': + resolution: {integrity: sha512-9OIiSuj5EsYQlmwhmFRA0LRO0dRRjdCVZA3hnmZe1rEwRk11Jy3ECGGq3a7RrVEZ0/pCsYWx8jG3IvcrJ6RCew==} cpu: [arm] os: [linux] @@ -2943,8 +2987,8 @@ packages: cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.21.2': - resolution: {integrity: sha512-69CF19Kp3TdMopyteO/LJbWufOzqqXzkrv4L2sP8kfMaAQ6iwky7NoXTp7bD6/irKgknDKM0P9E/1l5XxVQAhw==} + '@rollup/rollup-linux-arm64-gnu@4.21.1': + resolution: {integrity: sha512-0kuAkRK4MeIUbzQYu63NrJmfoUVicajoRAL1bpwdYIYRcs57iyIV9NLcuyDyDXE2GiZCL4uhKSYAnyWpjZkWow==} cpu: [arm64] os: [linux] @@ -2953,8 +2997,8 @@ packages: cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.21.2': - resolution: {integrity: sha512-48pD/fJkTiHAZTnZwR0VzHrao70/4MlzJrq0ZsILjLW/Ab/1XlVUStYyGt7tdyIiVSlGZbnliqmult/QGA2O2w==} + '@rollup/rollup-linux-arm64-musl@4.21.1': + resolution: {integrity: sha512-/6dYC9fZtfEY0vozpc5bx1RP4VrtEOhNQGb0HwvYNwXD1BBbwQ5cKIbUVVU7G2d5WRE90NfB922elN8ASXAJEA==} cpu: [arm64] os: [linux] @@ -2963,8 +3007,8 @@ packages: cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.21.2': - resolution: {integrity: sha512-cZdyuInj0ofc7mAQpKcPR2a2iu4YM4FQfuUzCVA2u4HI95lCwzjoPtdWjdpDKyHxI0UO82bLDoOaLfpZ/wviyQ==} + '@rollup/rollup-linux-powerpc64le-gnu@4.21.1': + resolution: {integrity: sha512-ltUWy+sHeAh3YZ91NUsV4Xg3uBXAlscQe8ZOXRCVAKLsivGuJsrkawYPUEyCV3DYa9urgJugMLn8Z3Z/6CeyRQ==} cpu: [ppc64] os: [linux] @@ -2973,8 +3017,8 @@ packages: cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.21.2': - resolution: {integrity: sha512-RL56JMT6NwQ0lXIQmMIWr1SW28z4E4pOhRRNqwWZeXpRlykRIlEpSWdsgNWJbYBEWD84eocjSGDu/XxbYeCmwg==} + '@rollup/rollup-linux-riscv64-gnu@4.21.1': + resolution: {integrity: sha512-BggMndzI7Tlv4/abrgLwa/dxNEMn2gC61DCLrTzw8LkpSKel4o+O+gtjbnkevZ18SKkeN3ihRGPuBxjaetWzWg==} cpu: [riscv64] os: [linux] @@ -2983,8 +3027,8 @@ packages: cpu: [s390x] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.21.2': - resolution: {integrity: sha512-PMxkrWS9z38bCr3rWvDFVGD6sFeZJw4iQlhrup7ReGmfn7Oukrr/zweLhYX6v2/8J6Cep9IEA/SmjXjCmSbrMQ==} + '@rollup/rollup-linux-s390x-gnu@4.21.1': + resolution: {integrity: sha512-z/9rtlGd/OMv+gb1mNSjElasMf9yXusAxnRDrBaYB+eS1shFm6/4/xDH1SAISO5729fFKUkJ88TkGPRUh8WSAA==} cpu: [s390x] os: [linux] @@ -2993,8 +3037,8 @@ packages: cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.21.2': - resolution: {integrity: sha512-B90tYAUoLhU22olrafY3JQCFLnT3NglazdwkHyxNDYF/zAxJt5fJUB/yBoWFoIQ7SQj+KLe3iL4BhOMa9fzgpw==} + '@rollup/rollup-linux-x64-gnu@4.21.1': + resolution: {integrity: sha512-kXQVcWqDcDKw0S2E0TmhlTLlUgAmMVqPrJZR+KpH/1ZaZhLSl23GZpQVmawBQGVhyP5WXIsIQ/zqbDBBYmxm5w==} cpu: [x64] os: [linux] @@ -3003,8 +3047,8 @@ packages: cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.21.2': - resolution: {integrity: sha512-7twFizNXudESmC9oneLGIUmoHiiLppz/Xs5uJQ4ShvE6234K0VB1/aJYU3f/4g7PhssLGKBVCC37uRkkOi8wjg==} + '@rollup/rollup-linux-x64-musl@4.21.1': + resolution: {integrity: sha512-CbFv/WMQsSdl+bpX6rVbzR4kAjSSBuDgCqb1l4J68UYsQNalz5wOqLGYj4ZI0thGpyX5kc+LLZ9CL+kpqDovZA==} cpu: [x64] os: [linux] @@ -3013,8 +3057,8 @@ packages: cpu: [arm64] os: [win32] - '@rollup/rollup-win32-arm64-msvc@4.21.2': - resolution: {integrity: sha512-9rRero0E7qTeYf6+rFh3AErTNU1VCQg2mn7CQcI44vNUWM9Ze7MSRS/9RFuSsox+vstRt97+x3sOhEey024FRQ==} + '@rollup/rollup-win32-arm64-msvc@4.21.1': + resolution: {integrity: sha512-3Q3brDgA86gHXWHklrwdREKIrIbxC0ZgU8lwpj0eEKGBQH+31uPqr0P2v11pn0tSIxHvcdOWxa4j+YvLNx1i6g==} cpu: [arm64] os: [win32] @@ -3023,8 +3067,8 @@ packages: cpu: [ia32] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.21.2': - resolution: {integrity: sha512-5rA4vjlqgrpbFVVHX3qkrCo/fZTj1q0Xxpg+Z7yIo3J2AilW7t2+n6Q8Jrx+4MrYpAnjttTYF8rr7bP46BPzRw==} + '@rollup/rollup-win32-ia32-msvc@4.21.1': + resolution: {integrity: sha512-tNg+jJcKR3Uwe4L0/wY3Ro0H+u3nrb04+tcq1GSYzBEmKLeOQF2emk1whxlzNqb6MMrQ2JOcQEpuuiPLyRcSIw==} cpu: [ia32] os: [win32] @@ -3033,8 +3077,8 @@ packages: cpu: [x64] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.21.2': - resolution: {integrity: sha512-6UUxd0+SKomjdzuAcp+HAmxw1FlGBnl1v2yEPSabtx4lBfdXHDVsW7+lQkgz9cNFJGY3AWR7+V8P5BqkD9L9nA==} + '@rollup/rollup-win32-x64-msvc@4.21.1': + resolution: {integrity: sha512-xGiIH95H1zU7naUyTKEyOA/I0aexNMUdO9qRv0bLKN3qu25bBdrxZHqA3PTJ24YNN/GdMzG4xkDcd/GvjuhfLg==} cpu: [x64] os: [win32] @@ -3286,8 +3330,8 @@ packages: '@storybook/types@8.1.1': resolution: {integrity: sha512-QSQ63aKr2IXrGjX2/Fg1oiGWk+2Nuf+TplaHRC2NKBMgvyn+M0BHUgMTDHQVrFaH4bpl2PkE0r0tzOKP4JI43A==} - '@swc/core-darwin-arm64@1.7.23': - resolution: {integrity: sha512-yyOHPfti6yKlQulfVWMt7BVKst+SyEZYCWuQSGMn1KgmNCH/bYufRWfQXIhkGSj44ZkEepJmsJ8tDyIb4k5WyA==} + '@swc/core-darwin-arm64@1.7.21': + resolution: {integrity: sha512-hh5uOZ7jWF66z2TRMhhXtWMQkssuPCSIZPy9VHf5KvZ46cX+5UeECDthchYklEVZQyy4Qr6oxfh4qff/5spoMA==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] @@ -3298,8 +3342,8 @@ packages: cpu: [arm64] os: [darwin] - '@swc/core-darwin-x64@1.7.23': - resolution: {integrity: sha512-GzqHwQ0Y1VyjdI/bBKFX2GKm5HD3PIB6OhuAQtWZMTtEr2yIrlT0YK2T+XKh7oIg31JwxGBeQdBk3KTI7DARmQ==} + '@swc/core-darwin-x64@1.7.21': + resolution: {integrity: sha512-lTsPquqSierQ6jWiWM7NnYXXZGk9zx3NGkPLHjPbcH5BmyiauX0CC/YJYJx7YmS2InRLyALlGmidHkaF4JY28A==} engines: {node: '>=10'} cpu: [x64] os: [darwin] @@ -3310,8 +3354,8 @@ packages: cpu: [x64] os: [darwin] - '@swc/core-linux-arm-gnueabihf@1.7.23': - resolution: {integrity: sha512-qwX4gB41OS6/OZkHcpTqLFGsdmvoZyffnJIlgB/kZKwH3lfeJWzv6vx57zXtNpM/t7GoQEe0VZUVdmNjxSxBZw==} + '@swc/core-linux-arm-gnueabihf@1.7.21': + resolution: {integrity: sha512-AgSd0fnSzAqCvWpzzZCq75z62JVGUkkXEOpfdi99jj/tryPy38KdXJtkVWJmufPXlRHokGTBitalk33WDJwsbA==} engines: {node: '>=10'} cpu: [arm] os: [linux] @@ -3322,8 +3366,8 @@ packages: cpu: [arm] os: [linux] - '@swc/core-linux-arm64-gnu@1.7.23': - resolution: {integrity: sha512-TsrbUZdMaUwzI7+g/8rHPLWbntMKYSu5Bn5IBSqVKPeyqaXxNnlIUnWXgXcUcRAc+T+Y8ADfr7EiFz9iz5DuSA==} + '@swc/core-linux-arm64-gnu@1.7.21': + resolution: {integrity: sha512-l+jw6RQ4Y43/8dIst0c73uQE+W3kCWrCFqMqC/xIuE/iqHOnvYK6YbA1ffOct2dImkHzNiKuoehGqtQAc6cNaQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] @@ -3334,8 +3378,8 @@ packages: cpu: [arm64] os: [linux] - '@swc/core-linux-arm64-musl@1.7.23': - resolution: {integrity: sha512-JEdtwdthazKq4PBz53KSubwwK8MvqODAihGSAzc8u3Unq4ojcvaS8b0CwLBeD+kTQ78HpxOXTt3DsFIxpgaCAA==} + '@swc/core-linux-arm64-musl@1.7.21': + resolution: {integrity: sha512-29KKZXrTo/c9F1JFL9WsNvCa6UCdIVhHP5EfuYhlKbn5/YmSsNFkuHdUtZFEd5U4+jiShXDmgGCtLW2d08LIwg==} engines: {node: '>=10'} cpu: [arm64] os: [linux] @@ -3346,8 +3390,8 @@ packages: cpu: [arm64] os: [linux] - '@swc/core-linux-x64-gnu@1.7.23': - resolution: {integrity: sha512-V51gFPWaVAHbI1yg9ahsoya3aB4uawye3SZ5uQWgcP7wdCdiv60dw4F5nuPJf5Z1oXD3U/BslXuamv8Oh9vXqQ==} + '@swc/core-linux-x64-gnu@1.7.21': + resolution: {integrity: sha512-HsP3JwddvQj5HvnjmOr+Bd5plEm6ccpfP5wUlm3hywzvdVkj+yR29bmD7UwpV/1zCQ60Ry35a7mXhKI6HQxFgw==} engines: {node: '>=10'} cpu: [x64] os: [linux] @@ -3358,8 +3402,8 @@ packages: cpu: [x64] os: [linux] - '@swc/core-linux-x64-musl@1.7.23': - resolution: {integrity: sha512-BBqQi4+UdeRqag3yM4IJjaHG4yc1o3l9ksENHToE0o/u2DT0FY5+K/DiYGZLC1JHbSFzNqRCYsa7DIzRtZ0A1A==} + '@swc/core-linux-x64-musl@1.7.21': + resolution: {integrity: sha512-hYKLVeUTHqvFK628DFJEwxoX6p42T3HaQ4QjNtf3oKhiJWFh9iTRUrN/oCB5YI3R9WMkFkKh+99gZ/Dd0T5lsg==} engines: {node: '>=10'} cpu: [x64] os: [linux] @@ -3370,8 +3414,8 @@ packages: cpu: [x64] os: [linux] - '@swc/core-win32-arm64-msvc@1.7.23': - resolution: {integrity: sha512-JPk6pvCKncL6bXG7p+NLZf8PWx4FakVvKNdwGeMrYunb+yk1IZf7qf9LJk8+GDGF5QviDXPs8opZrTrfsW80fA==} + '@swc/core-win32-arm64-msvc@1.7.21': + resolution: {integrity: sha512-qyWAKW10aMBe6iUqeZ7NAJIswjfggVTUpDINpQGUJhz+pR71YZDidXgZXpaDB84YyDB2JAlRqd1YrLkl7CMiIw==} engines: {node: '>=10'} cpu: [arm64] os: [win32] @@ -3382,8 +3426,8 @@ packages: cpu: [arm64] os: [win32] - '@swc/core-win32-ia32-msvc@1.7.23': - resolution: {integrity: sha512-2Whxi8d+bLQBzJcQ5qYPHlk02YYVGsMVav0fWk+FnX2z1QRREIu1L1xvrpi7gBpjXp6BIU40ya8GiKeekNT2bg==} + '@swc/core-win32-ia32-msvc@1.7.21': + resolution: {integrity: sha512-cy61wS3wgH5mEwBiQ5w6/FnQrchBDAdPsSh0dKSzNmI+4K8hDxS8uzdBycWqJXO0cc+mA77SIlwZC3hP3Kum2g==} engines: {node: '>=10'} cpu: [ia32] os: [win32] @@ -3394,8 +3438,8 @@ packages: cpu: [ia32] os: [win32] - '@swc/core-win32-x64-msvc@1.7.23': - resolution: {integrity: sha512-82fARk4/yJ40kwWKY/gdKDisPdtgJE9jgpl/vkNG3alyJxrCzuNM7+CtiKoYbXLeqM8GQTS3wlvCaJu9oQ8dag==} + '@swc/core-win32-x64-msvc@1.7.21': + resolution: {integrity: sha512-/rexGItJURNJOdae+a48M+loT74nsEU+PyRRVAkZMKNRtLoYFAr0cpDlS5FodIgGunp/nqM0bst4H2w6Y05IKA==} engines: {node: '>=10'} cpu: [x64] os: [win32] @@ -3406,8 +3450,8 @@ packages: cpu: [x64] os: [win32] - '@swc/core@1.7.23': - resolution: {integrity: sha512-VDNkpDvDlreGh2E3tlDj8B3piiuLhhQA/7rIVZpiLUvG1YpucAa6N7iDXA7Gc/+Hah8spaCg/qvEaBkCmcIYCQ==} + '@swc/core@1.7.21': + resolution: {integrity: sha512-7/cN0SZ+y2V6e0hsDD8koGR0QVh7Jl3r756bwaHLLSN+kReoUb/yVcLsA8iTn90JLME3DkQK4CPjxDCQiyMXNg==} engines: {node: '>=10'} peerDependencies: '@swc/helpers': '*' @@ -3527,6 +3571,9 @@ packages: '@tsconfig/node16@1.0.4': resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + '@tsconfig/strictest@2.0.5': + resolution: {integrity: sha512-ec4tjL2Rr0pkZ5hww65c+EEPYwxOi4Ryv+0MtjeaSQRJyq322Q27eOQiFbuNgw2hpL4hB1/W/HBGk3VKS43osg==} + '@turbo/gen@1.13.4': resolution: {integrity: sha512-PK38N1fHhDUyjLi0mUjv0RbX0xXGwDLQeRSGsIlLcVpP1B5fwodSIwIYXc9vJok26Yne94BX5AGjueYsUT3uUw==} hasBin: true @@ -3556,8 +3603,8 @@ packages: '@types/caseless@0.12.5': resolution: {integrity: sha512-hWtVTC2q7hc7xZ/RLbxapMvDMgUnDvKvMOpKal4DrMyfGBUfB1oKaZlIRr6mJL+If3bAP6sV/QneGzF6tJjZDg==} - '@types/chrome@0.0.268': - resolution: {integrity: sha512-7N1QH9buudSJ7sI8Pe4mBHJr5oZ48s0hcanI9w3wgijAlv1OZNUZve9JR4x42dn5lJ5Sm87V1JNfnoh10EnQlA==} + '@types/chrome@0.0.270': + resolution: {integrity: sha512-ADvkowV7YnJfycZZxL2brluZ6STGW+9oKG37B422UePf2PCXuFA/XdERI0T18wtuWPx0tmFeZqq6MOXVk1IC+Q==} '@types/connect@3.4.38': resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} @@ -3670,8 +3717,8 @@ packages: '@types/node@20.14.13': resolution: {integrity: sha512-+bHoGiZb8UiQ0+WEtmph2IWQCjIqg8MDZMAV+ppRRhUZnquF5mQkP/9vpSwJClEiSM/C7fZZExPzfU0vJTyp8w==} - '@types/node@22.5.2': - resolution: {integrity: sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==} + '@types/node@22.5.1': + resolution: {integrity: sha512-KkHsxej0j9IW1KKOOAA/XBA0z08UFSrRQHErzEfA3Vgq57eXIMYboIlHJuYIfd+lwCQjtKqUu3UnmKbtUc9yRw==} '@types/npmlog@4.1.6': resolution: {integrity: sha512-0l3z16vnlJGl2Mi/rgJFrdwfLZ4jfNYgE6ZShEpjqhHuGTqdEzNles03NpYHwUMVYZa+Tj46UxKIEpE78lQ3DQ==} @@ -3697,8 +3744,8 @@ packages: '@types/react@18.3.3': resolution: {integrity: sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==} - '@types/react@18.3.5': - resolution: {integrity: sha512-WeqMfGJLGuLCqHGYRGHxnKrXcTitc6L/nBUWfWPcTarG3t9PsquqUMuVeXZeca+mglY4Vo5GZjCi0A3Or2lnxA==} + '@types/react@18.3.4': + resolution: {integrity: sha512-J7W30FTdfCxDDjmfRM+/JqLHBIyl7xUIp9kwK637FGmY7+mkSFSe6L4jpZzhj5QMfLssSDP4/i75AKkrdC7/Jw==} '@types/request@2.48.12': resolution: {integrity: sha512-G3sY+NpsA9jnwm0ixhAFQSJ3Q9JkpLZpJbI3GMv0mIAT0y3mRabYeINzal5WOChIiaTEGQYlHOKgkaM9EisWHw==} @@ -4485,8 +4532,8 @@ packages: caniuse-lite@1.0.30001643: resolution: {integrity: sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg==} - caniuse-lite@1.0.30001655: - resolution: {integrity: sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==} + caniuse-lite@1.0.30001653: + resolution: {integrity: sha512-XGWQVB8wFQ2+9NZwZ10GxTYC5hk0Fa+q8cSkr0tgvMhYhMHP/QC+WTgrePMDBWiWc/pV+1ik82Al20XOK25Gcw==} cardinal@2.1.1: resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==} @@ -7664,9 +7711,6 @@ packages: picocolors@1.0.1: resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} - picocolors@1.1.0: - resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} - picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} @@ -7842,8 +7886,8 @@ packages: resolution: {integrity: sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==} engines: {node: ^10 || ^12 || >=14} - postcss@8.4.44: - resolution: {integrity: sha512-Aweb9unOEpQ3ezu4Q00DPvvM2ZTUitJdNKeP/+uQgr1IBIqu574IaZoURId7BKtWMREwzKa9OgzPzezWGPWFQw==} + postcss@8.4.41: + resolution: {integrity: sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==} engines: {node: ^10 || ^12 || >=14} postgres-array@2.0.0: @@ -8369,8 +8413,8 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true - rollup@4.21.2: - resolution: {integrity: sha512-e3TapAgYf9xjdLvKQCkQTnbTKd4a6jwlpQSJJFokHGaX2IVjoEqkIIhiQfqsi0cdwlOD+tQGuOd5AJkc5RngBw==} + rollup@4.21.1: + resolution: {integrity: sha512-ZnYyKvscThhgd3M5+Qt3pmhO4jIRR5RGzaSovB6Q7rGNrK5cUncrtLmcTTJVSdcKXyZjW8X8MB0JMSuH9bcAJg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -11440,13 +11484,13 @@ snapshots: optionalDependencies: typescript: 5.5.4 - '@joshwooding/vite-plugin-react-docgen-typescript@0.3.1(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.2)(terser@5.31.6))': + '@joshwooding/vite-plugin-react-docgen-typescript@0.3.1(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.1)(terser@5.31.6))': dependencies: glob: 7.2.3 glob-promise: 4.2.2(glob@7.2.3) magic-string: 0.27.0 react-docgen-typescript: 2.2.2(typescript@5.5.4) - vite: 5.4.2(@types/node@22.5.2)(terser@5.31.6) + vite: 5.4.2(@types/node@22.5.1)(terser@5.31.6) optionalDependencies: typescript: 5.5.4 @@ -11505,15 +11549,15 @@ snapshots: '@types/react': 18.3.3 react: 18.3.1 - '@mui/core-downloads-tracker@6.0.2': {} + '@mui/core-downloads-tracker@6.0.0': {} - '@mui/material@6.0.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/material@6.0.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.6 - '@mui/core-downloads-tracker': 6.0.2 - '@mui/system': 6.0.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + '@mui/core-downloads-tracker': 6.0.0 + '@mui/system': 6.0.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/types': 7.2.16(@types/react@18.3.3) - '@mui/utils': 6.0.2(@types/react@18.3.3)(react@18.3.1) + '@mui/utils': 6.0.0(@types/react@18.3.3)(react@18.3.1) '@popperjs/core': 2.11.8 '@types/react-transition-group': 4.4.11 clsx: 2.1.1 @@ -11528,16 +11572,16 @@ snapshots: '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@types/react': 18.3.3 - '@mui/private-theming@6.0.2(@types/react@18.3.3)(react@18.3.1)': + '@mui/private-theming@6.0.0(@types/react@18.3.3)(react@18.3.1)': dependencies: '@babel/runtime': 7.25.6 - '@mui/utils': 6.0.2(@types/react@18.3.3)(react@18.3.1) + '@mui/utils': 6.0.0(@types/react@18.3.3)(react@18.3.1) prop-types: 15.8.1 react: 18.3.1 optionalDependencies: '@types/react': 18.3.3 - '@mui/styled-engine@6.0.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1)': + '@mui/styled-engine@6.0.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.6 '@emotion/cache': 11.13.1 @@ -11548,13 +11592,13 @@ snapshots: '@emotion/react': 11.13.0(@types/react@18.3.3)(react@18.3.1) '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) - '@mui/system@6.0.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': + '@mui/system@6.0.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': dependencies: '@babel/runtime': 7.25.6 - '@mui/private-theming': 6.0.2(@types/react@18.3.3)(react@18.3.1) - '@mui/styled-engine': 6.0.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1) + '@mui/private-theming': 6.0.0(@types/react@18.3.3)(react@18.3.1) + '@mui/styled-engine': 6.0.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1) '@mui/types': 7.2.16(@types/react@18.3.3) - '@mui/utils': 6.0.2(@types/react@18.3.3)(react@18.3.1) + '@mui/utils': 6.0.0(@types/react@18.3.3)(react@18.3.1) clsx: 2.1.1 csstype: 3.1.3 prop-types: 15.8.1 @@ -11568,7 +11612,7 @@ snapshots: optionalDependencies: '@types/react': 18.3.3 - '@mui/utils@6.0.2(@types/react@18.3.3)(react@18.3.1)': + '@mui/utils@6.0.0(@types/react@18.3.3)(react@18.3.1)': dependencies: '@babel/runtime': 7.25.6 '@mui/types': 7.2.16(@types/react@18.3.3) @@ -11580,7 +11624,7 @@ snapshots: optionalDependencies: '@types/react': 18.3.3 - '@noble/hashes@1.5.0': {} + '@noble/hashes@1.4.0': {} '@nodelib/fs.scandir@2.1.5': dependencies: @@ -11616,111 +11660,112 @@ snapshots: '@penumbra-labs/registry@11.1.0': {} - '@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))': + '@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0))': dependencies: - '@penumbra-zone/protobuf': 6.0.0(@bufbuild/protobuf@1.10.0) + '@penumbra-zone/protobuf': file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) bech32: 2.0.0 - '@penumbra-zone/client@18.1.0(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/transport-dom@7.5.0)': + '@penumbra-zone/client@file:../../penumbra-zone/web/packages/client/penumbra-zone-client-18.1.0.tgz(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0))(@penumbra-zone/transport-dom@file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz)': dependencies: '@bufbuild/protobuf': 1.10.0 '@connectrpc/connect': 1.4.0(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/protobuf': 6.0.0(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/transport-dom': 7.5.0 + '@penumbra-zone/protobuf': file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) + '@penumbra-zone/transport-dom': file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz - '@penumbra-zone/crypto-web@23.0.0(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))': - dependencies: - '@penumbra-zone/types': 22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + ? '@penumbra-zone/crypto-web@file:../../penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz(@penumbra-zone/types@file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))' + : dependencies: + '@penumbra-zone/types': file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) bip39: 3.1.0 crypto-js: 4.2.0 - '@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))': + '@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0))': dependencies: '@bufbuild/protobuf': 1.10.0 - '@penumbra-zone/bech32m': 7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/protobuf': 6.0.0(@bufbuild/protobuf@1.10.0) + '@penumbra-zone/bech32m': file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/protobuf': file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/keys@4.2.1': {} + '@penumbra-zone/keys@file:../../penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz': {} - '@penumbra-zone/perspective@29.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/wasm@27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))))': + '@penumbra-zone/perspective@file:../../penumbra-zone/web/packages/perspective/penumbra-zone-perspective-29.0.0.tgz(7fuqecr2yrpbkm3itnn6ycinyu)': dependencies: '@bufbuild/protobuf': 1.10.0 - '@penumbra-zone/bech32m': 7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/getters': 16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/protobuf': 6.0.0(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/wasm': 27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) + '@penumbra-zone/bech32m': file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/getters': file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/protobuf': file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) + '@penumbra-zone/wasm': file:../../penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz(dfvxwjq7p6j4ra5kf7dmezn2me) - '@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)': + '@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)': dependencies: '@bufbuild/protobuf': 1.10.0 - '@penumbra-zone/query@30.0.0(banmk3erwunubgvg457fwz7rvq)': + '@penumbra-zone/query@file:../../penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz(crriizsah7rfvqmc3fl7vpbgsi)': dependencies: '@bufbuild/protobuf': 1.10.0 '@connectrpc/connect': 1.4.0(@bufbuild/protobuf@1.10.0) '@connectrpc/connect-web': 1.4.0(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/bech32m': 7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/crypto-web': 23.0.0(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) - '@penumbra-zone/getters': 16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/protobuf': 6.0.0(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/types': 22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/wasm': 27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) + '@penumbra-zone/bech32m': file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/crypto-web': file:../../penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz(@penumbra-zone/types@file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0))) + '@penumbra-zone/getters': file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/protobuf': file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) + '@penumbra-zone/types': file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/wasm': file:../../penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz(dfvxwjq7p6j4ra5kf7dmezn2me) exponential-backoff: 3.1.1 - '@penumbra-zone/services@33.0.0(m7lhnv2o565qvcwz2e4vqrdxsi)': + '@penumbra-zone/services@file:../../penumbra-zone/web/packages/services/penumbra-zone-services-33.0.0.tgz(mvcbgda2uftbzu275jidyxd4tu)': dependencies: '@bufbuild/protobuf': 1.10.0 '@connectrpc/connect': 1.4.0(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/bech32m': 7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/crypto-web': 23.0.0(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) - '@penumbra-zone/getters': 16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/protobuf': 6.0.0(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/query': 30.0.0(banmk3erwunubgvg457fwz7rvq) - '@penumbra-zone/storage': 29.0.0(uz3f7wsbv65r4y3vsa3krgv4bu) - '@penumbra-zone/transport-dom': 7.5.0 - '@penumbra-zone/types': 22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/wasm': 27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) - - '@penumbra-zone/storage@29.0.0(uz3f7wsbv65r4y3vsa3krgv4bu)': + '@penumbra-zone/bech32m': file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/crypto-web': file:../../penumbra-zone/web/packages/crypto/penumbra-zone-crypto-web-23.0.0.tgz(@penumbra-zone/types@file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0))) + '@penumbra-zone/getters': file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/keys': file:../../penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz + '@penumbra-zone/protobuf': file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) + '@penumbra-zone/query': file:../../penumbra-zone/web/packages/query/penumbra-zone-query-30.0.0.tgz(crriizsah7rfvqmc3fl7vpbgsi) + '@penumbra-zone/storage': file:../../penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz(agcyfo5gdhxsvhgr7tl4bcgje4) + '@penumbra-zone/transport-dom': file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz + '@penumbra-zone/types': file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/wasm': file:../../penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz(dfvxwjq7p6j4ra5kf7dmezn2me) + + '@penumbra-zone/storage@file:../../penumbra-zone/web/packages/storage/penumbra-zone-storage-29.0.0.tgz(agcyfo5gdhxsvhgr7tl4bcgje4)': dependencies: '@bufbuild/protobuf': 1.10.0 '@penumbra-labs/registry': 11.1.0 - '@penumbra-zone/bech32m': 7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/getters': 16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/protobuf': 6.0.0(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/types': 22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/wasm': 27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))) + '@penumbra-zone/bech32m': file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/getters': file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/protobuf': file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) + '@penumbra-zone/types': file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/wasm': file:../../penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz(dfvxwjq7p6j4ra5kf7dmezn2me) idb: 8.0.0 - '@penumbra-zone/transport-chrome@8.0.1(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/transport-dom@7.5.0)': + '@penumbra-zone/transport-chrome@file:../../penumbra-zone/web/packages/transport-chrome/penumbra-zone-transport-chrome-8.0.1.tgz(@bufbuild/protobuf@1.10.0)(@connectrpc/connect@1.4.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/transport-dom@file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz)': dependencies: '@bufbuild/protobuf': 1.10.0 '@connectrpc/connect': 1.4.0(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/transport-dom': 7.5.0 + '@penumbra-zone/transport-dom': file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz - '@penumbra-zone/transport-dom@7.5.0': + '@penumbra-zone/transport-dom@file:../../penumbra-zone/web/packages/transport-dom/penumbra-zone-transport-dom-7.5.0.tgz': dependencies: '@bufbuild/protobuf': 1.10.0 '@connectrpc/connect': 1.4.0(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))': + '@penumbra-zone/types@file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0))': dependencies: '@bufbuild/protobuf': 1.10.0 - '@penumbra-zone/bech32m': 7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/getters': 16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/protobuf': 6.0.0(@bufbuild/protobuf@1.10.0) + '@penumbra-zone/bech32m': file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/getters': file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/protobuf': file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) bignumber.js: 9.1.2 idb: 8.0.0 zod: 3.23.8 - '@penumbra-zone/wasm@27.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0))(@penumbra-zone/types@22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))': + '@penumbra-zone/wasm@file:../../penumbra-zone/web/packages/wasm/penumbra-zone-wasm-27.0.0.tgz(dfvxwjq7p6j4ra5kf7dmezn2me)': dependencies: '@bufbuild/protobuf': 1.10.0 - '@penumbra-zone/bech32m': 7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) - '@penumbra-zone/protobuf': 6.0.0(@bufbuild/protobuf@1.10.0) - '@penumbra-zone/types': 22.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@16.0.0(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@7.0.0(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@6.0.0(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/bech32m': file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) + '@penumbra-zone/protobuf': file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0) + '@penumbra-zone/types': file:../../penumbra-zone/web/packages/types/penumbra-zone-types-22.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/getters@file:../../penumbra-zone/web/packages/getters/penumbra-zone-getters-16.0.0.tgz(@bufbuild/protobuf@1.10.0)(@penumbra-zone/bech32m@file:../../penumbra-zone/web/packages/bech32m/penumbra-zone-bech32m-7.0.0.tgz(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)))(@penumbra-zone/protobuf@file:../../penumbra-zone/web/packages/protobuf/penumbra-zone-protobuf-6.0.0.tgz(@bufbuild/protobuf@1.10.0)) optionalDependencies: - '@penumbra-zone/keys': 4.2.1 + '@penumbra-zone/keys': file:../../penumbra-zone/web/packages/keys/penumbra-zone-keys-4.2.1.tgz '@pkgjs/parseargs@0.11.0': optional: true @@ -12461,108 +12506,108 @@ snapshots: '@remix-run/router@1.18.0': {} - '@rollup/pluginutils@5.1.0(rollup@4.21.2)': + '@rollup/pluginutils@5.1.0(rollup@4.21.1)': dependencies: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 optionalDependencies: - rollup: 4.21.2 + rollup: 4.21.1 '@rollup/rollup-android-arm-eabi@4.19.1': optional: true - '@rollup/rollup-android-arm-eabi@4.21.2': + '@rollup/rollup-android-arm-eabi@4.21.1': optional: true '@rollup/rollup-android-arm64@4.19.1': optional: true - '@rollup/rollup-android-arm64@4.21.2': + '@rollup/rollup-android-arm64@4.21.1': optional: true '@rollup/rollup-darwin-arm64@4.19.1': optional: true - '@rollup/rollup-darwin-arm64@4.21.2': + '@rollup/rollup-darwin-arm64@4.21.1': optional: true '@rollup/rollup-darwin-x64@4.19.1': optional: true - '@rollup/rollup-darwin-x64@4.21.2': + '@rollup/rollup-darwin-x64@4.21.1': optional: true '@rollup/rollup-linux-arm-gnueabihf@4.19.1': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.21.2': + '@rollup/rollup-linux-arm-gnueabihf@4.21.1': optional: true '@rollup/rollup-linux-arm-musleabihf@4.19.1': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.21.2': + '@rollup/rollup-linux-arm-musleabihf@4.21.1': optional: true '@rollup/rollup-linux-arm64-gnu@4.19.1': optional: true - '@rollup/rollup-linux-arm64-gnu@4.21.2': + '@rollup/rollup-linux-arm64-gnu@4.21.1': optional: true '@rollup/rollup-linux-arm64-musl@4.19.1': optional: true - '@rollup/rollup-linux-arm64-musl@4.21.2': + '@rollup/rollup-linux-arm64-musl@4.21.1': optional: true '@rollup/rollup-linux-powerpc64le-gnu@4.19.1': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.21.2': + '@rollup/rollup-linux-powerpc64le-gnu@4.21.1': optional: true '@rollup/rollup-linux-riscv64-gnu@4.19.1': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.21.2': + '@rollup/rollup-linux-riscv64-gnu@4.21.1': optional: true '@rollup/rollup-linux-s390x-gnu@4.19.1': optional: true - '@rollup/rollup-linux-s390x-gnu@4.21.2': + '@rollup/rollup-linux-s390x-gnu@4.21.1': optional: true '@rollup/rollup-linux-x64-gnu@4.19.1': optional: true - '@rollup/rollup-linux-x64-gnu@4.21.2': + '@rollup/rollup-linux-x64-gnu@4.21.1': optional: true '@rollup/rollup-linux-x64-musl@4.19.1': optional: true - '@rollup/rollup-linux-x64-musl@4.21.2': + '@rollup/rollup-linux-x64-musl@4.21.1': optional: true '@rollup/rollup-win32-arm64-msvc@4.19.1': optional: true - '@rollup/rollup-win32-arm64-msvc@4.21.2': + '@rollup/rollup-win32-arm64-msvc@4.21.1': optional: true '@rollup/rollup-win32-ia32-msvc@4.19.1': optional: true - '@rollup/rollup-win32-ia32-msvc@4.21.2': + '@rollup/rollup-win32-ia32-msvc@4.21.1': optional: true '@rollup/rollup-win32-x64-msvc@4.19.1': optional: true - '@rollup/rollup-win32-x64-msvc@4.21.2': + '@rollup/rollup-win32-x64-msvc@4.21.1': optional: true '@sinclair/typebox@0.27.8': {} @@ -12634,11 +12679,11 @@ snapshots: '@storybook/global': 5.0.0 storybook: 8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)) - '@storybook/addon-interactions@8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)))(vitest@2.0.5(@types/node@22.5.2)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6))': + '@storybook/addon-interactions@8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)))(vitest@2.0.5(@types/node@22.5.1)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6))': dependencies: '@storybook/global': 5.0.0 '@storybook/instrumenter': 8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9))) - '@storybook/test': 8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)))(vitest@2.0.5(@types/node@22.5.2)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6)) + '@storybook/test': 8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)))(vitest@2.0.5(@types/node@22.5.1)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6)) polished: 4.3.1 storybook: 8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)) ts-dedent: 2.2.0 @@ -12670,13 +12715,13 @@ snapshots: storybook: 8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)) ts-dedent: 2.2.0 - '@storybook/addon-postcss@2.0.0(webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5))': + '@storybook/addon-postcss@2.0.0(webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5))': dependencies: '@storybook/node-logger': 6.5.16 - css-loader: 3.6.0(webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5)) + css-loader: 3.6.0(webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5)) postcss: 7.0.39 - postcss-loader: 4.3.0(postcss@7.0.39)(webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5)) - style-loader: 1.3.0(webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5)) + postcss-loader: 4.3.0(postcss@7.0.39)(webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5)) + style-loader: 1.3.0(webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5)) transitivePeerDependencies: - webpack @@ -12737,7 +12782,7 @@ snapshots: - prettier - supports-color - '@storybook/builder-vite@8.1.1(encoding@0.1.13)(prettier@3.3.3)(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.2)(terser@5.31.6))': + '@storybook/builder-vite@8.1.1(encoding@0.1.13)(prettier@3.3.3)(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.1)(terser@5.31.6))': dependencies: '@storybook/channels': 8.1.1 '@storybook/client-logger': 8.1.1 @@ -12756,7 +12801,7 @@ snapshots: fs-extra: 11.2.0 magic-string: 0.30.11 ts-dedent: 2.2.0 - vite: 5.4.2(@types/node@22.5.2)(terser@5.31.6) + vite: 5.4.2(@types/node@22.5.1)(terser@5.31.6) optionalDependencies: typescript: 5.5.4 transitivePeerDependencies: @@ -12971,10 +13016,10 @@ snapshots: react-dom: 18.3.1(react@18.3.1) storybook: 8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)) - '@storybook/react-vite@8.1.1(encoding@0.1.13)(prettier@3.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.21.2)(typescript@5.5.4)(vite@5.4.2(@types/node@20.14.13)(terser@5.31.6))': + '@storybook/react-vite@8.1.1(encoding@0.1.13)(prettier@3.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.21.1)(typescript@5.5.4)(vite@5.4.2(@types/node@20.14.13)(terser@5.31.6))': dependencies: '@joshwooding/vite-plugin-react-docgen-typescript': 0.3.1(typescript@5.5.4)(vite@5.4.2(@types/node@20.14.13)(terser@5.31.6)) - '@rollup/pluginutils': 5.1.0(rollup@4.21.2) + '@rollup/pluginutils': 5.1.0(rollup@4.21.1) '@storybook/builder-vite': 8.1.1(encoding@0.1.13)(prettier@3.3.3)(typescript@5.5.4)(vite@5.4.2(@types/node@20.14.13)(terser@5.31.6)) '@storybook/node-logger': 8.1.1 '@storybook/react': 8.1.1(encoding@0.1.13)(prettier@3.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.5.4) @@ -12996,11 +13041,11 @@ snapshots: - typescript - vite-plugin-glimmerx - '@storybook/react-vite@8.1.1(encoding@0.1.13)(prettier@3.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.21.2)(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.2)(terser@5.31.6))': + '@storybook/react-vite@8.1.1(encoding@0.1.13)(prettier@3.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.21.1)(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.1)(terser@5.31.6))': dependencies: - '@joshwooding/vite-plugin-react-docgen-typescript': 0.3.1(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.2)(terser@5.31.6)) - '@rollup/pluginutils': 5.1.0(rollup@4.21.2) - '@storybook/builder-vite': 8.1.1(encoding@0.1.13)(prettier@3.3.3)(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.2)(terser@5.31.6)) + '@joshwooding/vite-plugin-react-docgen-typescript': 0.3.1(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.1)(terser@5.31.6)) + '@rollup/pluginutils': 5.1.0(rollup@4.21.1) + '@storybook/builder-vite': 8.1.1(encoding@0.1.13)(prettier@3.3.3)(typescript@5.5.4)(vite@5.4.2(@types/node@22.5.1)(terser@5.31.6)) '@storybook/node-logger': 8.1.1 '@storybook/react': 8.1.1(encoding@0.1.13)(prettier@3.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.5.4) '@storybook/types': 8.1.1 @@ -13011,7 +13056,7 @@ snapshots: react-dom: 18.3.1(react@18.3.1) resolve: 1.22.8 tsconfig-paths: 4.2.0 - vite: 5.4.2(@types/node@22.5.2)(terser@5.31.6) + vite: 5.4.2(@types/node@22.5.1)(terser@5.31.6) transitivePeerDependencies: - '@preact/preset-vite' - encoding @@ -13082,12 +13127,12 @@ snapshots: optionalDependencies: typescript: 5.5.4 - '@storybook/test@8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)))(vitest@2.0.5(@types/node@22.5.2)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6))': + '@storybook/test@8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9)))(vitest@2.0.5(@types/node@22.5.1)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6))': dependencies: '@storybook/csf': 0.1.11 '@storybook/instrumenter': 8.2.6(storybook@8.2.6(@babel/preset-env@7.25.0(@babel/core@7.24.9))) '@testing-library/dom': 10.1.0 - '@testing-library/jest-dom': 6.4.5(vitest@2.0.5(@types/node@22.5.2)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6)) + '@testing-library/jest-dom': 6.4.5(vitest@2.0.5(@types/node@22.5.1)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6)) '@testing-library/user-event': 14.5.2(@testing-library/dom@10.1.0) '@vitest/expect': 1.6.0 '@vitest/spy': 1.6.0 @@ -13110,81 +13155,81 @@ snapshots: '@types/express': 4.17.21 file-system-cache: 2.3.0 - '@swc/core-darwin-arm64@1.7.23': + '@swc/core-darwin-arm64@1.7.21': optional: true '@swc/core-darwin-arm64@1.7.3': optional: true - '@swc/core-darwin-x64@1.7.23': + '@swc/core-darwin-x64@1.7.21': optional: true '@swc/core-darwin-x64@1.7.3': optional: true - '@swc/core-linux-arm-gnueabihf@1.7.23': + '@swc/core-linux-arm-gnueabihf@1.7.21': optional: true '@swc/core-linux-arm-gnueabihf@1.7.3': optional: true - '@swc/core-linux-arm64-gnu@1.7.23': + '@swc/core-linux-arm64-gnu@1.7.21': optional: true '@swc/core-linux-arm64-gnu@1.7.3': optional: true - '@swc/core-linux-arm64-musl@1.7.23': + '@swc/core-linux-arm64-musl@1.7.21': optional: true '@swc/core-linux-arm64-musl@1.7.3': optional: true - '@swc/core-linux-x64-gnu@1.7.23': + '@swc/core-linux-x64-gnu@1.7.21': optional: true '@swc/core-linux-x64-gnu@1.7.3': optional: true - '@swc/core-linux-x64-musl@1.7.23': + '@swc/core-linux-x64-musl@1.7.21': optional: true '@swc/core-linux-x64-musl@1.7.3': optional: true - '@swc/core-win32-arm64-msvc@1.7.23': + '@swc/core-win32-arm64-msvc@1.7.21': optional: true '@swc/core-win32-arm64-msvc@1.7.3': optional: true - '@swc/core-win32-ia32-msvc@1.7.23': + '@swc/core-win32-ia32-msvc@1.7.21': optional: true '@swc/core-win32-ia32-msvc@1.7.3': optional: true - '@swc/core-win32-x64-msvc@1.7.23': + '@swc/core-win32-x64-msvc@1.7.21': optional: true '@swc/core-win32-x64-msvc@1.7.3': optional: true - '@swc/core@1.7.23': + '@swc/core@1.7.21': dependencies: '@swc/counter': 0.1.3 '@swc/types': 0.1.12 optionalDependencies: - '@swc/core-darwin-arm64': 1.7.23 - '@swc/core-darwin-x64': 1.7.23 - '@swc/core-linux-arm-gnueabihf': 1.7.23 - '@swc/core-linux-arm64-gnu': 1.7.23 - '@swc/core-linux-arm64-musl': 1.7.23 - '@swc/core-linux-x64-gnu': 1.7.23 - '@swc/core-linux-x64-musl': 1.7.23 - '@swc/core-win32-arm64-msvc': 1.7.23 - '@swc/core-win32-ia32-msvc': 1.7.23 - '@swc/core-win32-x64-msvc': 1.7.23 + '@swc/core-darwin-arm64': 1.7.21 + '@swc/core-darwin-x64': 1.7.21 + '@swc/core-linux-arm-gnueabihf': 1.7.21 + '@swc/core-linux-arm64-gnu': 1.7.21 + '@swc/core-linux-arm64-musl': 1.7.21 + '@swc/core-linux-x64-gnu': 1.7.21 + '@swc/core-linux-x64-musl': 1.7.21 + '@swc/core-win32-arm64-msvc': 1.7.21 + '@swc/core-win32-ia32-msvc': 1.7.21 + '@swc/core-win32-x64-msvc': 1.7.21 optional: true '@swc/core@1.7.3': @@ -13245,7 +13290,7 @@ snapshots: lz-string: 1.5.0 pretty-format: 27.5.1 - '@testing-library/jest-dom@6.4.5(vitest@2.0.5(@types/node@22.5.2)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6))': + '@testing-library/jest-dom@6.4.5(vitest@2.0.5(@types/node@22.5.1)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6))': dependencies: '@adobe/css-tools': 4.4.0 '@babel/runtime': 7.25.0 @@ -13256,7 +13301,7 @@ snapshots: lodash: 4.17.21 redent: 3.0.0 optionalDependencies: - vitest: 2.0.5(@types/node@22.5.2)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6) + vitest: 2.0.5(@types/node@22.5.1)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6) '@testing-library/jest-dom@6.4.8': dependencies: @@ -13283,11 +13328,11 @@ snapshots: dependencies: '@testing-library/dom': 10.1.0 - '@textea/json-viewer@3.4.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@textea/json-viewer@3.4.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@emotion/react': 11.13.0(@types/react@18.3.3)(react@18.3.1) '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) - '@mui/material': 6.0.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/material': 6.0.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) clsx: 2.1.1 copy-to-clipboard: 3.3.3 react: 18.3.1 @@ -13309,7 +13354,9 @@ snapshots: '@tsconfig/node16@1.0.4': {} - '@turbo/gen@1.13.4(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)': + '@tsconfig/strictest@2.0.5': {} + + '@turbo/gen@1.13.4(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)': dependencies: '@turbo/workspaces': 1.13.4 chalk: 2.4.2 @@ -13319,7 +13366,7 @@ snapshots: minimatch: 9.0.5 node-plop: 0.26.3 proxy-agent: 6.4.0 - ts-node: 10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4) + ts-node: 10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4) update-check: 1.5.4 validate-npm-package-name: 5.0.1 transitivePeerDependencies: @@ -13374,7 +13421,7 @@ snapshots: '@types/caseless@0.12.5': {} - '@types/chrome@0.0.268': + '@types/chrome@0.0.270': dependencies: '@types/filesystem': 0.0.36 '@types/har-format': 1.2.15 @@ -13491,7 +13538,7 @@ snapshots: dependencies: undici-types: 5.26.5 - '@types/node@22.5.2': + '@types/node@22.5.1': dependencies: undici-types: 6.19.8 @@ -13513,14 +13560,14 @@ snapshots: '@types/react-transition-group@4.4.11': dependencies: - '@types/react': 18.3.5 + '@types/react': 18.3.4 '@types/react@18.3.3': dependencies: '@types/prop-types': 15.7.12 csstype: 3.1.3 - '@types/react@18.3.5': + '@types/react@18.3.4': dependencies: '@types/prop-types': 15.7.12 csstype: 3.1.3 @@ -13563,11 +13610,11 @@ snapshots: '@types/uuid@9.0.8': {} - '@types/webpack@5.28.5(@swc/core@1.7.23)(webpack-cli@5.1.4(webpack@5.93.0))': + '@types/webpack@5.28.5(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4(webpack@5.93.0))': dependencies: '@types/node': 20.14.13 tapable: 2.2.1 - webpack: 5.92.1(@swc/core@1.7.23)(webpack-cli@5.1.4(webpack@5.93.0)) + webpack: 5.92.1(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4(webpack@5.93.0)) transitivePeerDependencies: - '@swc/core' - esbuild @@ -13702,10 +13749,10 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-react-swc@3.7.0(vite@5.3.5(@types/node@22.5.2)(terser@5.31.6))': + '@vitejs/plugin-react-swc@3.7.0(vite@5.3.5(@types/node@22.5.1)(terser@5.31.6))': dependencies: '@swc/core': 1.7.3 - vite: 5.3.5(@types/node@22.5.2)(terser@5.31.6) + vite: 5.3.5(@types/node@22.5.1)(terser@5.31.6) transitivePeerDependencies: - '@swc/helpers' @@ -13862,19 +13909,19 @@ snapshots: '@webassemblyjs/ast': 1.12.1 '@xtuc/long': 4.2.2 - '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4))': + '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4))': dependencies: - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack@5.93.0) - '@webpack-cli/info@2.0.2(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4))': + '@webpack-cli/info@2.0.2(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4))': dependencies: - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack@5.93.0) - '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4))': + '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4))': dependencies: - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack@5.93.0) '@xtuc/ieee754@1.2.0': {} @@ -14319,7 +14366,7 @@ snapshots: bip39@3.1.0: dependencies: - '@noble/hashes': 1.5.0 + '@noble/hashes': 1.4.0 bl@4.1.0: dependencies: @@ -14398,7 +14445,7 @@ snapshots: browserslist@4.23.3: dependencies: - caniuse-lite: 1.0.30001655 + caniuse-lite: 1.0.30001653 electron-to-chromium: 1.5.13 node-releases: 2.0.18 update-browserslist-db: 1.1.0(browserslist@4.23.3) @@ -14502,7 +14549,7 @@ snapshots: caniuse-lite@1.0.30001643: {} - caniuse-lite@1.0.30001655: {} + caniuse-lite@1.0.30001653: {} cardinal@2.1.1: dependencies: @@ -14858,7 +14905,7 @@ snapshots: dependencies: toggle-selection: 1.0.6 - copy-webpack-plugin@12.0.2(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)): + copy-webpack-plugin@12.0.2(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)): dependencies: fast-glob: 3.3.2 glob-parent: 6.0.2 @@ -14866,7 +14913,7 @@ snapshots: normalize-path: 3.0.0 schema-utils: 4.2.0 serialize-javascript: 6.0.2 - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) core-js-compat@3.37.1: dependencies: @@ -14943,7 +14990,7 @@ snapshots: css-color-keywords@1.0.0: {} - css-loader@3.6.0(webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5)): + css-loader@3.6.0(webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5)): dependencies: camelcase: 5.3.1 cssesc: 3.0.0 @@ -14958,9 +15005,9 @@ snapshots: postcss-value-parser: 4.2.0 schema-utils: 2.7.1 semver: 6.3.1 - webpack: 5.94.0(@swc/core@1.7.23)(esbuild@0.21.5) + webpack: 5.94.0(@swc/core@1.7.21)(esbuild@0.21.5) - css-loader@7.1.2(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)): + css-loader@7.1.2(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)): dependencies: icss-utils: 5.1.0(postcss@8.4.40) postcss: 8.4.40 @@ -14971,7 +15018,7 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) css-select@4.3.0: dependencies: @@ -15624,11 +15671,11 @@ snapshots: - supports-color - typescript - eslint-plugin-tailwindcss@3.17.4(tailwindcss@3.4.10(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4))): + eslint-plugin-tailwindcss@3.17.4(tailwindcss@3.4.10(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4))): dependencies: fast-glob: 3.3.2 postcss: 8.4.40 - tailwindcss: 3.4.10(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)) + tailwindcss: 3.4.10(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)) eslint-plugin-turbo@2.0.12(eslint@9.8.0): dependencies: @@ -16633,7 +16680,7 @@ snapshots: html-tags@3.3.1: {} - html-webpack-plugin@5.6.0(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)): + html-webpack-plugin@5.6.0(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -16641,7 +16688,7 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) htmlparser2@6.1.0: dependencies: @@ -18242,8 +18289,6 @@ snapshots: picocolors@1.0.1: {} - picocolors@1.1.0: {} - picomatch@2.3.1: {} pify@2.3.0: {} @@ -18320,9 +18365,9 @@ snapshots: read-cache: 1.0.0 resolve: 1.22.8 - postcss-import@15.1.0(postcss@8.4.44): + postcss-import@15.1.0(postcss@8.4.41): dependencies: - postcss: 8.4.44 + postcss: 8.4.41 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.8 @@ -18332,36 +18377,36 @@ snapshots: camelcase-css: 2.0.1 postcss: 8.4.40 - postcss-js@4.0.1(postcss@8.4.44): + postcss-js@4.0.1(postcss@8.4.41): dependencies: camelcase-css: 2.0.1 - postcss: 8.4.44 + postcss: 8.4.41 - postcss-load-config@4.0.2(postcss@8.4.40)(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)): + postcss-load-config@4.0.2(postcss@8.4.40)(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)): dependencies: lilconfig: 3.1.2 yaml: 2.5.0 optionalDependencies: postcss: 8.4.40 - ts-node: 10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4) + ts-node: 10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4) - postcss-load-config@4.0.2(postcss@8.4.40)(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@22.5.2)(typescript@5.5.4)): + postcss-load-config@4.0.2(postcss@8.4.40)(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@22.5.1)(typescript@5.5.4)): dependencies: lilconfig: 3.1.2 yaml: 2.5.0 optionalDependencies: postcss: 8.4.40 - ts-node: 10.9.2(@swc/core@1.7.23)(@types/node@22.5.2)(typescript@5.5.4) + ts-node: 10.9.2(@swc/core@1.7.21)(@types/node@22.5.1)(typescript@5.5.4) - postcss-load-config@4.0.2(postcss@8.4.44)(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)): + postcss-load-config@4.0.2(postcss@8.4.41)(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)): dependencies: lilconfig: 3.1.2 yaml: 2.5.0 optionalDependencies: - postcss: 8.4.44 - ts-node: 10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4) + postcss: 8.4.41 + ts-node: 10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4) - postcss-loader@4.3.0(postcss@7.0.39)(webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5)): + postcss-loader@4.3.0(postcss@7.0.39)(webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5)): dependencies: cosmiconfig: 7.1.0 klona: 2.0.6 @@ -18369,16 +18414,16 @@ snapshots: postcss: 7.0.39 schema-utils: 3.3.0 semver: 7.6.3 - webpack: 5.94.0(@swc/core@1.7.23)(esbuild@0.21.5) + webpack: 5.94.0(@swc/core@1.7.21)(esbuild@0.21.5) - postcss-loader@8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)): + postcss-loader@8.1.1(postcss@8.4.40)(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)): dependencies: cosmiconfig: 9.0.0(typescript@5.5.4) jiti: 1.21.6 postcss: 8.4.40 semver: 7.6.3 optionalDependencies: - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) transitivePeerDependencies: - typescript @@ -18429,9 +18474,9 @@ snapshots: postcss: 8.4.40 postcss-selector-parser: 6.1.1 - postcss-nested@6.2.0(postcss@8.4.44): + postcss-nested@6.2.0(postcss@8.4.41): dependencies: - postcss: 8.4.44 + postcss: 8.4.41 postcss-selector-parser: 6.1.1 postcss-selector-parser@6.1.1: @@ -18463,10 +18508,10 @@ snapshots: picocolors: 1.0.1 source-map-js: 1.2.0 - postcss@8.4.44: + postcss@8.4.41: dependencies: nanoid: 3.3.7 - picocolors: 1.1.0 + picocolors: 1.0.1 source-map-js: 1.2.0 postgres-array@2.0.0: {} @@ -19069,26 +19114,26 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.19.1 fsevents: 2.3.3 - rollup@4.21.2: + rollup@4.21.1: dependencies: '@types/estree': 1.0.5 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.21.2 - '@rollup/rollup-android-arm64': 4.21.2 - '@rollup/rollup-darwin-arm64': 4.21.2 - '@rollup/rollup-darwin-x64': 4.21.2 - '@rollup/rollup-linux-arm-gnueabihf': 4.21.2 - '@rollup/rollup-linux-arm-musleabihf': 4.21.2 - '@rollup/rollup-linux-arm64-gnu': 4.21.2 - '@rollup/rollup-linux-arm64-musl': 4.21.2 - '@rollup/rollup-linux-powerpc64le-gnu': 4.21.2 - '@rollup/rollup-linux-riscv64-gnu': 4.21.2 - '@rollup/rollup-linux-s390x-gnu': 4.21.2 - '@rollup/rollup-linux-x64-gnu': 4.21.2 - '@rollup/rollup-linux-x64-musl': 4.21.2 - '@rollup/rollup-win32-arm64-msvc': 4.21.2 - '@rollup/rollup-win32-ia32-msvc': 4.21.2 - '@rollup/rollup-win32-x64-msvc': 4.21.2 + '@rollup/rollup-android-arm-eabi': 4.21.1 + '@rollup/rollup-android-arm64': 4.21.1 + '@rollup/rollup-darwin-arm64': 4.21.1 + '@rollup/rollup-darwin-x64': 4.21.1 + '@rollup/rollup-linux-arm-gnueabihf': 4.21.1 + '@rollup/rollup-linux-arm-musleabihf': 4.21.1 + '@rollup/rollup-linux-arm64-gnu': 4.21.1 + '@rollup/rollup-linux-arm64-musl': 4.21.1 + '@rollup/rollup-linux-powerpc64le-gnu': 4.21.1 + '@rollup/rollup-linux-riscv64-gnu': 4.21.1 + '@rollup/rollup-linux-s390x-gnu': 4.21.1 + '@rollup/rollup-linux-x64-gnu': 4.21.1 + '@rollup/rollup-linux-x64-musl': 4.21.1 + '@rollup/rollup-win32-arm64-msvc': 4.21.1 + '@rollup/rollup-win32-ia32-msvc': 4.21.1 + '@rollup/rollup-win32-x64-msvc': 4.21.1 fsevents: 2.3.3 router@1.3.8: @@ -19561,15 +19606,15 @@ snapshots: stubs@3.0.0: {} - style-loader@1.3.0(webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5)): + style-loader@1.3.0(webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5)): dependencies: loader-utils: 2.0.4 schema-utils: 2.7.1 - webpack: 5.94.0(@swc/core@1.7.23)(esbuild@0.21.5) + webpack: 5.94.0(@swc/core@1.7.21)(esbuild@0.21.5) - style-loader@4.0.0(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)): + style-loader@4.0.0(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)): dependencies: - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) styled-components@6.1.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: @@ -19680,11 +19725,11 @@ snapshots: tailwind-merge@2.4.0: {} - tailwindcss-animate@1.0.7(tailwindcss@3.4.7(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4))): + tailwindcss-animate@1.0.7(tailwindcss@3.4.7(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4))): dependencies: - tailwindcss: 3.4.7(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)) + tailwindcss: 3.4.7(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)) - tailwindcss@3.4.10(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)): + tailwindcss@3.4.10(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -19699,19 +19744,19 @@ snapshots: micromatch: 4.0.8 normalize-path: 3.0.0 object-hash: 3.0.0 - picocolors: 1.1.0 - postcss: 8.4.44 - postcss-import: 15.1.0(postcss@8.4.44) - postcss-js: 4.0.1(postcss@8.4.44) - postcss-load-config: 4.0.2(postcss@8.4.44)(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)) - postcss-nested: 6.2.0(postcss@8.4.44) + picocolors: 1.0.1 + postcss: 8.4.41 + postcss-import: 15.1.0(postcss@8.4.41) + postcss-js: 4.0.1(postcss@8.4.41) + postcss-load-config: 4.0.2(postcss@8.4.41)(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)) + postcss-nested: 6.2.0(postcss@8.4.41) postcss-selector-parser: 6.1.2 resolve: 1.22.8 sucrase: 3.35.0 transitivePeerDependencies: - ts-node - tailwindcss@3.4.7(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)): + tailwindcss@3.4.7(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -19730,7 +19775,7 @@ snapshots: postcss: 8.4.40 postcss-import: 15.1.0(postcss@8.4.40) postcss-js: 4.0.1(postcss@8.4.40) - postcss-load-config: 4.0.2(postcss@8.4.40)(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4)) + postcss-load-config: 4.0.2(postcss@8.4.40)(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4)) postcss-nested: 6.2.0(postcss@8.4.40) postcss-selector-parser: 6.1.1 resolve: 1.22.8 @@ -19738,7 +19783,7 @@ snapshots: transitivePeerDependencies: - ts-node - tailwindcss@3.4.7(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@22.5.2)(typescript@5.5.4)): + tailwindcss@3.4.7(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@22.5.1)(typescript@5.5.4)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -19757,7 +19802,7 @@ snapshots: postcss: 8.4.40 postcss-import: 15.1.0(postcss@8.4.40) postcss-js: 4.0.1(postcss@8.4.40) - postcss-load-config: 4.0.2(postcss@8.4.40)(ts-node@10.9.2(@swc/core@1.7.23)(@types/node@22.5.2)(typescript@5.5.4)) + postcss-load-config: 4.0.2(postcss@8.4.40)(ts-node@10.9.2(@swc/core@1.7.21)(@types/node@22.5.1)(typescript@5.5.4)) postcss-nested: 6.2.0(postcss@8.4.40) postcss-selector-parser: 6.1.1 resolve: 1.22.8 @@ -19829,39 +19874,41 @@ snapshots: term-size@2.2.1: {} - terser-webpack-plugin@5.3.10(@swc/core@1.7.23)(esbuild@0.21.5)(webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5)): + terser-webpack-plugin@5.3.10(@swc/core@1.7.21)(esbuild@0.20.2)(webpack@5.92.1(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4(webpack@5.93.0))): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.3 - webpack: 5.94.0(@swc/core@1.7.23)(esbuild@0.21.5) + webpack: 5.92.1(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4(webpack@5.93.0)) optionalDependencies: - '@swc/core': 1.7.23 - esbuild: 0.21.5 + '@swc/core': 1.7.21 + esbuild: 0.20.2 - terser-webpack-plugin@5.3.10(@swc/core@1.7.23)(webpack@5.92.1(@swc/core@1.7.23)(webpack-cli@5.1.4(webpack@5.93.0))): + terser-webpack-plugin@5.3.10(@swc/core@1.7.21)(esbuild@0.20.2)(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.3 - webpack: 5.92.1(@swc/core@1.7.23)(webpack-cli@5.1.4(webpack@5.93.0)) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) optionalDependencies: - '@swc/core': 1.7.23 + '@swc/core': 1.7.21 + esbuild: 0.20.2 - terser-webpack-plugin@5.3.10(@swc/core@1.7.23)(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)): + terser-webpack-plugin@5.3.10(@swc/core@1.7.21)(esbuild@0.21.5)(webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.3 - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.7.21)(esbuild@0.21.5) optionalDependencies: - '@swc/core': 1.7.23 + '@swc/core': 1.7.21 + esbuild: 0.21.5 terser@5.31.3: dependencies: @@ -19983,7 +20030,7 @@ snapshots: ts-interface-checker@0.1.13: {} - ts-loader@9.5.1(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)): + ts-loader@9.5.1(typescript@5.5.4)(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)): dependencies: chalk: 4.1.2 enhanced-resolve: 5.17.1 @@ -19991,9 +20038,9 @@ snapshots: semver: 7.6.3 source-map: 0.7.4 typescript: 5.5.4 - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) - ts-node@10.9.2(@swc/core@1.7.23)(@types/node@20.14.13)(typescript@5.5.4): + ts-node@10.9.2(@swc/core@1.7.21)(@types/node@20.14.13)(typescript@5.5.4): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 @@ -20011,16 +20058,16 @@ snapshots: v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: - '@swc/core': 1.7.23 + '@swc/core': 1.7.21 - ts-node@10.9.2(@swc/core@1.7.23)(@types/node@22.5.2)(typescript@5.5.4): + ts-node@10.9.2(@swc/core@1.7.21)(@types/node@22.5.1)(typescript@5.5.4): 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': 22.5.2 + '@types/node': 22.5.1 acorn: 8.12.1 acorn-walk: 8.3.3 arg: 4.1.3 @@ -20031,7 +20078,7 @@ snapshots: v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: - '@swc/core': 1.7.23 + '@swc/core': 1.7.21 ts-toolbelt@9.6.0: {} @@ -20427,13 +20474,13 @@ snapshots: - terser optional: true - vite-node@2.0.5(@types/node@22.5.2)(terser@5.31.6): + vite-node@2.0.5(@types/node@22.5.1)(terser@5.31.6): dependencies: cac: 6.7.14 debug: 4.3.6 pathe: 1.1.2 tinyrainbow: 1.2.0 - vite: 5.4.2(@types/node@22.5.2)(terser@5.31.6) + vite: 5.4.2(@types/node@22.5.1)(terser@5.31.6) transitivePeerDependencies: - '@types/node' - less @@ -20456,33 +20503,33 @@ snapshots: fsevents: 2.3.3 terser: 5.31.6 - vite@5.3.5(@types/node@22.5.2)(terser@5.31.6): + vite@5.3.5(@types/node@22.5.1)(terser@5.31.6): dependencies: esbuild: 0.21.5 postcss: 8.4.40 rollup: 4.19.1 optionalDependencies: - '@types/node': 22.5.2 + '@types/node': 22.5.1 fsevents: 2.3.3 terser: 5.31.6 vite@5.4.2(@types/node@20.14.13)(terser@5.31.6): dependencies: esbuild: 0.21.5 - postcss: 8.4.44 - rollup: 4.21.2 + postcss: 8.4.41 + rollup: 4.21.1 optionalDependencies: '@types/node': 20.14.13 fsevents: 2.3.3 terser: 5.31.6 - vite@5.4.2(@types/node@22.5.2)(terser@5.31.6): + vite@5.4.2(@types/node@22.5.1)(terser@5.31.6): dependencies: esbuild: 0.21.5 - postcss: 8.4.44 - rollup: 4.21.2 + postcss: 8.4.41 + rollup: 4.21.1 optionalDependencies: - '@types/node': 22.5.2 + '@types/node': 22.5.1 fsevents: 2.3.3 terser: 5.31.6 @@ -20557,7 +20604,7 @@ snapshots: - terser optional: true - vitest@2.0.5(@types/node@22.5.2)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6): + vitest@2.0.5(@types/node@22.5.1)(@vitest/browser@1.6.0(playwright@1.45.3)(vitest@1.6.0))(jsdom@24.1.1)(terser@5.31.6): dependencies: '@ampproject/remapping': 2.3.0 '@vitest/expect': 2.0.5 @@ -20575,11 +20622,11 @@ snapshots: tinybench: 2.9.0 tinypool: 1.0.1 tinyrainbow: 1.2.0 - vite: 5.4.2(@types/node@22.5.2)(terser@5.31.6) - vite-node: 2.0.5(@types/node@22.5.2)(terser@5.31.6) + vite: 5.4.2(@types/node@22.5.1)(terser@5.31.6) + vite-node: 2.0.5(@types/node@22.5.1)(terser@5.31.6) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 22.5.2 + '@types/node': 22.5.1 '@vitest/browser': 1.6.0(playwright@1.45.3)(vitest@1.6.0) jsdom: 24.1.1 transitivePeerDependencies: @@ -20664,9 +20711,9 @@ snapshots: webpack-cli@5.1.4(webpack@5.93.0): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) - '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) - '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) + '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) + '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) + '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4(webpack@5.93.0))(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) colorette: 2.0.20 commander: 10.0.1 cross-spawn: 7.0.3 @@ -20675,7 +20722,7 @@ snapshots: import-local: 3.2.0 interpret: 3.1.1 rechoir: 0.8.0 - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) webpack-merge: 5.10.0 webpack-merge@5.10.0: @@ -20688,13 +20735,13 @@ snapshots: webpack-virtual-modules@0.6.2: {} - webpack-watch-external-files-plugin@3.1.0(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)): + webpack-watch-external-files-plugin@3.1.0(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)): dependencies: glob: 10.4.2 path: 0.12.7 - webpack: 5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4) + webpack: 5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4) - webpack@5.92.1(@swc/core@1.7.23)(webpack-cli@5.1.4(webpack@5.93.0)): + webpack@5.92.1(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4(webpack@5.93.0)): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.5 @@ -20717,7 +20764,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.7.23)(webpack@5.92.1(@swc/core@1.7.23)(webpack-cli@5.1.4(webpack@5.93.0))) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.21)(esbuild@0.20.2)(webpack@5.92.1(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4(webpack@5.93.0))) watchpack: 2.4.1 webpack-sources: 3.2.3 optionalDependencies: @@ -20727,7 +20774,7 @@ snapshots: - esbuild - uglify-js - webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4): + webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.5 @@ -20750,7 +20797,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.7.23)(webpack@5.93.0(@swc/core@1.7.23)(webpack-cli@5.1.4)) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.21)(esbuild@0.20.2)(webpack@5.93.0(@swc/core@1.7.21)(esbuild@0.20.2)(webpack-cli@5.1.4)) watchpack: 2.4.1 webpack-sources: 3.2.3 optionalDependencies: @@ -20760,7 +20807,7 @@ snapshots: - esbuild - uglify-js - webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5): + webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5): dependencies: '@types/estree': 1.0.5 '@webassemblyjs/ast': 1.12.1 @@ -20782,7 +20829,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.7.23)(esbuild@0.21.5)(webpack@5.94.0(@swc/core@1.7.23)(esbuild@0.21.5)) + terser-webpack-plugin: 5.3.10(@swc/core@1.7.21)(esbuild@0.21.5)(webpack@5.94.0(@swc/core@1.7.21)(esbuild@0.21.5)) watchpack: 2.4.2 webpack-sources: 3.2.3 transitivePeerDependencies: