1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-13 14:53:33 +00:00

[PM-2311] Allow empty passphrase separator (#5473)

* Change passphrase generator's default wordSeparator to the empty string ''
* Create DefaultPassphraseGenerationOptions
* Use DefaultPassphraseGenerationOptions.wordSeparator in passphrase generation
* Add `empty` separator option to passphrase generator CLI and an example
* Change DefaultPassphraseGenerationOptions numWords to 3
* Use `DefaultPassphraseGenerationOptions.numWords` in CLI passphrase gen
This commit is contained in:
Joseph Yu
2024-02-09 08:07:53 -08:00
committed by GitHub
parent 783ae104a3
commit bb031f6779
7 changed files with 42 additions and 9 deletions

View File

@@ -1,4 +1,5 @@
import { StateService } from "@bitwarden/common/platform/abstractions/state.service";
import { DefaultPassphraseGenerationOptions } from "@bitwarden/common/tools/generator/passphrase";
import { PasswordGenerationServiceAbstraction } from "@bitwarden/common/tools/generator/password";
import { PasswordGeneratorOptions } from "@bitwarden/common/tools/generator/password/password-generator-options";
@@ -65,8 +66,14 @@ class Options {
this.ambiguous = CliUtils.convertBooleanOption(passedOptions?.ambiguous);
this.length = CliUtils.convertNumberOption(passedOptions?.length, 14);
this.type = passedOptions?.passphrase ? "passphrase" : "password";
this.separator = CliUtils.convertStringOption(passedOptions?.separator, "-");
this.words = CliUtils.convertNumberOption(passedOptions?.words, 3);
this.separator = CliUtils.convertStringOption(
passedOptions?.separator,
DefaultPassphraseGenerationOptions.wordSeparator,
);
this.words = CliUtils.convertNumberOption(
passedOptions?.words,
DefaultPassphraseGenerationOptions.numWords,
);
this.minNumber = CliUtils.convertNumberOption(passedOptions?.minNumber, 1);
this.minSpecial = CliUtils.convertNumberOption(passedOptions?.minSpecial, 1);
@@ -83,6 +90,8 @@ class Options {
}
if (this.separator === "space") {
this.separator = " ";
} else if (this.separator === "empty") {
this.separator = "";
} else if (this.separator != null && this.separator.length > 1) {
this.separator = this.separator[0];
}