Browse Source

Linting

pull/135/head
Jose Olarte III 2 weeks ago
parent
commit
47501ae917
  1. 2
      src/components/DataExportSection.vue
  2. 21
      src/db/index.ts
  3. 4
      src/libs/util.ts
  4. 10
      src/views/ContactQRScanShowView.vue
  5. 10
      src/views/NewIdentifierView.vue

2
src/components/DataExportSection.vue

@ -136,7 +136,7 @@ export default class DataExportSection extends Vue {
transform: (table, value, key) => { transform: (table, value, key) => {
if (table === "contacts") { if (table === "contacts") {
// Dexie inserts a number 0 when some are undefined, so we need to totally remove them. // Dexie inserts a number 0 when some are undefined, so we need to totally remove them.
Object.keys(value).forEach(prop => { Object.keys(value).forEach((prop) => {
if (value[prop] === undefined) { if (value[prop] === undefined) {
delete value[prop]; delete value[prop];
} }

21
src/db/index.ts

@ -90,7 +90,10 @@ db.on("populate", async () => {
try { try {
await db.settings.add(DEFAULT_SETTINGS); await db.settings.add(DEFAULT_SETTINGS);
} catch (error) { } catch (error) {
console.error("Error populating the database with default settings:", error); console.error(
"Error populating the database with default settings:",
error,
);
} }
}); });
@ -105,7 +108,7 @@ async function safeOpenDatabase(retries = 1, delay = 500): Promise<void> {
// Create a promise that rejects after 5 seconds // Create a promise that rejects after 5 seconds
const timeoutPromise = new Promise((_, reject) => { const timeoutPromise = new Promise((_, reject) => {
setTimeout(() => reject(new Error('Database open timed out')), 500); setTimeout(() => reject(new Error("Database open timed out")), 500);
}); });
// Race between the open operation and the timeout // Race between the open operation and the timeout
@ -123,7 +126,7 @@ async function safeOpenDatabase(retries = 1, delay = 500): Promise<void> {
console.error(`Attempt ${i + 1}: Database open failed:`, error); console.error(`Attempt ${i + 1}: Database open failed:`, error);
if (i < retries - 1) { if (i < retries - 1) {
console.log(`Attempt ${i + 1}: Waiting ${delay}ms before retry...`); console.log(`Attempt ${i + 1}: Waiting ${delay}ms before retry...`);
await new Promise(resolve => setTimeout(resolve, delay)); await new Promise((resolve) => setTimeout(resolve, delay));
} else { } else {
throw error; throw error;
} }
@ -145,10 +148,16 @@ export async function updateDefaultSettings(
await safeOpenDatabase(); await safeOpenDatabase();
} catch (openError: unknown) { } catch (openError: unknown) {
console.error("Failed to open database:", openError); console.error("Failed to open database:", openError);
const errorMessage = openError instanceof Error ? openError.message : String(openError); const errorMessage =
throw new Error(`Database connection failed: ${errorMessage}. Please try again or restart the app.`); openError instanceof Error ? openError.message : String(openError);
throw new Error(
`Database connection failed: ${errorMessage}. Please try again or restart the app.`,
);
} }
const result = await db.settings.update(MASTER_SETTINGS_KEY, settingsChanges); const result = await db.settings.update(
MASTER_SETTINGS_KEY,
settingsChanges,
);
return result; return result;
} catch (error) { } catch (error) {
console.error("Error updating default settings:", error); console.error("Error updating default settings:", error);

4
src/libs/util.ts

@ -553,7 +553,9 @@ export const generateSaveAndActivateIdentity = async (): Promise<string> => {
await updateDefaultSettings({ activeDid: newId.did }); await updateDefaultSettings({ activeDid: newId.did });
} catch (error) { } catch (error) {
console.error("Failed to update default settings:", error); console.error("Failed to update default settings:", error);
throw new Error("Failed to set default settings. Please try again or restart the app."); throw new Error(
"Failed to set default settings. Please try again or restart the app.",
);
} }
await updateAccountSettings(newId.did, { isRegistered: false }); await updateAccountSettings(newId.did, { isRegistered: false });
return newId.did; return newId.did;

10
src/views/ContactQRScanShowView.vue

@ -726,9 +726,11 @@ export default class ContactQRScanShow extends Vue {
// Apply mirroring after a short delay to ensure video element is ready // Apply mirroring after a short delay to ensure video element is ready
setTimeout(() => { setTimeout(() => {
const videoElement = document.querySelector('.qr-scanner video') as HTMLVideoElement; const videoElement = document.querySelector(
".qr-scanner video",
) as HTMLVideoElement;
if (videoElement) { if (videoElement) {
videoElement.style.transform = 'scaleX(-1)'; videoElement.style.transform = "scaleX(-1)";
} }
}, 1000); }, 1000);
} }
@ -943,7 +945,9 @@ export default class ContactQRScanShow extends Vue {
// Add method to detect desktop browser // Add method to detect desktop browser
private detectDesktopBrowser(): boolean { private detectDesktopBrowser(): boolean {
const userAgent = navigator.userAgent.toLowerCase(); const userAgent = navigator.userAgent.toLowerCase();
return !/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(userAgent); return !/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(
userAgent,
);
} }
// Update the computed property for camera mirroring // Update the computed property for camera mirroring

10
src/views/NewIdentifierView.vue

@ -34,9 +34,13 @@
</div> </div>
<div v-else-if="hitError"> <div v-else-if="hitError">
<span class="text-xl">Error Creating Identity</span> <span class="text-xl">Error Creating Identity</span>
<font-awesome icon="exclamation-triangle" class="fa-fw text-red-500 ml-2"></font-awesome> <font-awesome
icon="exclamation-triangle"
class="fa-fw text-red-500 ml-2"
></font-awesome>
<p class="text-sm text-gray-500"> <p class="text-sm text-gray-500">
Try fully restarting the app. If that doesn't work, back up all data (identities and other data) and reinstall the app. Try fully restarting the app. If that doesn't work, back up all data
(identities and other data) and reinstall the app.
</p> </p>
</div> </div>
<div v-else> <div v-else>
@ -85,7 +89,7 @@ export default class NewIdentifierView extends Vue {
.catch((error) => { .catch((error) => {
this.loading = false; this.loading = false;
this.hitError = true; this.hitError = true;
console.error('Failed to generate identity:', error); console.error("Failed to generate identity:", error);
}); });
} }
} }

Loading…
Cancel
Save