Merge pull request #232 from resin-io/refactor/settings-model

Transform SettingsService into the SettingsModel module
This commit is contained in:
Juan Cruz Viotti 2016-04-01 10:07:59 -04:00
commit d418139def
7 changed files with 32 additions and 23 deletions

View File

@ -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
});
};
});

View File

@ -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

View File

@ -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));
};
/**

View File

@ -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

View File

@ -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'));

View File

@ -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;
};

View File

@ -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