diff --git a/lib/browser/pages/settings/services/settings.js b/lib/browser/models/settings.js similarity index 75% rename from lib/browser/pages/settings/services/settings.js rename to lib/browser/models/settings.js index 32b389de..3cac9184 100644 --- a/lib/browser/pages/settings/services/settings.js +++ b/lib/browser/models/settings.js @@ -16,7 +16,17 @@ 'use strict'; -module.exports = function($localStorage) { +/** + * @module Etcher.Models.Settings + */ + +const angular = require('angular'); +require('ngstorage'); +const SettingsModel = angular.module('Etcher.Models.Settings', [ + 'ngStorage' +]); + +SettingsModel.service('SettingsModel', function($localStorage) { /** * @summary Settings data @@ -28,4 +38,4 @@ module.exports = function($localStorage) { unmountOnSuccess: true }); -}; +}); diff --git a/lib/browser/modules/analytics.js b/lib/browser/modules/analytics.js index afe2dd81..23de3144 100644 --- a/lib/browser/modules/analytics.js +++ b/lib/browser/modules/analytics.js @@ -31,10 +31,10 @@ window.MIXPANEL_CUSTOM_LIB_URL = '../bower_components/mixpanel/mixpanel.js'; require('../../../bower_components/mixpanel/mixpanel-jslib-snippet.js'); require('../../../bower_components/angular-mixpanel/src/angular-mixpanel'); -require('../pages/settings/settings'); +require('../models/settings'); const analytics = angular.module('Etcher.analytics', [ 'analytics.mixpanel', - 'Etcher.Pages.Settings' + 'Etcher.Models.Settings' ]); analytics.config(function($mixpanelProvider) { @@ -66,9 +66,9 @@ analytics.run(function($window) { analytics.config(function($provide) { $provide.decorator('$exceptionHandler', function($delegate, $window, $injector) { return function(exception, cause) { - const SettingsService = $injector.get('SettingsService'); + const SettingsModel = $injector.get('SettingsModel'); - if (SettingsService.data.errorReporting) { + if (SettingsModel.data.errorReporting) { $window.trackJs.track(exception); } @@ -84,9 +84,9 @@ analytics.config(function($provide) { $delegate.debug = function(message) { message = new Date() + ' ' + message; - const SettingsService = $injector.get('SettingsService'); + const SettingsModel = $injector.get('SettingsModel'); - if (SettingsService.data.errorReporting) { + if (SettingsModel.data.errorReporting) { $window.trackJs.console.debug(message); } @@ -97,7 +97,7 @@ analytics.config(function($provide) { }); }); -analytics.service('AnalyticsService', function($log, $mixpanel, SettingsService) { +analytics.service('AnalyticsService', function($log, $mixpanel, SettingsModel) { let self = this; /** @@ -135,7 +135,7 @@ analytics.service('AnalyticsService', function($log, $mixpanel, SettingsService) */ this.logEvent = function(message, data) { - if (SettingsService.data.errorReporting) { + if (SettingsModel.data.errorReporting) { // Clone data before passing it to `mixpanel.track` // since this function mutates the object adding diff --git a/lib/browser/modules/image-writer.js b/lib/browser/modules/image-writer.js index cc5de002..9ad1d963 100644 --- a/lib/browser/modules/image-writer.js +++ b/lib/browser/modules/image-writer.js @@ -29,14 +29,14 @@ if (window.mocha) { var writer = electron.remote.require('./src/writer'); } -require('../pages/settings/settings'); +require('../models/settings'); require('./notifier'); const imageWriter = angular.module('Etcher.image-writer', [ - 'Etcher.Pages.Settings', + 'Etcher.Models.Settings', 'Etcher.notifier' ]); -imageWriter.service('ImageWriterService', function($q, $timeout, SettingsService, NotifierService) { +imageWriter.service('ImageWriterService', function($q, $timeout, SettingsModel, NotifierService) { let self = this; let burning = false; @@ -118,7 +118,7 @@ imageWriter.service('ImageWriterService', function($q, $timeout, SettingsService * }); */ this.performWrite = function(image, drive, onProgress) { - return $q.when(writer.writeImage(image, drive, SettingsService.data, onProgress)); + return $q.when(writer.writeImage(image, drive, SettingsModel.data, onProgress)); }; /** diff --git a/lib/browser/pages/finish/controllers/finish.js b/lib/browser/pages/finish/controllers/finish.js index 90e5cdad..1cdff2b9 100644 --- a/lib/browser/pages/finish/controllers/finish.js +++ b/lib/browser/pages/finish/controllers/finish.js @@ -16,14 +16,14 @@ 'use strict'; -module.exports = function($state, SelectionStateService, ImageWriterService, AnalyticsService, SettingsService) { +module.exports = function($state, SelectionStateService, ImageWriterService, AnalyticsService, SettingsModel) { /** * @summary Settings data * @type Object * @public */ - this.settings = SettingsService.data; + this.settings = SettingsModel.data; /** * @summary Restart the burning process diff --git a/lib/browser/pages/finish/finish.js b/lib/browser/pages/finish/finish.js index 44b9952f..b37fde31 100644 --- a/lib/browser/pages/finish/finish.js +++ b/lib/browser/pages/finish/finish.js @@ -31,14 +31,14 @@ require('angular-ui-router'); require('../../modules/selection-state'); require('../../modules/image-writer'); require('../../modules/analytics'); -require('../settings/settings'); +require('../../models/settings'); const FinishPage = angular.module('Etcher.Pages.Finish', [ 'ui.router', 'Etcher.selection-state', 'Etcher.image-writer', 'Etcher.analytics', - 'Etcher.Pages.Settings' + 'Etcher.Models.Settings' ]); FinishPage.controller('FinishController', require('./controllers/finish')); diff --git a/lib/browser/pages/settings/controllers/settings.js b/lib/browser/pages/settings/controllers/settings.js index 6b423f3e..2a66af75 100644 --- a/lib/browser/pages/settings/controllers/settings.js +++ b/lib/browser/pages/settings/controllers/settings.js @@ -16,13 +16,13 @@ 'use strict'; -module.exports = function(SettingsService) { +module.exports = function(SettingsModel) { /** * @summary Settings data * @type Object * @public */ - this.storage = SettingsService.data; + this.storage = SettingsModel.data; }; diff --git a/lib/browser/pages/settings/settings.js b/lib/browser/pages/settings/settings.js index d8ca411e..2ad66a9a 100644 --- a/lib/browser/pages/settings/settings.js +++ b/lib/browser/pages/settings/settings.js @@ -22,15 +22,14 @@ const angular = require('angular'); require('angular-ui-router'); -require('ngstorage'); +require('../../models/settings'); const SettingsPage = angular.module('Etcher.Pages.Settings', [ 'ui.router', - 'ngStorage' + 'Etcher.Models.Settings' ]); SettingsPage.controller('SettingsController', require('./controllers/settings')); -SettingsPage.service('SettingsService', require('./services/settings')); SettingsPage.config(function($stateProvider) { $stateProvider