open-index/open-npm huggingface dataset:
npm package: @huzan/hz-better-scroll
Description: ## Install
Latest version: 1.8.0

# @huzan/hz-better-scroll

## Install

```bash
npm install --save @huzan/hz-better-scroll
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-better-scroll'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-cos-upload
Description: ## Install
Latest version: 3.4.0

# hz-image

## Install

```bash
npm install --save @huzan/hz-image
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-image'
import '@huzan/hz-image/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-cz
Description: ## commit messages lint
Latest version: 1.4.3

# hz-cz

## commit messages lint

```json
{
    "husky": {
        "hooks": {
            "commit-msg": "commitlint -E HUSKY_GIT_PARAMS",
            "pre-commit": "npm run lint-staged"
        }
    },
    "config": {
        "commitizen": {
            "path": "@huzan/hz-cz/cz-conventional-changelog"
        }
    }
}
```

```javascript
//commitlint.config.js
module.exports = {
    extends: ['@huzan/hz-cz/commitlint-config'],
}
```

[语义化版本](https://semver.org/lang/zh-CN/) [约定式提交](https://www.conventionalcommits.org/zh/v1.0.0-beta.4/)
npm package: @huzan/hz-device-select
Description: ## Install
Latest version: 1.4.5

# hz-device-select

## Install

```
npm install --save @huzan/hz-device-select
```

## Usage

```
import React, {Component} from 'react'

import DeviceSelectMulti from '@huzan/hz-device-select'
import '@huzan/hz-device-select/style'

class Example extends Component {
    render() {
        return <DeviceSelectMulti
                   visible={visible}
                   apiHost={apiHost}
                   accessToken={accessToken}
                   searchOption={['keyword', 'group_id']}
                   onCancel={this.onCancel}
                   onOk={this.onOk}
        />
    }
}
```

## License

MIT © liyan
npm package: @huzan/hz-dialog
Description: ## Install
Latest version: 1.8.0

# @huzan/hz-dialog

## Install

```bash
npm install --save @huzan/hz-dialog
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-dialog'
import '@huzan/hz-dialog/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-eagle
Description: ## Install
Latest version: 1.2.3

# @huzan/hz-eagle(基于@huzan-umi3-plugins架构的前端代码共享方案)

## Install

```bash
npm install --save @huzan/hz-eagle
```

## commands

```bash

cross-env HZ_EAGLE_CONFIG_PATH=./.eagle.config.js //config path

Usage: hz-eagle <command> [options]

                sync      (-b=branch || -t=tag || -c=commitId) -f=[forceUpdate] -i=[init]
                update  
                copy
                remove    -c=[isCommit]
                check
                move      -o=[oldBaseCodePath]
                lint
```

## option
```base

// copy file option
//"notCover": true //是否不覆盖, "crateShadowFile" : true //使用影子文件

// @hz-sync-base-project-option-begin
// {"notCover": true, "crateShadowFile" : true}
// @hz-sync-base-project-option-end


"husky": {
    "hooks": {
        "commit-msg": "commitlint -E HUSKY_GIT_PARAMS",
        "pre-commit": "hz-eagle lint && npm run lint-staged"
    }
}

//.eagle.config.js
module.exports = {
    baseCodePath: '',
    gitlabUrl: '',
    token: '',
    projectId: '',
    copyCacheToSourceFilter: ({absFromPath,absToPath,path,}) => true,
    copySourceToSrcFilter: ({absFromPath,absToPath,path,}) => true,
    copyCacheToSourceGlobbyPatterns: ['**'],
    copyCacheToSourceGlobbyOption: {},
    hzSyncBaseProjectOptionExtnameRe: /\.(js|jsx|ts|tsx|less|css)$/,
    copySourceToSrcGlobbyPatterns: ['./src/**'],
    copySourceToSrcGlobbyOption: {},
}

//lint-staged.config.js
const {createFilterCopyFiles} = require('@huzan/hz-eagle')

const filterCopyFiles = createFilterCopyFiles()


module.exports = {
    '**/*': [
        async function lintFilesPath(files) {
            await filterCopyFiles(files)

            return `node ./scripts/lint-files-path.js ${files.join(' ')}`
        },
    ],
    '**/*.{js,jsx}': [
        async function lintJs(files) {
            await filterCopyFiles(files)

            return `hz-eslint --fix ${files.join(' ')}`
        },
        async function prettier(files) {
            await filterCopyFiles(files)

            return `hz-prettier --write ${files.join(' ')}`
        },
    ],
    '**/*.{css,less}': [
        async function lintStyle(files) {
            await filterCopyFiles(files)

            files.forEach((file) => file.replace('[', '\\[').replace(']', '\\]'))

            return `hz-stylelint --fix ${files.join(' ')}`
        },
        async function prettier(files) {
            await filterCopyFiles(files)

            return `hz-prettier --write ${files.join(' ')}`
        },
    ],
}

```

# 私有部署改造 前端代码共享方案

##前提条件
- 1.所有的代码都由本公司人员开发。
- 2.基础功能版本只维护一个版本。有3个分支dev,test,master。所有定制版本都是共享基础版本代码，向下兼容，定制版本更新只能共享到基础版本对应分支的最新代码。
- 3.基础功能版本提供路由基本的配置。交互都一样，不能在基础版本二级菜单中加入地址版本页面。如果需要，单独在定制版本上开发，关闭基础版本的路由页面。
- 4.定制版本上不能修改基础版本代码，使用影子文件引入。



## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-editor
Description: ## Install
Latest version: 3.2.0

# hz-editor

## Install

```bash
npm install --save @huzan/hz-editor
```

## Usage

```jsx
import React, {Component} from 'react'

import {Editor} from '@huzan/hz-editor'
import '@huzan/hz-editor/style'

class Example extends Component {
    render() {
        return <Editor />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-ellipsis
Description: ## Install
Latest version: 3.1.0

# hz-xxx

## Install

```bash
npm install --save @huzan/hz-xxx
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-xxx'
import '@huzan/hz-xxx/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-form-item
Description: ## Install
Latest version: 1.5.0

# @huzan/hz-form-item

## Install

```bash
npm install --save @huzan/hz-form-item
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-form-item'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-full-type-message
Description: 全类型消息组件
Latest version: 1.4.5

# @huzan/hz-full-type-message

全类型消息组件

## Install

```bash
npm install --save @huzan/hz-full-type-message
```

## Usage

```jsx
import React, {Component} from 'react'

import {MyComponent} from '@huzan/hz-full-type-message'
import '@huzan/hz-full-type-message/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

[文档](https://tower.im/teams/695470/documents/9169/)

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-history-message
Description: ## Install
Latest version: 1.4.5

# hz-history-message

## Install

```bash
npm install --save @huzan/hz-history-message
```

## Usage

```jsx
import React, {Component} from 'react'

import {Messages, ViewContextModal} from '@huzan/hz-history-message'
import '@huzan/hz-history-message/style'

// 搜索查看聊天记录
class ExampleMessages extends Component {
    render() {

        const options = {
              apiHost,
              accessToken,
              requestOptions,
              fromUin,
              toUsername,
              activeSession, // 对话 {from: {uin, head_img_url, nickname, remark}, target: {username, alias, head_img_url, remark_name}}
              contentHeight, // 内容高度（搜索项和聊天记录列表）
              keyword, // 搜索关键字
              onClickImage, // 自定义图片点击 {url, images, activeIndex}
              onClickVideo, // 自定义视频点击 {url}
        }

        return <Messages {...options}/>
    }
}

// 直接查看上下文弹窗
class ExampleViewContextModal extends Component {
    render() {

        const options = {
              apiHost,
              accessToken,
              requestOptions,
              fromUin,
              toUsername,
              keyword, // 高亮关键字
              activeRecord, // 需要定位的记录 {create_time: timestamp}
              listHeight, // 聊天记录列表的高度
              renderBtn = {
                  (setTrue) => (
                      <Button
                          type="primary"
                          onClick={setTrue}
                          >
                          查看上下文
                      </Button>
                  )
              }
              modalOption = { // 自定义弹窗
                  {
                      title: '聊天记录上下文',
                      okText: '确定',
                      cancelText: '取消'
                  }
              }
              onClickImage, // 自定义图片点击 {url, images, activeIndex}
              onClickVideo, // 自定义视频点击 {url}
        }

        return <ViewContextModal {...options}/>
    }
}
```

## License

MIT © liyan
npm package: @huzan/hz-image
Description: ## Install
Latest version: 2.5.0

# hz-image

## Install

```bash
npm install --save @huzan/hz-image
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-image'
import '@huzan/hz-image/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-infinite-scroller
Description: ## Install
Latest version: 1.6.0

# hz-xxx

## Install

```bash
npm install --save @huzan/hz-xxx
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-xxx'
import '@huzan/hz-xxx/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-layout
Description: ## Install
Latest version: 4.2.0

# hz-xxx

## Install

```bash
npm install --save @huzan/hz-xxx
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-xxx'
import '@huzan/hz-xxx/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-mobile-cos-upload
Description: ## Install
Latest version: 1.4.0

# @huzan/hz-mobile-cos-upload

## Install

```bash
npm install --save @huzan/hz-mobile-cos-upload
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-mobile-cos-upload'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-mobile-image-viewer
Description: ## Install
Latest version: 1.5.0

# @huzan/hz-mobile-image-viewer

## Install

```bash
npm install --save @huzan/hz-mobile-image-viewer
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-mobile-image-viewer'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-mobile-utils
Description: ## Install
Latest version: 1.4.0

# @huzan/hz-mobile-utils

## Install

```bash
npm install --save @huzan/hz-mobile-utils
```

## Usage

```jsx
import {} from '@huzan/hz-mobile-utils'
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-mobile-video
Description: ## Install
Latest version: 1.8.0

# @huzan/hz-mobile-video

## Install

```bash
npm install --save @huzan/hz-mobile-video
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-mobile-video'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-parse-wx-message
Description: ## Install
Latest version: 1.3.3

# hz-xxx

## Install

```bash
npm install --save @huzan/hz-xxx
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-xxx'
import '@huzan/hz-xxx/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-portal
Description: ## Install
Latest version: 1.2.0

# @huzan/hz-protal

## Install

```bash
npm install --save @huzan/hz-protal
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-protal'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-protal
Description: ## Install
Latest version: 1.3.4

# @huzan/hz-protal

## Install

```bash
npm install --save @huzan/hz-protal
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-protal'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-react-hooks
Description: ## Install
Latest version: 2.3.0

# hz-xxx

## Install

```bash
npm install --save @huzan/hz-xxx
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-xxx'
import '@huzan/hz-xxx/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-react-tools
Description: ## Install
Latest version: 3.3.0

# hz-xxx

## Install

```bash
npm install --save @huzan/hz-xxx
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-xxx'
import '@huzan/hz-xxx/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-react-upload
Description: ## Install
Latest version: 1.4.0

# @huzan/hz-upload

## Install

```bash
npm install --save @huzan/hz-upload
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-upload'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-upload
Description: ## Install
Latest version: 1.4.4

# hz-xxx

## Install

```bash
npm install --save @huzan/hz-xxx
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-xxx'
import '@huzan/hz-xxx/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-utils
Description: ## Install
Latest version: 2.7.0

# @huzan/hz-utils

## Install

```bash
npm install --save @huzan/hz-utils
```

## Usage

```jsx
import { $, $addClass, $attr, $class ....} from '@huzan/hz-utils'
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-video
Description: ## Install
Latest version: 1.3.0

# @huzan/hz-video

## Install

```bash
npm install --save @huzan/hz-video
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-video'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-video-cover
Description: ## Install
Latest version: 1.8.0

# @huzan/hz-video-cover

## Install

```bash
npm install --save @huzan/hz-video-cover
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-video-cover'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-viewer
Description: ## Install
Latest version: 1.8.0

# hz-dialog

## Install

```bash
npm install --save @huzan/hz-viewer
```

## Usage

```jsx
import React, {Component} from 'react'

import MyComponent from '@huzan/hz-viewer'
import '@huzan/hz-viewer/style'

class Example extends Component {
    render() {
        return <MyComponent />
    }
}
```

## License

MIT © [LeoHuiyi](https://github.com/LeoHuiyi)
npm package: @huzan/hz-wechat-select
Description: ## Install
Latest version: 1.4.5

# hz-wechat-select

## Install

```
npm install --save @huzan/hz-wechat-select
```

## Usage

```
import React, {Component} from 'react'

import WeChatSelectMulti from '@huzan/hz-wechat-select'
import '@huzan/hz-wechat-select/style'

class Example extends Component {
    render() {
        return <WeChatSelectMulti
                   visible={visible}
                   apiHost={apiHost}
                   accessToken={accessToken}
                   disableByQrCode={false}
                   filterBySerialno={true}
                   searchOption={['query', 'group_id', 'online']}
                   onCancel={this.onCancel}
                   onOk={this.onOk}
               />
    }
}
```

## License

MIT © liyan