diff --git a/.gitignore b/.gitignore index 32bf791245..aec866cfeb 100644 --- a/.gitignore +++ b/.gitignore @@ -20,5 +20,7 @@ npm-debug.log /components/**/*.js /components/**/*.js.map /components/**/*.d.ts - +ng2-bootstrap.js +ng2-bootstrap.d.ts +ng2-bootstrap.js.map /logs diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000000..d36ec4afdc --- /dev/null +++ b/.npmignore @@ -0,0 +1,9 @@ +.idea +demo +gulp-tasks +logs + +tsd.d.ts +typings + +webpack.config.js diff --git a/README.md b/README.md index 5a53ef611a..9fc05c113f 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,5 @@ # ng2-bootstrap -Native Angular2 directives for Bootstrap - -Works with Bootstrap 3 and 4-alfa +Native Angular2 directives for Bootstrap, works with Bootstrap 3 and 4-alfa Goal: smooth transition from ui-bootstrap to angular2, all components will have same API @@ -17,6 +15,8 @@ all components will have same API [http://valor-software.github.io/ng2-bootstrap/](http://valor-software.github.io/ng2-bootstrap/) +## If you need more modules check [here](https://github.com/valor-software/ng2-plans) + # Starter package You can start hacking by cloning starter repo: @@ -26,8 +26,6 @@ You can start hacking by cloning starter repo: ```bash npm i ng2-bootstrap --save -# if you are developing with typescript it will link .d.ts from package definition -tsd link ``` ## Install from source @@ -71,6 +69,4 @@ Please read central `ng2` modules [readme](https://github.com/valor-software/ng2 - [ ] support animation (in progress...) - [x] demo page - [x] docs -- [ ] publish to bower, etc. -- [ ] migration guide from Angular 1 to Angular 2 - [x] publish to npm diff --git a/components/index.ts b/components/index.ts deleted file mode 100644 index 8ca4082a06..0000000000 --- a/components/index.ts +++ /dev/null @@ -1,22 +0,0 @@ -export * from './accordion/accordion'; -export * from './alert/alert'; -export * from './buttons/button-radio'; -export * from './buttons/button-checkbox'; -// export * from './datepicker/index'; -export * from './dropdown/index'; -export * from './dropdown/dropdown'; -export * from './dropdown/dropdown-menu'; -export * from './dropdown/dropdown-service'; -export * from './dropdown/dropdown-toggle'; -export * from './carousel/carousel'; -export * from './collapse/collapse'; -export * from './pagination/pagination'; -export * from './progressbar/progressbar'; -export * from './rating/rating'; -export * from './tabs/tabs'; -export * from './timepicker/timepicker'; -export * from './tooltip/tooltip'; -export * from './typeahead/typeahead'; -export * from './position' -export * from './common' -export * from './ng2-bootstrap-config'; diff --git a/demo/components/accordion-section.ts b/demo/components/accordion-section.ts index b39f31681b..a522e5ed08 100644 --- a/demo/components/accordion-section.ts +++ b/demo/components/accordion-section.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {AccordionDemo} from './accordion/accordion-demo'; let name = 'Accordion'; diff --git a/demo/components/accordion/accordion-demo.ts b/demo/components/accordion/accordion-demo.ts index 88c13057f0..1e788389c0 100644 --- a/demo/components/accordion/accordion-demo.ts +++ b/demo/components/accordion/accordion-demo.ts @@ -5,7 +5,7 @@ import { CORE_DIRECTIVES, FORM_DIRECTIVES, NgClass } from 'angular2/angular2'; -import {accordion} from '../../../components/index'; +import {accordion} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./accordion-demo.html'); diff --git a/demo/components/alert-section.ts b/demo/components/alert-section.ts index 871008a830..b592e1aa5d 100644 --- a/demo/components/alert-section.ts +++ b/demo/components/alert-section.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {AlertDemo} from './alert/alert-demo'; let name = 'Alerts'; diff --git a/demo/components/alert/alert-demo.ts b/demo/components/alert/alert-demo.ts index 706c634b2a..46b2a255bd 100644 --- a/demo/components/alert/alert-demo.ts +++ b/demo/components/alert/alert-demo.ts @@ -1,7 +1,7 @@ /// import {Component, View, NgFor} from 'angular2/angular2'; -import {Alert} from '../../../components/index'; +import {Alert} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./alert-demo.html'); diff --git a/demo/components/buttons-section.ts b/demo/components/buttons-section.ts index 93f4eb07b0..966f2cdeb2 100644 --- a/demo/components/buttons-section.ts +++ b/demo/components/buttons-section.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {ButtonsDemo} from './buttons/buttons-demo'; let name = 'Buttons'; diff --git a/demo/components/buttons/buttons-demo.ts b/demo/components/buttons/buttons-demo.ts index b22ca52478..565a33a5eb 100644 --- a/demo/components/buttons/buttons-demo.ts +++ b/demo/components/buttons/buttons-demo.ts @@ -5,7 +5,7 @@ import { CORE_DIRECTIVES, FORM_DIRECTIVES } from 'angular2/angular2'; -import {ButtonCheckbox, ButtonRadio} from '../../../components/index'; +import {ButtonCheckbox, ButtonRadio} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./buttons-demo.html'); diff --git a/demo/components/carousel-section.ts b/demo/components/carousel-section.ts index 7bafcd6a24..81e3ecc10c 100644 --- a/demo/components/carousel-section.ts +++ b/demo/components/carousel-section.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {CarouselDemo} from './carousel/carousel-demo'; let name = 'Carousel'; diff --git a/demo/components/carousel/carousel-demo.ts b/demo/components/carousel/carousel-demo.ts index 5672233b96..8377ec5aa9 100644 --- a/demo/components/carousel/carousel-demo.ts +++ b/demo/components/carousel/carousel-demo.ts @@ -1,7 +1,7 @@ /// import {Component, View, CORE_DIRECTIVES, FORM_DIRECTIVES} from 'angular2/angular2'; -import {carousel} from '../../../components/index'; +import {carousel} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./carousel-demo.html'); diff --git a/demo/components/collapse-section.ts b/demo/components/collapse-section.ts index 59d941e127..adf03f8795 100644 --- a/demo/components/collapse-section.ts +++ b/demo/components/collapse-section.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {CollapseDemo} from './collapse/collapse-demo'; let name = 'Collapse'; diff --git a/demo/components/collapse/collapse-demo.ts b/demo/components/collapse/collapse-demo.ts index 4a78e9079d..0b2ebe77c7 100644 --- a/demo/components/collapse/collapse-demo.ts +++ b/demo/components/collapse/collapse-demo.ts @@ -1,6 +1,6 @@ /// import {Component, View} from 'angular2/angular2'; -import {Collapse} from '../../../components/index'; +import {Collapse} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./collapse-demo.html'); diff --git a/demo/components/datepicker-section.ts b/demo/components/datepicker-section.ts index 8fd4baebb5..d379f22a7d 100644 --- a/demo/components/datepicker-section.ts +++ b/demo/components/datepicker-section.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {DatepickerDemo} from './datepicker/datepicker-demo'; let name = 'Datepicker'; diff --git a/demo/components/datepicker/datepicker-demo.ts b/demo/components/datepicker/datepicker-demo.ts index 92853f3cb2..07998dc196 100644 --- a/demo/components/datepicker/datepicker-demo.ts +++ b/demo/components/datepicker/datepicker-demo.ts @@ -3,7 +3,7 @@ import {Component, View, CORE_DIRECTIVES, FORM_DIRECTIVES} from 'angular2/angular2'; import * as moment from 'moment'; -import {datepicker} from '../../../components/index'; +import {datepicker} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./datepicker-demo.html'); diff --git a/demo/components/demo-header.ts b/demo/components/demo-header.ts index c2f4d7e440..6168d0c4ab 100644 --- a/demo/components/demo-header.ts +++ b/demo/components/demo-header.ts @@ -1,6 +1,6 @@ /// import {Component, View, bootstrap, NgFor} from 'angular2/angular2'; -import {Collapse, dropdown, Ng2BootstrapConfig, Ng2BootstrapTheme} from '../../components/index'; +import {Collapse, dropdown, Ng2BootstrapConfig, Ng2BootstrapTheme} from '../../ng2-bootstrap'; let components = [ 'Accordion', 'Alerts', 'Buttons', 'Carousel', 'Collapse', 'Datepicker', diff --git a/demo/components/demo-section.ts b/demo/components/demo-section.ts index 140ad2ed44..e5536175af 100644 --- a/demo/components/demo-section.ts +++ b/demo/components/demo-section.ts @@ -6,7 +6,7 @@ import { CORE_DIRECTIVES } from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; let name = 'Alerts'; let src = 'https://github.com/valor-software/ng2-bootstrap/blob/master/components/alert/alert.ts'; diff --git a/demo/components/dropdown-section.ts b/demo/components/dropdown-section.ts index 24a1c10aca..bcabdbf6a5 100644 --- a/demo/components/dropdown-section.ts +++ b/demo/components/dropdown-section.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {DropdownDemo} from './dropdown/dropdown-demo'; let name = 'Dropdowns'; diff --git a/demo/components/dropdown/dropdown-demo.ts b/demo/components/dropdown/dropdown-demo.ts index 92c21d35d3..62692134a9 100644 --- a/demo/components/dropdown/dropdown-demo.ts +++ b/demo/components/dropdown/dropdown-demo.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {dropdown} from '../../../components/index'; +import {dropdown} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./dropdown-demo.html'); diff --git a/demo/components/pagination-section.ts b/demo/components/pagination-section.ts index 721df36143..ec131a7abf 100644 --- a/demo/components/pagination-section.ts +++ b/demo/components/pagination-section.ts @@ -1,7 +1,7 @@ /// import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {PaginationDemo} from './pagination/pagination-demo'; let name = 'Pagination'; diff --git a/demo/components/pagination/pagination-demo.ts b/demo/components/pagination/pagination-demo.ts index 639382144d..b4dbc8f389 100644 --- a/demo/components/pagination/pagination-demo.ts +++ b/demo/components/pagination/pagination-demo.ts @@ -2,7 +2,7 @@ import { Component, View, FORM_DIRECTIVES, CORE_DIRECTIVES } from 'angular2/angular2'; -import {pagination} from '../../../components/index'; +import {pagination} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./pagination-demo.html'); diff --git a/demo/components/progressbar-section.ts b/demo/components/progressbar-section.ts index 5d1d2198a0..de53dcddca 100644 --- a/demo/components/progressbar-section.ts +++ b/demo/components/progressbar-section.ts @@ -3,7 +3,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; import {Ng2BootstrapConfig, Ng2BootstrapTheme} from '../../components/ng2-bootstrap-config'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {ProgressbarDemo} from './progressbar/progressbar-demo'; let name = 'Progressbar'; diff --git a/demo/components/progressbar/progressbar-demo.ts b/demo/components/progressbar/progressbar-demo.ts index 81d779838d..e66212d8f5 100644 --- a/demo/components/progressbar/progressbar-demo.ts +++ b/demo/components/progressbar/progressbar-demo.ts @@ -3,7 +3,7 @@ import {Component, View, CORE_DIRECTIVES, NgStyle} from 'angular2/angular2'; // switch bs3\bs4 templates import {Ng2BootstrapConfig, Ng2BootstrapTheme} from '../../../components/ng2-bootstrap-config'; -import {progressbar} from '../../../components/index'; +import {progressbar} from '../../../ng2-bootstrap'; // webpack html imports let templates = { diff --git a/demo/components/rating-section.ts b/demo/components/rating-section.ts index 19ccc7496a..edc29ae876 100644 --- a/demo/components/rating-section.ts +++ b/demo/components/rating-section.ts @@ -1,7 +1,7 @@ /// import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {RatingDemo} from './rating/rating-demo'; let name = 'Rating'; diff --git a/demo/components/rating/rating-demo.ts b/demo/components/rating/rating-demo.ts index 3b3c47ceaf..d3a9e3cf2e 100644 --- a/demo/components/rating/rating-demo.ts +++ b/demo/components/rating/rating-demo.ts @@ -4,7 +4,7 @@ import { CORE_DIRECTIVES, FORM_DIRECTIVES } from 'angular2/angular2'; -import {Rating} from '../../../components/index'; +import {Rating} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./rating-demo.html'); diff --git a/demo/components/tabs-section.ts b/demo/components/tabs-section.ts index 1f94aca64c..b252c3ebf0 100644 --- a/demo/components/tabs-section.ts +++ b/demo/components/tabs-section.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {TabsDemo} from './tabs/tabs-demo'; let name = 'Tabs'; diff --git a/demo/components/tabs/tabs-demo.ts b/demo/components/tabs/tabs-demo.ts index e5de77189c..18bfc5e4d1 100644 --- a/demo/components/tabs/tabs-demo.ts +++ b/demo/components/tabs/tabs-demo.ts @@ -1,7 +1,7 @@ /// import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../../components/index'; +import {tabs} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./tabs-demo.html'); diff --git a/demo/components/timepicker-section.ts b/demo/components/timepicker-section.ts index a59f7b0bab..38f02ae433 100644 --- a/demo/components/timepicker-section.ts +++ b/demo/components/timepicker-section.ts @@ -1,7 +1,7 @@ /// import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {TimepickerDemo} from './timepicker/timepicker-demo'; let name = 'Timepicker'; diff --git a/demo/components/timepicker/timepicker-demo.ts b/demo/components/timepicker/timepicker-demo.ts index ff7fafa2f2..71a536a57e 100644 --- a/demo/components/timepicker/timepicker-demo.ts +++ b/demo/components/timepicker/timepicker-demo.ts @@ -1,7 +1,7 @@ /// import {Component, View, CORE_DIRECTIVES, FORM_DIRECTIVES} from 'angular2/angular2'; -import {Timepicker} from '../../../components/index'; +import {Timepicker} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./timepicker-demo.html'); diff --git a/demo/components/tooltip-section.ts b/demo/components/tooltip-section.ts index 18cecbc7d0..3358b3960a 100644 --- a/demo/components/tooltip-section.ts +++ b/demo/components/tooltip-section.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {TooltipDemo} from './tooltip/tooltip-demo'; let name = 'Tooltip'; diff --git a/demo/components/tooltip/tooltip-demo.ts b/demo/components/tooltip/tooltip-demo.ts index 8dd73efd44..f0b1e50b18 100644 --- a/demo/components/tooltip/tooltip-demo.ts +++ b/demo/components/tooltip/tooltip-demo.ts @@ -4,7 +4,7 @@ import { CORE_DIRECTIVES, FORM_DIRECTIVES } from 'angular2/angular2'; -import {tooltip} from '../../../components/index'; +import {tooltip} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./tooltip-demo.html'); diff --git a/demo/components/typeahead-section.ts b/demo/components/typeahead-section.ts index 968fcd9e13..f6cf7043cb 100644 --- a/demo/components/typeahead-section.ts +++ b/demo/components/typeahead-section.ts @@ -2,7 +2,7 @@ import {Component, View, CORE_DIRECTIVES} from 'angular2/angular2'; -import {tabs} from '../../components/index'; +import {tabs} from '../../ng2-bootstrap'; import {TypeaheadDemo} from './typeahead/typeahead-demo'; let name = 'Typeahead'; diff --git a/demo/components/typeahead/typeahead-demo.ts b/demo/components/typeahead/typeahead-demo.ts index 6b0e2dd322..41f3158900 100644 --- a/demo/components/typeahead/typeahead-demo.ts +++ b/demo/components/typeahead/typeahead-demo.ts @@ -4,7 +4,7 @@ import { CORE_DIRECTIVES, FORM_DIRECTIVES } from 'angular2/angular2'; -import {typeahead} from '../../../components/index'; +import {typeahead} from '../../../ng2-bootstrap'; // webpack html imports let template = require('./typeahead-demo.html'); diff --git a/demo/index.ts b/demo/index.ts index 73485bb102..6a95a506d9 100644 --- a/demo/index.ts +++ b/demo/index.ts @@ -1,7 +1,7 @@ /// import {Component, View, bootstrap, NgClass} from 'angular2/angular2'; -import {Ng2BootstrapConfig, Ng2BootstrapTheme} from '../components/index'; +import {Ng2BootstrapConfig, Ng2BootstrapTheme} from '../ng2-bootstrap'; let w:any = window; if (w && w.__theme === 'bs4') { diff --git a/gulpfile.js b/gulpfile.js index 6ef497ec64..17da8055d7 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -9,7 +9,7 @@ gulp.paths = { '!**/*.{ts,coffee}.js'], jssrc: [ '*.js', - '!angular2-bootstrap.js', + '!ng2-bootstrap.js', 'gulp-tasks/*.js', '!node_modules', '!**/*.{ts,coffee}.js'] diff --git a/ng2-bootstrap.ts b/ng2-bootstrap.ts new file mode 100644 index 0000000000..47aa7fd8b7 --- /dev/null +++ b/ng2-bootstrap.ts @@ -0,0 +1,22 @@ +export * from './components/accordion/accordion'; +export * from './components/alert/alert'; +export * from './components/buttons/button-radio'; +export * from './components/buttons/button-checkbox'; +// export * from './components/datepicker/index'; +export * from './components/dropdown/index'; +export * from './components/dropdown/dropdown'; +export * from './components/dropdown/dropdown-menu'; +export * from './components/dropdown/dropdown-service'; +export * from './components/dropdown/dropdown-toggle'; +export * from './components/carousel/carousel'; +export * from './components/collapse/collapse'; +export * from './components/pagination/pagination'; +export * from './components/progressbar/progressbar'; +export * from './components/rating/rating'; +export * from './components/tabs/tabs'; +export * from './components/timepicker/timepicker'; +export * from './components/tooltip/tooltip'; +export * from './components/typeahead/typeahead'; +export * from './components/position' +export * from './components/common' +export * from './components/ng2-bootstrap-config'; diff --git a/package.json b/package.json index 885b6fe706..763cf96f25 100644 --- a/package.json +++ b/package.json @@ -1,21 +1,16 @@ { "name": "ng2-bootstrap", - "version": "0.42.0", + "version": "0.44.0", "description": "angular2 bootstrap components", "scripts": { - "deploy": "NODE_ENV=production webpack -p --progress --color --optimize-minimize --optimize-dedupe --optimize-occurence-order", "prepublish": "gulp clean && tsc", - "prestart": "npm install", - "server": "webpack-dev-server --hot --inline --colors --display-error-details --display-cached", - "start": "npm run server", + "deploy": "NODE_ENV=production webpack -p --progress --color --optimize-minimize --optimize-dedupe --optimize-occurence-order", + "dev": "webpack-dev-server --hot --inline --colors --display-error-details --display-cached", + "start": "npm run dev", "test": "gulp lint" }, - "main": "dist/index.js", - "typings": "dist/index.d.ts", - "files": [ - "dist", - "components" - ], + "main": "ng2-boostrap.js", + "typings": "ng2-bootstrap.d.ts", "keywords": [ "angular2", "bootstrap", @@ -33,16 +28,15 @@ }, "homepage": "https://github.com/valor-software/ng2-bootstrap#readme", "dependencies": { - "angular2": "2.0.0-alpha.42", + "angular2": "2.0.0-alpha.44", "reflect-metadata": "0.1.2", - "ts-loader": "0.5.6", "zone.js": "0.5.8" }, "devDependencies": { "bootstrap": "3.3.5", "clean-webpack-plugin": "0.1.3", "compression-webpack-plugin": "0.2.0", - "eslint": "1.6.0", + "eslint": "1.7.1", "exports-loader": "0.6.2", "file-loader": "0.8.4", "gulp": "3.9.0", @@ -60,6 +54,7 @@ "prismjs-loader": "0.0.2", "raw-loader": "0.5.1", "require-dir": "0.3.0", + "ts-loader": "0.5.6", "typescript": "1.6.2", "webpack": "1.12.2", "webpack-dev-server": "1.12.0" diff --git a/tsconfig.json b/tsconfig.json index bd977db074..d7adfa1c42 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -3,21 +3,18 @@ "compilerOptions": { "target": "es5", "module": "commonjs", - "outDir": "dist", "sourceMap": true, "declaration": true, "removeComments": true, "emitDecoratorMetadata": true, "experimentalDecorators": true, "listFiles": false, - "noLib": false, - "noEmitOnError": false, - "noImplicitAny": false + "noLib": false }, "exclude": [ "node_modules" ], "files": [ - "./components/index.ts" + "./ng2-bootstrap.ts" ] } diff --git a/webpack.config.js b/webpack.config.js index b4bcce4c6f..824c0300a7 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -53,7 +53,7 @@ var config = { 'angular2/angular2', 'angular2/core' ], - 'angular2-bootstrap': ['components'], + 'angular2-bootstrap': ['ng2-bootstrap'], 'angular2-bootstrap-demo': 'demo' },