feat: ls pretty-format
This commit is contained in:
parent
80b4028ec7
commit
7ba57c13ef
1 changed files with 34 additions and 23 deletions
49
app.ts
49
app.ts
|
@ -89,7 +89,8 @@ async function main() {
|
|||
console.log("Logout successful! Credentials removed.");
|
||||
})
|
||||
.command("list, ls", "List all OAuth2 applications")
|
||||
.action(async () => {
|
||||
.option("--pretty, -p", "Pretty print the output")
|
||||
.action(async (opt) => {
|
||||
const credentials = await credentialManager.getCredentials();
|
||||
if (!credentials) return;
|
||||
|
||||
|
@ -102,14 +103,29 @@ async function main() {
|
|||
console.log("No OAuth2 applications found.");
|
||||
return;
|
||||
}
|
||||
|
||||
if (opt.pretty) {
|
||||
console.log("OAuth2 applications:");
|
||||
console.log(apps.map(prettyOauth2Application).join("\n\n"));
|
||||
return;
|
||||
}
|
||||
else {
|
||||
const maxNameLength = Math.max(...apps.map(app => app.name.length), 6);
|
||||
console.log(apps.map(app => [
|
||||
app.id.toString().padEnd(5),
|
||||
app.confidential_client ? "c" : "o",
|
||||
app.name.padStart(maxNameLength),
|
||||
app.client_id,
|
||||
app.redirect_uris.join(", "),
|
||||
].join(" ").trim()).join("\n"));
|
||||
}
|
||||
})
|
||||
.command("create", "Create new OAuth2 application")
|
||||
.action(async () => {
|
||||
const credentials = await credentialManager.getCredentials();
|
||||
if (!credentials) return;
|
||||
if (!credentials) {
|
||||
console.error("Credentials not found. Please login first.");
|
||||
return;
|
||||
}
|
||||
|
||||
// Create OAuth2Api with token
|
||||
const oauth2Api = new OAuth2Api(URL_BASE, credentials.token);
|
||||
|
@ -142,33 +158,28 @@ async function main() {
|
|||
await saveSecretKeys(path, app.client_id, app.client_secret);
|
||||
}
|
||||
})
|
||||
.command("delete", "Delete OAuth2 application")
|
||||
.action(async () => {
|
||||
.command("remove, rm", "Remove OAuth2 application")
|
||||
.arguments("<id:number>")
|
||||
.action(async (_opt, appId) => {
|
||||
const credentials = await credentialManager.getCredentials();
|
||||
if (!credentials) return;
|
||||
if (!credentials) {
|
||||
console.error("Credentials not found. Please login first.");
|
||||
return;
|
||||
}
|
||||
|
||||
// Create OAuth2Api with token
|
||||
const oauth2Api = new OAuth2Api(URL_BASE, credentials.token);
|
||||
|
||||
const id = await prompt("Enter the ID of the application to delete: ");
|
||||
if (!id) {
|
||||
console.error("ID is required.");
|
||||
return;
|
||||
}
|
||||
|
||||
const appId = parseInt(id);
|
||||
if (isNaN(appId)) {
|
||||
console.error("ID must be a number.");
|
||||
return;
|
||||
}
|
||||
|
||||
await oauth2Api.deleteOauth2Application(appId);
|
||||
console.log("OAuth2 application deleted successfully!");
|
||||
})
|
||||
.command("update", "Update OAuth2 application")
|
||||
.action(async () => {
|
||||
const credentials = await credentialManager.getCredentials();
|
||||
if (!credentials) return;
|
||||
if (!credentials) {
|
||||
console.error("Credentials not found. Please login first.");
|
||||
return;
|
||||
}
|
||||
|
||||
// Create OAuth2Api with token
|
||||
const oauth2Api = new OAuth2Api(URL_BASE, credentials.token);
|
||||
|
|
Loading…
Add table
Reference in a new issue