{
diff --git a/client/src/views/totp/ActivateTotpModal.vue b/client/src/views/totp/ActivateTotpModal.vue
index d4515175207..bc3360343db 100644
--- a/client/src/views/totp/ActivateTotpModal.vue
+++ b/client/src/views/totp/ActivateTotpModal.vue
@@ -68,34 +68,12 @@
{{ code }}
-
-
-
- {{ $msTranslate('Authentication.mfa.step2.buttonCopy') }}
-
-
- {{ $msTranslate('Authentication.mfa.step2.buttonCopied') }}
-
-
-
- {{ $msTranslate('Authentication.mfa.step2.copyError') }}
-
+
@@ -161,9 +139,19 @@ import {
} from '@/parsec';
import { Resources, ResourcesManager } from '@/services/resourcesManager';
import PromptCurrentAuthentication from '@/views/users/PromptCurrentAuthentication.vue';
-import { IonButton, IonIcon, IonPage, IonText, modalController } from '@ionic/vue';
-import { checkmarkCircle, copy } from 'ionicons/icons';
-import { Clipboard, MsInput, MsModal, MsModalResult, MsReportText, MsReportTheme, MsSpinner, useWindowSize } from 'megashark-lib';
+import { IonPage, IonText, modalController } from '@ionic/vue';
+import { copy } from 'ionicons/icons';
+import {
+ Clipboard,
+ MsFeedbackButton,
+ MsInput,
+ MsModal,
+ MsModalResult,
+ MsReportText,
+ MsReportTheme,
+ MsSpinner,
+ useWindowSize,
+} from 'megashark-lib';
import QRCodeVue3 from 'qrcode-vue3';
import { computed, onMounted, ref, toRaw } from 'vue';
@@ -185,7 +173,6 @@ const { isLargeDisplay } = useWindowSize();
const url = ref('');
const code = ref('');
const verifyCode = ref('');
-const codeCopied = ref(undefined);
const currentStep = ref(
props.params.mode === 'setup' || props.params.mode === 'activate' ? Steps.PromptAuthentication : Steps.Information,
);
@@ -283,11 +270,8 @@ onMounted(async () => {
}
});
-async function copyCode(): Promise {
- codeCopied.value = await Clipboard.writeText(code.value);
- setTimeout(() => {
- codeCopied.value = undefined;
- }, 2000);
+async function copyCode(): Promise {
+ return await Clipboard.writeText(code.value);
}
async function setupTotp(): Promise {