diff --git a/CHANGELOG.md b/CHANGELOG.md
index c639e2cdaa..48f042400c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -27,6 +27,14 @@
* **action-sheet:** Button `style` property renamed to `role` ([1c618b5](https://github.com/driftyco/ionic/commit/1c618b51eb0a31013f7d3509d34c796d65689836#diff-f61014c4fb6e166fa1b5645d126dd4f6L26))
+##### Angular was updated to Beta 2
+
+* Update the version of Angular in your `package.json` file:
+
+ ```
+ "angular2": "2.0.0-beta.2",
+ ```
+
# 2.0.0-alpha.53 (2016-01-28)
diff --git a/demos/action-sheet/main.html b/demos/action-sheet/main.html
index 0bd9c249f9..2edfbc70c4 100644
--- a/demos/action-sheet/main.html
+++ b/demos/action-sheet/main.html
@@ -2,6 +2,7 @@
Action Sheet
-
-
+
+
+
diff --git a/demos/alert/app.html b/demos/alert/app.html
new file mode 100644
index 0000000000..7b88c96996
--- /dev/null
+++ b/demos/alert/app.html
@@ -0,0 +1 @@
+
diff --git a/demos/alert/index.ts b/demos/alert/index.ts
new file mode 100644
index 0000000000..6897e457ff
--- /dev/null
+++ b/demos/alert/index.ts
@@ -0,0 +1,220 @@
+import {App, Page, Alert, NavController} from 'ionic/ionic';
+
+
+@App({
+ templateUrl: 'app.html'
+})
+class ApiDemoApp {
+ constructor() {
+ this.rootPage = InitialPage;
+ }
+}
+
+
+@Page({
+ templateUrl: 'main.html'
+})
+export class InitialPage {
+ constructor(nav: NavController) {
+ this.nav = nav;
+ }
+
+ doAlert() {
+ let alert = Alert.create({
+ title: 'New Friend!',
+ subTitle: 'Your friend, Obi wan Kenobi, just accepted your friend request!',
+ buttons: ['Ok']
+ });
+
+ this.nav.present(alert);
+ }
+
+ doConfirm() {
+ let alert = Alert.create({
+ title: 'Use this lightsaber?',
+ body: 'Do you agree to use this lightsaber to do good across the intergalactic galaxy?',
+ buttons: [
+ {
+ text: 'Disagree',
+ handler: () => {
+ console.log('Disagree clicked');
+ }
+ },
+ {
+ text: 'Agree',
+ handler: () => {
+ console.log('Agree clicked');
+ }
+ }
+ ]
+ });
+
+ this.nav.present(alert);
+ }
+
+ doPrompt() {
+ let alert = Alert.create({
+ title: 'Login',
+ body: "Enter a name for this new album you're so keen on adding",
+ inputs: [
+ {
+ name: 'title',
+ placeholder: 'Title'
+ },
+ ],
+ buttons: [
+ {
+ text: 'Cancel',
+ handler: data => {
+ console.log('Cancel clicked');
+ }
+ },
+ {
+ text: 'Save',
+ handler: data => {
+ console.log('Saved clicked');
+ }
+ }
+ ]
+ });
+
+ this.nav.present(alert);
+ }
+
+ doRadio() {
+ let alert = Alert.create();
+ alert.setTitle('Lightsaber color');
+
+ alert.addInput({
+ type: 'radio',
+ label: 'Blue',
+ value: 'blue',
+ checked: true
+ });
+
+ alert.addInput({
+ type: 'radio',
+ label: 'Green',
+ value: 'green'
+ });
+
+ alert.addInput({
+ type: 'radio',
+ label: 'Red',
+ value: 'red'
+ });
+
+ alert.addInput({
+ type: 'radio',
+ label: 'Yellow',
+ value: 'yellow'
+ });
+
+ alert.addInput({
+ type: 'radio',
+ label: 'Purple',
+ value: 'purple'
+ });
+
+ alert.addInput({
+ type: 'radio',
+ label: 'White',
+ value: 'white'
+ });
+
+ alert.addInput({
+ type: 'radio',
+ label: 'Black',
+ value: 'black'
+ });
+
+ alert.addButton('Cancel');
+ alert.addButton({
+ text: 'Ok',
+ handler: data => {
+ console.log('Radio data:', data);
+ this.testRadioOpen = false;
+ this.testRadioResult = data;
+ }
+ });
+
+ this.nav.present(alert);
+ }
+
+ doCheckbox() {
+ let alert = Alert.create();
+ alert.setTitle('Which planets have you visited?');
+
+ alert.addInput({
+ type: 'checkbox',
+ label: 'Alderaan',
+ value: 'value1',
+ checked: true
+ });
+
+ alert.addInput({
+ type: 'checkbox',
+ label: 'Bespin',
+ value: 'value2'
+ });
+
+ alert.addInput({
+ type: 'checkbox',
+ label: 'Coruscant',
+ value: 'value3'
+ });
+
+ alert.addInput({
+ type: 'checkbox',
+ label: 'Endor',
+ value: 'value4'
+ });
+
+ alert.addInput({
+ type: 'checkbox',
+ label: 'Hoth',
+ value: 'value5'
+ });
+
+ alert.addInput({
+ type: 'checkbox',
+ label: 'Jakku',
+ value: 'value6'
+ });
+
+ alert.addInput({
+ type: 'checkbox',
+ label: 'Naboo',
+ value: 'value6'
+ });
+
+ alert.addInput({
+ type: 'checkbox',
+ label: 'Takodana',
+ value: 'value6'
+ });
+
+ alert.addInput({
+ type: 'checkbox',
+ label: 'Tatooine',
+ value: 'value6'
+ });
+
+ alert.addButton('Cancel');
+ alert.addButton({
+ text: 'Okay',
+ handler: data => {
+ console.log('Checkbox data:', data);
+ this.testCheckboxOpen = false;
+ this.testCheckboxResult = data;
+ }
+ });
+
+ this.nav.present(alert);
+ }
+
+ doCustomAnimation() {
+
+ }
+
+}
diff --git a/demos/alert/main.html b/demos/alert/main.html
new file mode 100644
index 0000000000..30d0896fd9
--- /dev/null
+++ b/demos/alert/main.html
@@ -0,0 +1,12 @@
+
+ Alert
+
+
+
+
+
+
+
+
+
+
diff --git a/demos/blur/index.ts b/demos/blur/index.ts
index 00bd916c6b..405e893db7 100644
--- a/demos/blur/index.ts
+++ b/demos/blur/index.ts
@@ -3,8 +3,4 @@ import {App} from 'ionic/ionic';
@App({
templateUrl: 'main.html'
})
-
-class DemoApp {
- blur() {
- }
-}
+class ApiDemoApp {}
diff --git a/demos/buttons/index.ts b/demos/button/index.ts
similarity index 78%
rename from demos/buttons/index.ts
rename to demos/button/index.ts
index 35861ee71b..405e893db7 100644
--- a/demos/buttons/index.ts
+++ b/demos/button/index.ts
@@ -3,5 +3,4 @@ import {App} from 'ionic/ionic';
@App({
templateUrl: 'main.html'
})
-
-class DemoApp {}
\ No newline at end of file
+class ApiDemoApp {}
diff --git a/demos/button/main.html b/demos/button/main.html
new file mode 100644
index 0000000000..2ce4c2493e
--- /dev/null
+++ b/demos/button/main.html
@@ -0,0 +1,64 @@
+
+
+ Button
+
+
+
+
+ Colors
+
+
+
+
+
+
+
+
+
+
+
+ Shapes
+
+
+
+
+
+
+
+
+
+ Outlines
+
+
+
+
+
+
+
+
+
+ Icons
+
+
+
+
+
+
+
+ Sizes
+
+
+
+
+
+
+
+
diff --git a/demos/buttons/main.html b/demos/buttons/main.html
deleted file mode 100644
index 6efc84cddc..0000000000
--- a/demos/buttons/main.html
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
- Buttons
-
-
-
-
-
- Colors
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Shapes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Outlines
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Icons
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Sizes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/demos/checkbox/app.html b/demos/checkbox/app.html
deleted file mode 100644
index 5f6bb33d68..0000000000
--- a/demos/checkbox/app.html
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/demos/checkbox/index.ts b/demos/checkbox/index.ts
index a1884eb2c1..405e893db7 100644
--- a/demos/checkbox/index.ts
+++ b/demos/checkbox/index.ts
@@ -1,20 +1,6 @@
-import {App, Page, IonicApp} from 'ionic/ionic';
+import {App} from 'ionic/ionic';
@App({
- templateUrl: 'app.html'
-})
-class ApiDemoApp {
-
- constructor() {
- this.rootPage = InitialPage;
- }
-}
-
-@Page({
templateUrl: 'main.html'
})
-export class InitialPage {
- constructor() {
- }
-}
-
+class ApiDemoApp {}
diff --git a/demos/checkbox/main.html b/demos/checkbox/main.html
index 7e147a9f04..66b3e9e555 100644
--- a/demos/checkbox/main.html
+++ b/demos/checkbox/main.html
@@ -1,6 +1,6 @@
-
+
Checkbox
-
+
diff --git a/demos/config/index.html b/demos/config/index.html
index e8dda7ea3d..49f6db8d67 100644
--- a/demos/config/index.html
+++ b/demos/config/index.html
@@ -20,19 +20,6 @@
-