open-index/open-npm huggingface dataset:
npm package: @fantai/table
Description: ``` import { FtTable, FtTableColumn, FtTableStockColumn } from '@fantai/table';
Author: jiagang
Latest version: 0.0.17

### 使用方式
```
import { FtTable, FtTableColumn, FtTableStockColumn } from '@fantai/table';

<ft-table :items="data">
    <ft-table-column title="名称" field="ZhongWenJianCheng">
        <template v-slot:header="{ column }">标题</template>
        <template v-slot:cell="{ column, item }">...</template>
    </ft-table-column>
</ft-table>
```

#### table 参数

**items**: any[] 表格数据

**itemId**: string | (item) => string 行的id来源，用作生成数据行的key，可以是字符串(取item中对应字段)，可以是通过一个function获取

**itemAdaptor**: string | (item) => object 行数据的适配器，可以将行数据做些修改后返回，只对当前显示数据调用该方法，比如在数据量大的列表中，table的items尽量不要频繁变化，避免表格整体重新渲染，这时设置itemAdaptor只对显示中的部分数据做处理

**hideHeader**: boolean 是否隐藏表头

**fixedHeader**: boolean 是否固定表头

**columnWidth**: string 所有列的统一列宽

**simulateScrollX**: boolean 是否横向使用模拟滚动，ios默认为true

#### table 监听事件

**range**: ({ current: number, count: number, start: number, end: number}) 表格纵向滚动时显示区域变化时触发，current 当前显示的第一条数据index，count 当前显示数据个数，start 数据缓存（渲染的数据）开始位置，end 数据缓存（渲染的数据）结束位置

**part**: (partItems: any[]) 表格纵向滚动时当前渲染数据变化时触发，partItems 当前渲染的部分数据

**itemClick**: (item: any, event: Event) 点击行数据时触发，item 点击的行数据

#### table-column 参数

**id**: string 列的id，用作生成列的key，默认等于field

**title**: string 默认显示的表头标题

**field**: string 默认显示的数据字段名

**fixed**: boolean 是否固定列

**align**: string | undefined 列数据的对齐方式，取值left|right|center

#### table-column 监听事件

**cellClick**: ({ item: any, column: any, event: Event }) 点击某格数据时触发

#### table-stock-column 参数

继承table-column所有参数

**sortable**: boolean 列是否可以排序

**sortableField**: string 排序的字段，默认等于列的field

**updownStyle**: boolean 是否自动设置涨跌样式

**relateField**: string 涨跌相关数据字段，根据对应字段数据值大于小于0判断涨跌，默认和field相同，指定compareField则和compareField值做比较

**compareField**: string 涨跌比较数据字段，比较当前值和对应字段的值大小判断涨跌('last'表示和上一次值比较)

**type**: string 数据格式化类型，取值 price|volume|ratio|text ，默认不设置按照price保留两位小数格式化，volume超过万/亿会加上单位，ratio按照百分数格式化后加上%，text则不做数据格式化按照文本输出

**precision**: number 格式化时保留小数位数

**unit**: string 数据按照指定单位自动格式化后添加单位，取值 ''|'K'|'M'|'B'|'K/M'|'K/M/B'|'万'|'亿'|'万/亿'|'%'

**useDefault**: string | boolean 是否使用默认值，默认显示--，字符串类型表示需要显示的默认值

**isAutoPrec**: boolean 是否自动进行精度控制，true时 对于不到单位转换的情况时直接取整

**isAbs**: boolean 是否显示数字绝对值

**withSign**: boolean 是否显示正负符号

**updown**: number 涨跌平设置，大于0上涨（添加class up）,小于0下跌（添加class down）

#### table-stock-column 监听事件

**sort**: ({ field: string, desc: boolean, event: Event }) 点击排序表头触发的排序事件，field对应字段，desc排序方向true为降序，false为升序，undefined为不排序
npm package: @fantai/yunsdk
Description: ``` import YunSDK from '@fantai/yunsdk'; // const YunSDK = require('@fantai/yunsdk').default; // nodejs
Author: jiagang
Latest version: 1.0.7

### 使用方式
#### 1. 直接使用SDK

```
import YunSDK from '@fantai/yunsdk';
// const YunSDK = require('@fantai/yunsdk').default; // nodejs

const yunsdk = new YunSDK({
    address: 'wss://api.fantaiai.com/ws',
    auth: {
        appid: '',
        secret_key: '',
        shortid: '',
    }
});
yunsdk.query('xxx').then().catch();
yunsdk.subscribe('xxx', function callback() {});
```

#### 2. vue插件

```
import Vue from 'vue';
import YunSDK, { YunSDKMixin } from '@fantai/yunsdk/esm/vue';

Vue.use(YunSDK, {
    address: 'wss://api.fantaiai.com/ws',
    auth: {
        appid: '',
        secret_key: '',
        shortid: '',
    }
});

Vue.prototype.$yunsdk.query('xxx');

// 提供vue组件上查询方法，能够在vue组件失效时自动取消请求，并且在切换activated时自动请求和取消请求（一个组件只能包含一个请求）
const vm = new Vue({ mixins: [YunSDKMixin] }); // Vue.mixins(YunSDKMixin);
vm.queryYunData('xxx');
vm.subscribeYunData('xxx');
```

#### 3. vuex模块
提供queryYunData和subscribeYunData两个action

```
import Vue from 'vue';
import Vuex from 'vuex';
import YunSDK from '@fantai/yunsdk/esm/vue';
import YunSDKVuexModule from '@fantai/yunsdk/esm/vuex';

Vue.use(YunSDK, {
    address: 'wss://api.fantaiai.com/ws',
    auth: {
        appid: '',
        secret_key: '',
        shortid: '',
    }
});

Vue.use(Vuex);
const vm = new Vue({
    store: new Vuex.Store({ modules: { YunSDKVuexModule } });
});

vm.$store.dispatch('queryYunData', {
    url: 'xxx',
    params: {},
    callback() {}
});
vm.$store.dispatch('subscribeYunData', {
    ...
});
```

#### 4. webpack插件的使用
使用方式和配置参数默认值如下

```
const YunSDKPlugin = require('@fantai/yunsdk/plugin');

...
plugins: [
    new YunSDKPlugin({
        compress: false,       // 是否使用压缩格式数据
        pb: false,             // 是否支持请求pb格式数据 (基本行情数据可用，小程序不可用)
        json: true,            // 是否支持请求json格式数据
        http: true,            // 是否支持http协议请求数据
        websocket: true,       // 是否支持websocket协议请求数据
        wxapp: false           // 是否使用需要小程序支持 (会添加额外的补丁)
        worker: false          // 是否使用线程处理数据请求和解析
        workerPath: true       // 是否修改worker编译后生成位置，true 设置为output filename 相同位置，false 不修改默认根目录，string 指定编译后位置
    })
]
```
npm package: @fantaptik/core
Description: Core functions to @fantaptik
Author: Nofeatures Onlybugs
Latest version: 0.2.1

### @fantaptik/core

A set of core features, functions, and utility for @fantaptik.

```
npm install @fantaptik/core
```

View the jsdocs @ https://nofeaturesonlybugs.github.io/fantaptik-core/
npm package: @fantaptik/react-auth
Description: @fantaptik authentication library.
Author: Nofeatures Onlybugs
Latest version: 0.1.1

### React-Auth

Simplified authentication for React applications with additional support for @fantaptik/socket.

```
npm install @fantaptik/react-auth @fantaptik/core @fantaptik/socket @fantaptik/react-material
```

View the jsdocs @ https://nofeaturesonlybugs.github.io/fantaptik-react-auth/
npm package: @fantaptik/react-data-grid
Description: @fantaptik React component(s) for viewing data using Materialize CSS.
Author: Nofeatures Onlybugs
Latest version: 0.4.0

### @fantaptik/react-data-grid  
A React data grid component library using Materialize CSS for @fantaptik.

```bash
npm install @fantaptik/react-data-grid

# Peer dependencies
npm install @fantaptik/core @fantaptik/react-material react-window css-box-model hoist-non-react-statics materialize-css react react-dom
```

### In Action  
  * [Basic `<Grid />`](https://nofeaturesonlybugs.github.io/fantaptik-react-data-grid/#/Components/Grid)  
  A basic grid accepts the data as a property.
  * [Paginated async provider `<Grid.PagesProvider />`](https://nofeaturesonlybugs.github.io/fantaptik-react-data-grid/#/Components/Grid.PagesProvider)  
  `<Grid.PagesProvider />` uses promises to fetch pages of data as the user navigates via pagination controls.
  * [Continuous async provider `<Grid.FeedProvider />`](https://nofeaturesonlybugs.github.io/fantaptik-react-data-grid/#/Components/Grid.FeedProvider)  
  `<Grid.FeedProvider />` uses promises to fetch data in chunks as the user continuously scrolls the grid.

View the Styleguidist @ https://nofeaturesonlybugs.github.io/fantaptik-react-data-grid/

### Browser Compatibility  
The following browser features are required by the listed components; for highest possible compatibility consider adding appropriate PolyFills.

+ `ResizeObserver` is used by:
    + `Grid` via dependency `@fantaptik/react-material/Position.Fill`.

### API Consistency and Breaking Changes  
I am making a very concerted effort to break the API as little as possible while adding features or fixing bugs.  However this software is currently in a pre-1.0.0 version and breaking changes *are* allowed under standard semver.  As the API approaches a stable 1.0.0 release I will list any such breaking changes here and they will always be signaled by a bump in *minor* version.

* 0.3.0 ⭢ 0.4.0  
  A number of changes were made to support custom cell renderers.  
  + `getColumns` has been renamed to `statRow` and returns a different shape.
  + `useColumns` has a different return shape and the columns no longer contain sizing information, which is now stored in `<Rows />`.
  + `<Sample />` has been renamed to `<Rows.Sample />` and is now rendered as a child of `<Rows />` instead of `<Grid />`.  In short `<Rows />` now handles the measuring of cells+headers and the information doesn't need to leak upwards into the `<Grid />` (by way of the `useColumns` hook as it did in 0.3.0).
  + `<Progress />` has been renamed to `<Grid.FeedProvider.Progress />` as that progress component was intended to be used with and only with the `<Grid.FeedProvider />`.
npm package: @fantaptik/react-form
Description: @fantaptik React library for form presentation and processing.
Author: Nofeatures Onlybugs
Latest version: 0.2.1

### @fantaptik/react-form

A React form component library using Materialize CSS for @fantaptik.

```bash
npm install @fantaptik/react-form

# Peer dependencies
npm install @fantaptik/react-material hoist-non-react-statics materialize-css react react-dom
```

View the Styleguidist @ https://nofeaturesonlybugs.github.io/fantaptik-react-form/
npm package: @fantaptik/react-material
Description: @fantaptik React component library using Materialize CSS.
Author: Nofeatures Onlybugs
Latest version: 0.3.5

### @fantaptik/react-material  
A React component library using Materialize CSS for @fantaptik.

```bash
npm install @fantaptik/react-material

# Peer dependencies
npm install css-box-model hoist-non-react-statics materialize-css react react-dom
```

View the Styleguidist @ https://nofeaturesonlybugs.github.io/fantaptik-react-material/

### Browser Compatibility  
The following browser features are required by the listed components; for highest possible compatibility consider adding appropriate PolyFills.

+ `ResizeObserver` is used by:
    + `Position`, `Position.Fill`, & `useBoxFill`
+ `Web Animations API` is used by:
    + `SlideMenu`
npm package: @fantaptik/react-socket
Description: @fantaptik react enhancements for @fantaptik/socket
Author: Nofeatures Onlybugs
Latest version: 0.1.0

### @fantaptik/react-socket  
A React+Redux extension for @fantaptik/socket.

This package exposes a `Plugin` for `@fantaptik/socket`, a `Reducer` for `redux`, and a `Status` component for your JSX to visualize your `@fantaptik/socket` state when disconnected and reconnecting.

```bash
npm install @fantaptik/react-socket

# Peer dependencies
npm install @fantaptik/socket @fantaptik/react-material @fantaptik/webpack-config materialize-css react react-dom react-redux redux
```

### In Action  
  * [`<Status />`](https://nofeaturesonlybugs.github.io/fantaptik-react-socket/#/Components/Status)  
  The `Status` component.
  * [`Getting Started`](https://nofeaturesonlybugs.github.io/fantaptik-react-socket/jsdocs/tutorial-getting_started.html)

View the Styleguidist @ https://nofeaturesonlybugs.github.io/fantaptik-react-socket/
npm package: @fantaptik/react-tour
Description: @fantaptik React library for product tours.
Author: Nofeatures Onlybugs
Latest version: 0.1.3

### @fantaptik/react-tour  
The @fantaptik `Product Tour` library.

```bash
npm install @fantaptik/react-tour

# Peer dependencies
npm install @fantaptik/react-material
```

**Important** @fantaptik/react-material also has its own peer dependencies; check the README.md for @fantaptik/react-material.

View the Styleguidist @ https://nofeaturesonlybugs.github.io/fantaptik-react-tour/
npm package: @fantaptik/webpack-config
Description: Common webpack configuration for @fantaptik packages.
Author: Nofeatures Onlybugs
Latest version: 0.2.0

### Install  
```
npm install -D @fantaptik/webpack-config
```

### Webpack Config
```js
const fantaptikWebpack = require( '@fantaptik/webpack-react' );

module.exports = {
    stats : {
        ...fantaptikWebpack.stats,
    },
    externals : {
        ...fantaptikWebpack.externals,
    },
}
```
npm package: @fantasies/cdk
Description: utils
Author: devcui
Latest version: 0.1.2

# @fantasies/cdk

[![Coverage Status](https://coveralls.io/repos/github/fantasies-software/fantasies-cdk/badge.svg?branch=test)](https://coveralls.io/github/fantasies-software/fantasies-cdk?branch=test)

fantasies-cdk is a set of behavior primitives for building UI components, designed to provide developers with efficient and flexible tools.

## Features

- Common UI component behavior encapsulation
- Easy integration into any frontend project
- TypeScript support for type safety

## Installation

```bash
npm install @fantasies/cdk
```

## Usage Example

```ts
import { groupBy } from '@fantasies/cdk'

const grouped = groupBy([{ type: 'A' }, { type: 'B' }], 'type')
```

For more usage, please refer to the documentation or source code.