open-index/open-npm huggingface dataset:
npm package: @formidablejs/broadcaster
Description: Channel Broadcaster for Formidable.
Author: Donald Pakkies
Latest version: 0.1.3

# Formidable Broadcaster

Formidable Broadcaster is based on SSE (Server-Sent Events) technology. It is a simple, lightweight and easy to use plugin that allows you to broadcast messages to all connected clients.

<center>

  ![npm](https://img.shields.io/npm/v/@formidablejs/broadcaster)
  ![GitHub](https://img.shields.io/github/license/formidablejs/broadcaster)

</center>

Security
-------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/bugsnag-plugin
Description: Bugsnag notifier for the Formidable framework.
Author: Donald Pakkies
Latest version: 0.0.7

# Bugsnag Plugin

Bugsnag notifier for the Formidable framework (work in progress).


Security
-------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/cli-loader
Description: Formidable CLI Loader
Author: Donald Pakkies
Latest version: 0.0.2

# CLI Loader

Installation
------------

Install the package using NPM or any other package manager of your choice.

```bash
npm install @formidablejs/cli-loader @formidablejs/console
npm install --save-dev ts-node typescript
```

Usage
-----

Import the `loader` function from `@formidablejs/cli-loader` and `Application` class from `@formidablejs/console`. Pass the `Application` class to the `loader` function and call the `run` method on the returned instance.

### Initialize the application

Create a script named `run` under the `bin` directory:

```js
#!/usr/bin/env node
const { loader } = require('@formidablejs/cli-loader')
const { Application } = require('@formidablejs/console')
const path = require('path')

const project = path.join(__dirname, '..', 'tsconfig.json')

require('ts-node').register({project})

loader(Application, {
    development: true,
    root: path.join(__dirname, '...')
}).run()
```

### Example command

Create a class named `HelloCommand.ts` under the `src/Commands` directory:

```ts
const { Command } = from '@formidablejs/console'

export default class HelloCommand extends Command {
    get signature(): string {
        return 'hello'
    }

    get description(): string {
        return 'Say hello to the world'
    }

    async handle(): Promise<void> {
        this.info('Hello world!')
    }
}
```

### Run the command

```bash
chmod +x ./bin/run
./bin/run hello
```

Todo
----

- [ ] Add tests

Security
-------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/console
Description: The Formidable Console
Author: Donald Pakkies
Latest version: 0.0.22

# Console

![Test](https://github.com/formidablejs/console/actions/workflows/test.yml/badge.svg)
![npm](https://img.shields.io/npm/v/@formidablejs/console)
![GitHub](https://img.shields.io/github/license/formidablejs/console)

---

Security
-------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/craftsman
Description: Craftsman CLI =======================
Author: Donald Pakkies
Latest version: 0.6.10
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

Craftsman CLI
=======================

[![Version](https://img.shields.io/npm/v/@formidablejs/craftsman.svg)](https://npmjs.org/package/@formidablejs/craftsman)
[![Downloads/week](https://img.shields.io/npm/dw/@formidablejs/craftsman.svg)](https://npmjs.org/package/@formidablejs/craftsman)
[![License](https://img.shields.io/npm/l/@formidablejs/craftsman.svg)](https://github.com/donaldp/craftsman/blob/master/package.json)

## Security Vulnerabilities

If you discover a security vulnerability within Formidable, please send an e-mail to Donald Pakkies via [donaldpakkies@gmail.com](mailto:donaldpakkies@gmail.com). All security vulnerabilities will be promptly addressed.

## License

The Formidable framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).
npm package: @formidablejs/framework
Description: Formidable Framework Core
Author: Donald Pakkies
Latest version: 0.28.5

# Formidablejs Core

## About Formidablejs
Note: This repository contains the core code of the Formidable framework. If you want to build an application using Formidable, visit the main [Formidablejs repository](https://github.com/formidablejs/formidablejs-typescript).

<center>
<p align="center">

  ![Node.js - Core](https://github.com/formidablejs/framework/actions/workflows/nodejs-core-test.yml/badge.svg)
  ![Node.js - E2E](https://github.com/formidablejs/framework/actions/workflows/nodejs-e2e-test.yml/badge.svg)
  ![Bun - Core](https://github.com/formidablejs/framework/actions/workflows/bun-core-test.yml/badge.svg)
  ![Bun - E2E](https://github.com/formidablejs/framework/actions/workflows/bun-e2e-test.yml/badge.svg)
  ![Package Manager](https://github.com/formidablejs/framework/actions/workflows/package-test.yml/badge.svg)
  ![npm](https://img.shields.io/npm/v/@formidablejs/framework)
  [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://makeapullrequest.com)
  ![GitHub](https://img.shields.io/github/license/formidablejs/framework)
  [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](code_of_conduct.md)

</p>
</center>

Security
-------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/graphql
Description: GraphQL support for the Formidable Framework.
Author: Donald Pakkies
Latest version: 0.0.1

# GraphQL Plugin

GraphQL support for the Formidable Framework.

## Requirements

 * [@formidablejs/framework](https://www.npmjs.com/package/@formidablejs/framework): `>=0.12.1`

## Install

npm:

```bash
npm i @formidablejs/graphql
```

yarn:

```bash
yarn add @formidablejs/graphql
```

## Publish

```bash
node craftsman package:publish --package="@formidablejs/graphql" --tag="config,schema-resolvers"
```

## Config

Add `GraphQLServiceResolver` in the `config/app.imba` or `config/app.ts` config under `resolvers`:

```js
...
import { GraphQLServiceResolver } from '@formidablejs/graphql'
...

export default {
	...
	resolvers: {
		...
		GraphQLServiceResolver
```

Then, register the `graphql.imba` config file in the `config/index.imba` or `config/index.ts` file.

#### `config/index.ts`

```ts title: config/index.ts
import graphql from './graphql';

export class Config extends ConfigRepository
{
	/**
	 * All of the configuration items.
	 *
	 * @type {Object}
	 */
	get registered() : Object
	{
		return {
			...
			graphql
```

#### `config/index.imba`

```py title: config/index.ts
import graphql from './graphql'

export class Config < ConfigRepository
{
	# All of the configuration items.
	#
	# @type {Object}

	get registered
		{
			...
			graphql
```

And finally test your GraphQL API:

```bash
# serve application
node craftsman serve --dev --port=3000

# test graphql
curl -H "Content-Type:application/graphql" -XPOST -d "query { add(x: 2, y: 2) }" http://localhost:3000/graphql
```

Security
-------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/helpers
Description: Global helper functions for Formidable
Author: Donald Pakkies
Latest version: 0.1.1

Formidable Helpers
---------------

Turn Formidable helpers into global functions.

Security
--------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/inertia
Description: The Formidable adapter for Inertia.js
Author: Donald Pakkies
Latest version: 0.3.7

# Inertia.js Formidable Adapter

![Test](https://github.com/formidablejs/inertia-adapter/actions/workflows/test.yml/badge.svg)
![npm](https://img.shields.io/npm/v/@formidablejs/inertia)
![GitHub](https://img.shields.io/github/license/formidablejs/inertia-adapter)

---

Security
-------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/logger
Description: The Formidable Logger is a Monolog-inspired logging library
Author: Donald Pakkies
Latest version: 0.1.2

# Formidable Logger

The Formidable Logger is a Monolog-inspired logging library.

<center>

  ![test](https://github.com/formidablejs/logger/actions/workflows/tests.yml/badge.svg)
  ![npm](https://img.shields.io/npm/v/@formidablejs/logger)
  ![GitHub](https://img.shields.io/github/license/formidablejs/logger)

</center>

Credits
--------

Formidable Logger is built on top of [`@loilo/livy`](https://github.com/loilo/livy)

Security
-------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/pretty-errors
Description: Pretty error reporting for Formidable
Author: Donald Pakkies
Latest version: 0.3.1

# Formidable Pretty Errors

Pretty error reporting for Formidable.

<br />

![Uh-oh!](https://raw.githubusercontent.com/formidablejs/pretty-errors/main/youch-img.png)

------

![npm](https://img.shields.io/npm/v/@formidablejs/pretty-errors)
![NPM](https://img.shields.io/npm/l/@formidablejs/pretty-errors)

## Requirements

  * [@formidablejs/framework](https://www.npmjs.com/package/@formidablejs/framework): `>=0.5.0-alpha.1`

## Install

npm:

```bash
npm i @formidablejs/pretty-errors
```

yarn:

```bash
yarn add @formidablejs/pretty-errors
```

## Configuration

Add `PrettyErrorsServiceResolver` in the `bootstrap/resolvers.{imba,ts}`:

```js
import { PrettyErrorsServiceResolver } from '@formidablejs/pretty-errors'
...

export default [
	...
	PrettyErrorsServiceResolver
```

## Credits

This Formidable plugin uses [youch](https://github.com/poppinss/youch) under the hood.

## License

The Formidable framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).
npm package: @formidablejs/scheduler
Description: Formidable Scheduler is a Task Scheduler based on GNU crontab
Author: Donald Pakkies
Latest version: 0.2.2

# Formidable Scheduler

Formidable Scheduler is a Task Scheduler based on GNU crontab.

<center>

  ![npm](https://img.shields.io/npm/v/@formidablejs/scheduler)
  ![GitHub](https://img.shields.io/github/license/formidablejs/scheduler)

</center>

Credits
-------

A special thanks to the maintainers of the following projects:

- [node-cron](https://github.com/node-cron/node-cron)
- [cron-time-generator](https://github.com/trapcodeio/cron-time)

Security
-------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/stubs
Description: Formidable Framework stubs for Craftsman
Author: Donald Pakkies
Latest version: 0.6.0

# Craftsman Stubs

## Install

This package is automatically installed with the Formidable Framework.

```
npm i @formidablejs/stubs
```

Security
--------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/ts-ports
Description: Enables TypeScript support in the Formidable framework
Author: Donald Pakkies
Latest version: 0.4.6

# ts-ports

`ts-ports` enables TypeScript support in the Formidable framework.

![Build](https://github.com/formidablejs/ts-ports/actions/workflows/build.yml/badge.svg)
![npm](https://img.shields.io/npm/v/@formidablejs/ts-ports)
![GitHub](https://img.shields.io/github/license/formidablejs/ts-ports)

## Requirements

- [@formidablejs/framework](https://www.npmjs.com/package/@formidablejs/framework): `>=0.12.x`

## Install

### Recommended

```bash
formidable new <app-name> [...args] --ts
```

### Existing Project

npm:

```bash
npm i @formidablejs/ts-ports --save
```

yarn:

```bash
yarn add @formidablejs/ts-ports --save
```

## Configuration

Open the `package.json` file and add `"language": "TypeScript"`:

```json
{
  ...
  "language": "TypeScript",
  ...
}
```

Finaly, open the `config/app.ts` config file and add `TypeScriptPortsServiceResolver` under resolvers:

```ts
...
import { TypeScriptPortsServiceResolver } from '@formidablejs/ts-ports';

export default {
  ...
  resolvers: {
    ...,
    TypeScriptPortsServiceResolver,
    ...

```

## Usage

### `@use` Decorator

The `use` decorator in `@formidablejs/ts-ports` works the same way as the `use` decorator in `@formidablejs/framework`. To get started, just import the `use` decorator from `@formidablejs/ts-ports` and add it next to any of your class functions:

```ts
import { use } from "@formidablejs/ts-ports";
import { Controller } from "./Controller";

export class UserController extends Controller {
  @use("table:users")
  public async show(user: Promise<User | null>): Promise<User | void> {
    return (await user) || this.notFound("User not found.");
  }
}
```

### Commands

`ts-ports` also adds 2 new commands to your application.

#### `make:interface`

```bash
node craftsman make:interface IUserController
```

#### `make:type`

```bash
node craftsman make:type User
```

#### `types:generate`

```bash
node craftsman types:generate
```

This will generate types based on the rules of your `requests`.

> Works with TypeScript only

## Security

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

## License

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formidablejs/view
Description: Building blocks for Formidable SPA's
Author: Donald Pakkies
Latest version: 0.12.7

# Formidable View

Building blocks for Formidable SPA's.

## Requirements

  * [@formidablejs/framework](https://www.npmjs.com/package/@formidablejs/framework): `>=0.9.10`

## Install

### Recommended

```bash
formidable new <app-name> --type full-stack --stack imba --scaffolding spa
```

> The Formidable Installer will automatically publish `spa` scaffolding and install `axios`.

### Existing Project

npm:

```bash
npm i @formidablejs/view axios --save
```

yarn:

```bash
yarn add @formidablejs/view axios --save
```

## Publish

```bash
node craftsman package:publish --package=@formidablejs/view --tag=vendor --force
```

> Only run in an un-modified Existing Project.

Security
-------

If you discover any security related issues, please email donaldpakkies@gmail.com instead of using the issue tracker.

License
-------

The MIT License (MIT). Please see [License File](LICENSE) for more information.
npm package: @formik/client
Description: ## Quick start
Author: Jared Palmer
Latest version: 0.3.0

# Formik Cloud Client

## Quick start

```
npm install @formik/client
```

## Example Usage

```jsx
import { FormikCloudClient } from '@formik/client';

const client = FormikCloudClient('MY_PROJECT_SLUG');

const MyForm = props => {
  const [name, setName] = React.useState();
  const [email, setEmail] = React.useState();
  const [error, setError] = React.useState(null);
  const [success, setSuccess] = React.useState(false);
  const [loading, setLoading] = React.useState(false);

  const handleSubmit = async event => {
    event.preventDefault();
    setLoading(true);
    try {
      await client.submitForm('MY_FORM_SLUG', { name, email });
      setLoading(false);
      setSuccess(true);
    } catch (error) {
      setLoading(false);
      setError(error);
      setSuccess(false);
    }
  };

  if (!!success) {
    return <div>Thank you!</div>;
  }

  return (
    <form onSubmit={handleSubmit}>
      <label>
        Name
        <input
          type="text"
          value={name}
          required
          onChange={e => setName(e.target.value)}
        />
      </label>
      <label>
        Email
        <input
          type="text"
          value={email}
          required
          onChange={e => setEmail(e.target.value)}
        />
      </label>
      <button type="submit" disabled={loading}>
        {loading ? '...loading' : 'Submit'}
      </button>
      {error && error.text ? (
        <div style={{ color: 'red' }}>{error.text}}</div>
      ) : null}
    </form>
  );
};
```
npm package: @formily-editor/schema-editor
Description: ## 架构图
Latest version: 1.0.0-alpha.2

# Formily Schema Editor

## 架构图

![](https://intranetproxy.alipay.com/skylark/lark/0/2020/png/16211/1583895567278-0db54a84-1455-47bf-b2f6-84dcbe8ad368.png)

## 开发规范

- 统一typescript编写,所有类型定义统一在src/types.ts中维护，Interface类型统一以IXxxxx形式命名，type推导类型不能带I(且只用于推导类型)，推荐多用泛型
- 不依赖feloader，单纯webpack打包
- 逻辑统一在Hooks内编写，组件只负责渲染结构，只要需要使用useState/useEffect这类原生hooks的统一抽离成独立hooks
- 如果当前组件存在hooks，在当前组件目录下新建一个hooks目录，将hooks写到里面
- demo统一在当前目录的xxx.stories.tsx中编写
- 无分号语句
- React组件禁用Class Component，统一用Function Component

## 初始化

```
tnpm install
```

## 调试界面

> 基于每个具体组件中的index.stories.tsx来快速预览界面，帮助调试界面

```
npm start
```

## 构建

```
npm run build
```

## 发布

```
tnpm publish
```
npm package: @formily-patch/core
Description:  (Patched version of @formily/core@2.3.7)
Latest version: 2.3.7-patch.70d2d597

# @formily-patch/core
  
  > 🔧 **这是一个 Formily 的补丁版本**
  > 
  > - **原始包**: @formily/core
  > - **补丁版本**: 2.3.7-patch.70d2d597
  > - **变更对比**: [查看变更](https://github.com/alibaba/formily/compare/formily_next...formily-patch:formily:70d2d597)
  > - **提交哈希**: 70d2d597
  
  ---
npm package: @formily-patch/path
Description:  (Patched version of @formily/path@2.3.7)
Latest version: 2.3.7-patch.70d2d597

# @formily-patch/path
  
  > 🔧 **这是一个 Formily 的补丁版本**
  > 
  > - **原始包**: @formily/path
  > - **补丁版本**: 2.3.7-patch.70d2d597
  > - **变更对比**: [查看变更](https://github.com/alibaba/formily/compare/formily_next...formily-patch:formily:70d2d597)
  > - **提交哈希**: 70d2d597
  
  ---
  
  > Path System
npm package: @formily-patch/react
Description:  (Patched version of @formily/react@2.3.7)
Latest version: 2.3.7-patch.70d2d597

# @formily-patch/react
  
  > 🔧 **这是一个 Formily 的补丁版本**
  > 
  > - **原始包**: @formily/react
  > - **补丁版本**: 2.3.7-patch.70d2d597
  > - **变更对比**: [查看变更](https://github.com/alibaba/formily/compare/formily_next...formily-patch:formily:70d2d597)
  > - **提交哈希**: 70d2d597
  
  ---
npm package: @formily-patch/reactive-react
Description:  (Patched version of @formily/reactive-react@2.3.7)
Latest version: 2.3.7-patch.70d2d597

# @formily-patch/reactive-react
  
  > 🔧 **这是一个 Formily 的补丁版本**
  > 
  > - **原始包**: @formily/reactive-react
  > - **补丁版本**: 2.3.7-patch.70d2d597
  > - **变更对比**: [查看变更](https://github.com/alibaba/formily/compare/formily_next...formily-patch:formily:70d2d597)
  > - **提交哈希**: 70d2d597
  
  ---
  
  ## QuikStart

```tsx
import React from 'react'
import { observable } from '@formily/reactive'
import { observer } from '@formily/reactive-react'

const obs = observable({
  count: 0,
})

export default observer(() => {
  return (
    <div>
      {obs.count}
      <button
        onClick={() => {
          obs.count++
        }}
      >
        Click
      </button>
    </div>
  )
})
```
npm package: @formily-patch/shared
Description:  (Patched version of @formily/shared@2.3.7)
Latest version: 2.3.7-patch.70d2d597

# @formily-patch/shared
  
  > 🔧 **这是一个 Formily 的补丁版本**
  > 
  > - **原始包**: @formily/shared
  > - **补丁版本**: 2.3.7-patch.70d2d597
  > - **变更对比**: [查看变更](https://github.com/alibaba/formily/compare/formily_next...formily-patch:formily:70d2d597)
  > - **提交哈希**: 70d2d597
  
  ---
  
  > Formily 工具函数集
npm package: @formily-patch/validator
Description:  (Patched version of @formily/validator@2.3.7)
Latest version: 2.3.7-patch.70d2d597

# @formily-patch/validator
  
  > 🔧 **这是一个 Formily 的补丁版本**
  > 
  > - **原始包**: @formily/validator
  > - **补丁版本**: 2.3.7-patch.70d2d597
  > - **变更对比**: [查看变更](https://github.com/alibaba/formily/compare/formily_next...formily-patch:formily:70d2d597)
  > - **提交哈希**: 70d2d597
  
  ---
  
  > Formily 数据校验工具
npm package: @formily-x/reactive-react
Description: ## QuikStart
Latest version: 2.3.6

# @formily-x/reactive-react

## QuikStart

```tsx
import React from 'react'
import { observable } from '@formily-x/reactive'
import { observer } from '@formily-x/reactive-react'

const obs = observable({
  count: 0,
})

export default observer(() => {
  return (
    <div>
      {obs.count}
      <button
        onClick={() => {
          obs.count++
        }}
      >
        Click
      </button>
    </div>
  )
})
```
npm package: @formily/template
Description: > Formily 桥接组件库生态脚手架
Latest version: 1.0.0-alpha.21

# @formily/template

> Formily 桥接组件库生态脚手架

## 安装

```bash
npm install -g ts-node @formily/template
```

## 初始化

先 cd 到你需要初始化的项目目录，执行以下命令

```bash
npx formily-tpl init
```

## 构建

```bash
formily-tpl build
```

## 构建配置

在包根路径上创建，builder.config.ts 文件

```ts
import { IBuilderConfig } from '@formily/template'

export const BuilderConfig: IBuilderConfig = {
  externals: {},
  //当前仓库核心依赖的三方组件库名称
  targetLibName: 'antd',
  //核心三方库cjs目录名
  targetLibCjsDir: 'lib',
  //核心三方库es目录名
  targetLibEsDir: 'es',
  //是否打包全量类型文件
  bundleDts: false,
}
```
npm package: @formio-tmt/angular
Description: This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.1.4.
Author: Travis Tidwell
Latest version: 6.0.0-rc.3-tmt-106

# AngularFormio

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.1.4.

## Code scaffolding

Run `ng generate component component-name --project angular-formio` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project angular-formio`.
> Note: Don't forget to add `--project angular-formio` or else it will be added to the default project in your `angular.json` file. 

## Build

Run `ng build angular-formio` to build the project. The build artifacts will be stored in the `dist/` directory.

## Publishing

After building your library with `ng build angular-formio`, go to the dist folder `cd dist/angular-formio` and run `npm publish`.

## Running unit tests

Run `ng test angular-formio` to execute the unit tests via [Karma](https://karma-runner.github.io).

## Further help

To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
npm package: @formio-tmt/core
Description: The core Form.io renderering framework.
Author: Travis Tidwell
Latest version: 1.3.0-rc.19

## Form.io Core JavaScript Rendering Engine
This library is the core rendering engine behind the Form.io platform. It is a tiny (12k gzipped) rendering frameworks that allows for the rendering of complex components as well as managing the data models controlled by each component.

### Usage
To use this library, you will first need to install it into your own application.

    npm install --save @formio/core

Next, you can create a new component as follows.

```js
import { Components } from '@formio/core';
Components.addComponent({
    type: 'h3',
    template: (ctx) => `<h3>${ctx.component.header}</h3>`
});
```

And now this component will render using the following.

```js
const header = Components.createComponent({
    type: 'h3',
    header: 'This is a test',
});
console.log(header.render());  // Outputs <h3>This is a test</h3>
```

You can also use this library by including it in your webpage scripts by including the following.

```
<script src="https://cdn.jsdelivr.net/npm/@formio/base@latest/dist/formio.core.min.js"></script>
```

After you do this, you can then do the following to create a Data Table in your website.

```js
FormioCore.render(document.getElementById('data-table'), {
    type: 'datatable',
    key: 'customers',
    components: [
        {
            type: 'datavalue',
            key: 'firstName',
            label: 'First Name'
        },
        {
            type: 'datavalue',
            key: 'lastName',
            label: 'First Name'
        }
    ]
}, {}, {
    customers: [
        {firstName: 'Joe', lastName: 'Smith'},
        {firstName: 'Sally', lastName: 'Thompson'},
        {firstName: 'Mary', lastName: 'Bono'}
    ]
});
```

See https://formio.github.io/core for more examples of how to use this library.
npm package: @formio/aggrid
Description: Form.io Integration with AGGrid within the Data Table component.
Author: Form.io
Latest version: 1.0.0-rc.10

# Form.io AGGrid Integration

This module contains an integration between the Form.io renderer + AGGrid library. This achieves this by creating a new component called "AG Grid" that extends the Data Table component, and instead
of rendering the default grid from our Premium Components, it instead uses the AGGrid library.

## Usage

```javascript
// This library requires the @formio/premium library.
import premium from '@formio/premium';
import aggrid from '@formio/premium';
import { Formio } from '@formio/js';

// You need to have a valid Library License key to use this package.
// If you don't have one yet, please contact sales@form.io.
Formio.license = 'yourLibraryLicenseKey';
Formio.use(premium);
Formio.use(aggrid);
```
npm package: @formio/angular
Description: This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.1.4.
Author: Travis Tidwell
Latest version: 10.0.1

# AngularFormio

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.1.4.

## Code scaffolding

Run `ng generate component component-name --project angular-formio` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project angular-formio`.
> Note: Don't forget to add `--project angular-formio` or else it will be added to the default project in your `angular.json` file. 

## Build

Run `ng build angular-formio` to build the project. The build artifacts will be stored in the `dist/` directory.

## Publishing

After building your library with `ng build angular-formio`, go to the dist folder `cd dist/angular-formio` and run `npm publish`.

## Running unit tests

Run `ng test angular-formio` to execute the unit tests via [Karma](https://karma-runner.github.io).

## Further help

To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).