diff --git a/app/assets/javascripts/app/directives/views/actionsMenu.js b/app/assets/javascripts/app/directives/views/actionsMenu.js index 70899af8b..f79fb1a15 100644 --- a/app/assets/javascripts/app/directives/views/actionsMenu.js +++ b/app/assets/javascripts/app/directives/views/actionsMenu.js @@ -31,11 +31,13 @@ class ActionsMenu { } return; } + action.running = true; - actionsManager.executeAction(action, extension, $scope.item, function(response){ - if(!response) { + actionsManager.executeAction(action, extension, $scope.item, (response, error) => { + if(error) { return; } + action.running = false; $scope.handleActionResponse(action, response); diff --git a/app/assets/javascripts/app/services/actionsManager.js b/app/assets/javascripts/app/services/actionsManager.js index b0fbf16ca..4cddd4987 100644 --- a/app/assets/javascripts/app/services/actionsManager.js +++ b/app/assets/javascripts/app/services/actionsManager.js @@ -54,10 +54,10 @@ class ActionsManager { async executeAction(action, extension, item, callback) { - var customCallback = (response) => { + var customCallback = (response, error) => { action.running = false; this.$timeout(() => { - callback(response); + callback(response, error); }) } @@ -127,11 +127,10 @@ class ActionsManager { action.error = false; handleResponseDecryption(response, await this.authManager.keys(), true); }, (response) => { - if(response && response.error) { - alert("An issue occurred while processing this action. Please try again."); - } + let error = (response && response.error) || {message: "An issue occurred while processing this action. Please try again."} + alert(error.message); action.error = true; - customCallback(null); + customCallback(null, error); }) } break; @@ -142,9 +141,10 @@ class ActionsManager { action.error = false; handleResponseDecryption(response, await this.authManager.keys(), false); }, (response) => { - alert("An issue occurred while processing this action. Please try again."); + let error = (response && response.error) || {message: "An issue occurred while processing this action. Please try again."} + alert(error.message); action.error = true; - customCallback(null); + customCallback(null, error); }) break; diff --git a/package-lock.json b/package-lock.json index 054a3fd0d..c2bf4ef0a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "standard-notes-web", - "version": "3.0.10-beta1", + "version": "3.0.10-beta2", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -5724,9 +5724,9 @@ } }, "snjs": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/snjs/-/snjs-0.2.5.tgz", - "integrity": "sha512-HFjUD9tvVp5VN6ACmKxTlvpvhBTrLj5t8TSR6tPMOHtCU/ozpmuRgD0RFYfOhUYE5bY1woXC/YFR/Nl77oib3Q==", + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/snjs/-/snjs-0.2.6.tgz", + "integrity": "sha512-nBWwzNcOKtCj6Z0f0buD/vswd3agU+sI2KHWQuUn1tuhNoGdzh20DgjcmxEEmW7QiiEkvZHDL/TC8N47tx66SQ==", "dev": true }, "source-map": { diff --git a/package.json b/package.json index 1ef6077ee..d937db359 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "mocha": "^5.2.0", "serve-static": "^1.13.2", "sn-stylekit": "2.0.15", - "snjs": "0.2.5", + "snjs": "0.2.6", "standard-file-js": "0.3.63" } }