# Angular Clinical 6
----------

[![npm version](https://badge.fury.io/js/angular-clinical6.svg)](https://badge.fury.io/js/angular-clinical6)
[![Build Status](https://travis-ci.com/parallel-6/angular-clinical6.svg?token=EquXoLSKrFHCsNKSVFRX&branch=development)](https://travis-ci.com/parallel-6/angular-clinical6)

## Requirements
- NodeJs
- NPM(It comes with NodeJs Installation)
- Visual Studio Code

## Folder structure
- **root**
 - **out-tsc**(temporal folder at compilation)
 - **dist-ac6**(output from the compilation process)
 - **src**(source files)
    - **app**
        - **angular-clinical6**(NPM Angular Module files)
            - **components**(angular-clinical6 components)
            - **services, directives, etc...**
        - **components**(playground components)

## Start Development

The first step is to install project dependencies, run the command `npm install` from the project folder, after finishing dependencies installation, run the command `ng serve --open` to run the application.

## Adding a component
The `ng-cli` can be used to create components, not matter if them are for the `angular-clinical6` package or not.


Components from `angular-clinical6` are located on `src/app/angular-clinical6/components/` and you can add them with the required structure for the component using the command `ng g component src/app/angular-clinical6/components/{{component name or route here}}`, this will add automatically a reference of the component to the module `angular-clinical6`, still needs to add the component to the export section of the module.

If the component class needs to be accessible from outside of the library, its required to add a file or modify if exist the `index.ts` and add the code `export * from '{{component route}}'`, check `index.ts` files from the folder `angular-clinical6` and follow the references for an example.

The same process is applied with services, directives and other components of an angular module.

## Adding a playground for a component
Playgrounds are used to show component basic usage and demo, also for friendly development preview, them are just normal components declared through the main module instead `angular-clinical6` module.

Playground can be created through `ng-cli` command `ng g component components/{{route or component name}}` but it must be added to the `routing.module.ts` manually.

## Build package

Package version its defined by the version number that is stored in `package.json` file on the root folder of the project. Every time changes will be committed to the project repository, this version number should be increased manually, when the package its built, will generate a package from this version ready to be installed as a `npm` package.

The build command is `npm run build`.
