diff options
| author | Adam Soltys <[email protected]> | 2026-03-13 22:34:54 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-03-13 22:34:54 -0700 |
| commit | 0e326d6bca826a4d9bec7e6e1b159b0a2e7b6b5c (patch) | |
| tree | 771e25be86f48855a53ba696b281b4d7190b9471 /src/routes | |
| parent | 734e846847c478406a9fb9083be057a731d9f4cf (diff) | |
| download | coinos-ui-0e326d6bca826a4d9bec7e6e1b159b0a2e7b6b5c.tar.gz coinos-ui-0e326d6bca826a4d9bec7e6e1b159b0a2e7b6b5c.zip | |
lazy imports
Diffstat (limited to 'src/routes')
| -rw-r--r-- | src/routes/(app)/+layout.svelte | 10 | ||||
| -rw-r--r-- | src/routes/(app)/account/[id]/seed/+page.svelte | 4 | ||||
| -rw-r--r-- | src/routes/(app)/account/ark/+page.svelte | 5 | ||||
| -rw-r--r-- | src/routes/(app)/account/new/+page.svelte | 5 | ||||
| -rw-r--r-- | src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.svelte | 5 | ||||
| -rw-r--r-- | src/routes/(static)/login/+page.svelte | 2 | ||||
| -rw-r--r-- | src/routes/(static)/register/auth/+page.svelte | 4 | ||||
| -rw-r--r-- | src/routes/test/ark/send/+server.ts | 5 |
8 files changed, 26 insertions, 14 deletions
diff --git a/src/routes/(app)/+layout.svelte b/src/routes/(app)/+layout.svelte index c01ed368..4ef4e6c1 100644 --- a/src/routes/(app)/+layout.svelte +++ b/src/routes/(app)/+layout.svelte @@ -1,6 +1,8 @@ <script lang="ts"> - import { getWallet, subscribeToAsp, syncTransactions, settle, refresh, arkkey, arkaid, sendArk, arkSending, vaultForwarding, autoUnlockArk, getServiceWorkerWallet, cleanupServiceWorkerWallet } from "$lib/ark"; + import { arkkey, arkaid } from "$lib/ark"; import { syncBitcoinVault } from "$lib/bitcoinSync"; + + const ark = () => import("$lib/ark"); import { SvelteToast } from "@zerodevx/svelte-toast"; import { onDestroy, onMount } from "svelte"; import { close, connect, send, socket } from "$lib/socket"; @@ -91,6 +93,7 @@ let arkForwarding = false; let arkSync = async (source = "unknown") => { + const { syncTransactions, sendArk, arkSending, vaultForwarding } = await ark(); if (arkSyncing || arkSending) { return; } @@ -139,6 +142,7 @@ if (!key || arkInitializedKey === key) return; arkInitializedKey = key; + const { getWallet, subscribeToAsp, syncTransactions, settle, refresh, vaultForwarding, getServiceWorkerWallet } = await ark(); const wallet = await getWallet(); if (wallet) { localStorage.setItem("arkkey:uid", user.id); @@ -239,7 +243,7 @@ } // Auto-unlock ark wallet if silent entropy is available - if (!$arkkey) autoUnlockArk(); + if (!$arkkey) ark().then(({ autoUnlockArk }) => autoUnlockArk()); // Auto-unlock nostr key if silent entropy is available import("$lib/seed").then(({ autoUnlockNostr }) => autoUnlockNostr(user.pubkey)); @@ -309,7 +313,7 @@ if (arkRefreshTimer) clearInterval(arkRefreshTimer); if (btcSyncTimer) clearInterval(btcSyncTimer); aspStopFunc?.(); - cleanupServiceWorkerWallet(); + ark().then(({ cleanupServiceWorkerWallet }) => cleanupServiceWorkerWallet()); } }); </script> diff --git a/src/routes/(app)/account/[id]/seed/+page.svelte b/src/routes/(app)/account/[id]/seed/+page.svelte index c67a2ff4..35e09cc5 100644 --- a/src/routes/(app)/account/[id]/seed/+page.svelte +++ b/src/routes/(app)/account/[id]/seed/+page.svelte @@ -46,9 +46,9 @@ }; let deriveNsec = async (m: string) => { - const [{ HDKey }, { nip19 }] = await Promise.all([ + const [{ HDKey }, nip19] = await Promise.all([ import("@scure/bip32"), - import("nostr-tools"), + import("nostr-tools/nip19"), ]); const { versions } = await import("$lib/utils"); const seed = await mnemonicToSeed(m); diff --git a/src/routes/(app)/account/ark/+page.svelte b/src/routes/(app)/account/ark/+page.svelte index 268109fa..e2b1223f 100644 --- a/src/routes/(app)/account/ark/+page.svelte +++ b/src/routes/(app)/account/ark/+page.svelte @@ -32,7 +32,10 @@ let deriveAndCreate = async (prfKey: ArrayBuffer) => { try { - const { SingleKey, Wallet } = await import("@arkade-os/sdk"); + const [{ SingleKey }, { Wallet }] = await Promise.all([ + import("@arkade-os/sdk/identity/singleKey.js"), + import("@arkade-os/sdk/wallet/wallet.js"), + ]); const entropy = new Uint8Array(prfKey).slice(0, 16); const mnemonic = entropyToMnemonic(entropy, wordlist); const seed = await mnemonicToSeed(mnemonic); diff --git a/src/routes/(app)/account/new/+page.svelte b/src/routes/(app)/account/new/+page.svelte index 310660a5..c05109a5 100644 --- a/src/routes/(app)/account/new/+page.svelte +++ b/src/routes/(app)/account/new/+page.svelte @@ -32,7 +32,10 @@ rememberPrfKey(entropy, defaultRememberForMs); } - const { SingleKey, Wallet } = await import("@arkade-os/sdk"); + const [{ SingleKey }, { Wallet }] = await Promise.all([ + import("@arkade-os/sdk/identity/singleKey.js"), + import("@arkade-os/sdk/wallet/wallet.js"), + ]); const ent = new Uint8Array(entropy).slice(0, 16); const mnemonic = entropyToMnemonic(ent, wordlist); const seed = await mnemonicToSeed(mnemonic); diff --git a/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.svelte b/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.svelte index 7b2c9ccf..d562b6e8 100644 --- a/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.svelte +++ b/src/routes/(app)/send/bitcoin/[address]/[amount]/[...feeRate]/+page.svelte @@ -11,9 +11,7 @@ import { rate } from "$lib/store"; import { applyAction } from "$app/forms"; import { hex as hexUtil } from "@scure/base"; - import * as btc from "@scure/btc-signer"; import { getCachedPrfKey } from "$lib/passwordCache"; - import { sendArkViaForward } from "$lib/ark"; import { prfDecrypt, isPrfEncrypted } from "$lib/crypto"; import Amount from "$comp/Amount.svelte"; @@ -63,6 +61,7 @@ loading = true; error = ""; try { + const { sendArkViaForward } = await import("$lib/ark"); const p = await sendArkViaForward({ serverArkAddress: data.serverArkAddress, amount: parseInt(amount), @@ -94,7 +93,7 @@ let signTxWithPrf = async (prfKey: ArrayBuffer) => { const [{ Transaction }, { HDKey }, { entropyToMnemonic, mnemonicToSeed }, { wordlist }] = await Promise.all([ - import("@scure/btc-signer"), + import("@scure/btc-signer/transaction.js"), import("@scure/bip32"), import("@scure/bip39"), import("@scure/bip39/wordlists/english.js"), diff --git a/src/routes/(static)/login/+page.svelte b/src/routes/(static)/login/+page.svelte index 8cb4cf45..0132ac75 100644 --- a/src/routes/(static)/login/+page.svelte +++ b/src/routes/(static)/login/+page.svelte @@ -117,7 +117,7 @@ // Challenge-response path: sign event with derived key, no password sent cancelForm(); - const { finalizeEvent } = await import("nostr-tools"); + const { finalizeEvent } = await import("nostr-tools/pure"); const event = finalizeEvent( { kind: 27235, diff --git a/src/routes/(static)/register/auth/+page.svelte b/src/routes/(static)/register/auth/+page.svelte index 0aeee6de..49dfe2a1 100644 --- a/src/routes/(static)/register/auth/+page.svelte +++ b/src/routes/(static)/register/auth/+page.svelte @@ -166,7 +166,7 @@ let nostrPubkey: string | undefined; try { const { deriveNostrKey } = await import("$lib/seed"); - const { nip19 } = await import("nostr-tools"); + const nip19 = await import("nostr-tools/nip19"); const nostr = await deriveNostrKey(canonicalKey); localStorage.setItem("nsec", nip19.nsecEncode(nostr.sk)); nostrPubkey = nostr.pubkey; @@ -255,7 +255,7 @@ rememberPrfKey(canonicalKey, defaultRememberForMs); if (nostrSk) { - const { nip19 } = await import("nostr-tools"); + const nip19 = await import("nostr-tools/nip19"); localStorage.setItem("nsec", nip19.nsecEncode(nostrSk)); } } catch (e) { diff --git a/src/routes/test/ark/send/+server.ts b/src/routes/test/ark/send/+server.ts index 8562c6b1..02e99720 100644 --- a/src/routes/test/ark/send/+server.ts +++ b/src/routes/test/ark/send/+server.ts @@ -13,7 +13,10 @@ const getWallet = async () => { throw new Error("ARK_SERVER_WALLET_PRIVATE_KEY is not configured"); } - const { SingleKey, Wallet } = await import("@arkade-os/sdk"); + const [{ SingleKey }, { Wallet }] = await Promise.all([ + import("@arkade-os/sdk/identity/singleKey.js"), + import("@arkade-os/sdk/wallet/wallet.js"), + ]); const identity = SingleKey.fromHex(privateKey); walletPromise = Wallet.create({ identity, arkServerUrl }); } |
