From b169207b74ee593365a82b1b73c6d0241a21928e Mon Sep 17 00:00:00 2001
From: Vincent Salucci <26154748+vincentsalucci@users.noreply.github.com>
Date: Mon, 10 Jun 2024 11:59:20 -0500
Subject: [PATCH] [AC-2647] Remove Flexible Collections MVP code (#9518)
* chore: organization.ts, remove refs to flexibleCollections and isManager, refs AC-2647
* chore: clean up callers of removed methods from organization.ts, refs AC-2647
* chore: access-selector, remove fc input and update permissionList param, refs AC-2647
* chore: update permissionList caller, update group-add-edit fc refs, and remove accessAll, refs AC-2647
* chore: update member-dialog fc callers, refs AC-2647
* chore: update bulk-collections-dialog fc callers, refs AC-2647
* chore: update collection-dialog fc callers, refs AC-2647
* chore: update simple fc caller to misc files, refs AC-2647
* chore: update member-dialog fc callers, refs AC-2647
* chore: remove accessAll references and update callers, refs AC-2647
* chore: update comment to specify v1 usage, refs AC-2647
* chore: remove unused message keys and code calls to use those messages, refs AC-2647
* chore: remove readonly false from access-selector model map function, refs AC-2647
---
.../core/services/group/group.service.ts | 1 -
.../services/group/requests/group.request.ts | 1 -
.../group/responses/group.response.ts | 6 -
.../core/services/user-admin.service.ts | 3 -
.../organizations/core/views/group.view.ts | 6 -
.../views/organization-user-admin-view.ts | 6 -
.../core/views/organization-user.view.ts | 6 -
.../organization-layout.component.html | 2 +-
.../manage/group-add-edit.component.html | 27 +--
.../manage/group-add-edit.component.ts | 13 +-
.../manage/groups.component.html | 2 -
.../member-dialog.component.html | 217 +++++-------------
.../member-dialog/member-dialog.component.ts | 26 +--
.../members/people.component.html | 2 -
.../settings/account.component.html | 2 +-
.../access-selector.component.html | 9 -
.../access-selector.component.ts | 20 +-
.../access-selector/access-selector.models.ts | 16 +-
.../access-selector.stories.ts | 3 -
.../access-selector/user-type.pipe.ts | 2 -
.../collection-dialog.component.html | 4 +-
.../collection-dialog.component.ts | 14 +-
.../vault-collection-row.component.ts | 2 +-
.../vault-filter-section.component.ts | 14 +-
.../bulk-collections-dialog.component.html | 2 -
.../bulk-collections-dialog.component.ts | 6 +-
.../vault-filter/vault-filter.component.ts | 6 +-
.../vault-header/vault-header.component.html | 5 +-
.../vault-header/vault-header.component.ts | 4 +-
.../app/vault/org-vault/vault.component.html | 4 +-
.../app/vault/org-vault/vault.component.ts | 2 +-
apps/web/src/locales/en/messages.json | 27 ---
libs/angular/src/pipes/user-type.pipe.ts | 2 -
.../organization-user-invite.request.ts | 1 -
.../organization-user-update.request.ts | 1 -
.../responses/organization-user.response.ts | 6 -
.../organization.service.abstraction.ts | 7 +-
.../models/domain/organization.ts | 55 +----
.../src/vault/models/view/collection.view.ts | 14 +-
.../src/components/import.component.ts | 7 +-
.../src/components/export.component.ts | 6 +-
41 files changed, 106 insertions(+), 453 deletions(-)
diff --git a/apps/web/src/app/admin-console/organizations/core/services/group/group.service.ts b/apps/web/src/app/admin-console/organizations/core/services/group/group.service.ts
index 63431cd6ab..e06a9aa8dc 100644
--- a/apps/web/src/app/admin-console/organizations/core/services/group/group.service.ts
+++ b/apps/web/src/app/admin-console/organizations/core/services/group/group.service.ts
@@ -80,7 +80,6 @@ export class InternalGroupService extends GroupService {
async save(group: GroupView): Promise {
const request = new GroupRequest();
request.name = group.name;
- request.accessAll = group.accessAll;
request.users = group.members;
request.collections = group.collections.map(
(c) => new SelectionReadOnlyRequest(c.id, c.readOnly, c.hidePasswords, c.manage),
diff --git a/apps/web/src/app/admin-console/organizations/core/services/group/requests/group.request.ts b/apps/web/src/app/admin-console/organizations/core/services/group/requests/group.request.ts
index b59c869692..40f253d945 100644
--- a/apps/web/src/app/admin-console/organizations/core/services/group/requests/group.request.ts
+++ b/apps/web/src/app/admin-console/organizations/core/services/group/requests/group.request.ts
@@ -2,7 +2,6 @@ import { SelectionReadOnlyRequest } from "@bitwarden/common/admin-console/models
export class GroupRequest {
name: string;
- accessAll: boolean;
collections: SelectionReadOnlyRequest[] = [];
users: string[] = [];
}
diff --git a/apps/web/src/app/admin-console/organizations/core/services/group/responses/group.response.ts b/apps/web/src/app/admin-console/organizations/core/services/group/responses/group.response.ts
index e969de4ad1..eb62d83712 100644
--- a/apps/web/src/app/admin-console/organizations/core/services/group/responses/group.response.ts
+++ b/apps/web/src/app/admin-console/organizations/core/services/group/responses/group.response.ts
@@ -5,11 +5,6 @@ export class GroupResponse extends BaseResponse {
id: string;
organizationId: string;
name: string;
- /**
- * @deprecated
- * To be removed after Flexible Collections.
- **/
- accessAll: boolean;
externalId: string;
constructor(response: any) {
@@ -17,7 +12,6 @@ export class GroupResponse extends BaseResponse {
this.id = this.getResponseProperty("Id");
this.organizationId = this.getResponseProperty("OrganizationId");
this.name = this.getResponseProperty("Name");
- this.accessAll = this.getResponseProperty("AccessAll");
this.externalId = this.getResponseProperty("ExternalId");
}
}
diff --git a/apps/web/src/app/admin-console/organizations/core/services/user-admin.service.ts b/apps/web/src/app/admin-console/organizations/core/services/user-admin.service.ts
index 399140e3ea..52a522c89d 100644
--- a/apps/web/src/app/admin-console/organizations/core/services/user-admin.service.ts
+++ b/apps/web/src/app/admin-console/organizations/core/services/user-admin.service.ts
@@ -41,7 +41,6 @@ export class UserAdminService {
async save(user: OrganizationUserAdminView): Promise {
const request = new OrganizationUserUpdateRequest();
- request.accessAll = user.accessAll;
request.permissions = user.permissions;
request.type = user.type;
request.collections = user.collections;
@@ -54,7 +53,6 @@ export class UserAdminService {
async invite(emails: string[], user: OrganizationUserAdminView): Promise {
const request = new OrganizationUserInviteRequest();
request.emails = emails;
- request.accessAll = user.accessAll;
request.permissions = user.permissions;
request.type = user.type;
request.collections = user.collections;
@@ -77,7 +75,6 @@ export class UserAdminService {
view.type = u.type;
view.status = u.status;
view.externalId = u.externalId;
- view.accessAll = u.accessAll;
view.permissions = u.permissions;
view.resetPasswordEnrolled = u.resetPasswordEnrolled;
view.collections = u.collections.map((c) => ({
diff --git a/apps/web/src/app/admin-console/organizations/core/views/group.view.ts b/apps/web/src/app/admin-console/organizations/core/views/group.view.ts
index 25864cca34..1909b9a863 100644
--- a/apps/web/src/app/admin-console/organizations/core/views/group.view.ts
+++ b/apps/web/src/app/admin-console/organizations/core/views/group.view.ts
@@ -8,12 +8,6 @@ export class GroupView implements View {
id: string;
organizationId: string;
name: string;
- /**
- * @deprecated
- * To be removed after Flexible Collections.
- * This will always return `false` if Flexible Collections is enabled.
- **/
- accessAll: boolean;
externalId: string;
collections: CollectionAccessSelectionView[] = [];
members: string[] = [];
diff --git a/apps/web/src/app/admin-console/organizations/core/views/organization-user-admin-view.ts b/apps/web/src/app/admin-console/organizations/core/views/organization-user-admin-view.ts
index b4241826b3..97e77d8543 100644
--- a/apps/web/src/app/admin-console/organizations/core/views/organization-user-admin-view.ts
+++ b/apps/web/src/app/admin-console/organizations/core/views/organization-user-admin-view.ts
@@ -13,12 +13,6 @@ export class OrganizationUserAdminView {
type: OrganizationUserType;
status: OrganizationUserStatusType;
externalId: string;
- /**
- * @deprecated
- * To be removed after Flexible Collections.
- * This will always return `false` if Flexible Collections is enabled.
- **/
- accessAll: boolean;
permissions: PermissionsApi;
resetPasswordEnrolled: boolean;
hasMasterPassword: boolean;
diff --git a/apps/web/src/app/admin-console/organizations/core/views/organization-user.view.ts b/apps/web/src/app/admin-console/organizations/core/views/organization-user.view.ts
index 947ae9b13e..86d1f4ded6 100644
--- a/apps/web/src/app/admin-console/organizations/core/views/organization-user.view.ts
+++ b/apps/web/src/app/admin-console/organizations/core/views/organization-user.view.ts
@@ -12,12 +12,6 @@ export class OrganizationUserView {
userId: string;
type: OrganizationUserType;
status: OrganizationUserStatusType;
- /**
- * @deprecated
- * To be removed after Flexible Collections.
- * This will always return `false` if Flexible Collections is enabled.
- **/
- accessAll: boolean;
permissions: PermissionsApi;
resetPasswordEnrolled: boolean;
name: string;
diff --git a/apps/web/src/app/admin-console/organizations/layouts/organization-layout.component.html b/apps/web/src/app/admin-console/organizations/layouts/organization-layout.component.html
index 237e2c6e30..445a0855c1 100644
--- a/apps/web/src/app/admin-console/organizations/layouts/organization-layout.component.html
+++ b/apps/web/src/app/admin-console/organizations/layouts/organization-layout.component.html
@@ -11,7 +11,7 @@
diff --git a/apps/web/src/app/admin-console/organizations/manage/group-add-edit.component.html b/apps/web/src/app/admin-console/organizations/manage/group-add-edit.component.html
index 166467ada0..eaf10405db 100644
--- a/apps/web/src/app/admin-console/organizations/manage/group-add-edit.component.html
+++ b/apps/web/src/app/admin-console/organizations/manage/group-add-edit.component.html
@@ -45,7 +45,6 @@
[columnHeader]="'member' | i18n"
[selectorLabelText]="'selectMembers' | i18n"
[emptySelectionText]="'noMembersAdded' | i18n"
- [flexibleCollectionsEnabled]="flexibleCollectionsEnabled$ | async"
>
@@ -56,24 +55,14 @@
{{ "restrictedCollectionAssignmentDesc" | i18n }}
-
-
-
-
{{ "accessAllCollectionsHelp" | i18n }}
-
-
-
-
+
diff --git a/apps/web/src/app/admin-console/organizations/manage/group-add-edit.component.ts b/apps/web/src/app/admin-console/organizations/manage/group-add-edit.component.ts
index 38ef002534..8df770686f 100644
--- a/apps/web/src/app/admin-console/organizations/manage/group-add-edit.component.ts
+++ b/apps/web/src/app/admin-console/organizations/manage/group-add-edit.component.ts
@@ -96,9 +96,6 @@ export class GroupAddEditComponent implements OnInit, OnDestroy {
private organization$ = this.organizationService
.get$(this.organizationId)
.pipe(shareReplay({ refCount: true }));
- protected flexibleCollectionsEnabled$ = this.organization$.pipe(
- map((o) => o?.flexibleCollections),
- );
private flexibleCollectionsV1Enabled$ = this.configService.getFeatureFlag$(
FeatureFlag.FlexibleCollectionsV1,
);
@@ -114,7 +111,6 @@ export class GroupAddEditComponent implements OnInit, OnDestroy {
group: GroupView;
groupForm = this.formBuilder.group({
- accessAll: [false],
name: ["", [Validators.required, Validators.maxLength(100)]],
externalId: this.formBuilder.control({ value: "", disabled: true }),
members: [[] as AccessItemValue[]],
@@ -188,7 +184,7 @@ export class GroupAddEditComponent implements OnInit, OnDestroy {
this.flexibleCollectionsV1Enabled$,
]).pipe(
map(([organization, flexibleCollectionsV1Enabled]) => {
- if (!flexibleCollectionsV1Enabled || !organization.flexibleCollections) {
+ if (!flexibleCollectionsV1Enabled) {
return true;
}
@@ -276,7 +272,6 @@ export class GroupAddEditComponent implements OnInit, OnDestroy {
this.groupForm.patchValue({
name: this.group.name,
externalId: this.group.externalId,
- accessAll: this.group.accessAll,
members: this.group.members.map((m) => ({
id: m,
type: AccessItemType.Member,
@@ -328,12 +323,8 @@ export class GroupAddEditComponent implements OnInit, OnDestroy {
const formValue = this.groupForm.value;
groupView.name = formValue.name;
- groupView.accessAll = formValue.accessAll;
groupView.members = formValue.members?.map((m) => m.id) ?? [];
-
- if (!groupView.accessAll) {
- groupView.collections = formValue.collections.map((c) => convertToSelectionView(c));
- }
+ groupView.collections = formValue.collections.map((c) => convertToSelectionView(c));
await this.groupService.save(groupView);
diff --git a/apps/web/src/app/admin-console/organizations/manage/groups.component.html b/apps/web/src/app/admin-console/organizations/manage/groups.component.html
index f256c29b05..1a1a7cdb90 100644
--- a/apps/web/src/app/admin-console/organizations/manage/groups.component.html
+++ b/apps/web/src/app/admin-console/organizations/manage/groups.component.html
@@ -74,12 +74,10 @@
- {{ "all" | i18n }}
|
|
|