Add an error utility for messages and status codes
This commit is contained in:
@@ -43,6 +43,7 @@
|
|||||||
"@github/actions-languageservice": "^0.1.167",
|
"@github/actions-languageservice": "^0.1.167",
|
||||||
"@github/actions-workflow-parser": "^0.1.167",
|
"@github/actions-workflow-parser": "^0.1.167",
|
||||||
"@octokit/rest": "^19.0.7",
|
"@octokit/rest": "^19.0.7",
|
||||||
|
"@octokit/types": "^9.0.0",
|
||||||
"vscode-languageserver": "^8.0.2",
|
"vscode-languageserver": "^8.0.2",
|
||||||
"vscode-languageserver-textdocument": "^1.0.7",
|
"vscode-languageserver-textdocument": "^1.0.7",
|
||||||
"yaml": "^2.1.3"
|
"yaml": "^2.1.3"
|
||||||
|
|||||||
@@ -0,0 +1,27 @@
|
|||||||
|
import {RequestError} from "@octokit/types";
|
||||||
|
|
||||||
|
export function errorMessage(error: unknown): string {
|
||||||
|
if (error instanceof Error) {
|
||||||
|
return error.message;
|
||||||
|
}
|
||||||
|
if (typeof error === "string") {
|
||||||
|
return error;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ("name" in (error as RequestError)) {
|
||||||
|
return (error as RequestError).name;
|
||||||
|
}
|
||||||
|
|
||||||
|
const status = errorStatus(error);
|
||||||
|
if (status) {
|
||||||
|
return `HTTP ${status}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
return "Unknown error";
|
||||||
|
}
|
||||||
|
|
||||||
|
export function errorStatus(error: unknown): number | undefined {
|
||||||
|
if ("status" in (error as RequestError)) {
|
||||||
|
return (error as RequestError).status;
|
||||||
|
}
|
||||||
|
}
|
||||||
Generated
+30
@@ -157,6 +157,7 @@
|
|||||||
"@github/actions-languageservice": "^0.1.167",
|
"@github/actions-languageservice": "^0.1.167",
|
||||||
"@github/actions-workflow-parser": "^0.1.167",
|
"@github/actions-workflow-parser": "^0.1.167",
|
||||||
"@octokit/rest": "^19.0.7",
|
"@octokit/rest": "^19.0.7",
|
||||||
|
"@octokit/types": "^9.0.0",
|
||||||
"vscode-languageserver": "^8.0.2",
|
"vscode-languageserver": "^8.0.2",
|
||||||
"vscode-languageserver-textdocument": "^1.0.7",
|
"vscode-languageserver-textdocument": "^1.0.7",
|
||||||
"yaml": "^2.1.3"
|
"yaml": "^2.1.3"
|
||||||
@@ -174,6 +175,19 @@
|
|||||||
"node": ">= 16.15"
|
"node": ">= 16.15"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"languageserver/node_modules/@octokit/openapi-types": {
|
||||||
|
"version": "16.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz",
|
||||||
|
"integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA=="
|
||||||
|
},
|
||||||
|
"languageserver/node_modules/@octokit/types": {
|
||||||
|
"version": "9.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz",
|
||||||
|
"integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==",
|
||||||
|
"dependencies": {
|
||||||
|
"@octokit/openapi-types": "^16.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"languageservice": {
|
"languageservice": {
|
||||||
"name": "@github/actions-languageservice",
|
"name": "@github/actions-languageservice",
|
||||||
"version": "0.1.167",
|
"version": "0.1.167",
|
||||||
@@ -14830,6 +14844,7 @@
|
|||||||
"@github/actions-languageservice": "^0.1.167",
|
"@github/actions-languageservice": "^0.1.167",
|
||||||
"@github/actions-workflow-parser": "^0.1.167",
|
"@github/actions-workflow-parser": "^0.1.167",
|
||||||
"@octokit/rest": "^19.0.7",
|
"@octokit/rest": "^19.0.7",
|
||||||
|
"@octokit/types": "*",
|
||||||
"@types/jest": "^29.0.3",
|
"@types/jest": "^29.0.3",
|
||||||
"fetch-mock": "^9.11.0",
|
"fetch-mock": "^9.11.0",
|
||||||
"jest": "^29.0.3",
|
"jest": "^29.0.3",
|
||||||
@@ -14840,6 +14855,21 @@
|
|||||||
"vscode-languageserver": "^8.0.2",
|
"vscode-languageserver": "^8.0.2",
|
||||||
"vscode-languageserver-textdocument": "^1.0.7",
|
"vscode-languageserver-textdocument": "^1.0.7",
|
||||||
"yaml": "^2.1.3"
|
"yaml": "^2.1.3"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@octokit/openapi-types": {
|
||||||
|
"version": "16.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz",
|
||||||
|
"integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA=="
|
||||||
|
},
|
||||||
|
"@octokit/types": {
|
||||||
|
"version": "9.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz",
|
||||||
|
"integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==",
|
||||||
|
"requires": {
|
||||||
|
"@octokit/openapi-types": "^16.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@github/actions-languageservice": {
|
"@github/actions-languageservice": {
|
||||||
|
|||||||
Reference in New Issue
Block a user