fix test 40 for adding contacts (though clipboard is still broken)

This commit is contained in:
2026-01-01 20:25:40 -07:00
parent f64846ae17
commit 4a3b968ee2
2 changed files with 71 additions and 64 deletions

View File

@@ -843,17 +843,14 @@ export default class ContactsView extends Vue {
// Set visibility and get success message
const addedMessage = await this.handleContactVisibility(newContact);
// Show success notification
this.notify.success(addedMessage);
// Clear input field
this.contactInput = "";
// Handle registration prompt if needed
await this.handleRegistrationPrompt(newContact);
// Show success notification
this.notify.success(addedMessage);
// Show export data prompt after successful contact addition
await this.showExportDataPrompt();
} catch (err) {
this.handleContactAddError(err);
}
@@ -908,30 +905,35 @@ export default class ContactsView extends Vue {
newContact.registered === true // the new contact is already registered
) {
// if any of the above are true, we do not want to show the registration prompt
await this.showExportDataPrompt();
return;
}
setTimeout(() => {
this.$notify(
{
group: "modal",
type: "confirm",
title: "Register",
text: "Do you want to register them?",
onCancel: async (stopAsking?: boolean) => {
await this.handleRegistrationPromptResponse(stopAsking);
},
onNo: async (stopAsking?: boolean) => {
await this.handleRegistrationPromptResponse(stopAsking);
},
onYes: async () => {
await this.register(newContact);
},
promptToStopAsking: true,
this.$notify(
{
group: "modal",
type: "confirm",
title: "Register",
text: "Do you want to register them?",
onCancel: async (stopAsking?: boolean) => {
await this.handleRegistrationPromptResponse(stopAsking);
// Show export prompt after registration prompt is dismissed
await this.showExportDataPrompt();
},
-1,
);
}, 1000);
onNo: async (stopAsking?: boolean) => {
await this.handleRegistrationPromptResponse(stopAsking);
// Show export prompt after registration prompt is dismissed
await this.showExportDataPrompt();
},
onYes: async () => {
await this.register(newContact);
// Show export prompt after registration completes
await this.showExportDataPrompt();
},
promptToStopAsking: true,
},
-1,
);
}
/**
@@ -1338,25 +1340,23 @@ export default class ContactsView extends Vue {
* Prompts user to export their contact data as a backup
*/
private async showExportDataPrompt(): Promise<void> {
setTimeout(() => {
this.$notify(
{
group: "modal",
type: "confirm",
title: NOTIFY_EXPORT_DATA_PROMPT.title,
text: NOTIFY_EXPORT_DATA_PROMPT.message,
onYes: async () => {
await this.exportContactData();
},
yesText: "Export Data",
onNo: async () => {
// User chose not to export - no action needed
},
noText: "Not Now",
this.$notify(
{
group: "modal",
type: "confirm",
title: NOTIFY_EXPORT_DATA_PROMPT.title,
text: NOTIFY_EXPORT_DATA_PROMPT.message,
onYes: async () => {
await this.exportContactData();
},
-1,
);
}, 1000); // Small delay to ensure success notification is shown first
yesText: "Export Data",
onNo: async () => {
// User chose not to export - no action needed
},
noText: "Not Yet",
},
-1,
);
}
/**