diff --git a/Gruntfile.js b/Gruntfile.js
index b47500e53..ed47be5ba 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -138,7 +138,35 @@ module.exports = function(grunt) {
'bower_components/angular-ui-switch/angular-ui-switch.css'
],
dest: 'public/css/foundation.css',
- }
+ },
+ ionic_js: {
+ src: [
+ 'bower_components/ionic/release/js/ionic.bundle.min.js'
+ ],
+ dest: 'public/lib/ionic.bundle.js'
+ },
+ ionic_css: {
+ src: [
+ 'bower_components/ionic/release/css/ionic.min.css'
+ ],
+ dest: 'public/css/ionic.css',
+ },
+ ui_components_js: {
+ src: [
+ 'bower_components/jquery/dist/jquery.js',
+ 'bower_components/roundSlider/dist/roundslider.min.js',
+ 'bower_components/angular-gridster/dist/angular-gridster.min.js',
+ 'bower_components/javascript-detect-element-resize/detect-element-resize.js'
+ ],
+ dest: 'public/lib/ui-components.js'
+ },
+ ui_components_css: {
+ src: [
+ 'bower_components/roundSlider/dist/roundslider.min.css',
+ 'bower_components/angular-gridster/dist/angular-gridster.min.css'
+ ],
+ dest: 'public/css/ui-components.css',
+ },
},
uglify: {
options: {
@@ -182,6 +210,12 @@ module.exports = function(grunt) {
src: 'bower_components/foundation-icon-fonts/foundation-icons.*',
dest: 'public/icons/'
},
+ ionic_fonts: {
+ expand: true,
+ flatten: true,
+ src: 'bower_components/ionic/release/fonts/ionicons.*',
+ dest: 'public/font/'
+ },
linux: {
files: [{
expand: true,
@@ -242,7 +276,7 @@ module.exports = function(grunt) {
}
});
- grunt.registerTask('default', ['nggettext_compile', 'exec:version', 'exec:coinbase', 'browserify', 'sass', 'concat', 'copy:icons']);
+ grunt.registerTask('default', ['nggettext_compile', 'exec:version', 'exec:coinbase', 'browserify', 'sass', 'concat', 'copy:icons', 'copy:ionic_fonts']);
grunt.registerTask('prod', ['default', 'uglify']);
grunt.registerTask('translate', ['nggettext_extract']);
grunt.registerTask('test', ['karma:unit']);
diff --git a/bower.json b/bower.json
index 2cc0da959..0f8325fb5 100644
--- a/bower.json
+++ b/bower.json
@@ -18,6 +18,7 @@
"animate.css": "3.5.1",
"foundation": "5.5.3",
"foundation-icon-fonts": "*",
+ "ionic": "1.2.4",
"moment": "2.10.3",
"ng-lodash": "0.2.3",
"qrcode-decoder-js": "*",
diff --git a/package.json b/package.json
index 3630ea293..366841eeb 100644
--- a/package.json
+++ b/package.json
@@ -91,6 +91,7 @@
"load-grunt-tasks": "^3.5.0",
"mocha": "^2.4.5",
"phantomjs-prebuilt": "^2.1.7",
+ "ionic": "^1.7.14",
"xcode": "^0.8.2"
}
}
diff --git a/public/font/ionicons.eot b/public/font/ionicons.eot
new file mode 100644
index 000000000..92a3f20a3
Binary files /dev/null and b/public/font/ionicons.eot differ
diff --git a/public/font/ionicons.svg b/public/font/ionicons.svg
new file mode 100644
index 000000000..49fc8f367
--- /dev/null
+++ b/public/font/ionicons.svg
@@ -0,0 +1,2230 @@
+
+
+
+
diff --git a/public/font/ionicons.ttf b/public/font/ionicons.ttf
new file mode 100644
index 000000000..c4e463248
Binary files /dev/null and b/public/font/ionicons.ttf differ
diff --git a/public/font/ionicons.woff b/public/font/ionicons.woff
new file mode 100644
index 000000000..5f3a14e0a
Binary files /dev/null and b/public/font/ionicons.woff differ
diff --git a/public/index.html b/public/index.html
index 6522699c5..0183da9d1 100644
--- a/public/index.html
+++ b/public/index.html
@@ -6,8 +6,10 @@
+
+
Copay - Multisignature Wallet
@@ -15,14 +17,14 @@
-
+
+
+
diff --git a/src/css/ionic-migration.css b/src/css/ionic-migration.css
new file mode 100644
index 000000000..dd18f67e9
--- /dev/null
+++ b/src/css/ionic-migration.css
@@ -0,0 +1,63 @@
+/*
+ *
+ * Ionic migration CSS
+ * These styles reapply foundation.css styles AFTER iconic.css has been applied.
+ * This has the effect of allowing all foundation styles be available at the same time as all Ionic styles being available.
+ * Where there are conflicts between foundation and css, this file resolves the conflict with a compromise which the developer must manage.
+ * This stylesheet is merged into copay.css.
+ */
+
+/* Foundation.css styles re-applied. These styles are exactly as described in foundation.css */
+
+
+/* Conflicting styles that are customized as a compromise. These styles are a merge or compromise of foundation.css and ionic.css. */
+
+.row {
+ display: inherit;
+ padding: 0;
+}
+
+button, .button {
+ min-width: inherit;
+ min-height: inherit;
+ text-overflow: inherit;
+}
+
+.modal-open {
+ pointer-events: inherit;
+}
+
+/* Defeat Ionic .row+.row in transaction history */
+.last-transactions-content+.last-transactions-content, .row+.last-transactions-content {
+ padding: 0.8rem 1rem;
+ cursor: pointer;
+ margin: inherit;
+}
+
+/* Add margins to the session log */
+.row.columns.large-centered.medium-centered {
+ padding-left: 0.9375rem;
+ padding-right: 0.9375rem;
+}
+
+/* Defeat Ionic .row+.row in backup failed view */
+.backup .row {
+ margin-top: 10px;
+ padding: 0;
+}
+
+.scroll-view {
+ height: 100% !important;
+}
+
+/* Override the default modal size for large devices */
+@media (min-width: 680px) {
+ .modal {
+ top: 10%;
+ right: 20%;
+ bottom: 10%;
+ left: 20%;
+ min-height: 240px;
+ width: 60%;
+ }
+}
diff --git a/src/js/app.js b/src/js/app.js
index f72997ac0..608a87ab1 100644
--- a/src/js/app.js
+++ b/src/js/app.js
@@ -6,9 +6,10 @@ var modules = [
'mm.foundation',
'monospaced.qrcode',
'gettext',
+ 'ionic',
'ngLodash',
'uiSwitch',
- 'ngSanitize',
+ 'ngSanitize',
'ngCsv',
'ngTouch',
'bwcModule',
diff --git a/src/js/routes.js b/src/js/routes.js
index 419102bcf..13a0e0bdb 100644
--- a/src/js/routes.js
+++ b/src/js/routes.js
@@ -148,11 +148,6 @@ angular
},
}
})
- .state('importProfile', {
- url: '/importProfile',
- templateUrl: 'views/importProfile.html',
- needProfile: false
- })
.state('importLegacy', {
url: '/importLegacy',
needProfile: true,