Better syntax error message when saving script

This commit is contained in:
Zaid Abdulla committed 2021-01-24 14:17:31 -08:00
1 parent 7594883404
commit 6cca59c666
3 files changed
+36 -8

No files matched your search

+22 -6
View File
@@ -226,9 +226,17 @@ export function putProvision(
): Promise<void> {
if (!object.script) object.script = "";
try {
new Script(`"use strict";(function(){\n${object.script}\n})();`);
} catch (error) {
return Promise.reject(error);
new Script(`"use strict";(function(){\n${object.script}\n})();`, {
filename: id,
lineOffset: -1,
});
} catch (err) {
if (err.stack && err.stack.startsWith(`${id}:`)) {
return Promise.reject(
new Error(`${err.name} at ${err.stack.split("\n", 1)[0]}`)
);
}
return Promise.reject(err);
}
return putResource("provisions", id, object);
}
@@ -243,9 +251,17 @@ export function putVirtualParameter(
): Promise<void> {
if (!object.script) object.script = "";
try {
new Script(`"use strict";(function(){\n${object.script}\n})();`);
} catch (error) {
return Promise.reject(error);
new Script(`"use strict";(function(){\n${object.script}\n})();`, {
filename: id,
lineOffset: -1,
});
} catch (err) {
if (err.stack && err.stack.startsWith(`${id}:`)) {
return Promise.reject(
new Error(`${err.name} at ${err.stack.split("\n", 1)[0]}`)
);
}
return Promise.reject(err);
}
return putResource("virtualParameters", id, object);
}
+7 -1
View File
@@ -85,7 +85,13 @@ function putActionHandler(action, _object, isNew): Promise<ValidationErrors> {
store.fulfill(0, Date.now());
resolve();
})
.catch(reject);
.catch((err) => {
if (err["code"] === 400 && err["response"]) {
reject(new Error(err["response"]));
return;
}
reject(err);
});
})
.catch(reject);
} else if (action === "delete") {
+7 -1
View File
@@ -85,7 +85,13 @@ function putActionHandler(action, _object, isNew): Promise<ValidationErrors> {
store.fulfill(0, Date.now());
resolve();
})
.catch(reject);
.catch((err) => {
if (err["code"] === 400 && err["response"]) {
reject(new Error(err["response"]));
return;
}
reject(err);
});
})
.catch(reject);
} else if (action === "delete") {