mirror of
https://github.com/bitwarden/browser.git
synced 2024-11-30 13:03:53 +01:00
updates to status command and add hidePasswords (#146)
* a few updates to the recent status addition * add hidePasswords functionality
This commit is contained in:
parent
62c7c30cb4
commit
72c56ca506
2
jslib
2
jslib
@ -1 +1 @@
|
|||||||
Subproject commit 212a2e3745e6e0e2b3057ed308c47daf6aeefbc8
|
Subproject commit 28d21ca5dfacd1487cd92345d8be9554079fbd96
|
@ -149,7 +149,7 @@ export class CreateCommand {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const groups = req.groups == null ? null :
|
const groups = req.groups == null ? null :
|
||||||
req.groups.map((g) => new SelectionReadOnlyRequest(g.id, g.readOnly));
|
req.groups.map((g) => new SelectionReadOnlyRequest(g.id, g.readOnly, g.hidePasswords));
|
||||||
const request = new CollectionRequest();
|
const request = new CollectionRequest();
|
||||||
request.name = (await this.cryptoService.encrypt(req.name, orgKey)).encryptedString;
|
request.name = (await this.cryptoService.encrypt(req.name, orgKey)).encryptedString;
|
||||||
request.externalId = req.externalId;
|
request.externalId = req.externalId;
|
||||||
|
@ -147,7 +147,7 @@ export class EditCommand {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const groups = req.groups == null ? null :
|
const groups = req.groups == null ? null :
|
||||||
req.groups.map((g) => new SelectionReadOnlyRequest(g.id, g.readOnly));
|
req.groups.map((g) => new SelectionReadOnlyRequest(g.id, g.readOnly, g.hidePasswords));
|
||||||
const request = new CollectionRequest();
|
const request = new CollectionRequest();
|
||||||
request.name = (await this.cryptoService.encrypt(req.name, orgKey)).encryptedString;
|
request.name = (await this.cryptoService.encrypt(req.name, orgKey)).encryptedString;
|
||||||
request.externalId = req.externalId;
|
request.externalId = req.externalId;
|
||||||
|
@ -367,7 +367,7 @@ export class GetCommand {
|
|||||||
decCollection.name = await this.cryptoService.decryptToUtf8(
|
decCollection.name = await this.cryptoService.decryptToUtf8(
|
||||||
new CipherString(response.name), orgKey);
|
new CipherString(response.name), orgKey);
|
||||||
const groups = response.groups == null ? null :
|
const groups = response.groups == null ? null :
|
||||||
response.groups.map((g) => new SelectionReadOnly(g.id, g.readOnly));
|
response.groups.map((g) => new SelectionReadOnly(g.id, g.readOnly, g.hidePasswords));
|
||||||
const res = new OrganizationCollectionResponse(decCollection, groups);
|
const res = new OrganizationCollectionResponse(decCollection, groups);
|
||||||
return Response.success(res);
|
return Response.success(res);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
|
@ -1,15 +1,17 @@
|
|||||||
import * as program from 'commander';
|
import * as program from 'commander';
|
||||||
|
|
||||||
import { EnvironmentService, SyncService, UserService, VaultTimeoutService } from 'jslib/abstractions';
|
import { EnvironmentService } from 'jslib/abstractions/environment.service';
|
||||||
|
import { SyncService } from 'jslib/abstractions/sync.service';
|
||||||
|
import { UserService } from 'jslib/abstractions/user.service';
|
||||||
|
import { VaultTimeoutService } from 'jslib/abstractions/vaultTimeout.service';
|
||||||
|
|
||||||
import { Response } from 'jslib/cli/models/response';
|
import { Response } from 'jslib/cli/models/response';
|
||||||
|
|
||||||
import { TemplateResponse } from '../models/response/templateResponse';
|
import { TemplateResponse } from '../models/response/templateResponse';
|
||||||
|
|
||||||
export class StatusCommand {
|
export class StatusCommand {
|
||||||
constructor(
|
constructor(private envService: EnvironmentService, private syncService: SyncService,
|
||||||
private envService: EnvironmentService,
|
private userService: UserService, private vaultTimeoutService: VaultTimeoutService) {
|
||||||
private syncService: SyncService,
|
|
||||||
private userService: UserService,
|
|
||||||
private vaultTimeoutService: VaultTimeoutService) {
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async run(cmd: program.Command): Promise<Response> {
|
async run(cmd: program.Command): Promise<Response> {
|
||||||
@ -41,16 +43,12 @@ export class StatusCommand {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private async status(): Promise<string> {
|
private async status(): Promise<string> {
|
||||||
const isAuthed = await this.userService.isAuthenticated();
|
const authed = await this.userService.isAuthenticated();
|
||||||
if (!isAuthed) {
|
if (!authed) {
|
||||||
return 'unauthenticated';
|
return 'unauthenticated';
|
||||||
}
|
}
|
||||||
|
|
||||||
const isLocked = await this.vaultTimeoutService.isLocked();
|
const isLocked = await this.vaultTimeoutService.isLocked();
|
||||||
if (isLocked) {
|
return isLocked ? 'locked' : 'unlocked';
|
||||||
return 'locked';
|
|
||||||
} else {
|
|
||||||
return 'unlocked';
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,13 +1,15 @@
|
|||||||
export class SelectionReadOnly {
|
export class SelectionReadOnly {
|
||||||
static template(): SelectionReadOnly {
|
static template(): SelectionReadOnly {
|
||||||
return new SelectionReadOnly('00000000-0000-0000-0000-000000000000', false);
|
return new SelectionReadOnly('00000000-0000-0000-0000-000000000000', false, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
id: string;
|
id: string;
|
||||||
readOnly: boolean;
|
readOnly: boolean;
|
||||||
|
hidePasswords: boolean;
|
||||||
|
|
||||||
constructor(id: string, readOnly: boolean) {
|
constructor(id: string, readOnly: boolean, hidePasswords: boolean) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.readOnly = readOnly;
|
this.readOnly = readOnly;
|
||||||
|
this.hidePasswords = hidePasswords || false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -699,10 +699,12 @@ export class Program extends BaseProgram {
|
|||||||
writeLn(' "status": "locked"');
|
writeLn(' "status": "locked"');
|
||||||
writeLn(' }');
|
writeLn(' }');
|
||||||
writeLn('');
|
writeLn('');
|
||||||
writeLn(' The "status" is one of "unauthenticated", "locked", "unlocked":');
|
writeLn(' Notes:');
|
||||||
writeLn(' - "unauthenticated" when you are not logged in');
|
writeLn('');
|
||||||
writeLn(' - "locked" when you are logged in and the vault is locked');
|
writeLn(' `status` is one of:');
|
||||||
writeLn(' - "unlocked" when you are logged in and the vault is unlocked');
|
writeLn(' - `unauthenticated` when you are not logged in');
|
||||||
|
writeLn(' - `locked` when you are logged in and the vault is locked');
|
||||||
|
writeLn(' - `unlocked` when you are logged in and the vault is unlocked');
|
||||||
writeLn('', true);
|
writeLn('', true);
|
||||||
})
|
})
|
||||||
.action(async (cmd: program.Command) => {
|
.action(async (cmd: program.Command) => {
|
||||||
|
Loading…
Reference in New Issue
Block a user