diff options
| author | Adam Soltys <[email protected]> | 2024-09-02 15:46:40 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2024-09-02 15:46:40 -0700 |
| commit | b83f941f3e583e91b8a3896a4ed867ed0cee34ce (patch) | |
| tree | 24b942426c548c9b95f45947f373b2308337acde | |
| parent | a89d4ee9b9bf0c15505a58803585f1847731983e (diff) | |
| download | coinos-ui-b83f941f3e583e91b8a3896a4ed867ed0cee34ce.tar.gz coinos-ui-b83f941f3e583e91b8a3896a4ed867ed0cee34ce.zip | |
wipsc-wallet
| -rwxr-xr-x | bun.lockb | bin | 160396 -> 160370 bytes | |||
| -rw-r--r-- | package.json | 3 | ||||
| -rw-r--r-- | src/lib/wallet.ts | 10 | ||||
| -rw-r--r-- | src/routes/(app)/[username]/settings/[...tab]/_security.svelte | 53 |
4 files changed, 40 insertions, 26 deletions
| Binary files differ diff --git a/package.json b/package.json index d710f239..d821c60f 100644 --- a/package.json +++ b/package.json @@ -2,8 +2,8 @@ "name": "my-app", "version": "0.0.1", "devDependencies": { - "@asoltys/nostr-tools": "^2.1.7", "@scure/base": "^1.1.1", + "@scure/bip32": "^1.4.0", "@scure/bip39": "^1.2.1", "@sveltejs/adapter-node": "^2.0.0", "@sveltejs/kit": "^2.5.22", @@ -21,6 +21,7 @@ "leaflet": "^1.9.3", "leaflet.markercluster": "^1.5.3", "maplibre-gl": "^3.3.1", + "nostr-tools": "^2.7.2", "postcss": "^8.4.20", "prettier": "2", "prettier-plugin-svelte": "^2.10.1", diff --git a/src/lib/wallet.ts b/src/lib/wallet.ts new file mode 100644 index 00000000..c5ef4b4f --- /dev/null +++ b/src/lib/wallet.ts @@ -0,0 +1,10 @@ +import { getMnemonic } from "$lib/nostr"; +import { HDKey } from "@scure/bip32"; +import { mnemonicToSeed } from "@scure/bip39"; + +export let xpub = async (user) => { + let mnemonic = await getMnemonic(user); + let seed = await mnemonicToSeed(mnemonic); + const hdkey1 = HDKey.fromMasterSeed(seed); + console.log("HD", hdkey1); +}; diff --git a/src/routes/(app)/[username]/settings/[...tab]/_security.svelte b/src/routes/(app)/[username]/settings/[...tab]/_security.svelte index 6b44f830..13fa03c6 100644 --- a/src/routes/(app)/[username]/settings/[...tab]/_security.svelte +++ b/src/routes/(app)/[username]/settings/[...tab]/_security.svelte @@ -9,9 +9,12 @@ import { pin as current } from "$lib/store"; import { invalidate } from "$app/navigation"; import { page } from "$app/stores"; + import { xpub } from "$lib/wallet"; export let user, rates, submit; + xpub(user); + let confirming2fa, disabling2fa, importing, @@ -252,31 +255,31 @@ {/if} </div> -<!-- <div> --> -<!-- <label for="seedphrase" class="font-bold" --> -<!-- >{$t("user.settings.seedPhrase")}</label --> -<!-- > --> -<!-- --> -<!-- <p class="text-secondary mb-1"> --> -<!-- {$t("user.settings.seedDescription")} --> -<!-- </p> --> -<!-- --> -<!-- <button type="button" class="primary" on:click={toggleSeed}> --> -<!-- <Icon icon="warning" style="mr-1 w-6 my-auto" /> --> -<!-- {revealSeed ? $t("user.settings.hideSeed") : $t("user.settings.revealSeed")} --> -<!-- </button> --> -<!-- --> -<!-- {#if revealSeed} --> -<!-- <div class="text-lg"> --> -<!-- {mnemonic} --> -<!-- </div> --> -<!-- --> -<!-- <button type="button" class="primary" on:click={() => copy(mnemonic)}> --> -<!-- <Icon icon="copy" style="mr-1 w-6 my-auto" /> --> -<!-- Copy --> -<!-- </button> --> -<!-- {/if} --> -<!-- </div> --> +<div> + <label for="seedphrase" class="font-bold" + >{$t("user.settings.seedPhrase")}</label + > + + <p class="text-secondary mb-1"> + {$t("user.settings.seedDescription")} + </p> + + <button type="button" class="primary" on:click={toggleSeed}> + <Icon icon="warning" style="mr-1 w-6 my-auto" /> + {revealSeed ? $t("user.settings.hideSeed") : $t("user.settings.revealSeed")} + </button> + + {#if revealSeed} + <div class="text-lg"> + {mnemonic} + </div> + + <button type="button" class="primary" on:click={() => copy(mnemonic)}> + <Icon icon="copy" style="mr-1 w-6 my-auto" /> + Copy + </button> + {/if} +</div> <div> <label for="seedphrase" class="font-bold" |
