Browse Source

Lint-fix

pull/149/head
Jose Olarte III 4 weeks ago
parent
commit
48856d4fce
  1. 5
      src/components/IdentitySection.vue
  2. 44
      src/libs/util.ts
  3. 24
      src/test/PlatformServiceMixinTest.vue
  4. 55
      src/utils/PlatformServiceMixin.ts
  5. 5
      src/views/AccountViewView.vue

5
src/components/IdentitySection.vue

@ -55,10 +55,7 @@
aria-label="Delete profile image"
@click="deleteImage"
>
<font-awesome
icon="trash-can"
aria-hidden="true"
/>
<font-awesome icon="trash-can" aria-hidden="true" />
</button>
</span>
<div v-else class="text-center">

44
src/libs/util.ts

@ -973,28 +973,28 @@ export async function importFromMnemonic(
if (isTestUser0) {
// Set up Test User #0 specific settings with enhanced error handling
const platformService = await getPlatformService();
try {
// First, ensure the DID-specific settings record exists
await platformService.insertDidSpecificSettings(newId.did);
// Then update with Test User #0 specific settings
await platformService.updateDidSpecificSettings(newId.did, {
firstName: "User Zero",
isRegistered: true,
});
// Verify the settings were saved correctly
const verificationResult = await platformService.dbQuery(
"SELECT firstName, isRegistered FROM settings WHERE accountDid = ?",
[newId.did],
);
if (verificationResult?.values?.length) {
const settings = verificationResult.values[0];
const firstName = settings[0];
const isRegistered = settings[1];
logger.info("[importFromMnemonic] Test User #0 settings verification", {
did: newId.did,
firstName,
@ -1002,40 +1002,50 @@ export async function importFromMnemonic(
expectedFirstName: "User Zero",
expectedIsRegistered: true,
});
// If settings weren't saved correctly, try individual updates
if (firstName !== "User Zero" || isRegistered !== 1) {
logger.warn("[importFromMnemonic] Test User #0 settings not saved correctly, retrying with individual updates");
logger.warn(
"[importFromMnemonic] Test User #0 settings not saved correctly, retrying with individual updates",
);
await platformService.dbExec(
"UPDATE settings SET firstName = ? WHERE accountDid = ?",
["User Zero", newId.did],
);
await platformService.dbExec(
"UPDATE settings SET isRegistered = ? WHERE accountDid = ?",
[1, newId.did],
);
// Verify again
const retryResult = await platformService.dbQuery(
"SELECT firstName, isRegistered FROM settings WHERE accountDid = ?",
[newId.did],
);
if (retryResult?.values?.length) {
const retrySettings = retryResult.values[0];
logger.info("[importFromMnemonic] Test User #0 settings after retry", {
firstName: retrySettings[0],
isRegistered: retrySettings[1],
});
logger.info(
"[importFromMnemonic] Test User #0 settings after retry",
{
firstName: retrySettings[0],
isRegistered: retrySettings[1],
},
);
}
}
} else {
logger.error("[importFromMnemonic] Failed to verify Test User #0 settings - no record found");
logger.error(
"[importFromMnemonic] Failed to verify Test User #0 settings - no record found",
);
}
} catch (error) {
logger.error("[importFromMnemonic] Error setting up Test User #0 settings:", error);
logger.error(
"[importFromMnemonic] Error setting up Test User #0 settings:",
error,
);
// Don't throw - allow the import to continue even if settings fail
}
}

24
src/test/PlatformServiceMixinTest.vue

@ -3,16 +3,18 @@
<h2>PlatformServiceMixin Test</h2>
<button @click="testInsert">Test Insert</button>
<button @click="testUpdate">Test Update</button>
<button
:class="primaryButtonClasses"
@click="testUserZeroSettings"
>
<button :class="primaryButtonClasses" @click="testUserZeroSettings">
Test User #0 Settings
</button>
<div v-if="userZeroTestResult" class="mt-4 p-4 border border-gray-300 rounded-md bg-gray-50">
<div
v-if="userZeroTestResult"
class="mt-4 p-4 border border-gray-300 rounded-md bg-gray-50"
>
<h4 class="font-semibold mb-2">User #0 Settings Test Result:</h4>
<pre class="text-sm">{{ JSON.stringify(userZeroTestResult, null, 2) }}</pre>
<pre class="text-sm">{{
JSON.stringify(userZeroTestResult, null, 2)
}}</pre>
</div>
<pre>{{ result }}</pre>
</div>
@ -55,16 +57,16 @@ export default class PlatformServiceMixinTest extends Vue {
try {
// User #0's DID
const userZeroDid = "did:ethr:0x0000694B58C2cC69658993A90D3840C560f2F51F";
this.result = "Testing User #0 settings...";
// Test the debug methods
await this.$debugMergedSettings(userZeroDid);
// Get the actual settings
const didSettings = await this.$debugDidSettings(userZeroDid);
const accountSettings = await this.$accountSettings(userZeroDid);
this.userZeroTestResult = {
didSettings,
accountSettings,
@ -72,7 +74,7 @@ export default class PlatformServiceMixinTest extends Vue {
firstName: accountSettings.firstName,
timestamp: new Date().toISOString(),
};
this.result = `User #0 settings test completed. isRegistered: ${accountSettings.isRegistered}`;
} catch (error) {
this.result = `Error testing User #0 settings: ${error}`;

55
src/utils/PlatformServiceMixin.ts

@ -220,13 +220,20 @@ export const PlatformServiceMixin = {
const obj: Record<string, unknown> = {};
columns.forEach((column, index) => {
let value = row[index];
// Convert SQLite integer booleans to JavaScript booleans
if (column === 'isRegistered' || column === 'finishedOnboarding' ||
column === 'filterFeedByVisible' || column === 'filterFeedByNearby' ||
column === 'hideRegisterPromptOnNewContact' || column === 'showContactGivesInline' ||
column === 'showGeneralAdvanced' || column === 'showShortcutBvc' ||
column === 'warnIfProdServer' || column === 'warnIfTestServer') {
if (
column === "isRegistered" ||
column === "finishedOnboarding" ||
column === "filterFeedByVisible" ||
column === "filterFeedByNearby" ||
column === "hideRegisterPromptOnNewContact" ||
column === "showContactGivesInline" ||
column === "showGeneralAdvanced" ||
column === "showShortcutBvc" ||
column === "warnIfProdServer" ||
column === "warnIfTestServer"
) {
if (value === 1) {
value = true;
} else if (value === 0) {
@ -234,7 +241,7 @@ export const PlatformServiceMixin = {
}
// Keep null values as null
}
obj[column] = value;
});
return obj;
@ -1401,7 +1408,9 @@ export const PlatformServiceMixin = {
);
if (!result?.values?.length) {
logger.warn(`[PlatformServiceMixin] No settings found for DID: ${did}`);
logger.warn(
`[PlatformServiceMixin] No settings found for DID: ${did}`,
);
return null;
}
@ -1411,7 +1420,9 @@ export const PlatformServiceMixin = {
);
if (!mappedResults.length) {
logger.warn(`[PlatformServiceMixin] Failed to map settings for DID: ${did}`);
logger.warn(
`[PlatformServiceMixin] Failed to map settings for DID: ${did}`,
);
return null;
}
@ -1426,7 +1437,10 @@ export const PlatformServiceMixin = {
return settings;
} catch (error) {
logger.error(`[PlatformServiceMixin] Error debugging settings for DID ${did}:`, error);
logger.error(
`[PlatformServiceMixin] Error debugging settings for DID ${did}:`,
error,
);
return null;
}
},
@ -1440,14 +1454,24 @@ export const PlatformServiceMixin = {
async $debugMergedSettings(did: string): Promise<void> {
try {
// Get default settings
const defaultSettings = await this.$getSettings(MASTER_SETTINGS_KEY, {});
logger.info(`[PlatformServiceMixin] Default settings:`, defaultSettings);
const defaultSettings = await this.$getSettings(
MASTER_SETTINGS_KEY,
{},
);
logger.info(
`[PlatformServiceMixin] Default settings:`,
defaultSettings,
);
// Get DID-specific settings
const didSettings = await this.$debugDidSettings(did);
// Get merged settings
const mergedSettings = await this.$getMergedSettings(MASTER_SETTINGS_KEY, did, defaultSettings || {});
const mergedSettings = await this.$getMergedSettings(
MASTER_SETTINGS_KEY,
did,
defaultSettings || {},
);
logger.info(`[PlatformServiceMixin] Merged settings for ${did}:`, {
defaultSettings,
@ -1456,7 +1480,10 @@ export const PlatformServiceMixin = {
isRegistered: mergedSettings.isRegistered,
});
} catch (error) {
logger.error(`[PlatformServiceMixin] Error debugging merged settings for DID ${did}:`, error);
logger.error(
`[PlatformServiceMixin] Error debugging merged settings for DID ${did}:`,
error,
);
}
},
},

5
src/views/AccountViewView.vue

@ -1423,7 +1423,8 @@ export default class AccountViewView extends Vue {
return;
}
} catch (error) {
this.limitsMessage = ACCOUNT_VIEW_CONSTANTS.LIMITS.ERROR_RETRIEVING_LIMITS;
this.limitsMessage =
ACCOUNT_VIEW_CONSTANTS.LIMITS.ERROR_RETRIEVING_LIMITS;
console.log("error: ", error);
// this.notify.error(this.limitsMessage, TIMEOUTS.STANDARD);
} finally {
@ -1483,7 +1484,7 @@ export default class AccountViewView extends Vue {
async deleteImage(): Promise<void> {
try {
// Extract the image ID from the full URL
const imageId = this.profileImageUrl?.split('/').pop();
const imageId = this.profileImageUrl?.split("/").pop();
if (!imageId) {
this.notify.error("Invalid image URL");
return;

Loading…
Cancel
Save