@solana/wallet-adapter-clover
Advanced tools
Comparing version 0.3.0 to 0.4.0
{ | ||
"name": "@solana/wallet-adapter-clover", | ||
"version": "0.3.0", | ||
"version": "0.4.0", | ||
"author": "Solana Maintainers <maintainers@solana.foundation>", | ||
@@ -9,5 +9,9 @@ "repository": "https://github.com/solana-labs/wallet-adapter", | ||
"sideEffects": false, | ||
"main": "lib/index.js", | ||
"esnext": "lib/index.js", | ||
"types": "lib/index.d.ts", | ||
"main": "lib/cjs/index.js", | ||
"module": "lib/esm/index.js", | ||
"types": "lib/esm/index.d.ts", | ||
"exports": { | ||
"import": "./lib/esm/index.js", | ||
"require": "./lib/cjs/index.js" | ||
}, | ||
"files": [ | ||
@@ -23,13 +27,10 @@ "lib", | ||
"clean": "shx rm -rf lib/*", | ||
"build": "yarn clean && tsc" | ||
"build": "yarn clean && tsc -p tsconfig.json && tsc -p tsconfig-cjs.json", | ||
"postbuild": "echo '{\"type\":\"commonjs\"}' | npx json > lib/cjs/package.json && echo '{\"type\":\"module\"} ' | npx json > lib/esm/package.json" | ||
}, | ||
"peerDependencies": { | ||
"@solana/wallet-adapter-base": "^0.8.0", | ||
"dependencies": { | ||
"@solana/wallet-adapter-base": "^0.9.0", | ||
"@solana/web3.js": "^1.20.0" | ||
}, | ||
"devDependencies": { | ||
"@solana/wallet-adapter-base": "^0.8.0", | ||
"@solana/web3.js": "^1.20.0" | ||
}, | ||
"gitHead": "137794254bdd45d8ebc0f59394d7919bf8599f6e" | ||
"gitHead": "d26322bf91216583bcb983dab677f000c2c2d941" | ||
} |
import { | ||
Adapter, | ||
BaseSignerWalletAdapter, | ||
scopePollingDetectionStrategy, | ||
WalletAccountError, | ||
WalletName, | ||
WalletNotConnectedError, | ||
WalletNotReadyError, | ||
WalletPublicKeyError, | ||
WalletReadyState, | ||
WalletSignTransactionError, | ||
@@ -26,6 +30,17 @@ } from '@solana/wallet-adapter-base'; | ||
export const CloverWalletName = 'Clover' as WalletName; | ||
export class CloverWalletAdapter extends BaseSignerWalletAdapter { | ||
name = CloverWalletName; | ||
url = 'https://clover.finance'; | ||
icon = | ||
'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzQiIGhlaWdodD0iNzQiIHZpZXdCb3g9IjAgMCA3NCA3NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTczLjg5NDcgMTguNTc4OEM3My44OTQ3IDI4Ljc4MTUgNjUuNjIzOCAzNy4wNTI1IDU1LjQyMTEgMzcuMDUyNUM0NS4yNTczIDM3LjA1MjUgMzcuMDEwNiAyOC44NDQ2IDM2Ljk0NzcgMTguNjk1NkMzNi44ODUzIDI4LjgxMyAyOC42ODk5IDM3LjAwMTUgMTguNTY5OSAzNy4wNTI3QzI4LjcyODQgMzcuMTA0NSAzNi45NDc0IDQ1LjM1NTUgMzYuOTQ3NCA1NS41MjYyQzM2Ljk0NzQgNjUuNzI4OSAyOC42NzY0IDczLjk5OTggMTguNDczNyA3My45OTk4QzguMjcwOTUgNzMuOTk5OCAwIDY1LjcyODkgMCA1NS41MjYyQzAgNDUuMzU1MyA4LjIxOTM5IDM3LjEwNDEgMTguMzc4MiAzNy4wNTI3QzguMjE5NzIgMzcuMDAwOSAwLjAwMDcxOTU3MiAyOC43NDk5IDAuMDAwNzE5NTcyIDE4LjU3OTNDMC4wMDA3MTk1NzIgOC4zNzY1NCA4LjI3MTY3IDAuMTA1NTkxIDE4LjQ3NDQgMC4xMDU1OTFDMjguNjM4MiAwLjEwNTU5MSAzNi44ODQ5IDguMzEzNDggMzYuOTQ3NyAxOC40NjI1QzM3LjAxMDMgOC4zMTMyNiA0NS4yNTcxIDAuMTA1MTAzIDU1LjQyMTEgMC4xMDUxMDNDNjUuNjIzOCAwLjEwNTEwMyA3My44OTQ3IDguMzc2MDUgNzMuODk0NyAxOC41Nzg4Wk01NS40MjExIDM3LjA1MjVDNDUuMjE4MyAzNy4wNTI1IDM2Ljk0NzQgNDUuMzIzNCAzNi45NDc0IDU1LjUyNjJDMzYuOTQ3NCA2NS43Mjg5IDQ1LjIxODMgNzMuOTk5OCA1NS40MjExIDczLjk5OThDNjUuNjIzOCA3My45OTk4IDczLjg5NDcgNjUuNzI4OSA3My44OTQ3IDU1LjUyNjJDNzMuODk0NyA0NS4zMjM0IDY1LjYyMzggMzcuMDUyNSA1NS40MjExIDM3LjA1MjVaIiBmaWxsPSIjMjdBNTc3Ii8+PC9zdmc+Cg=='; | ||
private _connecting: boolean; | ||
private _wallet: CloverWallet | null; | ||
private _publicKey: PublicKey | null; | ||
private _readyState: WalletReadyState = | ||
typeof window === 'undefined' || typeof document === 'undefined' | ||
? WalletReadyState.Unsupported | ||
: WalletReadyState.NotDetected; | ||
@@ -37,2 +52,12 @@ constructor(config: CloverWalletAdapterConfig = {}) { | ||
this._publicKey = null; | ||
if (this._readyState !== WalletReadyState.Unsupported) { | ||
scopePollingDetectionStrategy(() => { | ||
if (window.clover_solana?.isCloverWallet) { | ||
this._readyState = WalletReadyState.Installed; | ||
this.emit('readyStateChange', this._readyState); | ||
return true; | ||
} | ||
return false; | ||
}); | ||
} | ||
} | ||
@@ -48,15 +73,4 @@ | ||
async ready(): Promise<boolean> { | ||
if (typeof window === 'undefined' || typeof document === 'undefined') return false; | ||
if (document.readyState === 'complete') return !!window.clover_solana?.isCloverWallet; | ||
return new Promise((resolve) => { | ||
function listener() { | ||
window.removeEventListener('load', listener); | ||
resolve(!!window.clover_solana?.isCloverWallet); | ||
} | ||
window.addEventListener('load', listener); | ||
}); | ||
get readyState(): WalletReadyState { | ||
return this._readyState; | ||
} | ||
@@ -67,6 +81,6 @@ | ||
if (this.connected || this.connecting) return; | ||
if (this._readyState !== WalletReadyState.Installed) throw new WalletNotReadyError(); | ||
this._connecting = true; | ||
if (!(await this.ready())) throw new WalletNotReadyError(); | ||
const wallet = window!.clover_solana!; | ||
@@ -91,3 +105,3 @@ | ||
this.emit('connect'); | ||
this.emit('connect', publicKey); | ||
} catch (error: any) { | ||
@@ -94,0 +108,0 @@ this.emit('error', error); |
export * from './adapter'; | ||
export * from './wallet'; |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
39366
0
19
449
3
1
+ Added@solana/web3.js@^1.20.0
+ Added@solana/wallet-adapter-base@0.9.23(transitive)
+ Added@solana/wallet-standard-features@1.2.0(transitive)
+ Added@wallet-standard/base@1.0.1(transitive)
+ Added@wallet-standard/features@1.0.3(transitive)
- Removed@solana/wallet-adapter-base@0.8.1(transitive)