mirror of
https://github.com/HolographicHat/Yae.git
synced 2025-12-12 17:38:13 +08:00
support snapgenshin
This commit is contained in:
27
export.js
27
export.js
@@ -2,7 +2,7 @@ const fs = require("fs")
|
|||||||
const axios = require("axios")
|
const axios = require("axios")
|
||||||
const readline = require("readline")
|
const readline = require("readline")
|
||||||
const { loadCache, log } = require("./utils")
|
const { loadCache, log } = require("./utils")
|
||||||
const { openUrl } = require("./native")
|
const { openUrl, copyToClipboard } = require("./native")
|
||||||
|
|
||||||
const exportToSeelie = proto => {
|
const exportToSeelie = proto => {
|
||||||
const out = { achievements: {} }
|
const out = { achievements: {} }
|
||||||
@@ -33,6 +33,24 @@ const exportToPaimon = async proto => {
|
|||||||
log(`导出为文件: ${fp}`)
|
log(`导出为文件: ${fp}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const exportToSnapGenshin = async proto => {
|
||||||
|
const out = []
|
||||||
|
const p = i => i.toString().padStart(2, "0")
|
||||||
|
const getDate = ts => {
|
||||||
|
const d = new Date(parseInt(`${ts}000`))
|
||||||
|
return `${d.getFullYear()}-${p(d.getMonth()+1)}-${p(d.getDate())} ${p(d.getHours())}:${p(d.getMinutes())}:${p(d.getSeconds())}`
|
||||||
|
}
|
||||||
|
proto.list.filter(a => a.status === 3 || a.status === 2).forEach(({id, finishTimestamp}) => {
|
||||||
|
out.push({
|
||||||
|
id: id,
|
||||||
|
dateTime: getDate(finishTimestamp)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
const json = JSON.stringify(out, null, 2)
|
||||||
|
copyToClipboard(json)
|
||||||
|
log("导出内容已复制到剪贴板")
|
||||||
|
}
|
||||||
|
|
||||||
const exportToCocogoat = async proto => {
|
const exportToCocogoat = async proto => {
|
||||||
const out = {
|
const out = {
|
||||||
achievements: []
|
achievements: []
|
||||||
@@ -122,16 +140,19 @@ const exportData = async proto => {
|
|||||||
const question = (query) => new Promise(resolve => {
|
const question = (query) => new Promise(resolve => {
|
||||||
rl.question(query, resolve)
|
rl.question(query, resolve)
|
||||||
})
|
})
|
||||||
const chosen = await question("导出至: \n[0] 椰羊 (https://cocogoat.work/achievement)\n[1] Paimon.moe\n[2] Seelie.me\n[3] 表格文件 (默认)\n输入一个数字(0-3): ")
|
const chosen = await question("导出至: \n[0] 椰羊 (https://cocogoat.work/achievement)\n[1] SnapGenshin\n[2] Paimon.moe\n[3] Seelie.me\n[4] 表格文件 (默认)\n输入一个数字(0-4): ")
|
||||||
rl.close()
|
rl.close()
|
||||||
switch (chosen) {
|
switch (chosen) {
|
||||||
case "0":
|
case "0":
|
||||||
await exportToCocogoat(proto)
|
await exportToCocogoat(proto)
|
||||||
break
|
break
|
||||||
case "1":
|
case "1":
|
||||||
await exportToPaimon(proto)
|
await exportToSnapGenshin(proto)
|
||||||
break
|
break
|
||||||
case "2":
|
case "2":
|
||||||
|
await exportToPaimon(proto)
|
||||||
|
break
|
||||||
|
case "3":
|
||||||
await exportToSeelie(proto)
|
await exportToSeelie(proto)
|
||||||
break
|
break
|
||||||
case "raw":
|
case "raw":
|
||||||
|
|||||||
Reference in New Issue
Block a user