refactor(overlays): inject overlay providers

BREAKING CHANGES:

- Overlay components, such as Alert or Modals, should now be created
using its injected provider.
- Overlays now have the `present()` method on the overlay’s instance,
rather than using `nav.present(overlayInstance)`.
- All overlays now present on top of all app content, to include menus.
- Below is an example of the change to `Alert`, but the pattern is the
same for all overlays: ActionSheet, Loading, Modal, Picker, Popover,
Toast

WAS:

```
import { NavController, Alert } from ‘ionic-angular’;

constructor(private nav: NavController) {
}

doAlert() {
  let alert = Alert.create({
    title: 'Alert',
  });
  this.nav.present(alert);
}
```

NOW:

```
import { AlertController } from ‘ionic-angular’;

constructor(private alertCtrl: AlertController) {
}

doAlert() {
  let alert = this.alertCtrl.create({
    title: 'Alert'
  });
  alert.present();
}
```
This commit is contained in:
Adam Bradley
2016-06-28 15:18:09 -05:00
parent 2fe42ed63e
commit 215c6d846c
39 changed files with 3578 additions and 3303 deletions

View File

@ -1,5 +1,7 @@
export { ActionSheet, ActionSheetOptions } from './components/action-sheet/action-sheet';
export { Alert, AlertOptions, AlertInputOptions } from './components/alert/alert';
export { ActionSheet, ActionSheetController } from './components/action-sheet/action-sheet';
export { ActionSheetOptions } from './components/action-sheet/action-sheet-options';
export { Alert, AlertController } from './components/alert/alert';
export { AlertOptions, AlertInputOptions } from './components/alert/alert-options';
export { App } from './components/app/app';
export { Backdrop } from './components/backdrop/backdrop';
export { Badge } from './components/badge/badge';
@ -17,23 +19,28 @@ export { ItemReorder } from './components/item/item-reorder';
export { ItemSliding, ItemOptions, ItemSideFlags } from './components/item/item-sliding';
export { Label } from './components/label/label';
export { List, ListHeader } from './components/list/list';
export { Loading, LoadingOptions } from './components/loading/loading';
export { Loading, LoadingController } from './components/loading/loading';
export { LoadingOptions } from './components/loading/loading-options';
export { Menu } from './components/menu/menu';
export { MenuClose } from './components/menu/menu-close';
export { MenuController } from './components/menu/menu-controller';
export { MenuToggle } from './components/menu/menu-toggle';
export { MenuType } from './components/menu/menu-types';
export { Modal, ModalOptions } from './components/modal/modal';
export { Modal, ModalController } from './components/modal/modal';
export { ModalOptions } from './components/modal/modal-options';
export { Nav } from './components/nav/nav';
export { NavController, NavOptions } from './components/nav/nav-controller';
export { NavController } from './components/nav/nav-controller';
export { NavOptions } from './components/nav/nav-options';
export { NavParams } from './components/nav/nav-params';
export { NavPop } from './components/nav/nav-pop';
export { NavPush } from './components/nav/nav-push';
export { ViewController } from './components/nav/view-controller';
export { Navbar, NavbarTemplate } from './components/navbar/navbar';
export { Option } from './components/option/option';
export { Picker, PickerOptions, PickerColumn, PickerColumnOption } from './components/picker/picker';
export { Popover, PopoverOptions } from './components/popover/popover';
export { Picker, PickerController } from './components/picker/picker';
export { PickerOptions } from './components/picker/picker-options';
export { Popover, PopoverController } from './components/popover/popover';
export { PopoverOptions } from './components/popover/popover-options';
export { RadioButton } from './components/radio/radio-button';
export { RadioGroup } from './components/radio/radio-group';
export { Range, RangeKnob, ClientRect } from './components/range/range';
@ -49,7 +56,8 @@ export { Spinner } from './components/spinner/spinner';
export { Tab } from './components/tabs/tab';
export { Tabs } from './components/tabs/tabs';
export { TapClick, isActivatable } from './components/tap-click/tap-click';
export { Toast, ToastOptions } from './components/toast/toast';
export { Toast, ToastController } from './components/toast/toast';
export { ToastOptions } from './components/toast/toast-options';
export { Toggle } from './components/toggle/toggle';
export { Toolbar, ToolbarBase, Header, Footer } from './components/toolbar/toolbar';
export { VirtualScroll } from './components/virtual-scroll/virtual-scroll';