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