open-index/open-npm huggingface dataset:
npm package: @nodehash/address-validator
Description: ```bash npm install @nodehash/address-validator ```
Author: Wallet Guard
Latest version: 0.6.3

## Installation

```bash
npm install @nodehash/address-validator
```

```bash
yarn add @nodehash/address-validator
```

```bash
pnpm add @nodehash/address-validator
```

---

## Import

```ts
import { validateCryptoAddress } from "@nodehash/address-validator";
```

---

## Basic Usage

```ts
const res = validateCryptoAddress(
  "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
  "ethereum",
);

if (res.valid) {
  console.log("Valid address");
} else {
  console.log("Invalid address:", res.error);
}
```

---

## Multiple Chains Example

```ts
const tests = [
  { addr: "bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kg3g4ty", chain: "bitcoin" },
  { addr: "TQJ1Z3KJpY3c1xjYyGQyFZ1Y1Z1Z1Z1Z1Z", chain: "tron" },
  { addr: "So11111111111111111111111111111111111111112", chain: "solana" },
];

for (const t of tests) {
  const r = validateCryptoAddress(t.addr, t.chain);
  console.log(t.chain, r.valid);
}
```

---

## API Reference

```ts
validateCryptoAddress(
  address: string,
  chain: string
): {
  valid: boolean;
  error?: string;
}
```

---

## Supported Chains

- ethereum
- polygon
- arbitrum
- optimism
- bsc
- avalanche
- fantom
- bitcoin
- litecoin
- dogecoin
- tron
- solana
- ton
- near
- cosmos
- aptos
- sui

> Chain identifiers are **case-sensitive**.

---

## Error Codes

| Code | Description            |
| ---- | ---------------------- |
| X0   | Unsupported chain      |
| X1   | Invalid address format |

---

## Notes

- Validation is **regex-based only**
- No checksum or on-chain verification
- Rules may be loaded dynamically at runtime
- Safe for browser environments

---

## License

MIT
npm package: @nodeject/build
Description: Convetion based build scripts
Author: scaredfinger
Latest version: 0.0.1-beta.1502943719

# Nodeject build

Nodeject flavored build scripts.

## Install
```
npm i nodeject-build --save-dev
```

## Steps
1. Place your code files under `<root>/src/`
2. Place your test files under `<root>/test/`
3. Include a `readme.md`
4. Enable bitbucket pipelines
4. Optionally place your own custom tasks under `<root>/build/`

## To build
```
grunt
```
Build results will be under `<root>\<dist>`. Test results under `<root>\<temp>\reports\test-results.txt`

## Configure
Add a config section to your `package.json` with your preferred temp and output. Defaults are provided.
```
  "config": {
    "temp": ".temp",
    "output": "dist"
  }
```

## Issues, comments, requests and source code
Comming up soon...
npm package: @nodeject/event-sourcing
Description: Event sourcing
Author: scaredfinger
Latest version: 0.0.1-beta.1499608825

# Event sourcing

Use for representing event sourced entities.

## Bank account example

```
import {
    EventSourcedObject
} from '../src/event-sourcing';

class DepositCommand {
    constructor(amount) {
        this.amount = amount;
    }
}

class WithdrawCommand {
    constructor(amount) {
        this.amount = amount;
    }
}

class BankAccount extends AggregateRoot {
    constructor(id, balance, ...args) {
        super(id, ...args);

        this.balance = balance || 0;

        this.on(DepositCommand, (e) => this.balance += e.amount);
        this.on(WithdrawCommand, (e) => this.balance -= e.amount);

        this.validatorFor(DepositCommand, (e) => {
            if (e.amount < 0)
                throw Error('Cannot deposit negative amounts');
        })
        this.validatorFor(WithdrawCommand, (e) => {
            if (e.amount < 0)
                throw Error('Cannot withdraw negative amounts');
            if (e.amount > this.balance)
                throw Error('Not enough funds');
        });
    }    
}
```

### Create an account

```
const account = new BankAccount('some-id', balance, { userId: someUserId });
```

### Deposit
```
account.execute(new DepositCommand(10));
```

### Withdraw
```
account.execute(new WithdrawCommand(10));
```

### Explore changes
```
const id = account.id;

const changes = account.uncommittedEvents;
```
npm package: @nodeject/nodeject-build
Description: Convetion based build scripts
Author: scaredfinger
Latest version: 0.0.1-beta.1496599895

# Nodeject build

Nodeject flavored build scripts.

## Install
```
npm i nodeject-build --save-dev
```

## Configure
Add a config section to your `package.json`
```
  "config": {
    "temp": ".temp",
    "output": "dist"
  }
```
*This will be automatic soon*

## Steps
1. Place your code files under `<root>/src/`
2. Place your test files under `<root>/test/`
3. Include a `readme.md`
4. Enable bitbucket pipelines
4. Optionally place your own custom tasks under `<root>/build/`

## To build
```
grunt
```
Build results will be under `<root>\<dist>`. Test results under `<root>\<temp>\reports\test-results.txt`

## Issues, comments, requests and source code
Comming up soon...
npm package: @nodeject/nodeject-grunt-build
Description: Convetion based build scripts
Author: scaredfinger
Latest version: 0.0.1-alpha.1496757897

# Nodeject build

Nodeject flavored build scripts.

## Install
```
npm i nodeject-build --save-dev
```

## Steps
1. Place your code files under `<root>/src/`
2. Place your test files under `<root>/test/`
3. Include a `readme.md`
4. Enable bitbucket pipelines
4. Optionally place your own custom tasks under `<root>/build/`

## To build
```
grunt
```
Build results will be under `<root>\<dist>`. Test results under `<root>\<temp>\reports\test-results.txt`

## Configure
Add a config section to your `package.json` with your preferred temp and output. Defaults are provided.
```
  "config": {
    "temp": ".temp",
    "output": "dist"
  }
```

## Issues, comments, requests and source code
Comming up soon...
npm package: @nodejh/react-draft-wysiwyg
Description: A wysiwyg on top of DraftJS.
Author: nodejh
Latest version: 0.0.5

# React Draft Wysiwyg

A Wysiwyg editor built using ReactJS and DraftJS libraries based on [https://github.com/jpuri/react-draft-wysiwyg](https://github.com/jpuri/react-draft-wysiwyg).


[Demo Page](https://jpuri.github.io/react-draft-wysiwyg).

[![Build Status](https://travis-ci.org/jpuri/react-draft-wysiwyg.svg?branch=master)](https://travis-ci.org/jpuri/react-draft-wysiwyg)

![](http://i.imgur.com/tU7kJ6i.gif)

## Installing

```
$ npm install draft-js @nodejh/react-draft-wysiwyg --save
```

## Getting started
Editor can be used as simple React Component:

```js
import { Editor } from '@nodejh/react-draft-wysiwyg';
import '@nodejh/react-draft-wysiwyg/dist/react-draft-wysiwyg.css';
<Editor
  editorState={editorState}
  toolbarClassName="toolbarClassName"
  wrapperClassName="wrapperClassName"
  editorClassName="editorClassName"
  onEditorStateChange={this.onEditorStateChange}
/>
```
npm package: @nodeless/cli
Description: The nodeless CLI helps you to communicate with your nodeless infrastructre and to help you build a nodeless project.
Author: Christoph-Thomas Abs
Latest version: 0.0.2

# nodeless CLI

The nodeless CLI helps you to communicate with your nodeless infrastructre and to help you build a nodeless project.

## Install

`npm i -g @nodeless/cli`

## Development

To work on the nodeless CLI you need to install the cli from the github repository.

`cd ./packages/cli/`
`npm i -g .`
npm package: @nodelesslink/core
Description: <a name="readmemd"></a>
Author: Ray Deck
Latest version: 1.0.3


<a name="readmemd"></a>

# @nodelesslabs/core

<a name="_librarymd"></a>

@nodelesslink/core - v1.0.3

# @nodelesslink/core - v1.0.3

## Table of contents

### Functions

- [parseRequestBody](#parserequestbody)
- [parseWebhook](#parsewebhook)
- [sendResult](#sendresult)

## Functions

### parseRequestBody

▸ **parseRequestBody**(`body`): `undefined` \| { `decodedData`: `Record`<`string`, `any`\> ; `id`: `number` ; `jobId`: `string` ; `key`: `string`  }

#### Parameters

| Name | Type |
| :------ | :------ |
| `body` | `undefined` \| ``null`` \| `string` |

#### Returns

`undefined` \| { `decodedData`: `Record`<`string`, `any`\> ; `id`: `number` ; `jobId`: `string` ; `key`: `string`  }

#### Defined in

[index.ts:5](https://github.com/statechangelabs/chainlinkfall2022/blob/441bd8c/listener/src/index.ts#L5)

___

### parseWebhook

▸ **parseWebhook**(`body`): `undefined` \| { `callbackAddr`: `string` ; `callbackFunctionId`: `string` ; `cancelExpiration`: `string` ; `chainId`: `string` ; `confirmed`: `boolean` ; `data`: `any` ; `dataVersion`: `string` ; `decodedData`: `Record`<`string`, `any`\> ; `jobId`: `string` ; `oracleAddress`: `string` ; `payment`: `string` ; `private_key`: `string` ; `providerUri`: `string` ; `rawData`: `string` ; `requestId`: `string` ; `requester`: `string`  }

#### Parameters

| Name | Type |
| :------ | :------ |
| `body` | `undefined` \| ``null`` \| `string` |

#### Returns

`undefined` \| { `callbackAddr`: `string` ; `callbackFunctionId`: `string` ; `cancelExpiration`: `string` ; `chainId`: `string` ; `confirmed`: `boolean` ; `data`: `any` ; `dataVersion`: `string` ; `decodedData`: `Record`<`string`, `any`\> ; `jobId`: `string` ; `oracleAddress`: `string` ; `payment`: `string` ; `private_key`: `string` ; `providerUri`: `string` ; `rawData`: `string` ; `requestId`: `string` ; `requester`: `string`  }

#### Defined in

[index.ts:39](https://github.com/statechangelabs/chainlinkfall2022/blob/441bd8c/listener/src/index.ts#L39)

___

### sendResult

▸ **sendResult**(`data`, `__namedParameters`): `Promise`<`void`\>

#### Parameters

| Name | Type |
| :------ | :------ |
| `data` | `any` |
| `__namedParameters` | `Object` |
| `__namedParameters.id` | `number` |
| `__namedParameters.key` | `string` |

#### Returns

`Promise`<`void`\>

#### Defined in

[index.ts:19](https://github.com/statechangelabs/chainlinkfall2022/blob/441bd8c/listener/src/index.ts#L19)
npm package: @nodelet/child-process
Description: child-process with rxjs observable interface
Author: Nivrith
Latest version: 1.1.0

# child-process

[![CircleCI](https://circleci.com/gh/nodelet/child-process/tree/master.svg?style=svg)](https://circleci.com/gh/nodelet/child-process/tree/master)
[![NPM Downloads](https://img.shields.io/npm/dm/@nodelet/child-process)](https://www.npmjs.com/package/@nodelet/child-process)
[![node](https://img.shields.io/node/v/@nodelet/child-process.svg)](https://www.npmjs.com/package/@nodelet/child-process)
[![License MIT](https://img.shields.io/github/license/nodelet/child-process.svg)](https://github.com/nodelet/child-process/blob/master/LICENSE)

child-process with rxjs observable interface

## Highlights

- Written in Typescript

- Observable interface

- Reactive

## Installation

npm:

```shell
$ npm install @nodelet/child-process
```

yarn:

```shell
$ yarn add @nodelet/child-process
```

## Usage

> child-process with rxjs observable interface

```js
  //spawn
  const { spawn } = require('@nodelet/child-process');

  const childProcess$ = spawn('node', ['-v']);

    let processSubscription = childProcess$.subscribe(
    ({stdout, stderr}) => {
        if(stdout){
            process.stdout.write(stdout)
        } else if(stderr) {
            process.stderr.write(stderr)
        }
    },
    e => console.error(e)
  );

  //exec
  const { exec } = require('@nodelet/child-process');

  const childProcess$ = exec('node -v');

  let processSubscription = childProcess$.subscribe(
    ({stdout, stderr}) => {
        if(stdout){
            process.stdout.write(stdout)
        } else if(stderr) {
            process.stderr.write(stderr)
        }
      },
    e => console.error(e)
  );

```

## License

MIT © [Nivrith](https://github.com/nivrith)