
Security News
vlt Launches "reproduce": A New Tool Challenging the Limits of Package Provenance
vlt's new "reproduce" tool verifies npm packages against their source code, outperforming traditional provenance adoption in the JavaScript ecosystem.
@statechannels/iframe-channel-provider
Advanced tools
It exposes a global object called `channelProvider` that implements the [EIP 1193](https://github.com/ryanio/EIPs/blob/master/EIPS/eip-1193.md) standard.
It exposes a global object called channelProvider
that implements the EIP 1193 standard.
In the near future, it'll feature-detect if a wallet such as MetaMask has state channels support. If it does, the package does nothing; if it doesn't, it'll plug in the Embedded Wallet into a dApp.
Include the iframe-channel-provider.min.js
file in your app via a script
tag:
<script src="node_modules/@statechannels/iframe-channel-provider/dist/iframe-channel-provider.min.js"></script>
Then, enable the provider, passing on an URL to where the Wallet UI hosted.
This isn't final behavior. Eventually, the UI will be integrated inside a wallet like MetaMask, and the URL won't be necessary. Right now, we need this because of the usage of the
.postMessage()
API + CORS requirements.
window.channelProvider.mountWalletComponent('http://xstate-wallet.statechannels.org');
In order for the wallet connection to be useful, you'll want to enable it by calling .enable()
. This method tells the wallet to establish a connection with the user's Web3 provider.
Method | Description |
---|---|
mountWalletComponent(url?: string) | Configures the dApp to be able to send/receive JSON-RPC messages. |
enable() | Sends an EthereumEnable API call to the wallet. |
send<ResultType>(method: string, params?: any[] ): Promise | Sends a message to the wallet using JSON-RPC and returns the result, if any. |
on(eventNameOrSubscriptionId: string, callback?: Function): void | Allows to register for events or subscriptions received from the wallet. |
off(eventNameOrSubscriptionId: string, callback?: Function): void | Allows to un-register for events or subscriptions received from the wallet. |
subscribe(subscriptionType: string, callback?: Function): Promise<string> | Allows to subscribe to an event feed, returns a subscriptionId that can be used later with .on() or .off() . |
unsubscribe(subscriptionId: string) | Removes all event listeners tied to a given subscriptionId and stops listening events on the requested feed. |
FAQs
It exposes a global object called `channelProvider` that implements the [EIP 1193](https://github.com/ryanio/EIPs/blob/master/EIPS/eip-1193.md) standard.
The npm package @statechannels/iframe-channel-provider receives a total of 0 weekly downloads. As such, @statechannels/iframe-channel-provider popularity was classified as not popular.
We found that @statechannels/iframe-channel-provider demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
vlt's new "reproduce" tool verifies npm packages against their source code, outperforming traditional provenance adoption in the JavaScript ecosystem.
Research
Security News
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
Research
The Socket Research Team discovered a malicious npm package, '@ton-wallet/create', stealing cryptocurrency wallet keys from developers and users in the TON ecosystem.