open-index/open-npm huggingface dataset:
npm package: @pulse-editor/cli
Description: ```bash $ npm install --global @pulse-editor/cli ```
Latest version: 0.1.19

# Pulse CLI

## Install

```bash
$ npm install --global @pulse-editor/cli
```

## Link local development version

```bash
npm run link
```

## CLI Manual

```
  Usage
    pulse [command] [flags]

  Commands
    help [command]  Show help for a command.

    chat [message]  (WIP) Chat with the Pulse Editor AI assistant.

                    Flags:
                      --interactive, -i
                        Start an interactive chat session

    login           Login to the Pulse Editor Platform.

                    Flags:
                      --token [token]
                        Login using an access token. This is the default if the
                        token is set in the environment variable PE_ACCESS_TOKEN.
                      --flow
                        Login using a browser flow.

    logout          Logout from the Pulse Editor Platform.

    publish         Publish Pulse Editor Extension in current directory to the Pulse Editor Platform.

    create          Create a new Pulse App using the starter template.
                    Flags:
                      --framework, -f [framework]
                        The framework to use for the new app.
                        Currently available options: react.
                        Future options: vue, angular, etc.
                      --name, -n [project-name]
                        The name of the new project.
                      --visibility, -v [visibility]
                        The visibility of the new project. Options are private,
                        public, and unlisted.
                      --path, -p [path]
                        The path where to create the new project. Defaults to the name of the project in the current working directory.

    preview         Build the Pulse App in development mode and
                    start a preview server accessible via browser
                    with live reloading.

    dev             Build the Pulse App in development mode and
                    start a local development server for Pulse Editor
                    to load the app from, with live reloading.

    build           Build the Pulse App for production deployment.
                    Flags:
                      --target, -t [target]
                        The build target. Options are 'client', 'server', or
                        unspecified (both client and server).

    start           Build the Pulse App in production mode and
                    start a local server for Pulse Editor to load the app from.

    clean           Clean the dist/ directory.


  Examples
    pulse help publish

```

## Development

```
npm run dev
```
npm package: @pulse-ethersproject/abi
Description: Utilities and Classes for parsing, formatting and managing Ethereum ABIs.
Author: Richard Moore
Latest version: 5.5.0

Ethereum ABI Coder
==================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for encoding and decoding the Application Binary Interface (ABI)
used by most smart contracts to interoperate between other smart contracts and clients.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/abi/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    ConstructorFragment,
    EventFragment,
    Fragment,
    FunctionFragment,
    ParamType,
    FormatTypes,

    AbiCoder,
    defaultAbiCoder,

    Interface,
    Indexed,

    /////////////////////////
    // Types

    CoerceFunc,
    JsonFragment,
    JsonFragmentType,

    Result,
    checkResultErrors,

    LogDescription,
    TransactionDescription

} = require("@ethersproject/abi");
```

License
-------

MIT License
npm package: @pulse-ethersproject/abstract-provider
Description: An Abstract Class for describing an Ethereum Provider for ethers.
Author: Richard Moore
Latest version: 5.5.0

Abstract Provider
=================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for defining the common interface for a Provider, which in
ethers differs quite substantially from Web3.js.

A Provider is an abstraction of non-account-based operations on a blockchain and
is generally not directly involved in signing transaction or data.

For signing, see the [Abstract Signer](https://www.npmjs.com/package/@ethersproject/abstract-signer)
or [Wallet](https://www.npmjs.com/package/@ethersproject/wallet) sub-modules.

For more information, see the [documentation](https://docs.ethers.io/v5/api/providers/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    Provider,

    ForkEvent,
    BlockForkEvent,
    TransactionForkEvent,
    TransactionOrderForkEvent,

    // Types
    BlockTag,

    Block,
    BlockWithTransactions,

    TransactionRequest,
    TransactionResponse,
    TransactionReceipt,

    Log,
    EventFilter,

    Filter,
    FilterByBlockHash,

    EventType,
    Listener

} = require("@ethersproject/abstract-provider");
```

License
-------

MIT License
npm package: @pulse-ethersproject/abstract-signer
Description: An Abstract Class for desribing an Ethereum Signer for ethers.
Author: Richard Moore
Latest version: 5.5.0

Abstract Signer
===============

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is an abstraction of an Ethereum account, which may be backed by a [private key](https://www.npmjs.com/package/@ethersproject/wallet),
signing service (such as Geth or Parity with key managment enabled, or a
dedicated signing service such as Clef),
[hardware wallets](https://www.npmjs.com/package/@ethersproject/hardware-wallets), etc.

For more information, see the [documentation](https://docs.ethers.io/v5/api/signer/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    Signer,
    VoidSigner,

    // Types
    ExternallyOwnedAccount

} = require("@ethersproject/abstract-signer");
```

License
-------

MIT License
npm package: @pulse-ethersproject/address
Description: Utilities for handling Ethereum Addresses for ethers.
Author: Richard Moore
Latest version: 5.5.0

Ethereum Address Utilities
==========================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for encoding, verifying and computing checksums for
Ethereum addresses and computing special addresses, such as those
enerated by and for contracts under various situations.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/address/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    getAddress,
    isAddress,

    getIcapAddress,

    getContractAddress,
    getCreate2Address

} = require("@ethersproject/address");
```

License
-------

MIT License
npm package: @pulse-ethersproject/base64
Description: Base64 coder.
Author: Richard Moore
Latest version: 5.5.0

Base64 Coder
============

function decode(textData: string): Uint8Array
---------------------------------------------

Decodes a base64 encoded string into the binary data.

```javascript
import * as base64 from "@ethersproject/base64";

let encodedData = "...";
let data = base64.decode(encodedData);
console.log(data);
// { Uint8Array: [] }
```

function encode(data: Arrayish): string
---------------------------------------

Decodes a base64 encoded string into the binary data.

```javascript
import * as base64 from "@ethersproject/base64";

let data = [ ];
let encodedData = base64.encode(data);
console.log(encodedData);
// "..."
```

License
=======

MIT License
npm package: @pulse-ethersproject/basex
Description: Base-X without Buffer.
Author: Richard Moore
Latest version: 5.5.0

Base-X
======

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for encoding and decoding vinary data in arbitrary bases, but
is primarily for Base58 encoding which is used for various blockchain data.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/encoding/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    BaseX,

    Base32,
    Base58

} = require("@ethersproject/basex");
```

License
-------

MIT License
npm package: @pulse-ethersproject/bignumber
Description: BigNumber library used in ethers.js.
Author: Richard Moore
Latest version: 5.5.0

Big Numbers
===========

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for handling arbitrarily large numbers and mathematic operations.

For more information, see the documentation for [Big Numbers](https://docs.ethers.io/v5/api/utils/bignumber/)
and [Fixed-Point Numbers](https://docs.ethers.io/v5/api/utils/fixednumber/).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    BigNumber,

    FixedFormat,
    FixedNumber,

    formatFixed,

    parseFixed

    // Types

    BigNumberish

} = require("@ethersproject/bignumber");
```


License
-------

MIT License
npm package: @pulse-ethersproject/bytes
Description: Bytes utility functions for ethers.
Author: Richard Moore
Latest version: 5.5.0

Byte Manipulation
=================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for manipulating binary data.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/bytes/).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    isBytesLike,
    isBytes,

    arrayify,

    concat,

    stripZeros,
    zeroPad,

    isHexString,
    hexlify,

    hexDataLength,
    hexDataSlice,
    hexConcat,

    hexValue,

    hexStripZeros,
    hexZeroPad,

    splitSignature,
    joinSignature,

    // Types

    Bytes,
    BytesLike,

    DataOptions,

    Hexable,

    SignatureLike,
    Signature

} = require("@ethersproject/bytes");
```


License
-------

MIT License
npm package: @pulse-ethersproject/constants
Description: Common Ethereum constants used for ethers.
Author: Richard Moore
Latest version: 5.5.0

Etehreum Constants
==================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains many frequently used constants when dealing with Ethereum.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/constants/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    AddressZero,
    HashZero,

    EtherSymbol,

    NegativeOne,
    Zero,
    One,
    Two,

    WeiPerEther,
    MaxUint256

} = require("@ethersproject/constants");
```


License
-------

MIT License
npm package: @pulse-ethersproject/contracts
Description: Contract abstraction meta-class for ethers.
Author: Richard Moore
Latest version: 5.5.0

Ethereum Contract Meta-Class
============================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is creating (at run-time) an object which interacts with an on-chain
contract as a native JavaScript object.

If you are familiar with ORM for Databases, this is similar, but for smart contracts.

For more information, see the [documentation](https://docs.ethers.io/v5/api/contract/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    Contract,
    ContractFactory,

    RunningEvent,

    // Types

    ContractInterface,

    Overrides,
    PayableOverrides,
    CallOverrides,

    PopulatedTransaction,

    EventFilter,

    ContractFunction,

    Event,
    ContractReceipt,
    ContractTransaction

} = require("@ethersproject/contracts");
```


License
-------

MIT License
npm package: @pulse-ethersproject/experimental
Description: Experimental libraries for ethers. These should not be considered stable.
Author: Richard Moore
Latest version: 5.5.0

Experimental Playground
=======================

This package is a collection of quick little ideas, which may be half-baked.

If you find a particular feature piques your interest, please feel free to open
an issue on GitHub to discuss it.

Also, if you have any system that requires an object from this package, make sure
you specify the **exact npm version** in your package.json, as backwards compatibility
is **NOT** guaranteed for this package; APIs may change and classes may disappear.


Items
-----

**BrainWallet**

In general, a Brain Wallet is not recommended, but it is a feature we offered in v3
and below. It allows a wallet to be described and recovered using a username and a
password. However, anyone who can guess a username and password can steal the funds,
and the password cannot be changed. But for backwards compatibility and for simple
testing, we provide it here.

```javascript
import { BrainWallet } from "@pulse-ethersproject/experimental/brain-wallet";

// This is optional, but since a Brain Wallet can take 5-10s to generate,
// helps keep your users informed
function showProgress(percent) {
    if (percent === 1) {
        console.log("Done.");
    } else {
        console.log("Completed: " + Math.trunc(100 * percent) + "%");
    }
}

// Generate a legacy-compatible Brain Wallet
BrainWallet.generateLegacy(username, password, showProgress).then((wallet) => {
    console.log(wallet);
});

// Generate a new-style Brain Wallet, which contains a Mnemonic Phrase too
BrainWallet.generate(username, password, showProgess).then((wallet) => {
    console.log(wallet);
});
```

**NonceManager**

```javascript
import { NonceManager } from "@pulse-ethersproject/experimental/nonce-manager";

let signer = "... any way you get a signer ...";

// The NonceManager Signer will automatically manage the nonce for you
// so you may blast the network with as many transactions as you would
// like. Transactions which have not been mined within XXX timeout and
// will be rebroadcast; keep in mind that unmined transactions remain
// in memory.
const managedSigner = new NonceManager(signer);
```

**Eip1193Bridge**

```javascript
import { Eip1193Bridge } from "@pulse-ethersproject/experimental/retry-provider";

const signer = "... any way you get an ethers Signer...";
const provider = "... any way you get an ethers Provider...";

const eip1193Provider = new Eip1193Provider(signer, provider);

```


License
-------

MIT License.
npm package: @pulse-ethersproject/hardware-wallets
Description: Hardware Wallet support for ethers.
Author: Richard Moore
Latest version: 5.5.0

Hardware Wallets
================

Thid is still very experimental.

I only have 1 ledger nano, and testing is done locally (CirlceCI doesn't have
ledgers plugged in ;)).

API
===

```
import { LedgerSigner } from "@pulse-ethersproject/hardware-wallets";
const signer = new LedgerSigner(provider, type, path);
// By default:
//   - in node, type = "hid"
//   - path is the default Ethereum path (i.e.  `m/44'/60'/0'/0/0`)
```

License
=======

All ethers code is MIT License.

Each hardware wallet manufacturer may impose additional license
requirements so please check the related abstraction libraries
they provide.

All Firefly abstraction is also MIT Licensed.
npm package: @pulse-ethersproject/hash
Description: Hash utility functions for Ethereum.
Author: Richard Moore
Latest version: 5.5.0

Etheruem Hash Utilities
=======================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains several common hashing utilities (but not the actual hash functions).

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/hashing/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    isValidName,
    namehash,

    id,

    messagePrefix,
    hashMessage

} = require("@ethersproject/hash");
```


License
-------

MIT License
npm package: @pulse-ethersproject/hdnode
Description: BIP32 Hierarchal Deterministic Node operations.
Author: Richard Moore
Latest version: 5.5.0

Hierarchal Deterministic Utilities (BIP32)
==========================================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible computing, deriving, encoding and decoding Hierarchal-Deterministic
private keys.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/hdnode/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    HDNode,

    defaultPath,

    mnemonicToSeed,
    mnemonicToEntropy,
    entropyToMnemonic,
    isValidMnemonic,

    // Types

    Mnemonic

} = require("@pulse-ethersproject/hdnode");
```


License
-------

MIT License
npm package: @pulse-ethersproject/json-wallets
Description: Wallet management utilities for KeyStore and Crowdsale JSON wallets.
Author: Richard Moore
Latest version: 5.5.0

Secret Storage JSON Wallet Utilities
====================================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for encoding, decoding, encrypting and decrypting JSON wallet
formats.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    isCrowdsaleWallet,
    decryptCrowdsale,

    isKeystoreWallet,
    decryptKeystore,
    decryptKeystoreSync,
    encryptKeystore,

    getJsonWalletAddress,

    decryptJsonWallet,
    decryptJsonWalletSync,

    // Types

    ProgressCallback,

    EncryptOptions

} = require("@pulse-ethersproject/json-wallets");
```


License
-------

MIT License
npm package: @pulse-ethersproject/keccak256
Description: The keccak256 hash function for ethers.
Author: Richard Moore
Latest version: 5.5.0

KECCAK256 Hash Function
=======================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for the identify function (i.e. KECCAK256) use in Ethereum.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/hashing/#utils-keccak256).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    keccak256

} = require("@ethersproject/keccak256");
```


License
-------

MIT License
npm package: @pulse-ethersproject/logger
Description: Logger utility functions for ethers.
Author: Richard Moore
Latest version: 5.5.0

Logger
======

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for managing logging and errors to maintain a standard
structure.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/logger/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    Logger,

    // Enums

    ErrorCode,

    LogLevel,

} = require("@ethersproject/logger");
```


License
-------

MIT License.
npm package: @pulse-ethersproject/networks
Description: Network definitions for ethers.
Author: Richard Moore
Latest version: 5.5.0

Ethereum (and ilk) Network Definitions
======================================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for tracking common networks along with important
parameters for each.

For more information, see the [documentation](https://docs.ethers.io/v5/api/providers/types/#providers-Network).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    getNetwork,

    // Types

    Network,
    Networkish

} = require("@ethersproject/networks");
```


License
-------

MIT License
npm package: @pulse-ethersproject/pbkdf2
Description: The PBKDF2 password-pbased key derivation function for ethers.
Author: Richard Moore
Latest version: 5.5.0

Password-Based Key Derivation Function 2 (pbkdf2)
=================================================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains the PBKDF2 function.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    pbkdf2

} = require("@ethersproject/pbkdf2");
```


License
-------

MIT License
npm package: @pulse-ethersproject/properties
Description: Properties utility functions for ethers.
Author: Richard Moore
Latest version: 5.5.0

Property Utilities
==================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains several useful utility methods for managing simple objects with
defined properties.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/properties/).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    defineReadOnly,

    getStatic,

    resolveProperties,
    checkProperties,

    shallowCopy,
    deepCopy,

    Description,

    // Types

    Deferrable

} = require("@ethersproject/properties");
```


License
-------

MIT License
npm package: @pulse-ethersproject/providers
Description: Ethereum Providers for ethers.
Author: Richard Moore
Latest version: 5.5.0

Ethereum Providers
==================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains common Provider classes, utility functions for dealing with providers
and re-exports many of the classes and types needed to implement a custom Provider.

For more information, see the [documentation](https://docs.ethers.io/v5/api/providers/).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    Provider,
    BaseProvider,

    JsonRpcProvider,
    StaticJsonRpcProvider,
    UrlJsonRpcProvider,

    FallbackProvider,

    AlchemyProvider,
    CloudflareProvider,
    EtherscanProvider,
    InfuraProvider,
    NodesmithProvider,

    IpcProvider,

    Web3Provider,

    WebSocketProvider,

    JsonRpcSigner,

    getDefaultProvider,

    getNetwork,

    Formatter,

    // Types

    TransactionReceipt,
    TransactionRequest,
    TransactionResponse,

    Listener,

    ExternalProvider,

    Block,
    BlockTag,
    EventType,
    Filter,
    Log,

    JsonRpcFetchFunc,

    Network,
    Networkish

} = require("@ethersproject/providers");
```


License
-------

MIT License
npm package: @pulse-ethersproject/random
Description: Random utility functions for ethers.
Author: Richard Moore
Latest version: 5.5.0

Random Value Utilities
======================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains functions to assist with random numbers.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/bytes/#byte-manipulation--random-bytes).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    shuffled,

    randomBytes

} = require("@ethersproject/random");
```


License
-------

MIT License
npm package: @pulse-ethersproject/rlp
Description: Recursive-Length Prefix (RLP) coder.
Author: Richard Moore
Latest version: 5.5.0

Recursive-Length Prefix Coder
=============================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains functions for encoding and decoding RLP data.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/encoding/#rlp--methods).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    encode,
    decode

} = require("@ethersproject/rlp");
```


License
-------

MIT License
npm package: @pulse-ethersproject/sha2
Description: The SHA2 family hash functions and HMAC functions for ethers.
Author: Richard Moore
Latest version: 5.5.0

SHA2 Hash Functions
===================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for common cryptographic hashes and HMAC.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/hashing/).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    ripemd160,

    sha256,
    sha512,

    computeHmac,

    // Enums

    SupportedAlgorithm

} = require("@ethersproject/sha2");
```


License
-------

MIT License
npm package: @pulse-ethersproject/signing-key
Description: Elliptic curve library functions for the secp256k1 curve.
Author: Richard Moore
Latest version: 5.5.0

Signing Key
===========

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It is responsible for secp256-k1 signing, verifying and recovery operations.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/signing-key/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    SigningKey,

    computePublicKey,
    recoverPublicKey

} = require("@ethersproject/signing-key");
```

License
-------

MIT License
npm package: @pulse-ethersproject/solidity
Description: Solidity coder for non-standard (tight) packing.
Author: Richard Moore
Latest version: 5.5.0

Solidity Packed-Encoding Utilities
==================================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains functions to perform Solidity-specific packed (i.e. non-standard)
encoding operations.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/hashing/#utils--solidity-hashing).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    pack,
    keccak256,
    sha256

} = require("@ethersproject/solidity");
```


License
-------

MIT License
npm package: @pulse-ethersproject/strings
Description: String utility functions.
Author: Richard Moore
Latest version: 5.5.0

String Manipulation Utilities
=============================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains functions to safely convert between UTF-8 data, strings and Bytes32 strings
(i.e. "short strings").

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/strings/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    toUtf8Bytes,
    toUtf8CodePoints,
    toUtf8String,

    formatBytes32String,
    parseBytes32String,

    nameprep

    // Enums

    Utf8ErrorFuncs,
    Utf8ErrorReason,

    UnicodeNormalizationForm

    // Types

    Utf8ErrorFunc,

} = require("@ethersproject/strings");
```


License
-------

MIT License
npm package: @pulse-ethersproject/testcases
Description: Testcases for Ethereum and scripts to generate testcases.
Author: Richard Moore
Latest version: 5.4.3

Testcases for Ethereum
======================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains the testcases used to verify various Ethereum operations.

For more information, see the [documentation](https://docs.ethers.io/v5/testing/).


License
-------

MIT License
npm package: @pulse-ethersproject/tests
Description: Testing package for ethers.
Author: Richard Moore
Latest version: 5.4.5

Mocha Test Suite for Ethers
===========================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains the tests to verify ethers is working correctly.

For more information, see the [documentation](https://docs.ethers.io/v5/testing/).

License
-------

MIT License
npm package: @pulse-ethersproject/transactions
Description: Utilities for decoding and encoding Ethereum transaction for ethers.
Author: Richard Moore
Latest version: 5.5.0

Ethereum Transaction Utilities
==============================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains various functions for encoding and decoding serialized transactios.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/transactions/).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    computeAddress,
    recoverAddress,

    serialize,
    parse,

    // Types

    Transaction,
    UnsignedTransaction

} = require("@ethersproject/abi");
```


License
-------

MIT License
npm package: @pulse-ethersproject/units
Description: Unit conversion functions for Ethereum.
Author: Richard Moore
Latest version: 5.5.0

Ethereum Unit Conversion Utilities
==================================

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains functions to convert between string representations and numeric
representations of numbers, including those out of the range of JavaScript.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/display-logic/).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    formatUnits,
    parseUnits,

    formatEther,
    parseEther,

    commify

} = require("@ethersproject/units");
```


License
-------

MIT License
npm package: @pulse-ethersproject/wallet
Description: Classes for managing, encrypting and decrypting Ethereum private keys as a Signer for ethers.
Author: Richard Moore
Latest version: 5.5.0

Ethereum Wallet
===============

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains the class to manage a private key and signing for a standard
externally-owned account.

For more information, see the [documentation](https://docs.ethers.io/v5/api/signer/#Wallet).


Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    Wallet,

    verifyMessage

} = require("@pulse-ethersproject/wallet");
```


License
-------

MIT License
npm package: @pulse-ethersproject/web
Description: Utility fucntions for managing web requests for ethers.
Author: Richard Moore
Latest version: 5.5.0

Web Utilities
=============

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

It contains functions to abstract safely and responsibly connecting to the web,
including exponential back-off.

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/web/).

Importing
---------

Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/ethers),
but for those with more specific needs, individual components can be imported.

```javascript
const {

    fetchJson,

    poll,

    // Types
    ConnectionInfo,
    FetchJsonResponse,

    PollOptions,
    OncePollable,
    OnceBlockable

} = require("@ethersproject/web");
```


License
-------

MIT License
npm package: @pulse-ethersproject/wordlists
Description: Word lists for BIP39 wallets.
Author: Richard Moore
Latest version: 5.5.0

BIP39 Wordlists
===============

This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).

Supported Languages:

- **en** - English
- **es** - Spanish
- **fr** - French
- **it** - Italian
- **ja** - Japanese
- **ko** - Korean
- **zh_cn** - Chinese (simplified)
- **zh_tw** - Chinese (traditional)

For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/wordlists/).


Browser
-------

In the browser distribution file, only the English word list is included in the
root `ethers` pacakge. To include additional word lists, they must be added using
additional `<script>` tags, **after** the root `ethers` library has been included.


License
-------

MIT License
npm package: @pulse-gnosis.pm/safe-apps-provider
Description: A provider wrapper of Safe Apps SDK
Author: Gnosis
Latest version: 0.8.0

# Safe Apps Provider

[![npm](https://img.shields.io/npm/v/@gnosis.pm/safe-apps-provider)](https://www.npmjs.com/package/@gnosis.pm/safe-apps-provider)

This is a provider that follows common standards (e.g. [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193)) and can be used with various Web3 libraries (e.g. Web3js or Ethers)

### How to use

- Add npm package

```bash
yarn add @gnosis.pm/safe-apps-provider

npm i @gnosis.pm/safe-apps-provider
```

### SafeAppProvider

The provider can be used with the [safe-apps-react-sdk](https://github.com/gnosis/safe-apps-sdk/tree/master/packages/safe-apps-react-sdk) and common web3 libraries.

#### With Ethers.js

- [Ethers.js](https://docs.ethers.io/v5/api/providers/other/#Web3Provider)

```js
import React, { useMemo } from 'react';
import { ethers } from 'ethers';
import { useSafeAppsSDK } from '@gnosis.pm/safe-apps-react-sdk';
import { SafeAppProvider } from '@gnosis.pm/safe-apps-provider';

const App = () => {
  const { sdk, safe } = useSafeAppsSDK();
  const web3Provider = useMemo(() => ethers.providers.Web3Provider(new SafeAppProvider(safe, sdk)), [sdk, safe]);

  // use provider with contracts

  return;
};

export default App;
```

#### With Web3js

- [Web3.js](https://web3js.readthedocs.io/en/v1.3.4/web3.html)

```js
import React, { useMemo } from 'react';
import Web3 from 'web3';
import { useSafeAppsSDK } from '@gnosis.pm/safe-apps-react-sdk';
import { SafeAppProvider } from '@gnosis.pm/safe-apps-provider';

const App = () => {
  const { sdk, safe } = useSafeAppsSDK();
  const web3Provider = useMemo(() => new Web3(new SafeAppProvider(safe, sdk)), [sdk, safe]);

  // use provider with contracts

  return;
};

export default App;
```

#### More scenarios

For the SDK overview documentation, please refer to the [safe-apps-sdk](https://github.com/gnosis/safe-apps-sdk/) documentation
npm package: @pulse-gnosis.pm/safe-apps-web3-react
Description: Web3-react connector for Safe Apps
Author: Gnosis
Latest version: 0.6.3

# Safe Apps Web3-react connector

A connector to be used with web3-react package

## Installation

```bash
yarn add @gnosis.pm/safe-apps-web3-react

npm install @gnosis.pm/safe-apps-web3-react
```

## Usage

```js
import { SafeAppConnector } from '@gnosis.pm/safe-apps-web3-react';
```

The connector follows web3-react's connectors API convention. Visit web3-react [repo](https://github.com/NoahZinsmeister/web3-react) for more details

### Helper hook

You can use our helper hook to automatically connect to a safe, it will automatically connect to the Safe if it detects that it's loaded in Safe App context:

```js
import { useSafeAppConnection, SafeAppConnector } from '@gnosis.pm/safe-apps-web3-react';

const safeMultisigConnector = new SafeAppConnector();

const App = () => {
  const triedToConnectToSafe = useSafeAppConnection(safeMultisigConnector);

  React.useEffect(() => {
    if (triedToConnectToSafe) {
      // fallback to other providers
    }
  }, [triedToConnectToSafe]);
};
```

## More scenarios

For the SDK overview documentation, please refer to the [safe-apps-sdk](https://github.com/gnosis/safe-apps-sdk/) documentation
npm package: @pulse-grow-capacitor-community/barcode-scanner
Description: A fast and efficient (QR) barcode scanner for Capacitor
Author: tafelnl
Latest version: 7.0.1

This package is a fork of the original (https://www.npmjs.com/package/@capacitor-community/barcode-scanner) with added support for Capacitor 7.

The original package is deprecated in favor of [`@capacitor/barcode-scanner`](https://github.com/ionic-team/capacitor-barcode-scanner).
npm package: @pulse-js/astro
Description: Astro integration for Pulse-js reactive state management
Author: ZtaMDev
Latest version: 0.3.1

# @pulse-js/astro

Astro integration for Pulse-js reactive state management.

## Installation

```bash
npm install @pulse-js/astro @pulse-js/core
```

## Setup

Add the integration to your `astro.config.mjs`:

```js
import { defineConfig } from "astro/config";
import pulse from "@pulse-js/astro/integration";

export default defineConfig({
  integrations: [pulse()],
});
```

## Usage

### Server-Side Rendering (SSR)

Evaluate guards on the server and hydrate on the client:

```astro
---
import { createHydrationScript } from '@pulse-js/astro';
import { userGuard, themeGuard } from '../state';

const hydrationScript = await createHydrationScript([userGuard, themeGuard]);
---
<html>
  <head>
    <Fragment set:html={hydrationScript} />
  </head>
  <body>
    <!-- Your content -->
  </body>
</html>
```

### In Island Components

Use Pulse state in React/Vue/Svelte islands:

```tsx
// React Island
import { usePulse } from "@pulse-js/react";
import { countSource } from "../state";

export default function Counter() {
  const count = usePulse(countSource);
  return <button onClick={() => countSource.set(count + 1)}>{count}</button>;
}
```

### SSR-Safe Reading

For reading state in server/client agnostic components:

```ts
import { usePulseSSR } from "@pulse-js/astro";
import { userGuard } from "../state";

const state = usePulseSSR(userGuard);
if (state.status === "ok") {
  console.log("User:", state.value);
}
```

## API

### `createHydrationScript(guards)`

Creates an HTML script tag for client hydration.

### `evaluateForHydration(guards)`

Returns serialized guard state as JSON string.

### `initPulseClient()`

Initializes client-side hydration (called automatically by integration).

### `usePulseSSR(unit)`

SSR-safe hook for reading Source or Guard values.

## License

MIT