@@ -27,8 +27,27 @@ import { hasNgModuleImport } from '../utils/ng-module-imports';
2727const bootstrapStylePath = `./node_modules/bootstrap/dist/css/bootstrap.min.css` ;
2828const datePickerStylePath = `./node_modules/ngx-bootstrap/datepicker/bs-datepicker.css` ;
2929const datepickerComponentName = 'datepicker' ;
30- const accordionComponentName = 'accordion' ;
31- const collapseComponentName = 'collapse' ;
30+ const bsName = 'ngx-bootstrap' ;
31+
32+ const components : { [ key : string ] : { moduleName : string ; link : string ; animated ?: boolean } } = {
33+ accordion : { moduleName : 'AccordionModule' , link : `${ bsName } /accordion` , animated : true } ,
34+ alerts : { moduleName : 'AlertModule' , link : `${ bsName } /alert` } ,
35+ buttons : { moduleName : 'ButtonsModule' , link : `${ bsName } /buttons` } ,
36+ carousel : { moduleName : 'CarouselModule' , link : `${ bsName } /carousel` } ,
37+ collapse : { moduleName : 'CollapseModule' , link : `${ bsName } /collapse` , animated : true } ,
38+ datepicker : { moduleName : 'BsDatepickerModule' , link : `${ bsName } /datepicker` , animated : true } ,
39+ dropdowns : { moduleName : 'BsDropdownModule' , link : `${ bsName } /dropdown` } ,
40+ modals : { moduleName : 'ModalModule' , link : `${ bsName } /modal` } ,
41+ pagination : { moduleName : 'PaginationModule' , link : `${ bsName } /pagination` } ,
42+ popover : { moduleName : 'PopoverModule' , link : `${ bsName } /popover` } ,
43+ progressbar : { moduleName : 'ProgressbarModule' , link : `${ bsName } /progressbar` } ,
44+ rating : { moduleName : 'RatingModule' , link : `${ bsName } /rating` } ,
45+ sortable : { moduleName : 'SortableModule' , link : `${ bsName } /sortable` } ,
46+ tabs : { moduleName : 'TabsModule' , link : `${ bsName } /tabs` } ,
47+ timepicker : { moduleName : 'TimepickerModule' , link : `${ bsName } /timepicker` } ,
48+ tooltip : { moduleName : 'TooltipModule' , link : `${ bsName } /tooltip` } ,
49+ typeahead : { moduleName : 'TypeaheadModule' , link : `${ bsName } /typeahead` , animated : true }
50+ } ;
3251
3352/* tslint:disable-next-line: no-default-export */
3453export default function ( options : Schema ) : Rule {
@@ -50,27 +69,6 @@ export default function (options: Schema): Rule {
5069}
5170
5271function addModuleOfComponent ( projectName : string | undefined , componentName : string ) {
53- const bsName = 'ngx-bootstrap' ;
54-
55- const components : { [ key : string ] : { moduleName : string ; link : string } } = {
56- accordion : { moduleName : 'AccordionModule' , link : `${ bsName } /accordion` } ,
57- alerts : { moduleName : 'AlertModule' , link : `${ bsName } /alert` } ,
58- buttons : { moduleName : 'ButtonsModule' , link : `${ bsName } /buttons` } ,
59- carousel : { moduleName : 'CarouselModule' , link : `${ bsName } /carousel` } ,
60- collapse : { moduleName : 'CollapseModule' , link : `${ bsName } /collapse` } ,
61- datepicker : { moduleName : 'BsDatepickerModule' , link : `${ bsName } /datepicker` } ,
62- dropdowns : { moduleName : 'BsDropdownModule' , link : `${ bsName } /dropdown` } ,
63- modals : { moduleName : 'ModalModule' , link : `${ bsName } /modal` } ,
64- pagination : { moduleName : 'PaginationModule' , link : `${ bsName } /pagination` } ,
65- popover : { moduleName : 'PopoverModule' , link : `${ bsName } /popover` } ,
66- progressbar : { moduleName : 'ProgressbarModule' , link : `${ bsName } /progressbar` } ,
67- rating : { moduleName : 'RatingModule' , link : `${ bsName } /rating` } ,
68- sortable : { moduleName : 'SortableModule' , link : `${ bsName } /sortable` } ,
69- tabs : { moduleName : 'TabsModule' , link : `${ bsName } /tabs` } ,
70- timepicker : { moduleName : 'TimepickerModule' , link : `${ bsName } /timepicker` } ,
71- tooltip : { moduleName : 'TooltipModule' , link : `${ bsName } /tooltip` } ,
72- typeahead : { moduleName : 'TypeaheadModule' , link : `${ bsName } /typeahead` }
73- } ;
7472
7573 return ( host : Tree ) => {
7674 const workspace = getWorkspace ( host ) ;
@@ -133,7 +131,7 @@ function insertCommonStyles(project: WorkspaceProject, host: Tree, workspace: Wo
133131
134132function addAnimationModule ( projectName : string | undefined , componentName : string ) {
135133 return ( host : Tree ) => {
136- if ( ! ( ! componentName || componentName === accordionComponentName || componentName === collapseComponentName ) ) {
134+ if ( ! ( ! componentName || components [ componentName ] . animated ) ) {
137135 return host ;
138136 }
139137
0 commit comments