diff --git a/apps/web/src/locales/en/messages.json b/apps/web/src/locales/en/messages.json
index 80c9889818..9cef561303 100644
--- a/apps/web/src/locales/en/messages.json
+++ b/apps/web/src/locales/en/messages.json
@@ -717,6 +717,9 @@
"yourVaultIsLocked": {
"message": "Your vault is locked. Verify your master password to continue."
},
+ "uuid":{
+ "message" : "UUID"
+ },
"unlock": {
"message": "Unlock"
},
@@ -948,6 +951,9 @@
"copyVerificationCode": {
"message": "Copy verification code"
},
+ "copyUuid": {
+ "message": "Copy UUID"
+ },
"warning": {
"message": "Warning"
},
diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/overview/overview.component.html b/bitwarden_license/bit-web/src/app/secrets-manager/overview/overview.component.html
index bc7f15f4b8..fd738d59b8 100644
--- a/bitwarden_license/bit-web/src/app/secrets-manager/overview/overview.component.html
+++ b/bitwarden_license/bit-web/src/app/secrets-manager/overview/overview.component.html
@@ -63,6 +63,7 @@
(editSecretEvent)="openEditSecret($event)"
(copySecretNameEvent)="copySecretName($event)"
(copySecretValueEvent)="copySecretValue($event)"
+ (copySecretUuidEvent)="copySecretUuid($event)"
[secrets]="view.latestSecrets"
>
0" class="tw-ml-auto tw-mt-4 tw-max-w-max">
diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/overview/overview.component.ts b/bitwarden_license/bit-web/src/app/secrets-manager/overview/overview.component.ts
index b2caa9c0c2..729ba694d9 100644
--- a/bitwarden_license/bit-web/src/app/secrets-manager/overview/overview.component.ts
+++ b/bitwarden_license/bit-web/src/app/secrets-manager/overview/overview.component.ts
@@ -290,6 +290,10 @@ export class OverviewComponent implements OnInit, OnDestroy {
);
}
+ copySecretUuid(id: string) {
+ SecretsListComponent.copySecretUuid(id, this.platformUtilsService, this.i18nService);
+ }
+
protected hideOnboarding() {
this.showOnboarding = false;
this.saveCompletedTasks(this.organizationId, {
diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/projects/project/project-secrets.component.html b/bitwarden_license/bit-web/src/app/secrets-manager/projects/project/project-secrets.component.html
index f5edf2de0e..980f38ca15 100644
--- a/bitwarden_license/bit-web/src/app/secrets-manager/projects/project/project-secrets.component.html
+++ b/bitwarden_license/bit-web/src/app/secrets-manager/projects/project/project-secrets.component.html
@@ -16,6 +16,7 @@
(editSecretEvent)="openEditSecret($event)"
(copySecretNameEvent)="copySecretName($event)"
(copySecretValueEvent)="copySecretValue($event)"
+ (copySecretUuidEvent)="copySecretUuid($event)"
[secrets]="projectSecrets.secrets"
>
diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/projects/project/project-secrets.component.ts b/bitwarden_license/bit-web/src/app/secrets-manager/projects/project/project-secrets.component.ts
index c9ecbb3e37..759fb104b1 100644
--- a/bitwarden_license/bit-web/src/app/secrets-manager/projects/project/project-secrets.component.ts
+++ b/bitwarden_license/bit-web/src/app/secrets-manager/projects/project/project-secrets.component.ts
@@ -109,4 +109,8 @@ export class ProjectSecretsComponent {
this.secretService
);
}
+
+ copySecretUuid(id: string) {
+ SecretsListComponent.copySecretUuid(id, this.platformUtilsService, this.i18nService);
+ }
}
diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/secrets/secrets.component.html b/bitwarden_license/bit-web/src/app/secrets-manager/secrets/secrets.component.html
index cb7a882f2f..be30d381f1 100644
--- a/bitwarden_license/bit-web/src/app/secrets-manager/secrets/secrets.component.html
+++ b/bitwarden_license/bit-web/src/app/secrets-manager/secrets/secrets.component.html
@@ -12,6 +12,7 @@
(editSecretEvent)="openEditSecret($event)"
(copySecretNameEvent)="copySecretName($event)"
(copySecretValueEvent)="copySecretValue($event)"
+ (copySecretUuidEvent)="copySecretUuid($event)"
[secrets]="secrets$ | async"
[search]="search"
>
diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/secrets/secrets.component.ts b/bitwarden_license/bit-web/src/app/secrets-manager/secrets/secrets.component.ts
index dfa489d491..02bd6d3cf1 100644
--- a/bitwarden_license/bit-web/src/app/secrets-manager/secrets/secrets.component.ts
+++ b/bitwarden_license/bit-web/src/app/secrets-manager/secrets/secrets.component.ts
@@ -96,4 +96,8 @@ export class SecretsComponent implements OnInit {
this.secretService
);
}
+
+ copySecretUuid(id: string) {
+ SecretsListComponent.copySecretUuid(id, this.platformUtilsService, this.i18nService);
+ }
}
diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/shared/secrets-list.component.html b/bitwarden_license/bit-web/src/app/secrets-manager/shared/secrets-list.component.html
index 61b103a05b..e065141e82 100644
--- a/bitwarden_license/bit-web/src/app/secrets-manager/shared/secrets-list.component.html
+++ b/bitwarden_license/bit-web/src/app/secrets-manager/shared/secrets-list.component.html
@@ -64,9 +64,30 @@
-
+
+
+
+
+
+ {{ secret.id }}
+
+
+
{{ secret.name }}
|
diff --git a/bitwarden_license/bit-web/src/app/secrets-manager/shared/secrets-list.component.ts b/bitwarden_license/bit-web/src/app/secrets-manager/shared/secrets-list.component.ts
index 59a99bb1e3..3f653434d6 100644
--- a/bitwarden_license/bit-web/src/app/secrets-manager/shared/secrets-list.component.ts
+++ b/bitwarden_license/bit-web/src/app/secrets-manager/shared/secrets-list.component.ts
@@ -38,6 +38,7 @@ export class SecretsListComponent implements OnDestroy {
@Output() editSecretEvent = new EventEmitter
();
@Output() copySecretNameEvent = new EventEmitter();
@Output() copySecretValueEvent = new EventEmitter();
+ @Output() copySecretUuidEvent = new EventEmitter();
@Output() onSecretCheckedEvent = new EventEmitter();
@Output() deleteSecretsEvent = new EventEmitter();
@Output() newSecretEvent = new EventEmitter();
@@ -149,6 +150,19 @@ export class SecretsListComponent implements OnDestroy {
});
}
+ static copySecretUuid(
+ id: string,
+ platformUtilsService: PlatformUtilsService,
+ i18nService: I18nService
+ ) {
+ platformUtilsService.copyToClipboard(id);
+ platformUtilsService.showToast(
+ "success",
+ null,
+ i18nService.t("valueCopied", i18nService.t("uuid"))
+ );
+ }
+
/**
* TODO: Remove in favor of updating `PlatformUtilsService.copyToClipboard`
*/