From 80c9a163f12fcce41855c0cb1e43e7feda9f0411 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 7 Feb 2025 09:10:42 +0000 Subject: [PATCH 1/8] Next RC version bump for all changed packages --- packages/lasereyes-core/package.json | 2 +- packages/lasereyes-react/package.json | 2 +- packages/lasereyes/package.json | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/lasereyes-core/package.json b/packages/lasereyes-core/package.json index 5fc22e8..67ac20c 100644 --- a/packages/lasereyes-core/package.json +++ b/packages/lasereyes-core/package.json @@ -1,7 +1,7 @@ { "name": "@omnisat/lasereyes-core", "private": false, - "version": "0.0.60", + "version": "0.0.61-rc.0", "type": "module", "main": "./dist/index.umd.cjs", "module": "./dist/index.js", diff --git a/packages/lasereyes-react/package.json b/packages/lasereyes-react/package.json index d9a0496..91c88f9 100644 --- a/packages/lasereyes-react/package.json +++ b/packages/lasereyes-react/package.json @@ -1,7 +1,7 @@ { "name": "@omnisat/lasereyes-react", "private": false, - "version": "0.0.55", + "version": "0.0.56-rc.0", "type": "module", "main": "./dist/index.umd.cjs", "module": "./dist/index.js", diff --git a/packages/lasereyes/package.json b/packages/lasereyes/package.json index f9ecc49..900f0e5 100644 --- a/packages/lasereyes/package.json +++ b/packages/lasereyes/package.json @@ -20,7 +20,7 @@ "url": "https://github.com/omnisat/lasereyes-mono.git" }, "private": false, - "version": "0.0.138", + "version": "0.0.139-rc.0", "type": "module", "main": "./dist/index.umd.cjs", "module": "./dist/index.js", @@ -56,4 +56,4 @@ "publishConfig": { "access": "public" } -} \ No newline at end of file +} From 83e24b362f1f3d331fb37ebff057c82d94cbd2f4 Mon Sep 17 00:00:00 2001 From: hathbanger Date: Sun, 9 Feb 2025 09:54:58 +0100 Subject: [PATCH 2/8] fix oyl requestAccounts --- packages/lasereyes-core/src/client/providers/oyl.ts | 10 +++++----- packages/lasereyes-core/src/lib/inscribe.ts | 1 - 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/lasereyes-core/src/client/providers/oyl.ts b/packages/lasereyes-core/src/client/providers/oyl.ts index febfe12..15cdf9c 100644 --- a/packages/lasereyes-core/src/client/providers/oyl.ts +++ b/packages/lasereyes-core/src/client/providers/oyl.ts @@ -147,10 +147,10 @@ export default class OylProvider extends WalletProvider { broadcast?: boolean | undefined ): Promise< | { - signedPsbtHex: string | undefined - signedPsbtBase64: string | undefined - txId?: string | undefined - } + signedPsbtHex: string | undefined + signedPsbtBase64: string | undefined + txId?: string | undefined + } | undefined > { const { psbt, txid } = await this.library.signPsbt({ @@ -186,7 +186,7 @@ export default class OylProvider extends WalletProvider { } async requestAccounts(): Promise { - return await this.library.requestAccounts() + return [this.$store.get().address, this.$store.get().paymentAddress] } async switchNetwork(): Promise { diff --git a/packages/lasereyes-core/src/lib/inscribe.ts b/packages/lasereyes-core/src/lib/inscribe.ts index f441927..d114d42 100644 --- a/packages/lasereyes-core/src/lib/inscribe.ts +++ b/packages/lasereyes-core/src/lib/inscribe.ts @@ -180,7 +180,6 @@ export const getCommitPsbt = async ({ let counter = 0 for await (const utxo of filteredUtxos) { const paymentAddressType = getAddressType(paymentAddress, network) - console.log({ paymentAddressType }) psbt.addInput({ hash: utxo.txid, index: utxo.vout, From b908622b11f41f60c1deec75a090f2467cf6929f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 9 Feb 2025 08:57:11 +0000 Subject: [PATCH 3/8] RC version bump for all changed packages --- packages/lasereyes-core/package.json | 2 +- packages/lasereyes/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/lasereyes-core/package.json b/packages/lasereyes-core/package.json index 67ac20c..25aaf47 100644 --- a/packages/lasereyes-core/package.json +++ b/packages/lasereyes-core/package.json @@ -1,7 +1,7 @@ { "name": "@omnisat/lasereyes-core", "private": false, - "version": "0.0.61-rc.0", + "version": "0.0.61-rc.1", "type": "module", "main": "./dist/index.umd.cjs", "module": "./dist/index.js", diff --git a/packages/lasereyes/package.json b/packages/lasereyes/package.json index 900f0e5..c3beb60 100644 --- a/packages/lasereyes/package.json +++ b/packages/lasereyes/package.json @@ -20,7 +20,7 @@ "url": "https://github.com/omnisat/lasereyes-mono.git" }, "private": false, - "version": "0.0.139-rc.0", + "version": "0.0.139-rc.1", "type": "module", "main": "./dist/index.umd.cjs", "module": "./dist/index.js", From 785b393930312d63ae82a0dc10513eab1069d6c3 Mon Sep 17 00:00:00 2001 From: hathbanger Date: Sun, 9 Feb 2025 19:52:14 +0100 Subject: [PATCH 4/8] fix oyl getPublicKey --- packages/lasereyes-core/src/client/providers/oyl.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/lasereyes-core/src/client/providers/oyl.ts b/packages/lasereyes-core/src/client/providers/oyl.ts index 15cdf9c..bc79698 100644 --- a/packages/lasereyes-core/src/client/providers/oyl.ts +++ b/packages/lasereyes-core/src/client/providers/oyl.ts @@ -171,7 +171,11 @@ export default class OylProvider extends WalletProvider { } async getPublicKey() { - return await this.library?.getPublicKey() + const { nativeSegwit, taproot } = await this.library.getAddresses() + if (!nativeSegwit || !taproot) throw new Error('No accounts found') + this.$store.setKey('publicKey', taproot.publicKey) + this.$store.setKey('paymentPublicKey', nativeSegwit.publicKey) + return taproot.publicKey } async getBalance() { const { total } = await this.library.getBalance() From af6758f2e13ea2cd15621092e51ee976ed433a1e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 9 Feb 2025 18:56:01 +0000 Subject: [PATCH 5/8] RC version bump for all changed packages --- packages/lasereyes-core/package.json | 2 +- packages/lasereyes/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/lasereyes-core/package.json b/packages/lasereyes-core/package.json index 25aaf47..915c402 100644 --- a/packages/lasereyes-core/package.json +++ b/packages/lasereyes-core/package.json @@ -1,7 +1,7 @@ { "name": "@omnisat/lasereyes-core", "private": false, - "version": "0.0.61-rc.1", + "version": "0.0.61-rc.2", "type": "module", "main": "./dist/index.umd.cjs", "module": "./dist/index.js", diff --git a/packages/lasereyes/package.json b/packages/lasereyes/package.json index c3beb60..12a3c34 100644 --- a/packages/lasereyes/package.json +++ b/packages/lasereyes/package.json @@ -20,7 +20,7 @@ "url": "https://github.com/omnisat/lasereyes-mono.git" }, "private": false, - "version": "0.0.139-rc.1", + "version": "0.0.139-rc.2", "type": "module", "main": "./dist/index.umd.cjs", "module": "./dist/index.js", From ae1bfc0fa6740ce70d69f79018b8213ca98513c6 Mon Sep 17 00:00:00 2001 From: Ufedojo Atabo Date: Mon, 10 Feb 2025 11:30:31 +0100 Subject: [PATCH 6/8] fix wallet persistence issues --- .../src/client/providers/leather.ts | 31 +++++++++------- .../src/client/providers/okx.ts | 22 +++++------- .../src/client/providers/orange.ts | 25 +++++++------ .../src/client/providers/oyl.ts | 27 +++++++------- .../src/client/providers/sparrow.ts | 35 +++++++++++-------- .../src/client/providers/unisat.ts | 2 -- 6 files changed, 75 insertions(+), 67 deletions(-) diff --git a/packages/lasereyes-core/src/client/providers/leather.ts b/packages/lasereyes-core/src/client/providers/leather.ts index 371b119..76276fd 100644 --- a/packages/lasereyes-core/src/client/providers/leather.ts +++ b/packages/lasereyes-core/src/client/providers/leather.ts @@ -16,7 +16,11 @@ import { persistentMap } from '@nanostores/persistent' import { LaserEyesStoreType } from '../types' import { SIGNET, TESTNET, TESTNET4 } from '../../constants' import { RpcErrorCode } from 'sats-connect' -import { keysToPersist, PersistedKey } from '../utils' +import { + handleStateChangePersistence, + keysToPersist, + PersistedKey, +} from '../utils' const LEATHER_WALLET_PERSISTENCE_KEY = 'LEATHER_CONNECTED_WALLET_STATE' @@ -46,8 +50,15 @@ export default class LeatherProvider extends WalletProvider { restorePersistedValues() { const vals = this.$valueStore.get() for (const key of keysToPersist) { + if (key === 'balance') { + this.$store.setKey(key, BigInt(vals[key])) + } this.$store.setKey(key, vals[key]) } + this.$store.setKey( + 'accounts', + [vals.address, vals.paymentAddress].filter(Boolean) + ) } watchStateChange( @@ -55,16 +66,12 @@ export default class LeatherProvider extends WalletProvider { _: LaserEyesStoreType | undefined, changedKey: keyof LaserEyesStoreType | undefined ) { - if (changedKey && newState.provider === LEATHER) { - if (changedKey === 'balance') { - this.$valueStore.setKey('balance', newState.balance?.toString() ?? '') - } else if ((keysToPersist as readonly string[]).includes(changedKey)) { - this.$valueStore.setKey( - changedKey as PersistedKey, - newState[changedKey]?.toString() ?? '' - ) - } - } + handleStateChangePersistence( + LEATHER, + newState, + changedKey, + this.$valueStore + ) } initialize() { @@ -144,8 +151,6 @@ export default class LeatherProvider extends WalletProvider { this.$store.setKey('paymentAddress', segwitAddress.address) this.$store.setKey('publicKey', taprootAddress.publicKey) this.$store.setKey('paymentPublicKey', segwitAddress.publicKey) - this.$store.setKey('provider', LEATHER) - this.$store.setKey('connected', true) } async getNetwork() { diff --git a/packages/lasereyes-core/src/client/providers/okx.ts b/packages/lasereyes-core/src/client/providers/okx.ts index d83e631..a84bcad 100644 --- a/packages/lasereyes-core/src/client/providers/okx.ts +++ b/packages/lasereyes-core/src/client/providers/okx.ts @@ -15,7 +15,7 @@ import { } from '../..' import { listenKeys, MapStore } from 'nanostores' import { persistentMap } from '@nanostores/persistent' -import { keysToPersist, PersistedKey } from '../utils' +import { handleStateChangePersistence, keysToPersist, PersistedKey } from '../utils' const OKX_WALLET_PERSISTENCE_KEY = 'OKX_CONNECTED_WALLET_STATE' @@ -56,8 +56,15 @@ export default class OkxProvider extends WalletProvider { restorePersistedValues() { const vals = this.$valueStore.get() for (const key of keysToPersist) { + if (key === 'balance') { + this.$store.setKey(key, BigInt(vals[key])) + } this.$store.setKey(key, vals[key]) } + this.$store.setKey( + 'accounts', + [vals.address, vals.paymentAddress].filter(Boolean) + ) } watchStateChange( @@ -65,16 +72,7 @@ export default class OkxProvider extends WalletProvider { _: LaserEyesStoreType | undefined, changedKey: keyof LaserEyesStoreType | undefined ) { - if (changedKey && newState.provider === OKX) { - if (changedKey === 'balance') { - this.$valueStore.setKey('balance', newState.balance?.toString() ?? '') - } else if ((keysToPersist as readonly string[]).includes(changedKey)) { - this.$valueStore.setKey( - changedKey as PersistedKey, - newState[changedKey]?.toString() ?? '' - ) - } - } + handleStateChangePersistence(OKX, newState, changedKey, this.$valueStore) } initialize(): void { @@ -127,8 +125,6 @@ export default class OkxProvider extends WalletProvider { this.$store.setKey('publicKey', okxAccounts.publicKey) this.$store.setKey('paymentPublicKey', okxAccounts.publicKey) this.$store.setKey('accounts', [okxAccounts]) - this.$store.setKey('provider', OKX) - this.$store.setKey('connected', true) } catch (e) { throw e } diff --git a/packages/lasereyes-core/src/client/providers/orange.ts b/packages/lasereyes-core/src/client/providers/orange.ts index 0df9007..8c3c5f7 100644 --- a/packages/lasereyes-core/src/client/providers/orange.ts +++ b/packages/lasereyes-core/src/client/providers/orange.ts @@ -32,7 +32,7 @@ import { import { MapStore, listenKeys } from 'nanostores' import { persistentMap } from '@nanostores/persistent' -import { keysToPersist, PersistedKey } from '../utils' +import { handleStateChangePersistence, keysToPersist, PersistedKey } from '../utils' const { signMessage: signMessageOrange, sendBtcTransaction: sendBtcTxOrange } = orange @@ -64,8 +64,15 @@ export default class OrangeProvider extends WalletProvider { restorePersistedValues() { const vals = this.$valueStore.get() for (const key of keysToPersist) { + if (key === 'balance') { + this.$store.setKey(key, BigInt(vals[key])) + } this.$store.setKey(key, vals[key]) } + this.$store.setKey( + 'accounts', + [vals.address, vals.paymentAddress].filter(Boolean) + ) } watchStateChange( @@ -73,16 +80,12 @@ export default class OrangeProvider extends WalletProvider { _: LaserEyesStoreType | undefined, changedKey: keyof LaserEyesStoreType | undefined ) { - if (changedKey && newState.provider === ORANGE) { - if (changedKey === 'balance') { - this.$valueStore.setKey('balance', newState.balance?.toString() ?? '') - } else if ((keysToPersist as readonly string[]).includes(changedKey)) { - this.$valueStore.setKey( - changedKey as PersistedKey, - newState[changedKey]?.toString() ?? '' - ) - } - } + handleStateChangePersistence( + ORANGE, + newState, + changedKey, + this.$valueStore + ) } initialize(): void { diff --git a/packages/lasereyes-core/src/client/providers/oyl.ts b/packages/lasereyes-core/src/client/providers/oyl.ts index bc79698..7185771 100644 --- a/packages/lasereyes-core/src/client/providers/oyl.ts +++ b/packages/lasereyes-core/src/client/providers/oyl.ts @@ -6,7 +6,7 @@ import { OYL } from '../../constants/wallets' import { listenKeys, MapStore } from 'nanostores' import { persistentMap } from '@nanostores/persistent' import { LaserEyesStoreType } from '../types' -import { keysToPersist, PersistedKey } from '../utils' +import { handleStateChangePersistence, keysToPersist, PersistedKey } from '../utils' const OYL_WALLET_PERSISTENCE_KEY = 'OYL_CONNECTED_WALLET_STATE' @@ -36,8 +36,15 @@ export default class OylProvider extends WalletProvider { restorePersistedValues() { const vals = this.$valueStore.get() for (const key of keysToPersist) { + if (key === 'balance') { + this.$store.setKey(key, BigInt(vals[key])) + } this.$store.setKey(key, vals[key]) } + this.$store.setKey( + 'accounts', + [vals.address, vals.paymentAddress].filter(Boolean) + ) } watchStateChange( @@ -45,16 +52,12 @@ export default class OylProvider extends WalletProvider { _: LaserEyesStoreType | undefined, changedKey: keyof LaserEyesStoreType | undefined ) { - if (changedKey && newState.provider === OYL) { - if (changedKey === 'balance') { - this.$valueStore.setKey('balance', newState.balance?.toString() ?? '') - } else if ((keysToPersist as readonly string[]).includes(changedKey)) { - this.$valueStore.setKey( - changedKey as PersistedKey, - newState[changedKey]?.toString() ?? '' - ) - } - } + handleStateChangePersistence( + OYL, + newState, + changedKey, + this.$valueStore + ) } initialize() { @@ -108,8 +111,6 @@ export default class OylProvider extends WalletProvider { this.$store.setKey('paymentAddress', nativeSegwit.address) this.$store.setKey('publicKey', taproot.publicKey) this.$store.setKey('paymentPublicKey', nativeSegwit.publicKey) - this.$store.setKey('provider', OYL) - this.$store.setKey('connected', true) } async getNetwork() { diff --git a/packages/lasereyes-core/src/client/providers/sparrow.ts b/packages/lasereyes-core/src/client/providers/sparrow.ts index a7158a8..df39eca 100644 --- a/packages/lasereyes-core/src/client/providers/sparrow.ts +++ b/packages/lasereyes-core/src/client/providers/sparrow.ts @@ -8,7 +8,11 @@ import { getBTCBalance, isMainnetNetwork, } from '../../lib/helpers' -import { keysToPersist, PersistedKey } from '../utils' +import { + handleStateChangePersistence, + keysToPersist, + PersistedKey, +} from '../utils' import { persistentMap } from '@nanostores/persistent' import { LaserEyesStoreType, SparrowWalletProvider } from '../types' import { DefaultSparrowWalletProvider } from '../helpers/sparrow' @@ -82,23 +86,26 @@ export default class SparrowProvider extends WalletProvider { _: LaserEyesStoreType | undefined, changedKey: keyof LaserEyesStoreType | undefined ) { - if (changedKey && newState.provider === SPARROW) { - if (changedKey === 'balance') { - this.$valueStore.setKey('balance', newState.balance?.toString() ?? '') - } else if ((keysToPersist as readonly string[]).includes(changedKey)) { - this.$valueStore.setKey( - changedKey as PersistedKey, - newState[changedKey]?.toString() ?? '' - ) - } - } + handleStateChangePersistence( + SPARROW, + newState, + changedKey, + this.$valueStore + ) } restorePersistedValues() { const vals = this.$valueStore.get() for (const key of keysToPersist) { + if (key === 'balance') { + this.$store.setKey(key, BigInt(vals[key])) + } this.$store.setKey(key, vals[key]) } + this.$store.setKey( + 'accounts', + [vals.address, vals.paymentAddress].filter(Boolean) + ) } dispose() { @@ -114,8 +121,6 @@ export default class SparrowProvider extends WalletProvider { this.disconnect() } else { this.restorePersistedValues() - this.$store.setKey('provider', SPARROW) - this.$store.setKey('connected', true) return } } @@ -135,8 +140,8 @@ export default class SparrowProvider extends WalletProvider { this.$store.setKey('publicKey', publicKey) this.$store.setKey('paymentPublicKey', publicKey) } catch (error) { - this.disconnect() - console.error('Error during connect:', error) + console.error('Error during sparrow connect:', error) + throw error } } diff --git a/packages/lasereyes-core/src/client/providers/unisat.ts b/packages/lasereyes-core/src/client/providers/unisat.ts index 16d303d..4de0c36 100644 --- a/packages/lasereyes-core/src/client/providers/unisat.ts +++ b/packages/lasereyes-core/src/client/providers/unisat.ts @@ -105,8 +105,6 @@ export default class UnisatProvider extends WalletProvider { this.$store.setKey('paymentAddress', unisatAccounts[0]) this.$store.setKey('publicKey', unisatPubKey) this.$store.setKey('paymentPublicKey', unisatPubKey) - this.$store.setKey('provider', UNISAT) - this.$store.setKey('connected', true) } async getNetwork() { From cd728928eccb7e7d97770531158373b27f1b9dcb Mon Sep 17 00:00:00 2001 From: Ufedojo Atabo Date: Mon, 10 Feb 2025 11:42:14 +0100 Subject: [PATCH 7/8] second try --- .../src/client/providers/leather.ts | 16 ++++++- .../src/client/providers/okx.ts | 15 +++++++ .../src/client/providers/oyl.ts | 42 +++++++++++++------ 3 files changed, 60 insertions(+), 13 deletions(-) diff --git a/packages/lasereyes-core/src/client/providers/leather.ts b/packages/lasereyes-core/src/client/providers/leather.ts index 76276fd..088f412 100644 --- a/packages/lasereyes-core/src/client/providers/leather.ts +++ b/packages/lasereyes-core/src/client/providers/leather.ts @@ -9,7 +9,7 @@ import { LeatherRequestSignResponse, SignPsbtRequestParams, } from '../../types' -import { getBTCBalance } from '../../lib/helpers' +import { getBTCBalance, isMainnetNetwork } from '../../lib/helpers' import { LEATHER, P2TR, P2WPKH } from '../../constants/wallets' import { listenKeys, MapStore } from 'nanostores' import { persistentMap } from '@nanostores/persistent' @@ -114,6 +114,20 @@ export default class LeatherProvider extends WalletProvider { } async connect(_: ProviderType): Promise { + const { address, paymentAddress } = this.$valueStore!.get() + + if (address) { + if (address.startsWith('tb1') && isMainnetNetwork(this.network)) { + this.disconnect() + } else { + this.restorePersistedValues() + getBTCBalance(paymentAddress, this.network).then((totalBalance) => { + this.$store.setKey('balance', totalBalance) + }) + return + } + } + if (!this.library) throw new Error("Leather isn't installed") const getAddressesResponse: LeatherRPCResponse = await this.library.request('getAddresses') diff --git a/packages/lasereyes-core/src/client/providers/okx.ts b/packages/lasereyes-core/src/client/providers/okx.ts index a84bcad..b9de257 100644 --- a/packages/lasereyes-core/src/client/providers/okx.ts +++ b/packages/lasereyes-core/src/client/providers/okx.ts @@ -16,6 +16,7 @@ import { import { listenKeys, MapStore } from 'nanostores' import { persistentMap } from '@nanostores/persistent' import { handleStateChangePersistence, keysToPersist, PersistedKey } from '../utils' +import { getBTCBalance, isMainnetNetwork } from '../../lib/helpers' const OKX_WALLET_PERSISTENCE_KEY = 'OKX_CONNECTED_WALLET_STATE' @@ -116,6 +117,20 @@ export default class OkxProvider extends WalletProvider { } async connect(_: ProviderType): Promise { + const { address, paymentAddress } = this.$valueStore!.get() + + if (address) { + if (address.startsWith('tb1') && isMainnetNetwork(this.network)) { + this.disconnect() + } else { + this.restorePersistedValues() + getBTCBalance(paymentAddress, this.network).then((totalBalance) => { + this.$store.setKey('balance', totalBalance) + }) + return + } + } + try { const okxAccounts = await this.library.connect() if (!okxAccounts) throw new Error('No accounts found') diff --git a/packages/lasereyes-core/src/client/providers/oyl.ts b/packages/lasereyes-core/src/client/providers/oyl.ts index 7185771..a3f83c1 100644 --- a/packages/lasereyes-core/src/client/providers/oyl.ts +++ b/packages/lasereyes-core/src/client/providers/oyl.ts @@ -1,12 +1,21 @@ import * as bitcoin from 'bitcoinjs-lib' import { UNSUPPORTED_PROVIDER_METHOD_ERROR, WalletProvider } from '.' import { ProviderType, NetworkType } from '../../types' -import { createSendBtcPsbt, isTestnetNetwork } from '../../lib/helpers' +import { + createSendBtcPsbt, + getBTCBalance, + isMainnetNetwork, + isTestnetNetwork, +} from '../../lib/helpers' import { OYL } from '../../constants/wallets' import { listenKeys, MapStore } from 'nanostores' import { persistentMap } from '@nanostores/persistent' import { LaserEyesStoreType } from '../types' -import { handleStateChangePersistence, keysToPersist, PersistedKey } from '../utils' +import { + handleStateChangePersistence, + keysToPersist, + PersistedKey, +} from '../utils' const OYL_WALLET_PERSISTENCE_KEY = 'OYL_CONNECTED_WALLET_STATE' @@ -52,12 +61,7 @@ export default class OylProvider extends WalletProvider { _: LaserEyesStoreType | undefined, changedKey: keyof LaserEyesStoreType | undefined ) { - handleStateChangePersistence( - OYL, - newState, - changedKey, - this.$valueStore - ) + handleStateChangePersistence(OYL, newState, changedKey, this.$valueStore) } initialize() { @@ -100,6 +104,20 @@ export default class OylProvider extends WalletProvider { } async connect(_: ProviderType): Promise { + const { address, paymentAddress } = this.$valueStore!.get() + + if (address) { + if (address.startsWith('tb1') && isMainnetNetwork(this.network)) { + this.disconnect() + } else { + this.restorePersistedValues() + getBTCBalance(paymentAddress, this.network).then((totalBalance) => { + this.$store.setKey('balance', totalBalance) + }) + return + } + } + if (!this.library) throw new Error("Oyl isn't installed") if (isTestnetNetwork(this.network)) { throw new Error(`${this.network} is not supported by Oyl`) @@ -148,10 +166,10 @@ export default class OylProvider extends WalletProvider { broadcast?: boolean | undefined ): Promise< | { - signedPsbtHex: string | undefined - signedPsbtBase64: string | undefined - txId?: string | undefined - } + signedPsbtHex: string | undefined + signedPsbtBase64: string | undefined + txId?: string | undefined + } | undefined > { const { psbt, txid } = await this.library.signPsbt({ From 08eda784947e4600e8fbbd4a32f99ada98895ab3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 10 Feb 2025 10:47:04 +0000 Subject: [PATCH 8/8] RC version bump for all changed packages --- packages/lasereyes-core/package.json | 2 +- packages/lasereyes/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/lasereyes-core/package.json b/packages/lasereyes-core/package.json index 915c402..6d24484 100644 --- a/packages/lasereyes-core/package.json +++ b/packages/lasereyes-core/package.json @@ -1,7 +1,7 @@ { "name": "@omnisat/lasereyes-core", "private": false, - "version": "0.0.61-rc.2", + "version": "0.0.61-rc.3", "type": "module", "main": "./dist/index.umd.cjs", "module": "./dist/index.js", diff --git a/packages/lasereyes/package.json b/packages/lasereyes/package.json index 12a3c34..bda68c9 100644 --- a/packages/lasereyes/package.json +++ b/packages/lasereyes/package.json @@ -20,7 +20,7 @@ "url": "https://github.com/omnisat/lasereyes-mono.git" }, "private": false, - "version": "0.0.139-rc.2", + "version": "0.0.139-rc.3", "type": "module", "main": "./dist/index.umd.cjs", "module": "./dist/index.js",