Wallet/src/js/services/sendFlowService.js

48 lines
1 KiB
JavaScript
Raw Normal View History

2018-08-08 16:35:49 +02:00
'use strict';
angular.module('copayApp.services').factory('sendFlowService', function ($log) {
var vm = this;
vm.amount = false;
2018-08-08 17:27:15 +02:00
2018-08-08 16:35:49 +02:00
vm.fromWalletId = false;
2018-08-08 17:27:15 +02:00
vm.previousStates = [];
2018-08-08 16:35:49 +02:00
vm.thirdParty = false;
vm.sendMax = false;
vm.toAddress = false;
vm.toWalletId = false;
2018-08-08 17:27:15 +02:00
vm.clear = function() {
2018-08-08 16:35:49 +02:00
$log.debug("Reinitialize Send Flow variables");
vm.amount = false;
vm.fromWalletId = false;
vm.thirdParty = false;
vm.sendMax = false;
vm.toAddress = false;
vm.toWalletId = false;
2018-08-08 17:27:15 +02:00
vm.previousStates = [];
2018-08-08 16:35:49 +02:00
};
2018-08-08 17:10:47 +02:00
vm.map = function(params) {
2018-08-08 17:27:15 +02:00
var tempState = {};
Object.keys(vm).map(function(key, index) {
if (typeof vm[key] !== 'function' && key !== 'previousStates') {
tempState[key] = vm[key];
}
});
vm.previousStates.push(tempState);
2018-08-08 17:10:47 +02:00
Object.keys(params).map(function(key, index) {
vm[key] = params[key];
});
2018-08-08 17:27:15 +02:00
};
vm.previousState = function() {
if (vm.previousStates.length) {
vm.map(vm.previousStates.pop());
}
2018-08-08 17:10:47 +02:00
};
2018-08-08 16:35:49 +02:00
return vm;
});