open-index/open-npm huggingface dataset:
npm package: @hjin/fuck-anticon
Description: AntD or NgZorro font icon local deployment
Author: hjin-me
Latest version: 0.4.1

# fuck-anticon
for Ng Zorro or Antd(React) font-icon Local Deployment.

## Feature

1. No more request ali server;
2. Use Webpack for bundle fonts;
3. No less.

## Install

1.

```
npm install --save-dev @hjin/fuck-anticon
# or
yarn add --dev @hjin/fuck-anticon
```

2. Add PostInstall to your package.json
```
"scripts": {
  "postinstall": "fuck-anticon"
},
```

3. (Optional) Add fonts to your global style Only for NgZorro 0.6 or lower. 

```
@font-face {
  font-family: 'anticon';
  src: url('../node_modules/ng-zorro-antd/src/assets/fonts/iconfont.eot'); /* IE9*/
  src:
  /* IE6-IE8 */
  url('../node_modules/ng-zorro-antd/src/assets/fonts/iconfont.eot?#iefix') format('embedded-opentype'),
  /* chrome、firefox */
  url('../node_modules/ng-zorro-antd/src/assets/fonts/iconfont.woff') format('woff'),
  /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/
  url('../node_modules/ng-zorro-antd/src/assets/fonts/iconfont.ttf') format('truetype'),
  /* iOS 4.1- */
  url('../node_modules/ng-zorro-antd/src/assets/fonts/iconfont.svg#iconfont') format('svg');
}
```

自己动手丰衣足食 NG-ZORRO/ng-zorro-antd#158
npm package: @hjin/generator-app
Description: WebApp Scaffold
Author: HJin_me
Latest version: 1.0.6

# @hjin/generator-app

> WebApp Scaffold

## Installation

First, install [Yeoman](http://yeoman.io) and @hjin/generator-app using [npm](https://www.npmjs.com/) (we assume you have pre-installed [node.js](https://nodejs.org/)).

```bash
npm install -g yo
npm install -g @hjin/generator-app
```

Then generate your new project:

```bash
yo @hjin/app
```

## Getting To Know Yeoman

- Yeoman has a heart of gold.
- Yeoman is a person with feelings and opinions, but is very easy to work with.
- Yeoman can be too opinionated at times but is easily convinced not to be.
- Feel free to [learn more about Yeoman](http://yeoman.io/).

## License

MIT © [HJin_me]()
npm package: @hjkcai/eslint-config-halo
Description: The eslint config for halo team
Author: hjkcai
Latest version: 11.2.1

# eslint-config-halo

本规则是我在 halo 团队发起的，多年前端编码的规则沉淀

## 设计原则

1. 基于 tencent 规则扩展
2. ESLint 是帮助编码的工具，不要成为负担
3. 内置大量 TypeScript 最佳实践规则，按这个写准没错

## 开始使用

首先安装 ESLint 和规则：

```bash
npm install -D eslint @hjkcai/eslint-config-halo
```

在你的项目的根目录下创建一个 `.eslintrc.js` 文件，根据你的项目类型，复制下面的代码到该文件中。同时下面也提供了参考的 `package.json` scripts 配置，可以自行加入到已有的项目中去。

### JavaScript

#### 普通 JavaScript 项目

```js
module.exports = {
  extends: '@hjkcai/eslint-config-halo/js'
};
```

```json
{
  "scripts": {
    "lint": "eslint ."
  }
}
```

#### React + JavaScript 项目

```js
module.exports = {
  extends: '@hjkcai/eslint-config-halo/js/react'
};
```

```json
{
  "scripts": {
    "lint": "eslint . --ext .js,.jsx"
  }
}
```

### TypeScript

#### 普通 TypeScript 项目

```js
module.exports = {
  extends: '@hjkcai/eslint-config-halo/ts'
};
```

```json
{
  "scripts": {
    "lint": "eslint . --ext .js,.ts"
  }
}
```

#### React + TypeScript 项目

```js
module.exports = {
  extends: '@hjkcai/eslint-config-halo/ts/react'
};
```

```json
{
  "scripts": {
    "lint": "eslint . --ext .js,.jsx,.ts,.tsx"
  }
}
```

### TypeScript 严格模式

对于某些需要非常认真地对待的项目，不能马虎的那种，推荐使用 TypeScript 严格模式配置。

#### 普通 TypeScript 项目

```js
module.exports = {
  extends: '@hjkcai/eslint-config-halo/ts-strict'
};
```

```json
{
  "scripts": {
    "lint": "eslint . --ext .js,.ts"
  }
}
```

#### React + TypeScript 项目

```js
module.exports = {
  extends: '@hjkcai/eslint-config-halo/ts-strict/react'
};
```

```json
{
  "scripts": {
    "lint": "eslint . --ext .js,.jsx,.ts,.tsx"
  }
}
```

## License

MIT
npm package: @hjkl6/dumi-theme-antv
Description: [![NPM version](https://img.shields.io/npm/v/@antv/dumi-theme-antv.svg?style=flat)](https://npmjs.org/package/@antv/dumi-theme-antv) [![NPM downloads](http://img.shields.io/npm/dm/@antv/dumi-theme-antv.svg?style=flat)](https://npmjs.org/package/@antv/dumi
Latest version: 0.5.9

# @antv/dumi-theme-antv

[![NPM version](https://img.shields.io/npm/v/@antv/dumi-theme-antv.svg?style=flat)](https://npmjs.org/package/@antv/dumi-theme-antv) [![NPM downloads](http://img.shields.io/npm/dm/@antv/dumi-theme-antv.svg?style=flat)](https://npmjs.org/package/@antv/dumi-theme-antv)

A theme package for the [dumi](https://next.d.umijs.org) framework.

## Usage

Install this theme into `devDependencies`:

```bash
$ npm i @antv/dumi-theme-antv -D
```

Configure it in dumi config file `.dumirc.ts`:

```ts
import { defineConfig } from 'dumi';

export defineConfig({
  themeConfig: {
    ...
  },
});
```

That's all, now you can execute `dumi dev` and enjoy this theme.

## Options

TODO

`themeConfig.docsearchOptions.sort` 用于配置搜索结果的排序规则。可以通过字符串数组来定义排序逻辑。

- 每个字符串可以是一个路径片段，用于匹配搜索结果的链接。
- 如果字符串以 `!` 开头，则表示不包含该路径片段的结果应排在包含该路径片段的结果之前。

## Development

```bash
$ npm install
```

After the dependencies are installed, a symlink from `example/.dumi/theme` to `../../src` will be created automatically, the symlink makes dumi load our theme package as a local theme, so we can start the example directly, HMR is also available:

```bash
# switch to example directory
$ cd example

# downloads the dependencies
npm install

# start dev server to preview
npm run dev
```

dumi theme development documentation: https://next.d.umijs.org/theme

## LICENSE

MIT
npm package: @hjkltop/genesis-compiler
Description: Vue SSR Microfront
Author: Followme
Latest version: 2.1.9

# @hjkltop/genesis-compiler
这是`Genesis`的开发时使用的库，它提供了完整的TS能力，能够帮你检查TS类型（包括Vue组件）。

## 安装：
```bash
npm install @hjkltop/genesis-compiler -D
```
## 快速使用
- [中文文档](https://github.com/fmfe/genesis/blob/master/docs/zh-CN/quick-start.md)
npm package: @hjkltop/genesis-core
Description: Vue SSR Microfront
Author: Followme
Latest version: 2.1.9

# @hjkltop/genesis-core
这是`Genesis`的核心库，提供了`SSR`、`Renderer`和`MF`

## 安装：
```bash
npm install @hjkltop/genesis-core
```
## 使用：
```ts
import { MF, Renderer, SSR } from '@hjkltop/genesis-core';


```
## 文档：
[https://github.com/fmfe/genesis](https://github.com/fmfe/genesis)
npm package: @hjkltop/nestjs-eureka
Description: A NestJS module that integrate eureka-js-client
Author: F. Boisselier
Latest version: 1.0.7-beta.2


<a href="https://www.npmjs.com/package/@hjkltop/nestjs-eureka"><img src="https://img.shields.io/npm/v/vue.svg?sanitize=true" alt="Version"></a>

`nests-eureka` is a [NestJS](https://nestjs.com/) module that provides an integration with [eureka-js-client](https://github.com/jquatier/eureka-js-client#eureka-js-client)

## Getting Started

You need to import the `EurekaModule` in your application:

```js
EurekaModule.forRoot({
    eureka: {
      requestMiddleware: (requestOpts, done) => {
        requestOpts.auth = {
          user: 'username',
          password: 'password'',
        };
        done(requestOpts);
      },
      host: 'eureka-service',
      port: 8761,
      registryFetchInterval: 1000,
      servicePath: '/eureka/apps/',
      maxRetries: 3,
    },
    service: {
      name: 'my-service',
      port: 8080,
    },
}),
```

## Run Tests

```
npm run test
docker pull springcloud/eureka
docker run --rm -p 8761:8761 springcloud/eureka
npm run test:e2e
```
npm package: @hjmendoza/tiny
Description: Removes all spaces from a string
Latest version: 2.0.0

[![npm (scoped)](https://img.shields.io/npm/v/:scope/:package.svg)](https://github.com/hjmendoza/tiny.git)

[![npm bundle size (minified)](https://img.shields.io/bundlephobia/min/react.svg)](https://github.com/hjmendoza/tiny)

Removes all spaces from a string.

## Install

```
$ npm install @hjmendoza/tiny
```

## Usage

```js
const tiny = require("@hjmendoza/tiny");

tiny("So much space!");
//=> "Somuchspace!"

tiny(1337);
//=> Uncaught TypeError: Tiny wants a string!
//    at tiny (<anonymous>:2:41)
//    at <anonymous>:1:1
```

Followed Medium tutorial.
npm package: @hjopel/aframe-input-mapping-component
Description: A Input Mapping component for A-Frame.
Author: Fernando Serrano
Latest version: 0.1.11

## aframe-input-mapping-component

[![Version](http://img.shields.io/npm/v/aframe-input-mapping-component.svg?style=flat-square)](https://npmjs.org/package/aframe-input-mapping-component)
[![License](http://img.shields.io/npm/l/aframe-input-mapping-component.svg?style=flat-square)](https://npmjs.org/package/aframe-input-mapping-component)

Input Mapping component for [A-Frame](https://aframe.io).

Read more about it on https://blog.mozvr.com/input-mapping

![Screenshot](https://github.com/fernandojsg/aframe-input-mapping-component/raw/master/mapping.png)

### Installation

#### Browser

Install and use by directly including the [browser files](dist):

```html
<head>
  <title>My A-Frame Scene</title>
  <script src="https://aframe.io/releases/0.6.0/aframe.min.js"></script>
  <script src="https://unpkg.com/aframe-input-mapping-component/dist/aframe-input-mapping-component.min.js"></script>
</head>
```

#### npm

Install via npm:

```bash
npm install aframe-input-mapping-component
```

Then require and use.

```js
require('aframe');
require('aframe-input-mapping-component');
```

#### Register a new mapping

Define a mapping object:
```javascript
var mappings = {
  default: {
    'vive-controls': {
      trackpaddown: 'teleport'
    },

    'oculus-touch-controls': {
      xbuttondown: 'teleport'
    }
  },
  paint: {
    common: {
      triggerdown: 'paint'
    },
  
    'vive-controls': {
      menudown: 'toggleMenu'
    },

    'oculus-touch-controls': {
      abuttondown: 'toggleMenu'
    }
  }
}
``` 

Register it:
```javascript
AFRAME.registerInputMappings(mappings);
```
npm package: @hjtech/eslint-config
Description: Eslint from wowissu.
Author: wowissu
Latest version: 1.0.13

# @hjtech/eslint-config

Add extend into .eslintrc for active the features.

```javascript
// .eslintrc.js

module.exports = {
  // ...
  extends: [
    '@hjtech/eslint-config/common',
    '@hjtech/eslint-config/babel',
    '@hjtech/eslint-config/file-progress'
  ],
  // ...
}
```

## `@hjtech/eslint-config/common`

Common js rules, must use this as base.

## `@hjtech/eslint-config/babel`
## `@hjtech/eslint-config/file-progress`

Show the file progress when linting.

## `@hjtech/eslint-config/import`

Plugin of eslint-plugin-import can order & lint your import

## `@hjtech/eslint-config/ts`

Rules of typescript. extends with

```javascript
'plugin:@typescript-eslint/eslint-recommended'
'plugin:@typescript-eslint/recommended'
```

## `@hjtech/eslint/vue`

Rules of vue, extends with

```javascript
'plugin:vue/recommended'
```
npm package: @hjtech/stylelint
Description: Stylelint form wowissu
Author: wowissu
Latest version: 1.0.3

# @hjtech/stylelint

Add extend into .stylelintrc.json for active the features.

```javascript
// .stylelintrc.json
{
  // ...
  "extends": [
    "./node_modules/@hjtech/stylelint/recommended",
    "./node_modules/@hjtech/stylelint/scss",
    "./node_modules/@hjtech/stylelint/order"
  ],
  // ...
}
```

## `@hjtech/stylelint/standard` , `@hjtech/stylelint/recommended`

Both are the base stylelint rules. pick one been your base.

## `@hjtech/stylelint/scss`

Scss lint plugin.

## `@hjtech/stylelint/order`

Make properties order by rules as below.

<details>
  <summary>rules of order</summary>

  ```
    [
      "position",
      "top",
      "right",
      "bottom",
      "left",
      "z-index",
      "display",
      "justify-content",
      "align-items",
      "float",
      "clear",
      "overflow",
      "overflow-x",
      "overflow-y",
      "padding",
      "padding-top",
      "padding-right",
      "padding-bottom",
      "padding-left",
      "margin",
      "margin-top",
      "margin-right",
      "margin-bottom",
      "margin-left",
      "width",
      "min-width",
      "max-width",
      "height",
      "min-height",
      "max-height",
      "font-size",
      "font-family",
      "text-align",
      "text-justify",
      "text-indent",
      "text-overflow",
      "text-decoration",
      "white-space",
      "color",
      "background",
      "background-position",
      "background-repeat",
      "background-size",
      "background-color",
      "background-clip",
      "border",
      "border-style",
      "border-width",
      "border-color",
      "border-top-style",
      "border-top-width",
      "border-top-color",
      "border-right-style",
      "border-right-width",
      "border-right-color",
      "border-bottom-style",
      "border-bottom-width",
      "border-bottom-color",
      "border-left-style",
      "border-left-width",
      "border-left-color",
      "border-radius",
      "opacity",
      "filter",
      "list-style",
      "outline",
      "visibility",
      "box-shadow",
      "text-shadow",
      "resize",
      "transition"
    ]
  ```
</details>
npm package: @hjtech/types
Description: typescript helper
Author: wowissu
Latest version: 1.0.5

# @hjtech/types

## **general**

### `IfEquals<X, Y, A=X, B=never>`

Compare fst. and snd. generic type and return thr. or fth.

```typescript
type R = IfEquals<number, number, number, string>; // number
type R = IfEquals<string, string>; // string
type R = IfEquals<number, string, number, string>; // string
type R = IfEquals<number, string, number>; // never
```

### `WritableKeys<T>`

Pick the keys of writable member.

```typescript
type R = WritableKeys<{ readonly foo: 'foo', bar: 'bar', foobar: 'foobar' }>;
type R = "bar" | "foobar"
```

### `ReadonlyKeys<T>`

Pick the keys of readonly member.

```typescript
type R = ReadonlyKeys<{ readonly foo: 'foo', bar: 'bar', foobar: 'foobar' }>;
type R = "foo"
```

### `UnionToIntersection<T>`

Turn Union To Intersection

```typescript
type R = UnionToIntersection<A | B>
type R = A & B
```

## **function**

### `FirstArgument<T>`

Return the first parameter

```typescript
type Result = FirstArgument<(fst: number, sed: string, thr: object) => any>; // number
type Result = number
```

### `OmitFirstParamters<T>`

Return the rest after first parameter

```typescript
type Result = OmitFirstParamters<(fst: number, sed: string, thr: object) => any>;
type Result = [sed: string, thr: object]
```

## **object**

### `ValueOf<T>`

Get values type.

```typescript
type Result = Valueof<{ foo: string, bar: number }>; // string | number
```

### `KeysOfType<T, TProp>`

Get type matched keys.

```typescript
type Result = KeysOfType<{ foo: string, bar: number }, string>; // 'foo'
```

### `FilterOfType<T, TProp>`

Get filter members by type.

```typescript
type Result = FilterOfType<{ foo: string, bar: number }, string>; // { foo: string }
```

### `RequireAtLeastOne<T, K extends keyof T>`

Require at least one member from `T`

```typescript
type Target = { foo?: string, bar?: number, other: string }
type TargetLeastOne = RequireAtLeastOne<Target, 'foo' | 'bar'>

// passed
const objA: TargetLeastOne = { foo: 'foo', other: 'other' };
const objB: TargetLeastOne = { bar: 0, other: 'other' };
```

### `ArrayElement<T>`

Get type of element from array

```typescript
type Result = ArrayElement<[ number, string ]> => number | string
```

### `ArrayElementMemberType<T, M>`

Get type from member in element of array

```typescript
type TodoList = Array<{ foo: number, bar: string }>
type Result = ArrayElementMemberType<TodoList, 'foo'> // number
```

## **promise**

### `Await<T>`

Get type from `Promise<T>`

```typescript
type Result = Await<Promise<string>> === string
```

### `AwaitReturnType<T>`

Get type from call who return the Promise

```typescript
type Resoult = AwaitReturnType<() => Promise<string>> === string
```