Merge remote-tracking branch 'upstream/main' into splashcat-exporter-v2

splashcat-exporter-v2
Rosalina 2024-05-14 01:38:39 -04:00
commit 0574a12f96
No known key found for this signature in database
5 changed files with 43 additions and 22 deletions

View File

@ -1,3 +1,13 @@
## 0.4.17
feat: update `WEB_VIEW_VERSION` and `NSOAPP_VERSION`
## 0.4.16
fix: `The stream is already locked` in monitor mode
feat: add Fresh Season 2024
## 0.4.15 ## 0.4.15
feat: add znca headers ([#95](https://github.com/spacemeowx2/s3si.ts/issues/95)) feat: add znca headers ([#95](https://github.com/spacemeowx2/s3si.ts/issues/95))

View File

@ -9,7 +9,7 @@
}, },
"package": { "package": {
"productName": "s3si-ts", "productName": "s3si-ts",
"version": "0.4.15" "version": "0.4.17"
}, },
"tauri": { "tauri": {
"allowlist": { "allowlist": {

View File

@ -42,6 +42,12 @@ export const SEASONS: Season[] = [
start: new Date("2023-12-01T00:00:00+00:00"), start: new Date("2023-12-01T00:00:00+00:00"),
end: new Date("2024-03-01T00:00:00+00:00"), end: new Date("2024-03-01T00:00:00+00:00"),
}, },
{
id: "season202403",
name: "Fresh Season 2024",
start: new Date("2024-03-01T00:00:00+00:00"),
end: new Date("2024-06-01T00:00:00+00:00"),
},
]; ];
export const getSeason = (date: Date): Season | undefined => { export const getSeason = (date: Date): Season | undefined => {

View File

@ -275,11 +275,13 @@ export class App {
); );
} }
}; };
const endBar = () => { const end = () => bar?.end();
bar?.end();
};
return { redraw, endBar }; return {
redraw,
end,
[Symbol.dispose]: end,
};
} }
private async exportOnce() { private async exportOnce() {
const splatnet = new Splatnet3({ profile: this.profile, env: this.env }); const splatnet = new Splatnet3({ profile: this.profile, env: this.env });
@ -300,7 +302,7 @@ export class App {
splatnet, splatnet,
); );
const { redraw, endBar } = this.exporterProgress("Export vs games"); using bar1 = this.exporterProgress("Export vs games");
const fetcher = new GameFetcher({ const fetcher = new GameFetcher({
cache: this.opts.cache ?? new FileCache(this.profile.state.cacheDir), cache: this.opts.cache ?? new FileCache(this.profile.state.cacheDir),
state: this.profile.state, state: this.profile.state,
@ -320,7 +322,7 @@ export class App {
gameListFetcher, gameListFetcher,
stepProgress: stats[e.name], stepProgress: stats[e.name],
onStep: () => { onStep: () => {
redraw(e.name, progress(stats[e.name])); bar1.redraw(e.name, progress(stats[e.name]));
}, },
}), }),
) )
@ -331,7 +333,7 @@ export class App {
), ),
); );
endBar(); await bar1.end();
this.printStats(stats); this.printStats(stats);
if (errors.length > 0) { if (errors.length > 0) {
@ -353,7 +355,7 @@ export class App {
} else { } else {
const gameListFetcher = new CoopListFetcher(splatnet); const gameListFetcher = new CoopListFetcher(splatnet);
const { redraw, endBar } = this.exporterProgress("Export coop games"); using bar2 = this.exporterProgress("Export coop games");
const fetcher = new GameFetcher({ const fetcher = new GameFetcher({
cache: this.opts.cache ?? new FileCache(this.profile.state.cacheDir), cache: this.opts.cache ?? new FileCache(this.profile.state.cacheDir),
state: this.profile.state, state: this.profile.state,
@ -371,7 +373,7 @@ export class App {
gameListFetcher, gameListFetcher,
stepProgress: stats[e.name], stepProgress: stats[e.name],
onStep: () => { onStep: () => {
redraw(e.name, progress(stats[e.name])); bar2.redraw(e.name, progress(stats[e.name]));
}, },
}), }),
) )
@ -382,7 +384,7 @@ export class App {
), ),
); );
endBar(); await bar2.end();
this.printStats(stats); this.printStats(stats);
if (errors.length > 0) { if (errors.length > 0) {
@ -466,14 +468,17 @@ export class App {
display: "[:bar] :completed/:total", display: "[:bar] :completed/:total",
}) })
: undefined; : undefined;
for (const i of Array(sec).keys()) { try {
bar?.render([{ for (const i of Array(sec).keys()) {
completed: i, bar?.render([{
total: sec, completed: i,
}]); total: sec,
await delay(1000); }]);
await delay(1000);
}
} finally {
await bar?.end();
} }
bar?.end();
} }
async run() { async run() {
await this.profile.readState(); await this.profile.readState();
@ -560,7 +565,7 @@ export class App {
} }
printStats(stats: Record<string, StepProgress>) { printStats(stats: Record<string, StepProgress>) {
this.env.logger.log( this.env.logger.log(
`Exported ${ `\nExported ${
Object.entries(stats) Object.entries(stats)
.map(([name, { exported }]) => `${name}: ${exported}`) .map(([name, { exported }]) => `${name}: ${exported}`)
.join(", ") .join(", ")

View File

@ -1,9 +1,9 @@
import type { StatInkPostBody, VsHistoryDetail } from "./types.ts"; import type { StatInkPostBody, VsHistoryDetail } from "./types.ts";
export const AGENT_NAME = "s3si.ts"; export const AGENT_NAME = "s3si.ts";
export const S3SI_VERSION = "0.4.15"; export const S3SI_VERSION = "0.4.17";
export const NSOAPP_VERSION = "2.9.0"; export const NSOAPP_VERSION = "2.10.0";
export const WEB_VIEW_VERSION = "6.0.0-eb33aadc"; export const WEB_VIEW_VERSION = "6.0.0-2ba8cb04";
export enum Queries { export enum Queries {
HomeQuery = HomeQuery =
"51fc56bbf006caf37728914aa8bc0e2c86a80cf195b4d4027d6822a3623098a8", "51fc56bbf006caf37728914aa8bc0e2c86a80cf195b4d4027d6822a3623098a8",