1
0
mirror of https://github.com/bitwarden/cli synced 2025-12-11 13:53:25 +00:00

Fix/bitwarden serve (#454)

* Handle null passedOptions

* Require authentication to use `bs serve`
This commit is contained in:
Matt Gibson
2022-01-26 11:28:56 -05:00
committed by GitHub
parent 21e8db9636
commit 1b409653a2
13 changed files with 39 additions and 38 deletions

View File

@@ -60,6 +60,6 @@ class Options {
organizationId: string; organizationId: string;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.organizationId = passedOptions.organizationid || passedOptions.organizationId; this.organizationId = passedOptions?.organizationid || passedOptions?.organizationId;
} }
} }

View File

@@ -205,8 +205,8 @@ class Options {
file: string; file: string;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.organizationId = passedOptions.organizationid || passedOptions.organizationId; this.organizationId = passedOptions?.organizationid || passedOptions?.organizationId;
this.itemId = passedOptions.itemid || passedOptions.itemId; this.itemId = passedOptions?.itemid || passedOptions?.itemId;
this.file = passedOptions.file; this.file = passedOptions?.file;
} }
} }

View File

@@ -127,8 +127,8 @@ class Options {
permanent: boolean; permanent: boolean;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.organizationId = passedOptions.organizationid || passedOptions.organizationId; this.organizationId = passedOptions?.organizationid || passedOptions?.organizationId;
this.itemId = passedOptions.itemid || passedOptions.itemId; this.itemId = passedOptions?.itemid || passedOptions?.itemId;
this.permanent = CliUtils.convertBooleanOption(passedOptions.permanent); this.permanent = CliUtils.convertBooleanOption(passedOptions?.permanent);
} }
} }

View File

@@ -189,6 +189,6 @@ class Options {
organizationId: string; organizationId: string;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.organizationId = passedOptions.organizationid || passedOptions.organizationId; this.organizationId = passedOptions?.organizationid || passedOptions?.organizationId;
} }
} }

View File

@@ -43,16 +43,16 @@ class Options {
includeNumber: boolean; includeNumber: boolean;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.uppercase = CliUtils.convertBooleanOption(passedOptions.uppercase); this.uppercase = CliUtils.convertBooleanOption(passedOptions?.uppercase);
this.lowercase = CliUtils.convertBooleanOption(passedOptions.lowercase); this.lowercase = CliUtils.convertBooleanOption(passedOptions?.lowercase);
this.number = CliUtils.convertBooleanOption(passedOptions.number); this.number = CliUtils.convertBooleanOption(passedOptions?.number);
this.special = CliUtils.convertBooleanOption(passedOptions.special); this.special = CliUtils.convertBooleanOption(passedOptions?.special);
this.capitalize = CliUtils.convertBooleanOption(passedOptions.capitalize); this.capitalize = CliUtils.convertBooleanOption(passedOptions?.capitalize);
this.includeNumber = CliUtils.convertBooleanOption(passedOptions.includeNumber); this.includeNumber = CliUtils.convertBooleanOption(passedOptions?.includeNumber);
this.length = passedOptions.length != null ? parseInt(passedOptions.length, null) : 14; this.length = passedOptions?.length != null ? parseInt(passedOptions?.length, null) : 14;
this.type = passedOptions.passphrase ? "passphrase" : "password"; this.type = passedOptions?.passphrase ? "passphrase" : "password";
this.separator = passedOptions.separator == null ? "-" : passedOptions.separator + ""; this.separator = passedOptions?.separator == null ? "-" : passedOptions.separator + "";
this.words = passedOptions.words != null ? parseInt(passedOptions.words, null) : 3; this.words = passedOptions?.words != null ? parseInt(passedOptions.words, null) : 3;
if (!this.uppercase && !this.lowercase && !this.special && !this.number) { if (!this.uppercase && !this.lowercase && !this.special && !this.number) {
this.lowercase = true; this.lowercase = true;

View File

@@ -542,8 +542,8 @@ class Options {
output: string; output: string;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.organizationId = passedOptions.organizationid || passedOptions.organizationId; this.organizationId = passedOptions?.organizationid || passedOptions?.organizationId;
this.itemId = passedOptions.itemid || passedOptions.itemId; this.itemId = passedOptions?.itemid || passedOptions?.itemId;
this.output = passedOptions.output; this.output = passedOptions?.output;
} }
} }

View File

@@ -249,11 +249,11 @@ class Options {
trash: boolean; trash: boolean;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.organizationId = passedOptions.organizationid || passedOptions.organizationId; this.organizationId = passedOptions?.organizationid || passedOptions?.organizationId;
this.collectionId = passedOptions.collectionid || passedOptions.collectionId; this.collectionId = passedOptions?.collectionid || passedOptions?.collectionId;
this.folderId = passedOptions.folderid || passedOptions.folderId; this.folderId = passedOptions?.folderid || passedOptions?.folderId;
this.search = passedOptions.search; this.search = passedOptions?.search;
this.url = passedOptions.url; this.url = passedOptions?.url;
this.trash = CliUtils.convertBooleanOption(passedOptions.trash); this.trash = CliUtils.convertBooleanOption(passedOptions?.trash);
} }
} }

View File

@@ -141,11 +141,11 @@ class Options {
hidden: boolean; hidden: boolean;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.file = passedOptions.file; this.file = passedOptions?.file;
this.text = passedOptions.text; this.text = passedOptions?.text;
this.password = passedOptions.password; this.password = passedOptions?.password;
this.hidden = CliUtils.convertBooleanOption(passedOptions.hidden); this.hidden = CliUtils.convertBooleanOption(passedOptions?.hidden);
this.maxAccessCount = this.maxAccessCount =
passedOptions.maxAccessCount != null ? parseInt(passedOptions.maxAccessCount, null) : null; passedOptions?.maxAccessCount != null ? parseInt(passedOptions.maxAccessCount, null) : null;
} }
} }

View File

@@ -84,6 +84,6 @@ class Options {
itemId: string; itemId: string;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.itemId = passedOptions.itemId || passedOptions.itemid; this.itemId = passedOptions?.itemId || passedOptions?.itemid;
} }
} }

View File

@@ -32,6 +32,6 @@ class Options {
search: string; search: string;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.search = passedOptions.search; this.search = passedOptions?.search;
} }
} }

View File

@@ -36,7 +36,7 @@ class Options {
force: boolean; force: boolean;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.last = CliUtils.convertBooleanOption(passedOptions.last); this.last = CliUtils.convertBooleanOption(passedOptions?.last);
this.force = CliUtils.convertBooleanOption(passedOptions.force); this.force = CliUtils.convertBooleanOption(passedOptions?.force);
} }
} }

View File

@@ -152,7 +152,7 @@ class Options {
passwordFile: string; passwordFile: string;
constructor(passedOptions: Record<string, any>) { constructor(passedOptions: Record<string, any>) {
this.passwordEnv = passedOptions.passwordenv || passedOptions.passwordEnv; this.passwordEnv = passedOptions?.passwordenv || passedOptions?.passwordEnv;
this.passwordFile = passedOptions.passwordfile || passedOptions.passwordFile; this.passwordFile = passedOptions?.passwordfile || passedOptions?.passwordFile;
} }
} }

View File

@@ -480,6 +480,7 @@ export class Program extends BaseProgram {
writeLn("", true); writeLn("", true);
}) })
.action(async (cmd) => { .action(async (cmd) => {
await this.exitIfNotAuthed();
const command = new ServeCommand(this.main); const command = new ServeCommand(this.main);
await command.run(cmd); await command.run(cmd);
}); });