Skip to content

Commit

Permalink
build(*): Migrate to angular-cli for build tool (#1346)
Browse files Browse the repository at this point in the history
* build(*): Migrate to angular-cli for build tool

Closes #1345

* build(*): Update config files and directory reorganization

* build(*): Removed old src directory

Removed html reporter from tests

* ci(*): Update the travis config

* build(*): Added karma-spec reporter

* test(igxGrid): Async tests failing

Closes #1345

* refactor(*): Migrate most of the samples

* style(igxProgressbar): Progressbar tests style fixes

* refactor(*): Demo samples transfer complete

* chore(*): Update readme and changelog
  • Loading branch information
rkaraivanov authored and kdinev committed May 25, 2018
1 parent 65f0584 commit 4c71d88
Show file tree
Hide file tree
Showing 796 changed files with 29,293 additions and 41,107 deletions.
5 changes: 2 additions & 3 deletions .editorconfig
@@ -1,14 +1,13 @@
# http://editorconfig.org

# Editor configuration, see http://editorconfig.org
root = true

[*]
charset = utf-8
indent_style = space
indent_size = 4
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true

[*.md]
max_line_length = off
trim_trailing_whitespace = false
97 changes: 45 additions & 52 deletions .gitignore
@@ -1,43 +1,45 @@
# Logs
logs
*.log
npm-debug.log*

# Runtime data
pids
*.pid
*.seed

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# node-waf configuration
.lock-wscript

# Compiled binary addons (http://nodejs.org/api/addons.html)
build/Release

# Dependency directory
node_modules
# See http://help.github.com/ignore-files/ for more about ignoring files.


# compiled output
/dist
/tmp
/out-tsc

# dependencies
/node_modules

# IDEs and editors
/.idea
.project
.classpath
.c9/
*.launch
.settings/
*.sublime-workspace

# IDE - VSCode
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json

# misc
/.sass-cache
/connect.lock
/coverage
/libpeerconnection.log
npm-debug.log
yarn-error.log
testem.log
/typings

# Optional npm cache directory
.npm

# Optional REPL history
.node_repl_history


tmp
*.metadata.json
*.ngFactory.ts
# System Files
.DS_Store
Thumbs.db

# demo folder trash until we migrate
demos/**/*.js
demos/**/*.js.map
demos/style/fonts
Expand All @@ -53,22 +55,13 @@ demos/index.html
!demos/postcss.config.js
!demos/gulpfile.js

oldsrc/**/*.js
oldsrc/**/*.js.map
oldsrc/**/*.css
oldsrc/**/*.css.map


src/**/*.js
src/**/*.js.map

src/**/*.css
src/**/*.css.map

dist/

# vs
.vs/

# vscode
.vscode

#yarn
yarn.lock

#jsbeautify
.jsbeautifyrc
4 changes: 2 additions & 2 deletions .sassdocrc
@@ -1,6 +1,6 @@
{
"dest": "./dist/docs/sass",
"descriptionPath": "./src/core/styles/README.md",
"dest": "./dist/igniteui-angular/docs/sass",
"descriptionPath": ".projects/igniteui-angular/src/lib/core/styles/README.md",
"exclude": [],
"package": {
"name": "Ignite UI for Angular",
Expand Down
2 changes: 1 addition & 1 deletion .stylelintrc.json
@@ -1,6 +1,6 @@
{
"plugins": ["stylelint-scss"],
"ignoreFiles": ["src/core/styles/*.md"],
"ignoreFiles": ["projects/igniteui-angular/src/lib/core/styles/*.md"],
"rules": {
"at-rule-blacklist": ["debug", {
"severity": "warning"
Expand Down
11 changes: 6 additions & 5 deletions .travis.yml
Expand Up @@ -15,20 +15,21 @@ before_install:
before_script:
- npm install -g gulp
script:
- npm run lint
- npm run build
- npm run test
- npm run lint:lib
- ng build igniteui-angular --prod
- npm run build:style
- npm run test:lib
- if [ "${TRAVIS_REPO_SLUG}" == "IgniteUI/igniteui-angular" ]; then cat ./coverage/lcov.info | coveralls; fi

before_deploy:
# move to dist
- cd dist
- cd dist/igniteui-angular
# update package versions
- npm version "${TRAVIS_TAG}" --no-git-tag-version --save
- if [[ "${TRAVIS_TAG}" == *"beta"* ]]; then export NPM_TAG="next"; else export NPM_TAG="latest"; fi

# copy readme
- cp ../README.md README.md
- cp ../../README.md README.md

deploy:
provider: npm
Expand Down
8 changes: 8 additions & 0 deletions CHANGELOG.md
@@ -1,6 +1,14 @@
# Ignite UI for Angular Change Log

All notable changes for each version of this project will be documented in this file.
## 6.1.0
- **Breaking changes**:
- Removed submodule imports. All imports are now resolved from the top level `igniteui-angular` package.

## 6.0.1
- **Breaking changes**:
- Removed submodule imports. All imports are now resolved from the top level `igniteui-angular` package.

## 6.0.0
- Theming - You can now use css variables to style the component instances you include in your project.
- Added `onDoubleClick` output to `igxGrid` to emit the double clicked cell.
Expand Down
69 changes: 30 additions & 39 deletions README.md
Expand Up @@ -4,15 +4,15 @@
[![Coverage Status](https://coveralls.io/repos/github/IgniteUI/igniteui-angular/badge.svg?branch=master)](https://coveralls.io/github/IgniteUI/igniteui-angular?branch=master)
[![npm version](https://badge.fury.io/js/igniteui-angular.svg)](https://badge.fury.io/js/igniteui-angular)

[Ignite UI for Angular](https://www.infragistics.com/products/ignite-ui-angular) is a complete set of Material-based UI Widgets, Components & Sketch UI kits and supporting directives for [Angular](https://angular.io/) by Infragistics. Ignite UI for Angular is designed to enable developers to build the most modern, high-performance HTML5 & JavaScript apps for modern desktop browsers, mobile experiences and progressive web apps (PWA’s) targeting Google's Angular framework.
[Ignite UI for Angular](https://www.infragistics.com/products/ignite-ui-angular) is a complete set of Material-based UI Widgets, Components & Sketch UI kits and supporting directives for [Angular](https://angular.io/) by Infragistics. Ignite UI for Angular is designed to enable developers to build the most modern, high-performance HTML5 & JavaScript apps for modern desktop browsers, mobile experiences and progressive web apps (PWA’s) targeting Google's Angular framework.

You can find source files under the [`src`](https://github.com/IgniteUI/igniteui-angular/tree/master/src) folder, including samples and tests.

#### [**View running samples here**](https://www.infragistics.com/products/ignite-ui-angular/angular/components/grid.html)
#### [**Install our VSCode tooltip extension**](https://marketplace.visualstudio.com/items?itemName=Infragistics.igniteui-angular-tooltips)
![](https://dl.infragistics.com/tools/extensions/angular-tooltips/tooltip_preview.gif)

**IMPORTANT** The repository has been renamed from `igniteui-js-blocks` to `igniteui-angular`. Read more on our new [naming convention](https://www.infragistics.com/community/blogs/b/infragistics/posts/ignite-ui-github-repo-name-changes).
**IMPORTANT** The repository has been renamed from `igniteui-js-blocks` to `igniteui-angular`. Read more on our new [naming convention](https://www.infragistics.com/community/blogs/b/infragistics/posts/ignite-ui-github-repo-name-changes).

Current list of controls include:

Expand Down Expand Up @@ -62,59 +62,50 @@ ig add grid <component name>
ig start
```

## Build Library
In case your editor cannot auto-compile the TypeScript files (VS, VS Code, others with plugins)
there's a configured npm command in place to run the compiler:

For both ESM and UMD builds
## Building the Library
```
npm run build
npm run build:watch // run in watch mode
// build the code
ng build ignuteui-angular
// build the css
npm run build:style
// build them both
npm run build:lib
```

ESM build only
You can find the build ouput under `dist/igniteui-angular`.

## Running the tests

Running the tests in watch mode:

```
npm run build:esm
npm run build:esm:watch // run in watch mode
ng test igniteui-angular // or npm run test:lib:watch
```

UMD build only
Running the tests once with code coverage enabled:
```
npm run build:umd
npm run build:umd:watch // run in watch mode
npm run test:lib
```

## Build API Docs
## Building the API Docs
The API docs are produced using TypeDoc and SassDoc. In order to build the docs, all you need to do is run:

```
npm run build:docs
```

The output of the API docs build is located under `dist/docs`.
The output of the API docs build is located under `dist/igniteui-angular/docs`.

## Run Experimental Demos

The `demos` directory contains a sample application for development/experimental samples of the components and directives of the library.
If you want to run the demo application make sure to install the application dependencies:
```
cd demos && npm install
```

Run the following command from the root directory of your repository.
This will open the demos application in your preferred browser. Any changes in the
application code will trigger a rebuild of the application.
```
cd ..
npm run start:demos
```
## Run Demos Application

In case you want to explore/experiment with the library code start the demo application
with:
The repository includes a sample application featuring the showcasing the different components/directives.
In order to run the demo samples, build the library first and start the application.
```
npm run start:dev
npm run build:lib
ng serve
```
It will watch both the `src` and `demos` directories and will rebuild both the library and the application.

**NOTE**: Experimental demos are not always stable.

Expand All @@ -141,9 +132,9 @@ This repository is a fork of the Angular QuickStart Source and has been updated
## Demo Apps & Documentation
The [Warehouse Picklist App](https://github.com/IgniteUI/warehouse-js-blocks) demonstrates using several Ignite UI for Angular widgets together to build a modern, mobile app.

To get started with the Data Grid, use the steps in the [grid walk-through](https://www.infragistics.com/angular-samples/components/grid.html).
To get started with the Data Grid, use the steps in the [grid walk-through](https://www.infragistics.com/angular-samples/components/grid.html).

All help, related API documents and walk-throughs can be found for each control [here](https://www.infragistics.com/angular-samples/components/grid.html).
All help, related API documents and walk-throughs can be found for each control [here](https://www.infragistics.com/angular-samples/components/grid.html).

## Roadmap
[Roadmap document](https://github.com/IgniteUI/igniteui-angular/blob/master/ROADMAP.md)
Expand All @@ -156,7 +147,7 @@ Community support for open source usage of this product is available at [StackOv
Infragistics is only successful if you are successful, if you need additional assitance beyond our help documentation, forums or Prioroty Support, we have a full suite of Services offerings, including Angular Training, Application Architecture and Development and full Design Consultation. Click to learn more about our [Services offerings](https://www.infragistics.com/consulting#popular-services).

## License
This project is released under the Apache License, version 2.0. This is a commercial product, requiring a valid paid-for license for commercial use. This product is free to use for non-commercial applications, like non-profits and educational usage.
This project is released under the Apache License, version 2.0. This is a commercial product, requiring a valid paid-for license for commercial use. This product is free to use for non-commercial applications, like non-profits and educational usage.

To acquire a license for commercial usage, please register for a trial and acquire a license at [Infragistics.com/Angular](https://www.infragistics.com/products/ignite-ui-angular/getting-started).

Expand Down

0 comments on commit 4c71d88

Please sign in to comment.