From 8939ebbf4e9031fe58bdf63ce2aaff036870ddc7 Mon Sep 17 00:00:00 2001 From: Abhishek Kumar Date: Thu, 28 Sep 2023 18:32:36 +0530 Subject: [PATCH] ui: allow copying password from notification (#7985) * ui: allow copying password from notification Signed-off-by: Abhishek Kumar * fix warnings, use clipboard lib Signed-off-by: Abhishek Kumar * fix for deploy vm Signed-off-by: Abhishek Kumar --------- Signed-off-by: Abhishek Kumar --- ui/public/locales/en.json | 1 + ui/src/config/section/compute.js | 8 +++++- ui/src/views/AutogenView.vue | 42 +++++++++++++++++++++++++------ ui/src/views/compute/DeployVM.vue | 20 ++++++++++++++- 4 files changed, 61 insertions(+), 10 deletions(-) diff --git a/ui/public/locales/en.json b/ui/public/locales/en.json index 7b7bb0810b5..216c6168c5f 100644 --- a/ui/public/locales/en.json +++ b/ui/public/locales/en.json @@ -517,6 +517,7 @@ "label.copy.clipboard": "Copy to clipboard", "label.copy.consoleurl": "Copy console URL to clipboard", "label.copyid": "Copy ID", +"label.copy.password": "Copy password", "label.core": "Core", "label.core.zone.type": "Core zone type", "label.counter": "Counter", diff --git a/ui/src/config/section/compute.js b/ui/src/config/section/compute.js index 6602ecb884c..22ee2b007f5 100644 --- a/ui/src/config/section/compute.js +++ b/ui/src/config/section/compute.js @@ -370,7 +370,13 @@ export default { message: 'message.action.instance.reset.password', dataView: true, show: (record) => { return ['Stopped'].includes(record.state) && record.passwordenabled }, - response: (result) => { return result.virtualmachine && result.virtualmachine.password ? `The password of VM ${result.virtualmachine.displayname} is ${result.virtualmachine.password}` : null } + response: (result) => { + return { + message: result.virtualmachine && result.virtualmachine.password ? `The password of VM ${result.virtualmachine.displayname} is ${result.virtualmachine.password}` : null, + copybuttontext: result.virtualmachine.password ? 'label.copy.password' : null, + copytext: result.virtualmachine.password ? result.virtualmachine.password : null + } + } }, { api: 'resetSSHKeyForVirtualMachine', diff --git a/ui/src/views/AutogenView.vue b/ui/src/views/AutogenView.vue index ba1b87042b7..fa33be8d1b0 100644 --- a/ui/src/views/AutogenView.vue +++ b/ui/src/views/AutogenView.vue @@ -444,7 +444,8 @@