[AC-1179][AC-1738] Event log for collection management setting (#6699)

* [AC-1117] Add manage permission (#5910)

* Add 'manage' option to collection access permissions

* Add 'manage' to collection permissions

* remove service accidentally committed from another branch

* Update CLI commands

* update message casing to be consistent

* access selector model updates

* [AC-1374] Limit collection create/delete (#5963)

* feat: udate request/response/data/domain models for new column, refs AC-1374

* feat: create collection management ui, refs AC-1374

* fix: remove limitCollectionCdOwnerAdmin boolean from org update request, refs AC-1374

* fix: moved collection management UI, removed comments, refs AC-1374

* fix: observable chaining now properly calls API when local org updated, refs AC-1374

* fix: remove unused form template variables, refs AC-1374

* fix: clean up observable chain, refs AC-1374

* fix: remove parent.parent route, refs AC-1374

* fix: add cd explaination, refs AC-1374

* [AC-1649] Remove organizationId from collection-bulk-delete.request (#6343)

* refactor: remove organizationId from collection-bulk-delete-request, refs AC-1649

* refactor: remove request model from dialog component, refs AC-1649

* [AC-1174] Bulk collection management (#6133)

* [AC-1174] Add bulk edit collection access event type

* [AC-1174] Add bulk edit collection access menu option

* [AC-1174] Add initial bulk collections access dialog

* [AC-1174] Add logic to open bulk edit collections dialog

* [AC-1174] Move AccessItemView helper methods to access selector model to be shared

* [AC-1174] Add access selector to bulk collections dialog

* [AC-1174] Add bulk assign access method to collection-admin service

* [AC-1174] Introduce strongly typed BulkCollectionAccessRequest model

* [AC-1174] Update vault item event type name

* Update DialogService dependency

---------

Co-authored-by: Thomas Rittson <trittson@bitwarden.com>

* Rename LimitCollectionCdOwnerAdmin -> LimitCollectionCreationDeletion (#6409)

* Add manage property to synced Collection data

* Revert "Add manage property to synced Collection data"

Pushed to feature branch instead of a new one

This reverts commit 65cd39589c.

* Add manage property to synced Collection data

* Revert "Add manage property to synced Collection data"

This reverts commit f7fa30b79a.

* [AC-1680] Add manage property to collection view and response models (#6417)

* Add manage property to synced Collection data

* Update tests

* feat: add LimitCollectionCreationDeletion conditional to canCreateNewCollections logic, refs AC-1659 (#6429)

* [AC-1669] Enforce Can Manage permission on Collection dialog (#6493)

* [AC-1669] Cleanup unhandled promise warnings

* [AC-1669] Force change detection to ensure AccessSelector has the most recent items

* [AC-1669] Initially select acting member when creating a new collection

* [AC-1669] Add validator to ensure manage permission is selected

* [AC-1669] Update error toast logic to support access tab errors

* [AC-1669] Add error icon

* [AC-1713] [Flexible collections] Add feature flags to clients (#6486)

* Add FlexibleCollections and BulkCollectionAccess flags

* Flag Collection Management settings

* Flag bulk collection access dialog

* Flag collection access modal changes

* feat: update event type with new collection management event, refs AC-1179

* [AC-1662] Add LimitCollecitonCreationDeletion conditional to CanDelete logic (#6526)

* feat: implement limitCollectionCreationDeletion into canDelete logic, refs AC-1662

* feat: make canDelete functions backwards compatible with feature flag, refs AC-1662

* feat: update vault-items.component for async getter, refs AC-1662

* feat: update configService injection, refs AC-1662

* feat: add config service to canDelete reference, refs AC-1662

* fix: remove configservice dependency from views, refs AC-1757 (#6686)

* feat: add new event type and update event service, refs AC-1179

* Add missing provider to vault-items.stories (#6690)

* fix: enum typo and name scheme, refs AC-1179

* fix: update message example, refs AC-1179

* fix: modifiedCollectionManagement message example, refs AC-1179

---------

Co-authored-by: Robyn MacCallum <robyntmaccallum@gmail.com>
Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
Co-authored-by: Shane Melton <smelton@bitwarden.com>
This commit is contained in:
Vincent Salucci 2023-11-27 12:08:25 -06:00 committed by GitHub
parent 97dbcbb815
commit aac4177a6c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 0 deletions

View File

@ -352,6 +352,14 @@ export class EventService {
case EventType.Organization_SponsorshipsSynced: case EventType.Organization_SponsorshipsSynced:
msg = humanReadableMsg = this.i18nService.t("sponsorshipsSynced"); msg = humanReadableMsg = this.i18nService.t("sponsorshipsSynced");
break; break;
case EventType.Organization_CollectionManagementUpdated:
msg = this.i18nService.t("modifiedCollectionManagement", this.formatOrganizationId(ev));
humanReadableMsg = this.i18nService.t(
"modifiedCollectionManagement",
this.getShortId(ev.organizationId)
);
break;
// Policies // Policies
case EventType.Policy_Updated: { case EventType.Policy_Updated: {
msg = this.i18nService.t("modifiedPolicyId", this.formatPolicyId(ev)); msg = this.i18nService.t("modifiedPolicyId", this.formatPolicyId(ev));
@ -569,6 +577,13 @@ export class EventService {
return a.outerHTML; return a.outerHTML;
} }
private formatOrganizationId(ev: EventResponse) {
const shortId = this.getShortId(ev.organizationId);
const a = this.makeAnchor(shortId);
a.setAttribute("href", "#/organizations/" + ev.organizationId + "/settings/account");
return a.outerHTML;
}
private formatPolicyId(ev: EventResponse) { private formatPolicyId(ev: EventResponse) {
const shortId = this.getShortId(ev.policyId); const shortId = this.getShortId(ev.policyId);
const a = this.makeAnchor(shortId); const a = this.makeAnchor(shortId);

View File

@ -7404,6 +7404,15 @@
"passkeyNotCopiedAlert": { "passkeyNotCopiedAlert": {
"message": "The passkey will not be copied to the cloned item. Do you want to continue cloning this item?" "message": "The passkey will not be copied to the cloned item. Do you want to continue cloning this item?"
}, },
"modifiedCollectionManagement": {
"message": "Modified collection management setting $ID$.",
"placeholders": {
"id": {
"content": "$1",
"example": "Unique ID"
}
}
},
"seeDetailedInstructions": { "seeDetailedInstructions": {
"message": "See detailed instructions on our help site at", "message": "See detailed instructions on our help site at",
"description": "This is followed a by a hyperlink to the help website." "description": "This is followed a by a hyperlink to the help website."

View File

@ -64,6 +64,7 @@ export enum EventType {
Organization_EnabledKeyConnector = 1606, Organization_EnabledKeyConnector = 1606,
Organization_DisabledKeyConnector = 1607, Organization_DisabledKeyConnector = 1607,
Organization_SponsorshipsSynced = 1608, Organization_SponsorshipsSynced = 1608,
Organization_CollectionManagementUpdated = 1609,
Policy_Updated = 1700, Policy_Updated = 1700,