fix(angular): module exports

This commit is contained in:
Manu Mtz.-Almeida
2018-03-30 21:52:29 +02:00
parent b35f95a4d8
commit cece447092
40 changed files with 657 additions and 996 deletions

View File

@ -1,355 +1,131 @@
import { APP_INITIALIZER, ModuleWithProviders, NgModule } from '@angular/core';
import { ModuleWithProviders, NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
// inputs
import { BooleanValueAccessor } from './control-value-accessors/boolean-value-accessor';
import { NumericValueAccessor } from './control-value-accessors/numeric-value-accesssor';
import { RadioValueAccessor } from './control-value-accessors/radio-value-accessor';
import { SelectValueAccessor } from './control-value-accessors/select-value-accessor';
import { TextValueAccessor } from './control-value-accessors/text-value-accessor';
import * as c from './directives';
import * as d from './directives/proxies';
import * as p from './providers';
// navigation
import { GoBack } from './navigation/go-back';
import { IonBackButton } from './navigation/ion-back-button';
import { NavController } from './navigation/ion-nav-controller';
import { Nav } from './navigation/ion-nav';
import { Tab } from './navigation/ion-tab';
import { Tabs } from './navigation/ion-tabs';
// router
import { IonRouterOutlet } from './navigation/ion-router-outlet';
const DECLARATIONS = [
// proxies
d.App,
d.Avatar,
d.BackButton,
d.Badge,
d.Button,
d.Buttons,
d.Card,
d.CardContent,
d.CardHeader,
d.CardSubtitle,
d.CardTitle,
d.Checkbox,
d.Chip,
d.ChipButton,
d.Col,
d.Content,
d.Datetime,
d.Fab,
d.FabButton,
d.FabList,
d.Footer,
d.Grid,
d.Header,
d.HideWhen,
d.InfiniteScroll,
d.InfiniteScrollContent,
d.Input,
d.Item,
d.ItemDivider,
d.ItemGroup,
d.ItemOption,
d.ItemOptions,
d.ItemSliding,
d.Label,
d.List,
d.ListHeader,
d.Menu,
d.MenuButton,
d.MenuToggle,
d.NavControllerBase,
d.NavPop,
d.NavPush,
d.NavSetRoot,
d.Note,
d.Radio,
d.RadioGroup,
d.Range,
d.Refresher,
d.RefresherContent,
d.Reorder,
d.ReorderGroup,
d.RippleEffect,
d.Row,
d.Scroll,
d.Searchbar,
d.Segment,
d.SegmentButton,
d.Select,
d.SelectOption,
d.SelectPopover,
d.ShowWhen,
d.SkeletonText,
d.Slide,
d.Slides,
d.Spinner,
d.SplitPane,
d.Tab,
d.Tabs,
d.Text,
d.Textarea,
d.Thumbnail,
d.Toggle,
d.Toolbar,
d.ToolbarTitle,
// providers
import { AngularDelegate } from './providers/angular-delegate';
import { ActionSheetController } from './providers/action-sheet-controller';
import { AlertController } from './providers/alert-controller';
import { Events, setupProvideEvents } from './providers/events';
import { LoadingController } from './providers/loading-controller';
import { MenuController } from './providers/menu-controller';
import { ModalController } from './providers/modal-controller';
import { PickerController } from './providers/picker-controller';
import { Platform } from './providers/platform';
import { PopoverController } from './providers/popover-controller';
import { ToastController } from './providers/toast-controller';
// custom proxy
c.Icon,
// directives
import { Icon } from './directives/icon';
import { VirtualScroll } from './directives/virtual-scroll';
import { VirtualItem } from './directives/virtual-item';
import { VirtualHeader } from './directives/virtual-header';
import { VirtualFooter } from './directives/virtual-footer';
// ngModel accessors
c.BooleanValueAccessor,
c.NumericValueAccessor,
c.RadioValueAccessor,
c.SelectValueAccessor,
c.TextValueAccessor,
// directive proxies
import {
Anchor,
App,
Avatar,
BackButton,
Backdrop,
Badge,
Button,
Buttons,
Card,
CardContent,
CardHeader,
CardSubtitle,
CardTitle,
Checkbox,
Chip,
ChipButton,
Col,
Content,
CordovaPlatform,
Datetime,
Fab,
FabButton,
FabList,
Footer,
Gesture,
GestureController,
Grid,
Header,
HideWhen,
InfiniteScroll,
InfiniteScrollContent,
Input,
Item,
ItemDivider,
ItemGroup,
ItemOption,
ItemOptions,
ItemSliding,
Label,
List,
ListHeader,
Menu,
MenuButton,
MenuToggle,
NavPop,
NavPush,
NavSetRoot,
Note,
Radio,
RadioGroup,
Range,
RangeKnob,
Refresher,
RefresherContent,
Reorder,
ReorderGroup,
RippleEffect,
Route,
RouteRedirect,
Router,
RouterOutlet,
Row,
Scroll,
Searchbar,
Segment,
SegmentButton,
Select,
SelectOption,
SelectPopover,
ShowWhen,
SkeletonText,
Slide,
Slides,
Spinner,
SplitPane,
StatusTap,
TabButton,
Tabbar,
TapClick,
Text,
Textarea,
Thumbnail,
Toggle,
Toolbar,
ToolbarTitle,
} from './directives/proxies';
// navigation
c.GoBack,
c.IonBackButton,
c.IonRouterOutlet,
c.NavDelegate,
c.TabDelegate,
// virtual scroll
c.VirtualFooter,
c.VirtualHeader,
c.VirtualItem,
c.VirtualScroll,
];
const PROVIDERS = [
p.ActionSheetController,
p.AlertController,
p.LoadingController,
p.ModalController,
p.PickerController,
p.PopoverController,
p.ToastController,
p.MenuController,
p.NavController,
p.Platform,
p.Events,
];
@NgModule({
declarations: [
Anchor,
App,
Avatar,
BackButton,
Backdrop,
Badge,
Button,
Buttons,
Card,
CardContent,
CardHeader,
CardSubtitle,
CardTitle,
Checkbox,
Chip,
ChipButton,
Col,
Content,
CordovaPlatform,
Datetime,
Fab,
FabButton,
FabList,
Footer,
Gesture,
GestureController,
Grid,
Header,
HideWhen,
Icon,
InfiniteScroll,
InfiniteScrollContent,
Input,
Item,
ItemDivider,
ItemGroup,
ItemOption,
ItemOptions,
ItemSliding,
Label,
List,
ListHeader,
Menu,
MenuButton,
MenuToggle,
NavPop,
NavPush,
NavSetRoot,
Note,
Radio,
RadioGroup,
Range,
RangeKnob,
Refresher,
RefresherContent,
Reorder,
ReorderGroup,
RippleEffect,
Route,
RouteRedirect,
Router,
RouterOutlet,
Row,
Scroll,
Searchbar,
Segment,
SegmentButton,
Select,
SelectOption,
SelectPopover,
ShowWhen,
SkeletonText,
Slide,
Slides,
Spinner,
SplitPane,
StatusTap,
TabButton,
Tabbar,
TapClick,
Text,
Textarea,
Thumbnail,
Toggle,
Toolbar,
ToolbarTitle,
// navigation
Nav,
Tab,
Tabs,
GoBack,
IonBackButton,
// router
IonRouterOutlet,
// inputs
BooleanValueAccessor,
NumericValueAccessor,
RadioValueAccessor,
SelectValueAccessor,
TextValueAccessor,
// directives
VirtualScroll,
VirtualItem,
VirtualHeader,
VirtualFooter,
],
exports: [
Anchor,
App,
Avatar,
BackButton,
Backdrop,
Badge,
Button,
Buttons,
Card,
CardContent,
CardHeader,
CardSubtitle,
CardTitle,
Checkbox,
Chip,
ChipButton,
Col,
Content,
CordovaPlatform,
Datetime,
Fab,
FabButton,
FabList,
Footer,
Gesture,
GestureController,
Grid,
Header,
HideWhen,
Icon,
InfiniteScroll,
InfiniteScrollContent,
Input,
Item,
ItemDivider,
ItemGroup,
ItemOption,
ItemOptions,
ItemSliding,
Label,
List,
ListHeader,
Menu,
MenuButton,
MenuToggle,
NavPop,
NavPush,
NavSetRoot,
Note,
Radio,
RadioGroup,
Range,
RangeKnob,
Refresher,
RefresherContent,
Reorder,
ReorderGroup,
RippleEffect,
Route,
RouteRedirect,
Router,
RouterOutlet,
Row,
Scroll,
Searchbar,
Segment,
SegmentButton,
Select,
SelectOption,
SelectPopover,
ShowWhen,
SkeletonText,
Slide,
Slides,
Spinner,
SplitPane,
StatusTap,
TabButton,
Tabbar,
TapClick,
Text,
Textarea,
Thumbnail,
Toggle,
Toolbar,
ToolbarTitle,
BooleanValueAccessor,
Nav,
IonRouterOutlet,
GoBack,
IonBackButton,
Tab,
Tabs,
NumericValueAccessor,
RadioValueAccessor,
SelectValueAccessor,
TextValueAccessor,
VirtualScroll,
VirtualItem,
VirtualHeader,
VirtualFooter
],
declarations: DECLARATIONS,
exports: DECLARATIONS,
providers: [
AngularDelegate,
ModalController,
PopoverController,
p.AngularDelegate
],
imports: [
CommonModule,
@ -360,17 +136,7 @@ export class IonicModule {
return {
ngModule: IonicModule,
providers: [
NavController,
AlertController,
ActionSheetController,
Events,
LoadingController,
PickerController,
MenuController,
Platform,
ToastController,
{ provide: APP_INITIALIZER, useFactory: setupProvideEvents, multi: true },
...PROVIDERS,
]
};
}