mirror of
https://github.com/bitwarden/cli
synced 2025-12-16 08:13:21 +00:00
Add bw get notes <id> command (#255)
Rationale: the notes object is a freeform plain-text field that's prominently displayed in Web Vault. It is also useful for the CLI users as discussed before in issues #81 and #196. I have some use cases planned myself. I was rather surprised this wasn't supported already, but the implementation is simple and cannot really break any existing functionality so here it is.
This commit is contained in:
committed by
GitHub
parent
b4fc4ca3a5
commit
80f34d5de5
@@ -82,6 +82,8 @@ export class GetCommand extends DownloadCommand {
|
|||||||
return await this.getUri(id);
|
return await this.getUri(id);
|
||||||
case 'totp':
|
case 'totp':
|
||||||
return await this.getTotp(id);
|
return await this.getTotp(id);
|
||||||
|
case 'notes':
|
||||||
|
return await this.getNotes(id);
|
||||||
case 'exposed':
|
case 'exposed':
|
||||||
return await this.getExposed(id);
|
return await this.getExposed(id);
|
||||||
case 'attachment':
|
case 'attachment':
|
||||||
@@ -239,6 +241,22 @@ export class GetCommand extends DownloadCommand {
|
|||||||
return Response.success(res);
|
return Response.success(res);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async getNotes(id: string) {
|
||||||
|
const cipherResponse = await this.getCipher(id,
|
||||||
|
c => !Utils.isNullOrWhitespace(c.notes));
|
||||||
|
if (!cipherResponse.success) {
|
||||||
|
return cipherResponse;
|
||||||
|
}
|
||||||
|
|
||||||
|
const cipher = cipherResponse.data as CipherResponse;
|
||||||
|
if (Utils.isNullOrWhitespace(cipher.notes)) {
|
||||||
|
return Response.error('No notes available for this item.');
|
||||||
|
}
|
||||||
|
|
||||||
|
const res = new StringResponse(cipher.notes);
|
||||||
|
return Response.success(res);
|
||||||
|
}
|
||||||
|
|
||||||
private async getExposed(id: string) {
|
private async getExposed(id: string) {
|
||||||
const passwordResponse = await this.getPassword(id);
|
const passwordResponse = await this.getPassword(id);
|
||||||
if (!passwordResponse.success) {
|
if (!passwordResponse.success) {
|
||||||
|
|||||||
@@ -87,6 +87,7 @@ export class VaultProgram extends Program {
|
|||||||
writeLn(' password');
|
writeLn(' password');
|
||||||
writeLn(' uri');
|
writeLn(' uri');
|
||||||
writeLn(' totp');
|
writeLn(' totp');
|
||||||
|
writeLn(' notes');
|
||||||
writeLn(' exposed');
|
writeLn(' exposed');
|
||||||
writeLn(' attachment');
|
writeLn(' attachment');
|
||||||
writeLn(' folder');
|
writeLn(' folder');
|
||||||
@@ -109,6 +110,7 @@ export class VaultProgram extends Program {
|
|||||||
writeLn(' bw get item 99ee88d2-6046-4ea7-92c2-acac464b1412');
|
writeLn(' bw get item 99ee88d2-6046-4ea7-92c2-acac464b1412');
|
||||||
writeLn(' bw get password https://google.com');
|
writeLn(' bw get password https://google.com');
|
||||||
writeLn(' bw get totp google.com');
|
writeLn(' bw get totp google.com');
|
||||||
|
writeLn(' bw get notes google.com');
|
||||||
writeLn(' bw get exposed yahoo.com');
|
writeLn(' bw get exposed yahoo.com');
|
||||||
writeLn(' bw get attachment b857igwl1dzrs2 --itemid 99ee88d2-6046-4ea7-92c2-acac464b1412 ' +
|
writeLn(' bw get attachment b857igwl1dzrs2 --itemid 99ee88d2-6046-4ea7-92c2-acac464b1412 ' +
|
||||||
'--output ./photo.jpg');
|
'--output ./photo.jpg');
|
||||||
|
|||||||
Reference in New Issue
Block a user