open-index/open-npm huggingface dataset:
npm package: @livelybone/use-mounted
Description: React hook for mounted and unmount, return an object: MutableRefObject<{ mounted: boolean, unmounted: boolean }>
Author: 2631541504@qq.com
Latest version: 1.0.5

# @livelybone/use-mounted
[![NPM Version](http://img.shields.io/npm/v/@livelybone/use-mounted.svg?style=flat-square)](https://www.npmjs.com/package/@livelybone/use-mounted)
[![Download Month](http://img.shields.io/npm/dm/@livelybone/use-mounted.svg?style=flat-square)](https://www.npmjs.com/package/@livelybone/use-mounted)
![gzip with dependencies: 0.6kb](https://img.shields.io/badge/gzip--with--dependencies-0.6kb-brightgreen.svg "gzip with dependencies: 0.6kb")
![typescript](https://img.shields.io/badge/typescript-supported-blue.svg "typescript")
![pkg.module](https://img.shields.io/badge/pkg.module-supported-blue.svg "pkg.module")

> `pkg.module supported`, which means that you can apply tree-shaking in you project

[中文文档](./README-CN.md)

React hook for mounted and unmounted, return an object: MutableRefObject<{ mounted: boolean, unmounted: boolean }>

## repository
https://github.com/livelybone/use-mounted.git

## Demo
https://github.com/livelybone/use-mounted#readme

## Run Example
Your can see the usage by run the example of the module, here is the step:

1. Clone the library `git clone https://github.com/livelybone/use-mounted.git`
2. Go to the directory `cd your-module-directory`
3. Install npm dependencies `npm i`(use taobao registry: `npm i --registry=http://registry.npm.taobao.org`)
4. Open service `npm run dev`
5. See the example(usually is `http://127.0.0.1/examples/test.html`) in your browser

## Installation
```bash
npm i -S @livelybone/use-mounted
```

## Global name - The variable the module exported in `umd` bundle
`useMounted`

## Interface
See what method or params you can use in [index.d.ts](./index.d.ts)

```typescript jsx
import useMounted from '@livelybone/use-mounted'
const Comp = () => {
  const mount = useMounted(() => {
    console.log('mounted')
    return () => console.log('unmounted')
  })
  console.log(`Is comp mounted? ${mount.current.mounted ? 'Yes' : 'No'}`)
  console.log(`Is comp unmounted? ${mount.current.unmounted ? 'Yes' : 'No'}`)
  return <div></div>
}
```

Use in html, see what your can use in [CDN: unpkg](https://unpkg.com/@livelybone/use-mounted/lib/umd/)
```html
<-- use what you want -->
<script src="https://unpkg.com/@livelybone/use-mounted/lib/umd/<--module-->.js"></script>
```
npm package: @livelybone/vue-button
Description: A vue button component with anti-shake feature implemented by Promise, custom lock styles or text
Author: livelybone
Latest version: 1.3.0

# @livelybone/vue-button
[![NPM Version](http://img.shields.io/npm/v/@livelybone/vue-button.svg?style=flat-square)](https://www.npmjs.com/package/@livelybone/vue-button)
[![Download Month](http://img.shields.io/npm/dm/@livelybone/vue-button.svg?style=flat-square)](https://www.npmjs.com/package/@livelybone/vue-button)
![gzip with dependencies: 0.7kb](https://img.shields.io/badge/gzip--with--dependencies-0.7kb-brightgreen.svg "gzip with dependencies: 0.7kb")
![pkg.module](https://img.shields.io/badge/pkg.module-supported-blue.svg "pkg.module")

> `pkg.module supported`, which means that you can apply tree-shaking in you project

A vue button component with anti-shake feature implemented by Promise, custom lock styles or text
You maybe need a promise polyfill if you want to use it in `IE` browser

## repository
https://github.com/livelybone/vue-button.git

## Demo
http://livelybone.github.io/vue/vue-button/

## Installation
```bash
npm i -S @livelybone/vue-button
```

## Global name
`VueBtn`

## Usage
```js
// import all
import VueBtn from '@livelybone/vue-button';

// Global register
Vue.component('VueBtn', VueBtn);

// Local register
new Vue({
  components:{VueBtn}
})
```

when you want to set this module as external while you are developing another module, you should import it like this:
```js
import VueBtn  from '@livelybone/vue-button'
```

## Props
| Name                      | Type                                      | DefaultValue                                  | Description  |
| ------------------------- | ----------------------------------------- | --------------------------------------------- | ------------ |
| `clickFn`                 | `Function`(required)                      | none                                          | The handler of click returns a Promise |
| `errorFn`                 | `Function`                                | none                                          | The handler of Promise reject |
| `canUseAgain`             | `Boolean`                                 | `true`                                        | Set whether the button can be used again or not |

## Slots

### `default`

### `lock`
For custom lock content
npm package: @livelybone/vue-input
Description: A vue input component, a wrapper of input validator, formatter. textarea available. Fixed bug of chinese input, Fixed bug of auto-fill in chrome and firefox
Author: livelybone
Latest version: 3.7.0

# @livelybone/vue-input
![gzip with dependencies: 1.5kb](https://img.shields.io/badge/gzip--with--dependencies-1.5kb-brightgreen.svg "gzip with dependencies: 1.5kb")
![pkg.module](https://img.shields.io/badge/pkg.module-supported-blue.svg "pkg.module")
![mobile supported](https://img.shields.io/badge/mobile-supported-green.svg "mobile supported")
![ssr supported](https://img.shields.io/badge/ssr-supported-green.svg "ssr supported")

> `pkg.module supported`, which means that you can apply tree-shaking in you project

A vue input component, a wrapper of input validator, formatter. textarea available

> Fixed bug of chinese input

> Fixed unexpected action of auto-fill in chrome and firefox by setting set `autocomplete` to 'off' to disabled auto-fill  

## repository
https://github.com/livelybone/vue-input.git

## Demo
https://livelybone.github.io/vue/vue-input/

## Installation
```bash
npm i -S @livelybone/vue-input
```

## Register
```js
import VueInput from '@livelybone/vue-input';

// Global register
Vue.component('vue-input', VueInput);

// Local register
new Vue({
  components:{VueInput}
})
```

## Init
You can init a instance by call its `init` method, then the `valid` and `pristine` will be reset, 
see: https://github.com/livelybone/vue-input/blob/master/src/components/Index.vue#L95-L97

## Props
| Name              | Type                                      | DefaultValue         | Description  |
| ----------------- | ----------------------------------------- | -------------------- | ------------ |
| `id`              | `[String, Number]`                        | none                 |  |
| `value`           | `[String, Number]`                        | none                 |  |
| `config`          | `String`                                  | `defaultConf`        |  |

```js
// defaultValue of config
const defaultConf = {
  // Options: [textarea, text, password, ...]
  inputType: 'text', 
  placeholder: '',
  validator: () => true,
  // ['pre','suf'], timing of validator
  validateType: 'pre',
  // Formatting when inputting
  preFormatter: val => val,
  // Formatting at the end of inputting
  sufFormatter: val => val,
  maxlength: null,
  readonly: false,
  // Fixed unexpected action of auto-fill in chrome and firefox
  autocomplete: 'off',
  autofocus: false,
  disabled: false,
}
```

## Events
| Name                  | EmittedData           | Description                                       |
| --------------------- | --------------------- | ------------------------------------------------- |
| `input`               | `String`              |  |
| `check`               | `Object`              | Example: `{ valid: true, pristine: true }` |
npm package: @livelybone/vue-loading
Description: A vue loading component
Author: livelybone
Latest version: 3.3.1

# @livelybone/vue-loading
A vue loading component

## repository
https://github.com/livelybone/vue-loading.git

## Demo
https://livelybone.github.io/vue/vue-loading/

## Props
| Name              | Type                                      | DefaultValue         | Description  |
| ----------------- | ----------------------------------------- | -------------------- | ------------ |
| `size`            | `[String, Number]`                        | `100`                |  |
| `color`           | `String`                                  | none                 |  |

Just use it.
npm package: @livelyhood/design-system
Description: React Native shared UI code
Author: Wil Pirino
Latest version: 1.0.11

# @livelyhood/design-system

React Native shared UI code

## Installation

```sh
yarn add @livelyhood/design-system
```

## Usage

```js
import { HelloWorld, capitalize } from "@livelyhood/design-system";

// ...

return <HelloWorld>{capitalize("log in")}</HelloWorld>;
```

## Contributing

See the [contributing guide](CONTRIBUTING.md) to learn how to contribute to the repository and the development workflow.

## License

MIT
npm package: @livelysoftware/kapow
Description: Parameter validation with decorators
Author: Andrew Lively
Latest version: 0.0.1

kapow
======

[![Build Status](https://travis-ci.com/livelysoftware/kapow.svg?branch=master)](https://travis-ci.com/livelysoftware/kapow) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/0380ed069ab24ed393dc3f82d7dcd7a8)](https://www.codacy.com/app/andrew-lively2/kapow?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=livelysoftware/kapow&amp;utm_campaign=Badge_Grade)

Runtime function input validation using decorators and [ow](https://github.com/sindresorhus/ow)

## Installation

```
npm install --save @livelysoftware/kapow
```

## Example

```typescript

import { kapow, validate } from "@livelysoftware/kapow";

class MyClass {

  constructor() {}

  @validate
  add(
    @kapow({
      required: true,
      type: "number"
    }) a,
    @kapow({
      required: true,
      type: "number"
    }) b
  ) {
    /*
      If a and/or b are not provided and/or
      not of type "number" then an error will be thrown
    */
    return a + b;
  }

}

```

## Supported Options

- `required`
  - Type: `boolean`
  - Default: `false`
  - When set to true, throws an error if the parameter does not exist

- `type`
  - Type: `string`
  - Default: `any`
  - Validates provided input based on type

## TODO

- [ ] Full (or as much as possible) API support for [ow](https://github.com/sindresorhus/ow)
- [ ] Tests for all available options
- [ ] Reduce required syntax if possible (looking at you, `@validate`)
npm package: @livelyversenpm/lively-core-onchain
Description: Lively Guard Contracts and Utilities
Author: Sina Tadayon
Latest version: 3.0.5

# Advanced Sample Hardhat Project

This project demonstrates an advanced Hardhat use case, integrating other tools commonly used alongside Hardhat in the ecosystem.

The project comes with a sample contract, a test for that contract, a sample script that deploys that contract, and an example of a task implementation, which simply lists the available accounts. It also comes with a variety of other tools, preconfigured to work with the project code.

Try running some of the following tasks:

```shell
npx hardhat accounts
npx hardhat compile
npx hardhat clean
npx hardhat test
npx hardhat node
npx hardhat help
REPORT_GAS=true npx hardhat test
npx hardhat coverage
npx hardhat run scripts/deploy.ts
TS_NODE_FILES=true npx ts-node scripts/deploy.ts
npx eslint '**/*.{js,ts}'
npx eslint '**/*.{js,ts}' --fix
npx prettier '**/*.{json,sol,md}' --check
npx prettier '**/*.{json,sol,md}' --write
npx solhint 'contracts/**/*.sol'
npx solhint 'contracts/**/*.sol' --fix
```

# Etherscan verification

To try out Etherscan verification, you first need to deploy a contract to an Ethereum network that's supported by Etherscan, such as Ropsten.

In this project, copy the .env.example file to a file named .env, and then edit it to fill in the details. Enter your Etherscan API key, your Ropsten node URL (eg from Alchemy), and the private key of the account which will send the deployment transaction. With a valid .env file in place, first deploy your contract:

```shell
hardhat run --network ropsten scripts/deploy.ts
```

Then, copy the deployment address and paste it in to replace `DEPLOYED_CONTRACT_ADDRESS` in this command:

```shell
npx hardhat verify --network ropsten DEPLOYED_CONTRACT_ADDRESS "Hello, Hardhat!"
```

# Performance optimizations

For faster runs of your tests and scripts, consider skipping ts-node's type checking by setting the environment variable `TS_NODE_TRANSPILE_ONLY` to `1` in hardhat's environment. For more details see [the documentation](https://hardhat.org/guides/typescript.html#performance-optimizations).