diff --git a/src/data/schema/uiaf-schema.json b/src/data/schema/uiaf-schema.json index 60beba8b..9edbab47 100644 --- a/src/data/schema/uiaf-schema.json +++ b/src/data/schema/uiaf-schema.json @@ -41,8 +41,7 @@ "status": { "type": "number", "description": "Finished status", - "enum": [0, 1, 2, 3], - "enumDesc": "ACHIEVEMENT_INVALID = 0; ACHIEVEMENT_UNFINISHED = 1; ACHIEVEMENT_FINISHED = 2;ACHIEVEMENT_POINT_TAKEN = 3;" + "enum": [0, 1, 2, 3] }, "timestamp": { "type": "number", diff --git a/src/plugins/Sqlite/modules/userAchi.ts b/src/plugins/Sqlite/modules/userAchi.ts index a0d4df72..6fad86f1 100644 --- a/src/plugins/Sqlite/modules/userAchi.ts +++ b/src/plugins/Sqlite/modules/userAchi.ts @@ -141,10 +141,12 @@ async function updateAchievement(data: TGApp.Sqlite.Achievement.SingleTable): Pr */ function transDb2Uiaf(data: TGApp.Sqlite.Achievement.SingleTable): TGApp.Plugins.UIAF.Achievement { const isCompleted = data.isCompleted === 1; + let timestamp = 0; + if (isCompleted) timestamp = new Date(data.completedTime).getTime(); const status = getUiafStatus(isCompleted, data.progress); return { id: data.id, - timestamp: data.timestamp, + timestamp: timestamp, current: data.progress, status, }; diff --git a/src/utils/UIAF.ts b/src/utils/UIAF.ts index 907866ba..18e73f54 100644 --- a/src/utils/UIAF.ts +++ b/src/utils/UIAF.ts @@ -54,7 +54,7 @@ export async function getUiafHeader(): Promise { */ export async function verifyUiafData(path: string): Promise { const fileData: string = await fs.readTextFile(path); - const ajv = new Ajv({ strict: false }); + const ajv = new Ajv(); const validate = ajv.compile(UiafSchema); try { const fileJson = JSON.parse(fileData);