mirror of
https://github.com/bitwarden/browser
synced 2025-12-11 22:03:36 +00:00
[PM-17514] Remove old add-edit components (#13984)
* remove old add-edit-custom-fields component - Also removes the individual vault add-edit-component where the custom fields component was used - All of these components were unused * remove unused translations for web
This commit is contained in:
@@ -56,7 +56,6 @@ import { UnsecuredWebsitesReportComponent as OrgUnsecuredWebsitesReportComponent
|
|||||||
import { WeakPasswordsReportComponent as OrgWeakPasswordsReportComponent } from "../tools/reports/pages/organizations/weak-passwords-report.component";
|
import { WeakPasswordsReportComponent as OrgWeakPasswordsReportComponent } from "../tools/reports/pages/organizations/weak-passwords-report.component";
|
||||||
/* eslint no-restricted-imports: "error" */
|
/* eslint no-restricted-imports: "error" */
|
||||||
import { PremiumBadgeComponent } from "../vault/components/premium-badge.component";
|
import { PremiumBadgeComponent } from "../vault/components/premium-badge.component";
|
||||||
import { AddEditCustomFieldsComponent } from "../vault/individual-vault/add-edit-custom-fields.component";
|
|
||||||
import { FolderAddEditComponent } from "../vault/individual-vault/folder-add-edit.component";
|
import { FolderAddEditComponent } from "../vault/individual-vault/folder-add-edit.component";
|
||||||
import { OrganizationBadgeModule } from "../vault/individual-vault/organization-badge/organization-badge.module";
|
import { OrganizationBadgeModule } from "../vault/individual-vault/organization-badge/organization-badge.module";
|
||||||
import { PipesModule } from "../vault/individual-vault/pipes/pipes.module";
|
import { PipesModule } from "../vault/individual-vault/pipes/pipes.module";
|
||||||
@@ -96,8 +95,6 @@ import { SharedModule } from "./shared.module";
|
|||||||
declarations: [
|
declarations: [
|
||||||
AcceptFamilySponsorshipComponent,
|
AcceptFamilySponsorshipComponent,
|
||||||
AccountComponent,
|
AccountComponent,
|
||||||
AddEditCustomFieldsComponent,
|
|
||||||
AddEditCustomFieldsComponent,
|
|
||||||
ApiKeyComponent,
|
ApiKeyComponent,
|
||||||
ChangeEmailComponent,
|
ChangeEmailComponent,
|
||||||
DeauthorizeSessionsComponent,
|
DeauthorizeSessionsComponent,
|
||||||
@@ -144,8 +141,6 @@ import { SharedModule } from "./shared.module";
|
|||||||
UserVerificationModule,
|
UserVerificationModule,
|
||||||
PremiumBadgeComponent,
|
PremiumBadgeComponent,
|
||||||
AccountComponent,
|
AccountComponent,
|
||||||
AddEditCustomFieldsComponent,
|
|
||||||
AddEditCustomFieldsComponent,
|
|
||||||
ApiKeyComponent,
|
ApiKeyComponent,
|
||||||
ChangeEmailComponent,
|
ChangeEmailComponent,
|
||||||
DeauthorizeSessionsComponent,
|
DeauthorizeSessionsComponent,
|
||||||
|
|||||||
@@ -1,177 +0,0 @@
|
|||||||
<ng-container>
|
|
||||||
<h3 class="mt-4">{{ "customFields" | i18n }}</h3>
|
|
||||||
<div cdkDropList (cdkDropListDropped)="drop($event)" *ngIf="cipher.hasFields">
|
|
||||||
<div
|
|
||||||
role="group"
|
|
||||||
class="row"
|
|
||||||
cdkDrag
|
|
||||||
*ngFor="let f of cipher.fields; let i = index; trackBy: trackByFunction"
|
|
||||||
attr.aria-label="{{ f.name }}"
|
|
||||||
>
|
|
||||||
<div class="col-5 form-group">
|
|
||||||
<div class="d-flex">
|
|
||||||
<label for="fieldName{{ i }}">{{ "name" | i18n }}</label>
|
|
||||||
<a
|
|
||||||
class="ml-auto"
|
|
||||||
href="https://bitwarden.com/help/custom-fields/"
|
|
||||||
target="_blank"
|
|
||||||
rel="noreferrer"
|
|
||||||
appA11yTitle="{{ 'learnMore' | i18n }}"
|
|
||||||
>
|
|
||||||
<i class="bwi bwi-question-circle" aria-hidden="true"></i>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<input
|
|
||||||
id="fieldName{{ i }}"
|
|
||||||
type="text"
|
|
||||||
name="Field.Name{{ i }}"
|
|
||||||
[(ngModel)]="f.name"
|
|
||||||
class="form-control"
|
|
||||||
appInputVerbatim
|
|
||||||
[disabled]="cipher.isDeleted || viewOnly"
|
|
||||||
[readonly]="!cipher.edit && editMode"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div class="col-7 form-group">
|
|
||||||
<label for="fieldValue{{ i }}">{{ "value" | i18n }}</label>
|
|
||||||
<div class="d-flex align-items-center">
|
|
||||||
<!-- Text -->
|
|
||||||
<div class="input-group" *ngIf="f.type === fieldType.Text">
|
|
||||||
<input
|
|
||||||
id="fieldValue{{ i }}"
|
|
||||||
class="form-control"
|
|
||||||
type="text"
|
|
||||||
name="Field.Value{{ i }}"
|
|
||||||
[(ngModel)]="f.value"
|
|
||||||
appInputVerbatim
|
|
||||||
[disabled]="cipher.isDeleted || viewOnly"
|
|
||||||
[readonly]="!cipher.edit && editMode"
|
|
||||||
attr.aria-describedby="fieldName{{ i }}"
|
|
||||||
/>
|
|
||||||
<div class="input-group-append">
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-outline-secondary"
|
|
||||||
appA11yTitle="{{ 'copyValue' | i18n }}"
|
|
||||||
(click)="copy(f.value, 'value', 'Field')"
|
|
||||||
>
|
|
||||||
<i class="bwi bwi-lg bwi-clone" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- Hidden -->
|
|
||||||
<div class="input-group" *ngIf="f.type === fieldType.Hidden">
|
|
||||||
<input
|
|
||||||
id="fieldValue{{ i }}"
|
|
||||||
type="{{ f.showValue ? 'text' : 'password' }}"
|
|
||||||
name="Field.Value{{ i }}"
|
|
||||||
[(ngModel)]="f.value"
|
|
||||||
class="form-control text-monospace"
|
|
||||||
appInputVerbatim
|
|
||||||
autocomplete="new-password"
|
|
||||||
[disabled]="cipher.isDeleted || viewOnly || (!cipher.viewPassword && !f.newField)"
|
|
||||||
[readonly]="!cipher.edit && editMode"
|
|
||||||
attr.aria-describedby="fieldName{{ i }}"
|
|
||||||
/>
|
|
||||||
<div class="input-group-append">
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-outline-secondary"
|
|
||||||
appA11yTitle="{{ 'toggleVisibility' | i18n }}"
|
|
||||||
(click)="toggleFieldValue(f)"
|
|
||||||
[disabled]="!cipher.viewPassword && !f.newField"
|
|
||||||
>
|
|
||||||
<i
|
|
||||||
class="bwi bwi-lg"
|
|
||||||
aria-hidden="true"
|
|
||||||
[ngClass]="{ 'bwi-eye': !f.showValue, 'bwi-eye-slash': f.showValue }"
|
|
||||||
>
|
|
||||||
</i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-outline-secondary"
|
|
||||||
appA11yTitle="{{ 'copyValue' | i18n }}"
|
|
||||||
(click)="copy(f.value, 'value', f.type === fieldType.Hidden ? 'H_Field' : 'Field')"
|
|
||||||
[disabled]="!cipher.viewPassword && !f.newField"
|
|
||||||
>
|
|
||||||
<i class="bwi bwi-lg bwi-clone" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- Linked -->
|
|
||||||
<div class="input-group" *ngIf="f.type === fieldType.Linked">
|
|
||||||
<select
|
|
||||||
id="fieldValue{{ i }}"
|
|
||||||
name="Field.Value{{ i }}"
|
|
||||||
class="form-control"
|
|
||||||
[(ngModel)]="f.linkedId"
|
|
||||||
*ngIf="f.type === fieldType.Linked && cipher.linkedFieldOptions != null"
|
|
||||||
[disabled]="cipher.isDeleted || viewOnly"
|
|
||||||
attr.aria-describedby="fieldName{{ i }}"
|
|
||||||
>
|
|
||||||
<option *ngFor="let o of linkedFieldOptions" [ngValue]="o.value">{{ o.name }}</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<div class="flex-fill">
|
|
||||||
<!-- Boolean -->
|
|
||||||
<input
|
|
||||||
id="fieldValue{{ i }}"
|
|
||||||
name="Field.Value{{ i }}"
|
|
||||||
type="checkbox"
|
|
||||||
[(ngModel)]="f.value"
|
|
||||||
*ngIf="f.type === fieldType.Boolean"
|
|
||||||
appTrueFalseValue
|
|
||||||
trueValue="true"
|
|
||||||
falseValue="false"
|
|
||||||
[disabled]="cipher.isDeleted || viewOnly"
|
|
||||||
attr.aria-describedby="fieldName{{ i }}"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-link text-danger ml-2"
|
|
||||||
(click)="removeField(f)"
|
|
||||||
appA11yTitle="{{ 'remove' | i18n }}"
|
|
||||||
*ngIf="!cipher.isDeleted && !viewOnly && !(!cipher.edit && editMode)"
|
|
||||||
>
|
|
||||||
<i class="bwi bwi-minus-circle bwi-lg" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="btn btn-link text-muted cursor-move"
|
|
||||||
appA11yTitle="{{ 'dragToSort' | i18n }}"
|
|
||||||
*ngIf="!cipher.isDeleted && !viewOnly && !(!cipher.edit && editMode)"
|
|
||||||
>
|
|
||||||
<i class="bwi bwi-hamburger bwi-lg" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- Add new custom field -->
|
|
||||||
<a
|
|
||||||
bitLink
|
|
||||||
href="#"
|
|
||||||
appStopClick
|
|
||||||
(click)="addField()"
|
|
||||||
class="d-inline-block mb-2"
|
|
||||||
*ngIf="!cipher.isDeleted && !viewOnly && !(!cipher.edit && editMode)"
|
|
||||||
>
|
|
||||||
<i class="bwi bwi-plus-circle bwi-fw" aria-hidden="true"></i> {{ "newCustomField" | i18n }}
|
|
||||||
</a>
|
|
||||||
<div class="row" *ngIf="!cipher.isDeleted && !viewOnly && !(!cipher.edit && editMode)">
|
|
||||||
<div class="col-5">
|
|
||||||
<label for="addFieldType" class="tw-sr-only">{{ "type" | i18n }}</label>
|
|
||||||
<select id="addFieldType" class="form-control" name="AddFieldType" [(ngModel)]="addFieldType">
|
|
||||||
<option *ngFor="let o of addFieldTypeOptions" [ngValue]="o.value">{{ o.name }}</option>
|
|
||||||
<option
|
|
||||||
*ngIf="cipher.linkedFieldOptions != null"
|
|
||||||
[ngValue]="addFieldLinkedTypeOption.value"
|
|
||||||
>
|
|
||||||
{{ addFieldLinkedTypeOption.name }}
|
|
||||||
</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</ng-container>
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
// FIXME: Update this file to be type safe and remove this and next line
|
|
||||||
// @ts-strict-ignore
|
|
||||||
import { Component, Input } from "@angular/core";
|
|
||||||
|
|
||||||
import { AddEditCustomFieldsComponent as BaseAddEditCustomFieldsComponent } from "@bitwarden/angular/vault/components/add-edit-custom-fields.component";
|
|
||||||
import { EventCollectionService } from "@bitwarden/common/abstractions/event/event-collection.service";
|
|
||||||
import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.service";
|
|
||||||
|
|
||||||
@Component({
|
|
||||||
selector: "app-vault-add-edit-custom-fields",
|
|
||||||
templateUrl: "add-edit-custom-fields.component.html",
|
|
||||||
})
|
|
||||||
export class AddEditCustomFieldsComponent extends BaseAddEditCustomFieldsComponent {
|
|
||||||
@Input() viewOnly: boolean;
|
|
||||||
@Input() copy: (value: string, typeI18nKey: string, aType: string) => void;
|
|
||||||
|
|
||||||
constructor(i18nService: I18nService, eventCollectionService: EventCollectionService) {
|
|
||||||
super(i18nService, eventCollectionService);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -422,18 +422,9 @@
|
|||||||
"folder": {
|
"folder": {
|
||||||
"message": "Folder"
|
"message": "Folder"
|
||||||
},
|
},
|
||||||
"newCustomField": {
|
|
||||||
"message": "New custom field"
|
|
||||||
},
|
|
||||||
"value": {
|
"value": {
|
||||||
"message": "Value"
|
"message": "Value"
|
||||||
},
|
},
|
||||||
"dragToSort": {
|
|
||||||
"message": "Drag to sort"
|
|
||||||
},
|
|
||||||
"dragToReorder": {
|
|
||||||
"message": "Drag to reorder"
|
|
||||||
},
|
|
||||||
"cfTypeText": {
|
"cfTypeText": {
|
||||||
"message": "Text"
|
"message": "Text"
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user