open-index/open-npm huggingface dataset:
npm package: @ibm-wch-sdk/app
Description: A schematics
Author: Carsten Leue
Latest version: 6.0.524

# Add WCH SDK Schematics

This [schematics](https://www.npmjs.com/package/@angular-devkit/schematics) allows to add [WCH SDK](https://www.npmjs.com/package/@ibm-wch-sdk/ng) support to your Angular application.

## Prereq

- Install the [Angular CLI](https://cli.angular.io/)
- Make sure you have an Angular project set up

## Usage

From the command line from within you application folder run

```bash
ng add @ibm-wch-sdk/app --url <API_URL>
```

With the [API_URL](https://developer.ibm.com/customer-engagement/tutorials/getting-started-api-javascript/#tocstep1) of your WCH tenant.

The command will add the [WCH SDK](https://www.npmjs.com/package/@ibm-wch-sdk/ng) to your project and install the required dependencies.

## Next Steps

Follow the [guide](https://www.npmjs.com/package/@ibm-wch-sdk/ng) to begin writing awesome applications for [WCH](https://www.ibm.com/products/watson-content-hub).
npm package: @ibm-wch-sdk/ci-build
Description: A schematics
Author: Carsten Leue
Latest version: 6.0.524

# CI Build Schematics

This repository contains a [Schematics](https://blog.angular.io/schematics-an-introduction-dc1dfbc2a2b2) that adds integration for a continuous integration build.

## Prerequisite

Install the [Angular CLI](https://cli.angular.io/) by running

```bash
npm install -g @angular/cli
```

## Usage

From within your Angular project run

```bash
ng add @ibm-wch-sdk/ci-build
```

This will install the required npm dependencies and will modify your source files to support continuous integration.

### Oslo Projects

The script adds `build:ci` and `deploy:ci` commands that dispatch to the standard [Oslo](https://github.com/ibm-wch/wch-site-application) commands.

### Non-Oslo Projects

The script adds `build:ci` and `deploy:ci` commands that are based on the [ibm-wch-sdk-cli](https://www.npmjs.com/package/ibm-wch-sdk-cli).

## Travis

Per default the script generates a `.travis.yml` file. This will cause a build to be executed each time the git repo changes. A subsequent deployment step will only be triggered for [tagged commits](https://git-scm.com/book/en/v2/Git-Basics-Tagging).

## Travis Setup

In your [Travis CI](https://travis-ci.org) setup define the following environment properties:

- `ibm_wch_sdk_cli_username`: your username used to push updates to WCH via [wchtools](https://github.com/ibm-wch/wchtools-cli).
- `ibm_wch_sdk_cli_password`: your password used to push updates to WCH via [wchtools](https://github.com/ibm-wch/wchtools-cli). Make sure to configure this property as a "secure property" in Travis CI.
- `ibm_wch_sdk_cli_url`: the API URL to your tenant, unless you configured the build to read it from `.wchtoolsoptions.json`.

**Note** For [Oslo](https://github.com/ibm-wch/wch-site-application) based projects make sure that the URL configured in `ibm_wch_sdk_cli_url` matches the information in the `src/app/Constants.ts` file.
npm package: @ibm-wch-sdk/create-app
Description: Script to bootstrap a WCH application for Angular.
Latest version: 7.2.608

<a name="_07fc3e3f0a90e5b4ec028dbdbbcb2ae68d690cf82df3975bd8efb74f0c36ba69"></a>
# @ibm-wch-sdk/create-app

Creates a new Angular application for [Watson Content Hub](https://www.ibm.com/support/knowledgecenter/SS3UMF/welcome/dch_welcome.html) sites using the [@ibm-wch-sdk/ng](https://www.npmjs.com/package/@ibm-wch-sdk/ng) SDK.

## Class documentation

Refer to the [documentation](#_d85080e5e79fc84343dd19b6ed8ac06b0a0ff380fa8f068eeeeb46ac2e700152).

## Usage

Create your application by calling

```bash
npx @ibm-wch-sdk/create-app
```

or list the available parameters via

```bash
npx @ibm-wch-sdk/create-app --help
```

## Videos

Create a new WCH application from the command line

[![Create application](https://img.youtube.com/vi/568PDmtpH3A/0.jpg)](https://www.youtube.com/watch?v=568PDmtpH3A 'Create a new WCH application from the command line')

Prepare your WCH tenant for application development

[![Configure Tenant](https://img.youtube.com/vi/PZ4ib_9EyyI/0.jpg)](https://www.youtube.com/watch?v=PZ4ib_9EyyI 'WCH Setup')

<a name="_d85080e5e79fc84343dd19b6ed8ac06b0a0ff380fa8f068eeeeb46ac2e700152"></a>
[Home](#_d837eb3ec467224a00ff0d876976048b03dc62da28da3ca80d944b4f7649ea9a) &gt; [@ibm-wch-sdk/create-app](#_d85080e5e79fc84343dd19b6ed8ac06b0a0ff380fa8f068eeeeb46ac2e700152)

## create-app package

## Functions

|  Function | Description |
|  --- | --- |
|  [createProject(aArgs)](#_ad2530520175c07b1217f0cc8a336d2cc0d0958e2fd416058fb6fc6bc5bcee12) | Analyzes the input parameters |

## Variables

|  Variable | Description |
|  --- | --- |
|  [VERSION](#_f436dba1766f75e78a1cc19b00b60d82fd55d2d43957af0602be33d7964ec0c7) | Exports the current version object |


<a name="_07fc3e3f0a90e5b4ec028dbdbbcb2ae68d690cf82df3975bd8efb74f0c36ba69"></a>

<a name="_ad2530520175c07b1217f0cc8a336d2cc0d0958e2fd416058fb6fc6bc5bcee12"></a>
[Home](#_d837eb3ec467224a00ff0d876976048b03dc62da28da3ca80d944b4f7649ea9a) &gt; [@ibm-wch-sdk/create-app](#_d85080e5e79fc84343dd19b6ed8ac06b0a0ff380fa8f068eeeeb46ac2e700152) &gt; [createProject](#_ad2530520175c07b1217f0cc8a336d2cc0d0958e2fd416058fb6fc6bc5bcee12)

## createProject() function

Analyzes the input parameters

<b>Signature:</b>

```typescript
export declare function createProject(aArgs?: string[]): PromiseLike<string>;
```

## Parameters

|  Parameter | Type | Description |
|  --- | --- | --- |
|  aArgs | <code>string[]</code> | optionally the command line arguments |

<b>Returns:</b>

`PromiseLike<string>`

a promise with the target directory


<a name="_f436dba1766f75e78a1cc19b00b60d82fd55d2d43957af0602be33d7964ec0c7"></a>
[Home](#_d837eb3ec467224a00ff0d876976048b03dc62da28da3ca80d944b4f7649ea9a) &gt; [@ibm-wch-sdk/create-app](#_d85080e5e79fc84343dd19b6ed8ac06b0a0ff380fa8f068eeeeb46ac2e700152) &gt; [VERSION](#_f436dba1766f75e78a1cc19b00b60d82fd55d2d43957af0602be33d7964ec0c7)

## VERSION variable

Exports the current version object

<b>Signature:</b>

```typescript
VERSION: import("@ibm-wch-sdk/api").WchSdkVersion
```
npm package: @ibm-wch-sdk/ng-idc
Description: This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 1.6.7.
Author: Dr. Carsten Leue
Latest version: 6.0.524

# NgIdc

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

## Development server

Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.

## Code scaffolding

Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.

## Build

Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `-prod` flag for a production build.

## Running unit tests

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

## Running end-to-end tests

Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).

## 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: @ibm-wch-sdk/ngrx-edit
Description: Module that implements @ngrx bindings to the login and logout functionality as offered by the @ibm-wch-sdk/ng-edit modules.
Author: Dr. Carsten Leue
Latest version: 6.0.524

# ibm-wch-sdk-ngrx-edit

Module that implements [@ngrx](https://github.com/ngrx/platform) bindings to the login and logout functionality as offered by the [ibm-wch-sdk-ng-edit](https://www.npmjs.com/package/ibm-wch-sdk-ng-edit) modules.

## Details

Refer to the [documentation](./src/lib/src).

## Changes

[CHANGELOG](./CHANGELOG.md)

## Class documentation

Refer to the [documentation](./doc).

## Usage

Install the module via

```bash
npm install --save ibm-wch-sdk-ngrx-edit
```

## Prereqs

* [ibm-wch-sdk-ng-edit](https://www.npmjs.com/package/ibm-wch-sdk-ng-edit)
* Angular 5.0 or higher
npm package: @ibm-wch-sdk/ngrx-edit-api
Description: Module that implements @ngrx bindings to the login and logout functionality as offered by the @ibm-wch-sdk/ng modules.
Author: Dr. Carsten Leue
Latest version: 6.0.524

# ibm-wch-sdk-ngrx-api

Module that implements [@ngrx](https://github.com/ngrx/platform) bindings to the login and logout functionality as offered by the [ibm-wch-sdk-ng-edit](https://www.npmjs.com/package/ibm-wch-sdk-ng-edit) modules.

## Details

Refer to the [documentation](./src/lib/src).

## Changes

[CHANGELOG](./CHANGELOG.md)

## Class documentation

Refer to the [documentation](./doc).

## Usage

Install the module via

```bash
npm install --save ibm-wch-sdk-ngrx-edit
```

## Prereqs

* [ibm-wch-sdk-ng-edit](https://www.npmjs.com/package/ibm-wch-sdk-ng-edit)
* Angular 5.0 or higher
npm package: @ibm-wch-sdk/schematics-utils
Description: Helper library to implement schematics.
Author: Carsten Leue
Latest version: 6.0.524

# wch-components-bundle

Container project to bundle [WCH](https://www.ibm.com/products/watson-content-hub) data records and UI components as an [npm](http://npmjs.com/) module. Such a module can then be used as a dependency by single page application projects to populate a tenant with data.

## Changes

[CHANGELOG](./CHANGELOG.md)

## Usage

This library is meant to be used in an [Angular](https://angular.io/) based application.

### Use as a template

Use this project as a template for custom bundles.

* Set this as an upstream project, so you can easily consume changes: `git remote add upstream git@github.ibm.com:DX-Components/wch-components-bundle.git`
* Pull changes from upstream `git pull upstream master`

### Deploy the application and WCH artifacts

The library bundles the [WCH](https://www.ibm.com/products/watson-content-hub) content types, layouts and layout mappings. Deploy these artifacts to WCH, e.g. by using the following command of the [CLI](https://www.npmjs.com/package/ibm-wch-sdk-cli):

```bash
ibm-wch-sdk-cli application push --data ./data/ --override --aggregated
```

The `--aggregated` flag makes sure to not only deploy the application data but also the bundled dependencies.

**Note:** In order to successfully execute the command make sure to meet me prerequisites mentioned in the documentation of the [CLI](https://www.npmjs.com/package/ibm-wch-sdk-cli).
npm package: @ibm-wch/cli-create-layout-react
Description: Command line interface for the generation of WCH layout.jsons, layout-mapping.jsons, and template .jsx files in react.
Author: Eric Zhang
Latest version: 1.0.8

# Watson Content Hub CLI create layout command for react

## Simplified Layout Generation

Generates a single react layout, layout mapping and React.Component (.jsx) template for a given type.  
Also updates the registration.jsx file to include `registerComponent()` calls as well as the src/index.js file to include exporting the newly created react component.

### Usage

```bash
ibm-wch-sdk-cli create layout --data <DATA> --type <TYPE> [--scss] --react --src <SRC>
```

With

* `DATA`: wchtools data folder
* `TYPE`: name of the type to construct the layout for. This needs to be the full type name, not a regular expression. The name is case sensitive.
* `SRC`: root dir of where to generate the layout (.jsx) and style (.scss) files. The layout files will be generated in SRC/src/layouts and the style files will be generated in SRC/styles/layouts.

## Layout Generation
* Generates layouts and layout-mapping json files (currently same as angular) based on type information.
* The layout json file goes into a subfolder layouts/ from the dir supplied into --data
* The layout-mapping json file goes into a subfolder layout-mappings/ from the dir supplied into --data
* The React.Component template goes into a subfolder src/layouts/ from where the command is called
* An updated registration.jsx will go into src/ from where the command is called
* An updated index.js will go into src/layouts from where the command is called

### Naming Scheme
The react template file (.jsx) name is derived from the type name as follows:
* convert the type name to camel case
* if the result ends with `Type` remove that suffix
* DOES NOT add a `Layout` suffix (unlike angular, which does)
* the React.Component class name inside the template file will be the same name but upper camel case

The layout selector (.json file name and parameter passed into `registerComponent()`) is derived from the react component file name as follows:
* convert the component/class name to kebab case
* if the result DOES NOT end with `list`, then add `layout`
* e.g. `coolImage` -> `cool-image-layout`, `coolList` -> `cool-list`

The layout mapping name (.json file name) is derived from the layout name as follows:
* add `-mapping` to the layout selector


## Important Notes
Currently does not support the "multipe" option for elements.
npm package: @ibm-wch/cli-create-layout-react-vue
Description: Command line interface for the generation of WCH layout.jsons, layout-mapping.jsons, and template .jsx files in React or template .vue files in Vue.
Author: Eric Zhang
Latest version: 1.0.15

# Watson Content Hub CLI create layout command for react and vue

## Simplified Layout Generation

For React, generates a single layout, layout mapping and React.Component (.jsx) template for a given type.  
For Vue, generates a single layout, layout mapping and Vue.Component (.vue) template for a given type.
Also updates the registration.js file to include `registerComponent()` calls for react and `Vue.component()` calls for vue as well as the src/index.js file (in react) to include exporting the newly created components.

### Usage

```bash
ibm-wch-sdk-cli create layout --data <DATA> --type <TYPE> [--scss] [--react] [--vue] --src <SRC>
```
Note: This program is not meant to be used independently. It is implemented into the imb-wch-sdk-cli tool.

With

* `DATA`: wchtools data folder
* `TYPE`: name of the type to construct the layout for. This needs to be the full type name, not a regular expression. The name is case sensitive.
* `SRC`: root dir of where to generate the layout (.jsx) and style (.scss) files. The layout files will be generated in SRC/src/layouts and the style files will be generated in SRC/styles/layouts.

## Layout Generation
* Generates layouts and layout-mapping json files (currently same as angular) based on type information.
* The layout json file goes into a subfolder layouts/ from the dir supplied into --data
* The layout-mapping json file goes into a subfolder layout-mappings/ from the dir supplied into --data
* If in React: The React.Component template goes into a subfolder src/layouts/ from where the command is called
* If in Vue: The Vue.Component templates goes into a subfolder src/layouts/ from where the command is called
* An updated registration.js will go into src/ from where the command is called
* An updated index.js will go into src/layouts from where the command is called

### Naming Scheme
The react and vue template file name is derived from the type name as follows:
* convert the type name to camel case
* if the result ends with `Type` remove that suffix
* DOES NOT add a `Layout` suffix (unlike angular, which does)
* the React.Component class name inside the template file will be the same name but upper camel case
* the Vue.Component class name inside registration.js will be the same as the React layout selectors minus the `layout` at the end

The layout selector (.json file name and parameter passed into `registerComponent()`) is derived from the react component file name as follows:
* convert the component/class name to kebab case
* if the result DOES NOT end with `list`, then add `layout`
* e.g. `coolImage` -> `cool-image-layout`, `coolList` -> `cool-list`

The layout mapping name (.json file name) is derived from the layout name as follows:
* add `-mapping` to the layout selector


## Important Notes
Currently does not support the "multiple" option for elements.
Need to double check if null checking works on categories and option element types