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

AC - Prefer signal & change detection (#16948)

* Modernize Angular

* Remove conflicted files
This commit is contained in:
Oscar Hinton
2025-10-23 17:25:48 +02:00
committed by GitHub
parent 0691583b50
commit 3790e09673
73 changed files with 258 additions and 7 deletions

View File

@@ -50,6 +50,8 @@ export enum BulkCollectionsDialogResult {
Canceled = "canceled", Canceled = "canceled",
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
imports: [SharedModule, AccessSelectorModule], imports: [SharedModule, AccessSelectorModule],
selector: "app-bulk-collections-dialog", selector: "app-bulk-collections-dialog",

View File

@@ -6,6 +6,8 @@ import { ButtonModule, NoItemsModule } from "@bitwarden/components";
import { SharedModule } from "../../../shared"; import { SharedModule } from "../../../shared";
import { CollectionDialogTabType } from "../shared/components/collection-dialog"; import { CollectionDialogTabType } from "../shared/components/collection-dialog";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "collection-access-restricted", selector: "collection-access-restricted",
imports: [SharedModule, ButtonModule, NoItemsModule], imports: [SharedModule, ButtonModule, NoItemsModule],
@@ -37,9 +39,15 @@ export class CollectionAccessRestrictedComponent {
protected icon = RestrictedView; protected icon = RestrictedView;
protected collectionDialogTabType = CollectionDialogTabType; protected collectionDialogTabType = CollectionDialogTabType;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() canEditCollection = false; @Input() canEditCollection = false;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() canViewCollectionInfo = false; @Input() canViewCollectionInfo = false;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-output-emitter-ref
@Output() viewCollectionClicked = new EventEmitter<{ @Output() viewCollectionClicked = new EventEmitter<{
readonly: boolean; readonly: boolean;
tab: CollectionDialogTabType; tab: CollectionDialogTabType;

View File

@@ -9,13 +9,19 @@ import { CollectionId } from "@bitwarden/sdk-internal";
import { SharedModule } from "../../../../shared/shared.module"; import { SharedModule } from "../../../../shared/shared.module";
import { GetCollectionNameFromIdPipe } from "../pipes"; import { GetCollectionNameFromIdPipe } from "../pipes";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-collection-badge", selector: "app-collection-badge",
templateUrl: "collection-name-badge.component.html", templateUrl: "collection-name-badge.component.html",
imports: [SharedModule, GetCollectionNameFromIdPipe], imports: [SharedModule, GetCollectionNameFromIdPipe],
}) })
export class CollectionNameBadgeComponent { export class CollectionNameBadgeComponent {
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() collectionIds: CollectionId[] | string[]; @Input() collectionIds: CollectionId[] | string[];
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() collections: CollectionView[]; @Input() collections: CollectionView[];
get shownCollections(): string[] { get shownCollections(): string[] {

View File

@@ -7,13 +7,19 @@ import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.servic
import { GroupView } from "../../core"; import { GroupView } from "../../core";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-group-badge", selector: "app-group-badge",
templateUrl: "group-name-badge.component.html", templateUrl: "group-name-badge.component.html",
standalone: false, standalone: false,
}) })
export class GroupNameBadgeComponent implements OnChanges { export class GroupNameBadgeComponent implements OnChanges {
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() selectedGroups: SelectionReadOnlyRequest[]; @Input() selectedGroups: SelectionReadOnlyRequest[];
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() allGroups: GroupView[]; @Input() allGroups: GroupView[];
protected groupNames: string[] = []; protected groupNames: string[] = [];

View File

@@ -24,6 +24,8 @@ import {
} from "../../../../vault/individual-vault/vault-filter/shared/models/vault-filter-section.type"; } from "../../../../vault/individual-vault/vault-filter/shared/models/vault-filter-section.type";
import { CollectionFilter } from "../../../../vault/individual-vault/vault-filter/shared/models/vault-filter.type"; import { CollectionFilter } from "../../../../vault/individual-vault/vault-filter/shared/models/vault-filter.type";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-organization-vault-filter", selector: "app-organization-vault-filter",
templateUrl: templateUrl:
@@ -34,6 +36,8 @@ export class VaultFilterComponent
extends BaseVaultFilterComponent extends BaseVaultFilterComponent
implements OnInit, OnDestroy, OnChanges implements OnInit, OnDestroy, OnChanges
{ {
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() set organization(value: Organization) { @Input() set organization(value: Organization) {
if (value && value !== this._organization) { if (value && value !== this._organization) {
this._organization = value; this._organization = value;

View File

@@ -37,6 +37,8 @@ import {
} from "../../../../vault/individual-vault/vault-filter/shared/models/routed-vault-filter.model"; } from "../../../../vault/individual-vault/vault-filter/shared/models/routed-vault-filter.model";
import { CollectionDialogTabType } from "../../shared/components/collection-dialog"; import { CollectionDialogTabType } from "../../shared/components/collection-dialog";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-org-vault-header", selector: "app-org-vault-header",
templateUrl: "./vault-header.component.html", templateUrl: "./vault-header.component.html",
@@ -59,36 +61,56 @@ export class VaultHeaderComponent {
* Boolean to determine the loading state of the header. * Boolean to determine the loading state of the header.
* Shows a loading spinner if set to true * Shows a loading spinner if set to true
*/ */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() loading: boolean; @Input() loading: boolean;
/** Current active filter */ /** Current active filter */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() filter: RoutedVaultFilterModel; @Input() filter: RoutedVaultFilterModel;
/** The organization currently being viewed */ /** The organization currently being viewed */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() organization: Organization; @Input() organization: Organization;
/** Currently selected collection */ /** Currently selected collection */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() collection?: TreeNode<CollectionAdminView>; @Input() collection?: TreeNode<CollectionAdminView>;
/** The current search text in the header */ /** The current search text in the header */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() searchText: string; @Input() searchText: string;
/** Emits an event when the new item button is clicked in the header */ /** Emits an event when the new item button is clicked in the header */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-output-emitter-ref
@Output() onAddCipher = new EventEmitter<CipherType | undefined>(); @Output() onAddCipher = new EventEmitter<CipherType | undefined>();
/** Emits an event when the new collection button is clicked in the header */ /** Emits an event when the new collection button is clicked in the header */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-output-emitter-ref
@Output() onAddCollection = new EventEmitter<void>(); @Output() onAddCollection = new EventEmitter<void>();
/** Emits an event when the edit collection button is clicked in the header */ /** Emits an event when the edit collection button is clicked in the header */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-output-emitter-ref
@Output() onEditCollection = new EventEmitter<{ @Output() onEditCollection = new EventEmitter<{
tab: CollectionDialogTabType; tab: CollectionDialogTabType;
readonly: boolean; readonly: boolean;
}>(); }>();
/** Emits an event when the delete collection button is clicked in the header */ /** Emits an event when the delete collection button is clicked in the header */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-output-emitter-ref
@Output() onDeleteCollection = new EventEmitter<void>(); @Output() onDeleteCollection = new EventEmitter<void>();
/** Emits an event when the search text changes in the header*/ /** Emits an event when the search text changes in the header*/
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-output-emitter-ref
@Output() searchTextChanged = new EventEmitter<string>(); @Output() searchTextChanged = new EventEmitter<string>();
protected CollectionDialogTabType = CollectionDialogTabType; protected CollectionDialogTabType = CollectionDialogTabType;

View File

@@ -140,6 +140,8 @@ enum AddAccessStatusType {
AddAccess = 1, AddAccess = 1,
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-org-vault", selector: "app-org-vault",
templateUrl: "vault.component.html", templateUrl: "vault.component.html",
@@ -207,6 +209,8 @@ export class VaultComponent implements OnInit, OnDestroy {
protected selectedCollection$: Observable<TreeNode<CollectionAdminView> | undefined>; protected selectedCollection$: Observable<TreeNode<CollectionAdminView> | undefined>;
private nestedCollections$: Observable<TreeNode<CollectionAdminView>[]>; private nestedCollections$: Observable<TreeNode<CollectionAdminView>[]>;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@ViewChild("vaultItems", { static: false }) vaultItemsComponent: @ViewChild("vaultItems", { static: false }) vaultItemsComponent:
| VaultItemsComponent<CipherView> | VaultItemsComponent<CipherView>
| undefined; | undefined;

View File

@@ -6,17 +6,31 @@ import { firstValueFrom } from "rxjs";
import { AccountService } from "@bitwarden/common/auth/abstractions/account.service"; import { AccountService } from "@bitwarden/common/auth/abstractions/account.service";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-org-info", selector: "app-org-info",
templateUrl: "organization-information.component.html", templateUrl: "organization-information.component.html",
standalone: false, standalone: false,
}) })
export class OrganizationInformationComponent implements OnInit { export class OrganizationInformationComponent implements OnInit {
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() nameOnly = false; @Input() nameOnly = false;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() createOrganization = true; @Input() createOrganization = true;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() isProvider = false; @Input() isProvider = false;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() acceptingSponsorship = false; @Input() acceptingSponsorship = false;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() formGroup: UntypedFormGroup; @Input() formGroup: UntypedFormGroup;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-output-emitter-ref
@Output() changedBusinessOwned = new EventEmitter<void>(); @Output() changedBusinessOwned = new EventEmitter<void>();
constructor(private accountService: AccountService) {} constructor(private accountService: AccountService) {}

View File

@@ -19,18 +19,24 @@ import { DialogService } from "@bitwarden/components";
import { isEnterpriseOrgGuard } from "./is-enterprise-org.guard"; import { isEnterpriseOrgGuard } from "./is-enterprise-org.guard";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
template: "<h1>This is the home screen!</h1>", template: "<h1>This is the home screen!</h1>",
standalone: false, standalone: false,
}) })
export class HomescreenComponent {} export class HomescreenComponent {}
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
template: "<h1>This component can only be accessed by a enterprise organization!</h1>", template: "<h1>This component can only be accessed by a enterprise organization!</h1>",
standalone: false, standalone: false,
}) })
export class IsEnterpriseOrganizationComponent {} export class IsEnterpriseOrganizationComponent {}
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
template: "<h1>This is the organization upgrade screen!</h1>", template: "<h1>This is the organization upgrade screen!</h1>",
standalone: false, standalone: false,

View File

@@ -18,18 +18,24 @@ import { DialogService } from "@bitwarden/components";
import { isPaidOrgGuard } from "./is-paid-org.guard"; import { isPaidOrgGuard } from "./is-paid-org.guard";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
template: "<h1>This is the home screen!</h1>", template: "<h1>This is the home screen!</h1>",
standalone: false, standalone: false,
}) })
export class HomescreenComponent {} export class HomescreenComponent {}
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
template: "<h1>This component can only be accessed by a paid organization!</h1>", template: "<h1>This component can only be accessed by a paid organization!</h1>",
standalone: false, standalone: false,
}) })
export class PaidOrganizationOnlyComponent {} export class PaidOrganizationOnlyComponent {}
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
template: "<h1>This is the organization upgrade screen!</h1>", template: "<h1>This is the organization upgrade screen!</h1>",
standalone: false, standalone: false,

View File

@@ -17,18 +17,24 @@ import { UserId } from "@bitwarden/common/types/guid";
import { organizationRedirectGuard } from "./org-redirect.guard"; import { organizationRedirectGuard } from "./org-redirect.guard";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
template: "<h1>This is the home screen!</h1>", template: "<h1>This is the home screen!</h1>",
standalone: false, standalone: false,
}) })
export class HomescreenComponent {} export class HomescreenComponent {}
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
template: "<h1>This is the admin console!</h1>", template: "<h1>This is the admin console!</h1>",
standalone: false, standalone: false,
}) })
export class AdminConsoleComponent {} export class AdminConsoleComponent {}
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
template: "<h1> This is a subroute of the admin console!</h1>", template: "<h1> This is a subroute of the admin console!</h1>",
standalone: false, standalone: false,

View File

@@ -36,6 +36,8 @@ import { FreeFamiliesPolicyService } from "../../../billing/services/free-famili
import { OrgSwitcherComponent } from "../../../layouts/org-switcher/org-switcher.component"; import { OrgSwitcherComponent } from "../../../layouts/org-switcher/org-switcher.component";
import { WebLayoutModule } from "../../../layouts/web-layout.module"; import { WebLayoutModule } from "../../../layouts/web-layout.module";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-organization-layout", selector: "app-organization-layout",
templateUrl: "organization-layout.component.html", templateUrl: "organization-layout.component.html",

View File

@@ -37,6 +37,8 @@ export interface EntityEventsDialogParams {
name?: string; name?: string;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
imports: [SharedModule], imports: [SharedModule],
templateUrl: "entity-events.component.html", templateUrl: "entity-events.component.html",

View File

@@ -46,6 +46,8 @@ const EVENT_SYSTEM_USER_TO_TRANSLATION: Record<EventSystemUser, string> = {
[EventSystemUser.PublicApi]: "publicApi", [EventSystemUser.PublicApi]: "publicApi",
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "events.component.html", templateUrl: "events.component.html",
imports: [SharedModule, HeaderModule], imports: [SharedModule, HeaderModule],

View File

@@ -107,6 +107,8 @@ export const openGroupAddEditDialog = (
); );
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-group-add-edit", selector: "app-group-add-edit",
templateUrl: "group-add-edit.component.html", templateUrl: "group-add-edit.component.html",

View File

@@ -77,6 +77,8 @@ const groupsFilter = (filter: string) => {
}; };
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "groups.component.html", templateUrl: "groups.component.html",
standalone: false, standalone: false,

View File

@@ -17,6 +17,8 @@ export type UserConfirmDialogData = {
confirmUser: (publicKey: Uint8Array) => Promise<void>; confirmUser: (publicKey: Uint8Array) => Promise<void>;
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "user-confirm.component.html", templateUrl: "user-confirm.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -12,6 +12,8 @@ import { ToastService } from "@bitwarden/components";
import { SharedModule } from "../../../shared/shared.module"; import { SharedModule } from "../../../shared/shared.module";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "verify-recover-delete-org.component.html", templateUrl: "verify-recover-delete-org.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -61,6 +61,8 @@ export type AccountRecoveryDialogResultType =
* given organization user. An admin will access this form when they want to * given organization user. An admin will access this form when they want to
* reset a user's password and log them out of sessions. * reset a user's password and log them out of sessions.
*/ */
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
standalone: true, standalone: true,
selector: "app-account-recovery-dialog", selector: "app-account-recovery-dialog",
@@ -76,6 +78,8 @@ export type AccountRecoveryDialogResultType =
], ],
}) })
export class AccountRecoveryDialogComponent { export class AccountRecoveryDialogComponent {
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@ViewChild(InputPasswordComponent) @ViewChild(InputPasswordComponent)
inputPasswordComponent: InputPasswordComponent | undefined = undefined; inputPasswordComponent: InputPasswordComponent | undefined = undefined;

View File

@@ -36,6 +36,8 @@ type BulkConfirmDialogParams = {
users: BulkUserDetails[]; users: BulkUserDetails[];
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "bulk-confirm-dialog.component.html", templateUrl: "bulk-confirm-dialog.component.html",
standalone: false, standalone: false,

View File

@@ -16,6 +16,8 @@ type BulkDeleteDialogParams = {
users: BulkUserDetails[]; users: BulkUserDetails[];
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "bulk-delete-dialog.component.html", templateUrl: "bulk-delete-dialog.component.html",
standalone: false, standalone: false,

View File

@@ -20,6 +20,8 @@ export type BulkEnableSecretsManagerDialogData = {
users: OrganizationUserView[]; users: OrganizationUserView[];
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: `bulk-enable-sm-dialog.component.html`, templateUrl: `bulk-enable-sm-dialog.component.html`,
standalone: false, standalone: false,

View File

@@ -19,6 +19,8 @@ type BulkRemoveDialogParams = {
users: BulkUserDetails[]; users: BulkUserDetails[];
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "bulk-remove-dialog.component.html", templateUrl: "bulk-remove-dialog.component.html",
standalone: false, standalone: false,

View File

@@ -15,6 +15,8 @@ type BulkRestoreDialogParams = {
isRevoking: boolean; isRevoking: boolean;
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-bulk-restore-revoke", selector: "app-bulk-restore-revoke",
templateUrl: "bulk-restore-revoke.component.html", templateUrl: "bulk-restore-revoke.component.html",

View File

@@ -38,6 +38,8 @@ type BulkStatusDialogData = {
successfulMessage: string; successfulMessage: string;
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-bulk-status", selector: "app-bulk-status",
templateUrl: "bulk-status.component.html", templateUrl: "bulk-status.component.html",

View File

@@ -104,6 +104,8 @@ export enum MemberDialogResult {
Restored = "restored", Restored = "restored",
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "member-dialog.component.html", templateUrl: "member-dialog.component.html",
standalone: false, standalone: false,

View File

@@ -7,6 +7,8 @@ import { Subject, takeUntil } from "rxjs";
import { Utils } from "@bitwarden/common/platform/misc/utils"; import { Utils } from "@bitwarden/common/platform/misc/utils";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-nested-checkbox", selector: "app-nested-checkbox",
templateUrl: "nested-checkbox.component.html", templateUrl: "nested-checkbox.component.html",
@@ -15,7 +17,11 @@ import { Utils } from "@bitwarden/common/platform/misc/utils";
export class NestedCheckboxComponent implements OnInit, OnDestroy { export class NestedCheckboxComponent implements OnInit, OnDestroy {
private destroy$ = new Subject<void>(); private destroy$ = new Subject<void>();
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() parentId: string; @Input() parentId: string;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() checkboxes: FormGroup<Record<string, FormControl<boolean>>>; @Input() checkboxes: FormGroup<Record<string, FormControl<boolean>>>;
get parentIndeterminate() { get parentIndeterminate() {

View File

@@ -60,6 +60,8 @@ class MembersTableDataSource extends PeopleTableDataSource<OrganizationUserView>
protected statusType = OrganizationUserStatusType; protected statusType = OrganizationUserStatusType;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "members.component.html", templateUrl: "members.component.html",
standalone: false, standalone: false,

View File

@@ -78,7 +78,11 @@ export abstract class BasePolicyEditDefinition {
*/ */
@Directive() @Directive()
export abstract class BasePolicyEditComponent implements OnInit { export abstract class BasePolicyEditComponent implements OnInit {
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() policyResponse: PolicyResponse | undefined; @Input() policyResponse: PolicyResponse | undefined;
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() policy: BasePolicyEditDefinition | undefined; @Input() policy: BasePolicyEditDefinition | undefined;
/** /**

View File

@@ -37,6 +37,8 @@ import { PolicyEditDialogComponent } from "./policy-edit-dialog.component";
import { PolicyListService } from "./policy-list.service"; import { PolicyListService } from "./policy-list.service";
import { POLICY_EDIT_REGISTER } from "./policy-register-token"; import { POLICY_EDIT_REGISTER } from "./policy-register-token";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "policies.component.html", templateUrl: "policies.component.html",
imports: [SharedModule, HeaderModule], imports: [SharedModule, HeaderModule],

View File

@@ -18,6 +18,8 @@ export class DesktopAutotypeDefaultSettingPolicy extends BasePolicyEditDefinitio
return configService.getFeatureFlag$(FeatureFlag.WindowsDesktopAutotype); return configService.getFeatureFlag$(FeatureFlag.WindowsDesktopAutotype);
} }
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "autotype-policy.component.html", templateUrl: "autotype-policy.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -12,6 +12,8 @@ export class DisableSendPolicy extends BasePolicyEditDefinition {
component = DisableSendPolicyComponent; component = DisableSendPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "disable-send.component.html", templateUrl: "disable-send.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -26,6 +26,8 @@ export class MasterPasswordPolicy extends BasePolicyEditDefinition {
component = MasterPasswordPolicyComponent; component = MasterPasswordPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "master-password.component.html", templateUrl: "master-password.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -22,6 +22,8 @@ export class OrganizationDataOwnershipPolicy extends BasePolicyEditDefinition {
} }
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "organization-data-ownership.component.html", templateUrl: "organization-data-ownership.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -19,6 +19,8 @@ export class PasswordGeneratorPolicy extends BasePolicyEditDefinition {
component = PasswordGeneratorPolicyComponent; component = PasswordGeneratorPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "password-generator.component.html", templateUrl: "password-generator.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -12,6 +12,8 @@ export class RemoveUnlockWithPinPolicy extends BasePolicyEditDefinition {
component = RemoveUnlockWithPinPolicyComponent; component = RemoveUnlockWithPinPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "remove-unlock-with-pin.component.html", templateUrl: "remove-unlock-with-pin.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -19,6 +19,8 @@ export class RequireSsoPolicy extends BasePolicyEditDefinition {
} }
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "require-sso.component.html", templateUrl: "require-sso.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -26,6 +26,8 @@ export class ResetPasswordPolicy extends BasePolicyEditDefinition {
} }
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "reset-password.component.html", templateUrl: "reset-password.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -12,6 +12,8 @@ export class RestrictedItemTypesPolicy extends BasePolicyEditDefinition {
component = RestrictedItemTypesPolicyComponent; component = RestrictedItemTypesPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "restricted-item-types.component.html", templateUrl: "restricted-item-types.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -13,6 +13,8 @@ export class SendOptionsPolicy extends BasePolicyEditDefinition {
component = SendOptionsPolicyComponent; component = SendOptionsPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "send-options.component.html", templateUrl: "send-options.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -12,6 +12,8 @@ export class SingleOrgPolicy extends BasePolicyEditDefinition {
component = SingleOrgPolicyComponent; component = SingleOrgPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "single-org.component.html", templateUrl: "single-org.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -12,6 +12,8 @@ export class TwoFactorAuthenticationPolicy extends BasePolicyEditDefinition {
component = TwoFactorAuthenticationPolicyComponent; component = TwoFactorAuthenticationPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "two-factor-authentication.component.html", templateUrl: "two-factor-authentication.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -34,6 +34,8 @@ export class vNextOrganizationDataOwnershipPolicy extends BasePolicyEditDefiniti
} }
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "vnext-organization-data-ownership.component.html", templateUrl: "vnext-organization-data-ownership.component.html",
imports: [SharedModule], imports: [SharedModule],
@@ -50,6 +52,8 @@ export class vNextOrganizationDataOwnershipPolicyComponent
super(); super();
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@ViewChild("dialog", { static: true }) warningContent!: TemplateRef<unknown>; @ViewChild("dialog", { static: true }) warningContent!: TemplateRef<unknown>;
override async confirm(): Promise<boolean> { override async confirm(): Promise<boolean> {

View File

@@ -45,11 +45,15 @@ export type PolicyEditDialogData = {
export type PolicyEditDialogResult = "saved"; export type PolicyEditDialogResult = "saved";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "policy-edit-dialog.component.html", templateUrl: "policy-edit-dialog.component.html",
imports: [SharedModule], imports: [SharedModule],
}) })
export class PolicyEditDialogComponent implements AfterViewInit { export class PolicyEditDialogComponent implements AfterViewInit {
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@ViewChild("policyForm", { read: ViewContainerRef, static: true }) @ViewChild("policyForm", { read: ViewContainerRef, static: true })
policyFormRef: ViewContainerRef | undefined; policyFormRef: ViewContainerRef | undefined;

View File

@@ -14,6 +14,8 @@ import { ProductTierType } from "@bitwarden/common/billing/enums";
import { ReportVariant, reports, ReportType, ReportEntry } from "../../../dirt/reports"; import { ReportVariant, reports, ReportType, ReportEntry } from "../../../dirt/reports";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-org-reports-home", selector: "app-org-reports-home",
templateUrl: "reports-home.component.html", templateUrl: "reports-home.component.html",

View File

@@ -38,6 +38,8 @@ import { PurgeVaultComponent } from "../../../vault/settings/purge-vault.compone
import { DeleteOrganizationDialogResult, openDeleteOrganizationDialog } from "./components"; import { DeleteOrganizationDialogResult, openDeleteOrganizationDialog } from "./components";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-org-account", selector: "app-org-account",
templateUrl: "account.component.html", templateUrl: "account.component.html",

View File

@@ -78,6 +78,8 @@ export enum DeleteOrganizationDialogResult {
Canceled = "canceled", Canceled = "canceled",
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-delete-organization", selector: "app-delete-organization",
imports: [SharedModule, UserVerificationModule], imports: [SharedModule, UserVerificationModule],

View File

@@ -26,6 +26,8 @@ import { TwoFactorSetupDuoComponent } from "../../../auth/settings/two-factor/tw
import { TwoFactorSetupComponent as BaseTwoFactorSetupComponent } from "../../../auth/settings/two-factor/two-factor-setup.component"; import { TwoFactorSetupComponent as BaseTwoFactorSetupComponent } from "../../../auth/settings/two-factor/two-factor-setup.component";
import { TwoFactorVerifyComponent } from "../../../auth/settings/two-factor/two-factor-verify.component"; import { TwoFactorVerifyComponent } from "../../../auth/settings/two-factor/two-factor-verify.component";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-two-factor-setup", selector: "app-two-factor-setup",
templateUrl: "../../../auth/settings/two-factor/two-factor-setup.component.html", templateUrl: "../../../auth/settings/two-factor/two-factor-setup.component.html",

View File

@@ -45,6 +45,8 @@ export enum PermissionMode {
Edit = "edit", Edit = "edit",
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "bit-access-selector", selector: "bit-access-selector",
templateUrl: "access-selector.component.html", templateUrl: "access-selector.component.html",
@@ -139,6 +141,8 @@ export class AccessSelectorComponent implements ControlValueAccessor, OnInit, On
/** /**
* List of all selectable items that. Sorted internally. * List of all selectable items that. Sorted internally.
*/ */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() @Input()
get items(): AccessItemView[] { get items(): AccessItemView[] {
return this.selectionList.allItems; return this.selectionList.allItems;
@@ -160,6 +164,8 @@ export class AccessSelectorComponent implements ControlValueAccessor, OnInit, On
/** /**
* Permission mode that controls if the permission form controls and column should be present. * Permission mode that controls if the permission form controls and column should be present.
*/ */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() @Input()
get permissionMode(): PermissionMode { get permissionMode(): PermissionMode {
return this._permissionMode; return this._permissionMode;
@@ -175,41 +181,64 @@ export class AccessSelectorComponent implements ControlValueAccessor, OnInit, On
/** /**
* Column header for the selected items table * Column header for the selected items table
*/ */
@Input() columnHeader: string; // FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input()
columnHeader: string;
/** /**
* Label used for the ng selector * Label used for the ng selector
*/ */
@Input() selectorLabelText: string; // FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input()
selectorLabelText: string;
/** /**
* Helper text displayed under the ng selector * Helper text displayed under the ng selector
*/ */
@Input() selectorHelpText: string; // FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input()
selectorHelpText: string;
/** /**
* Text that is shown in the table when no items are selected * Text that is shown in the table when no items are selected
*/ */
@Input() emptySelectionText: string; // FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input()
emptySelectionText: string;
/** /**
* Flag for if the member roles column should be present * Flag for if the member roles column should be present
*/ */
@Input() showMemberRoles: boolean; // FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input()
showMemberRoles: boolean;
/** /**
* Flag for if the group column should be present * Flag for if the group column should be present
*/ */
@Input() showGroupColumn: boolean; // FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input()
showGroupColumn: boolean;
/** /**
* Hide the multi-select so that new items cannot be added * Hide the multi-select so that new items cannot be added
*/ */
@Input() hideMultiSelect = false; // FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input()
hideMultiSelect = false;
/** /**
* The initial permission that will be selected in the dialog, defaults to View. * The initial permission that will be selected in the dialog, defaults to View.
*/ */
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@Input() @Input()
protected initialPermission: CollectionPermission = CollectionPermission.View; protected initialPermission: CollectionPermission = CollectionPermission.View;

View File

@@ -116,6 +116,8 @@ export enum CollectionDialogAction {
Upgrade = "upgrade", Upgrade = "upgrade",
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "collection-dialog.component.html", templateUrl: "collection-dialog.component.html",
imports: [SharedModule, AccessSelectorModule, SelectModule], imports: [SharedModule, AccessSelectorModule, SelectModule],

View File

@@ -18,6 +18,8 @@ import { BaseAcceptComponent } from "../../../common/base.accept.component";
* "Bitwarden allows all members of Enterprise Organizations to redeem a complimentary Families Plan with their * "Bitwarden allows all members of Enterprise Organizations to redeem a complimentary Families Plan with their
* personal email address." - https://bitwarden.com/learning/free-families-plan-for-enterprise/ * personal email address." - https://bitwarden.com/learning/free-families-plan-for-enterprise/
*/ */
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "accept-family-sponsorship.component.html", templateUrl: "accept-family-sponsorship.component.html",
imports: [CommonModule, I18nPipe, IconModule], imports: [CommonModule, I18nPipe, IconModule],

View File

@@ -28,11 +28,15 @@ import {
openDeleteOrganizationDialog, openDeleteOrganizationDialog,
} from "../settings/components"; } from "../settings/components";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "families-for-enterprise-setup.component.html", templateUrl: "families-for-enterprise-setup.component.html",
imports: [SharedModule, OrganizationPlansComponent], imports: [SharedModule, OrganizationPlansComponent],
}) })
export class FamiliesForEnterpriseSetupComponent implements OnInit, OnDestroy { export class FamiliesForEnterpriseSetupComponent implements OnInit, OnDestroy {
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@ViewChild(OrganizationPlansComponent, { static: false }) @ViewChild(OrganizationPlansComponent, { static: false })
set organizationPlansComponent(value: OrganizationPlansComponent) { set organizationPlansComponent(value: OrganizationPlansComponent) {
if (!value) { if (!value) {

View File

@@ -11,6 +11,8 @@ import { OrganizationPlansComponent } from "../../billing";
import { HeaderModule } from "../../layouts/header/header.module"; import { HeaderModule } from "../../layouts/header/header.module";
import { SharedModule } from "../../shared"; import { SharedModule } from "../../shared";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "create-organization.component.html", templateUrl: "create-organization.component.html",
imports: [SharedModule, OrganizationPlansComponent, HeaderModule], imports: [SharedModule, OrganizationPlansComponent, HeaderModule],

View File

@@ -24,6 +24,8 @@ import { KeyService } from "@bitwarden/key-management";
import { HeaderModule } from "@bitwarden/web-vault/app/layouts/header/header.module"; import { HeaderModule } from "@bitwarden/web-vault/app/layouts/header/header.module";
import { SharedModule } from "@bitwarden/web-vault/app/shared/shared.module"; import { SharedModule } from "@bitwarden/web-vault/app/shared/shared.module";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-org-device-approvals", selector: "app-org-device-approvals",
templateUrl: "./device-approvals.component.html", templateUrl: "./device-approvals.component.html",

View File

@@ -22,6 +22,8 @@ export interface DomainAddEditDialogData {
existingDomainNames: Array<string>; existingDomainNames: Array<string>;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "domain-add-edit-dialog.component.html", templateUrl: "domain-add-edit-dialog.component.html",
standalone: false, standalone: false,

View File

@@ -33,6 +33,8 @@ import {
DomainAddEditDialogData, DomainAddEditDialogData,
} from "./domain-add-edit-dialog/domain-add-edit-dialog.component"; } from "./domain-add-edit-dialog/domain-add-edit-dialog.component";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-org-manage-domain-verification", selector: "app-org-manage-domain-verification",
templateUrl: "domain-verification.component.html", templateUrl: "domain-verification.component.html",

View File

@@ -21,6 +21,8 @@ import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.servic
import { PlatformUtilsService } from "@bitwarden/common/platform/abstractions/platform-utils.service"; import { PlatformUtilsService } from "@bitwarden/common/platform/abstractions/platform-utils.service";
import { DialogService, ToastService } from "@bitwarden/components"; import { DialogService, ToastService } from "@bitwarden/components";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-org-manage-scim", selector: "app-org-manage-scim",
templateUrl: "scim.component.html", templateUrl: "scim.component.html",

View File

@@ -21,6 +21,8 @@ export class ActivateAutofillPolicy extends BasePolicyEditDefinition {
} }
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "activate-autofill.component.html", templateUrl: "activate-autofill.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -17,6 +17,8 @@ export class AutomaticAppLoginPolicy extends BasePolicyEditDefinition {
component = AutomaticAppLoginPolicyComponent; component = AutomaticAppLoginPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "automatic-app-login.component.html", templateUrl: "automatic-app-login.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -14,6 +14,8 @@ export class DisablePersonalVaultExportPolicy extends BasePolicyEditDefinition {
component = DisablePersonalVaultExportPolicyComponent; component = DisablePersonalVaultExportPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "disable-personal-vault-export.component.html", templateUrl: "disable-personal-vault-export.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -20,6 +20,8 @@ export class MaximumVaultTimeoutPolicy extends BasePolicyEditDefinition {
component = MaximumVaultTimeoutPolicyComponent; component = MaximumVaultTimeoutPolicyComponent;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "maximum-vault-timeout.component.html", templateUrl: "maximum-vault-timeout.component.html",
imports: [SharedModule], imports: [SharedModule],

View File

@@ -11,6 +11,8 @@ import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.servic
import { PlatformUtilsService } from "@bitwarden/common/platform/abstractions/platform-utils.service"; import { PlatformUtilsService } from "@bitwarden/common/platform/abstractions/platform-utils.service";
import { BaseAcceptComponent } from "@bitwarden/web-vault/app/common/base.accept.component"; import { BaseAcceptComponent } from "@bitwarden/web-vault/app/common/base.accept.component";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-accept-provider", selector: "app-accept-provider",
templateUrl: "accept-provider.component.html", templateUrl: "accept-provider.component.html",

View File

@@ -33,6 +33,8 @@ export enum AddEditMemberDialogResultType {
Saved = "saved", Saved = "saved",
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "add-edit-member-dialog.component.html", templateUrl: "add-edit-member-dialog.component.html",
standalone: false, standalone: false,

View File

@@ -26,6 +26,8 @@ type BulkConfirmDialogParams = {
users: BulkUserDetails[]; users: BulkUserDetails[];
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: templateUrl:
"../../../../../../../../apps/web/src/app/admin-console/organizations/members/components/bulk/bulk-confirm-dialog.component.html", "../../../../../../../../apps/web/src/app/admin-console/organizations/members/components/bulk/bulk-confirm-dialog.component.html",

View File

@@ -16,6 +16,8 @@ type BulkRemoveDialogParams = {
users: BulkUserDetails[]; users: BulkUserDetails[];
}; };
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: templateUrl:
"../../../../../../../../apps/web/src/app/admin-console/organizations/members/components/bulk/bulk-remove-dialog.component.html", "../../../../../../../../apps/web/src/app/admin-console/organizations/members/components/bulk/bulk-remove-dialog.component.html",

View File

@@ -20,6 +20,8 @@ import { BaseEventsComponent } from "@bitwarden/web-vault/app/admin-console/comm
import { EventService } from "@bitwarden/web-vault/app/core"; import { EventService } from "@bitwarden/web-vault/app/core";
import { EventExportService } from "@bitwarden/web-vault/app/tools/event-export"; import { EventExportService } from "@bitwarden/web-vault/app/tools/event-export";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "provider-events", selector: "provider-events",
templateUrl: "events.component.html", templateUrl: "events.component.html",

View File

@@ -46,6 +46,8 @@ class MembersTableDataSource extends PeopleTableDataSource<ProviderUser> {
protected statusType = ProviderUserStatusType; protected statusType = ProviderUserStatusType;
} }
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
templateUrl: "members.component.html", templateUrl: "members.component.html",
standalone: false, standalone: false,

View File

@@ -23,6 +23,8 @@ import { WebLayoutModule } from "@bitwarden/web-vault/app/layouts/web-layout.mod
import { ProviderWarningsService } from "../../billing/providers/warnings/services"; import { ProviderWarningsService } from "../../billing/providers/warnings/services";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "providers-layout", selector: "providers-layout",
templateUrl: "providers-layout.component.html", templateUrl: "providers-layout.component.html",

View File

@@ -10,6 +10,8 @@ import { getUserId } from "@bitwarden/common/auth/services/account.service";
import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.service"; import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.service";
import { Utils } from "@bitwarden/common/platform/misc/utils"; import { Utils } from "@bitwarden/common/platform/misc/utils";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-providers", selector: "app-providers",
templateUrl: "providers.component.html", templateUrl: "providers.component.html",

View File

@@ -17,6 +17,8 @@ import { PlatformUtilsService } from "@bitwarden/common/platform/abstractions/pl
import { SyncService } from "@bitwarden/common/vault/abstractions/sync/sync.service.abstraction"; import { SyncService } from "@bitwarden/common/vault/abstractions/sync/sync.service.abstraction";
import { DialogService, ToastService } from "@bitwarden/components"; import { DialogService, ToastService } from "@bitwarden/components";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "provider-account", selector: "provider-account",
templateUrl: "account.component.html", templateUrl: "account.component.html",

View File

@@ -4,6 +4,8 @@ import { Params } from "@angular/router";
import { BitwardenLogo } from "@bitwarden/assets/svg"; import { BitwardenLogo } from "@bitwarden/assets/svg";
import { BaseAcceptComponent } from "@bitwarden/web-vault/app/common/base.accept.component"; import { BaseAcceptComponent } from "@bitwarden/web-vault/app/common/base.accept.component";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-setup-provider", selector: "app-setup-provider",
templateUrl: "setup-provider.component.html", templateUrl: "setup-provider.component.html",

View File

@@ -20,12 +20,16 @@ import {
getBillingAddressFromForm, getBillingAddressFromForm,
} from "@bitwarden/web-vault/app/billing/payment/components"; } from "@bitwarden/web-vault/app/billing/payment/components";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "provider-setup", selector: "provider-setup",
templateUrl: "setup.component.html", templateUrl: "setup.component.html",
standalone: false, standalone: false,
}) })
export class SetupComponent implements OnInit, OnDestroy { export class SetupComponent implements OnInit, OnDestroy {
// FIXME(https://bitwarden.atlassian.net/browse/CL-903): Migrate to Signals
// eslint-disable-next-line @angular-eslint/prefer-signals
@ViewChild(EnterPaymentMethodComponent) enterPaymentMethodComponent!: EnterPaymentMethodComponent; @ViewChild(EnterPaymentMethodComponent) enterPaymentMethodComponent!: EnterPaymentMethodComponent;
loading = true; loading = true;

View File

@@ -10,6 +10,8 @@ import { ProviderVerifyRecoverDeleteRequest } from "@bitwarden/common/admin-cons
import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.service"; import { I18nService } from "@bitwarden/common/platform/abstractions/i18n.service";
import { ToastService } from "@bitwarden/components"; import { ToastService } from "@bitwarden/components";
// FIXME(https://bitwarden.atlassian.net/browse/CL-764): Migrate to OnPush
// eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection
@Component({ @Component({
selector: "app-verify-recover-delete-provider", selector: "app-verify-recover-delete-provider",
templateUrl: "verify-recover-delete-provider.component.html", templateUrl: "verify-recover-delete-provider.component.html",