mirror of
https://github.com/bitwarden/browser.git
synced 2024-10-08 05:47:50 +02:00
cf48db5ed1
* add constraint support to UserStateSubject * add dynamic constraints * implement password policy constraints * replace policy evaluator with constraints in credential generation service * add cascade between minNumber and minSpecial Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
88 lines
3.2 KiB
HTML
88 lines
3.2 KiB
HTML
<bit-section>
|
|
<bit-section-header *ngIf="showHeader">
|
|
<h6 bitTypography="h6">{{ "options" | i18n }}</h6>
|
|
</bit-section-header>
|
|
<form class="box" [formGroup]="settings" class="tw-container">
|
|
<div class="tw-mb-4">
|
|
<bit-card>
|
|
<bit-form-field disableMargin>
|
|
<bit-label>{{ "length" | i18n }}</bit-label>
|
|
<input
|
|
bitInput
|
|
formControlName="length"
|
|
type="number"
|
|
[min]="minLength"
|
|
[max]="maxLength"
|
|
/>
|
|
</bit-form-field>
|
|
</bit-card>
|
|
</div>
|
|
<div>
|
|
<bit-card>
|
|
<div class="tw-mb-4">{{ "include" | i18n }}</div>
|
|
<div class="tw-flex tw-justify-between">
|
|
<bit-form-control
|
|
class="tw-w-1/5"
|
|
attr.aria-description="{{ 'uppercaseDescription' | i18n }}"
|
|
title="{{ 'uppercaseDescription' | i18n }}"
|
|
>
|
|
<input bitCheckbox type="checkbox" formControlName="uppercase" />
|
|
<bit-label>{{ "uppercaseLabel" | i18n }}</bit-label>
|
|
</bit-form-control>
|
|
<bit-form-control
|
|
class="tw-w-1/5"
|
|
attr.aria-description="{{ 'lowercaseDescription' | i18n }}"
|
|
title="{{ 'lowercaseDescription' | i18n }}"
|
|
>
|
|
<input bitCheckbox type="checkbox" formControlName="lowercase" />
|
|
<bit-label>{{ "lowercaseLabel" | i18n }}</bit-label>
|
|
</bit-form-control>
|
|
<bit-form-control
|
|
class="tw-w-1/5"
|
|
attr.aria-description="{{ 'numbersDescription' | i18n }}"
|
|
title="{{ 'numbersDescription' | i18n }}"
|
|
>
|
|
<input bitCheckbox type="checkbox" formControlName="number" />
|
|
<bit-label>{{ "numbersLabel" | i18n }}</bit-label>
|
|
</bit-form-control>
|
|
<bit-form-control
|
|
class="tw-w-2/5"
|
|
attr.aria-description="{{ 'specialCharactersDescription' | i18n }}"
|
|
title="{{ 'specialCharactersDescription' | i18n }}"
|
|
>
|
|
<input bitCheckbox type="checkbox" formControlName="special" />
|
|
<bit-label>{{ "specialCharactersLabel" | i18n }}</bit-label>
|
|
</bit-form-control>
|
|
</div>
|
|
<div class="tw-flex">
|
|
<bit-form-field class="tw-basis-1/2 tw-mr-4">
|
|
<bit-label>{{ "minNumbers" | i18n }}</bit-label>
|
|
<input
|
|
bitInput
|
|
type="number"
|
|
[min]="minMinNumber"
|
|
[max]="maxMinNumber"
|
|
formControlName="minNumber"
|
|
/>
|
|
</bit-form-field>
|
|
<bit-form-field class="tw-basis-1/2">
|
|
<bit-label>{{ "minSpecial" | i18n }}</bit-label>
|
|
<input
|
|
bitInput
|
|
type="number"
|
|
[min]="minMinSpecial"
|
|
[max]="maxMinSpecial"
|
|
formControlName="minSpecial"
|
|
/>
|
|
</bit-form-field>
|
|
</div>
|
|
<bit-form-control [disableMargin]="!policyInEffect">
|
|
<input bitCheckbox type="checkbox" formControlName="avoidAmbiguous" />
|
|
<bit-label>{{ "avoidAmbiguous" | i18n }}</bit-label>
|
|
</bit-form-control>
|
|
<p *ngIf="policyInEffect" bitTypography="helper">{{ "generatorPolicyInEffect" | i18n }}</p>
|
|
</bit-card>
|
|
</div>
|
|
</form>
|
|
</bit-section>
|