open-index/open-npm huggingface dataset:
npm package: @icreate/package
Description: Ics核心打包工具类
Author: wenbei421
Latest version: 0.0.17

<!--
 * @Author: 文贝
 * @Date: 2022-02-08 21:36:57
 * @LastEditors: 文贝
 * @LastEditTime: 2022-02-18 16:57:34
 * @Descripttion: 
 * @FilePath: \README.md
-->
### Usage

```bash
npm i @icreate/package
```

### Features

 - Package:打包类

### Importing library

You can import the generated bundle to use the whole library generated by this starter:

```javascript
import Package from '@icreate/package'
const Package = require('@icreate/package')
```

### Package

```javascript
  /**
   * @description: 打包
   * @param {dir} 目录
   * @param {pkgFile} 包文件
   */
  packageSync(dir: string, pkgFile: string): Promise<void>

  /**
   * @description: 合并脚本
   * @param {dir} 目录
   * @param {scriptFile} 脚本文件
   */
  scriptSync(dir: string, scriptFile: string): Promise<void>

  /**
   * @description:写入数据到指定文件
   * @param {file} 文件路径
   * @param {data} 数据对象
   */
  writeSync(file: string, data: Object): Promise<void>

  /**
   * @description:处理权限
   * @param {routes} 路由数组
   */
  permission(routes: Array<Route>): void
```
npm package: @icreate/sandbox
Description: window sandbox
Author: wenbei421
Latest version: 0.0.1-beta.2

<!--
 * @Author: 文贝
 * @Date: 2022-02-08 21:36:57
 * @LastEditors: 文贝
 * @LastEditTime: 2022-10-19 09:11:10
 * @Descripttion: 
 * @FilePath: \ics-sandbox\README.md
-->
### Usage

```bash
npm i @icreate/sandbox
```

### Features

 - SandBox:window沙箱

### Importing library

You can import the generated bundle to use the whole library generated by this starter:

```javascript
import SandBox from '@icreate/sanbox'
```

### Usage

```javascript
import Sandbox from '@icreate/sandbox';

const sandbox = new Sandbox();

// execute scripts in sandbox
sandbox.execScriptInSandbox('window.a = 1;console.log(window.a);');

// clear side effects added by sandbox, such as addEventListener, setInterval
sandbox.clear();
```
npm package: @icrules/editor
Description: > *It sure would be nice if we had an interface to modify the rules and then customize facts to tests out our rules.*
Author: Chad Neff
Latest version: 0.2.3-alpha.0

# @icrules/editor

## Reference Rules editor

> *It sure would be nice if we had an interface to modify the rules and then customize facts to tests out our rules.*

I wrote two reference editors, one using plain ol'React and another using the `antd` UI library. 
I'll focus on demonstrating the `antd` based editor library as it brings a better auto-complete among other useful components. 
You can use the editor code as a reference to either write your own, use it directly in your app or just use it on the examples site to generate your rules. 

The editor is data driven by the ICRules Schema and will generate the JSON containing the rules you created along with allowing you to test new facts. Currently the editor is very `alpha phase` as is and is not fully tested.

```ts
import { ICRulesEditorAntd } from '@icrules/editor';

export const RuleEditor = () => {
  const [activeRules, setActiveRules] = useState(rules);
  const onChange = (rules: RuleGroup) => setActiveRules(rules);

  return(
    <ICRulesEditorAntd {...{ facts, rules: activeRules, onChange }} />
  );
}
```

> You can play with the editor right now on the example page (it's very alpha) [examples](https://ineffably.github.io/icrules/)

The `antd` editor looks like this... 

<img src="editor-example.png" height="700" />

It has the following features:
- Facts editor
- Rule Editor

The JSON you see on the right is not part of the editor, but, the example code and displays 
- the basic JSON schema that the editor is generating.
- the verbose JSON output using the built-in verbose plugin 

## stay tuned, it's not done yet