feat(housekeeping): integrate studio operations

This commit is contained in:
Simo committed 2026-08-30 15:29:58 +02:00
1 parent 020c06f172
commit 2e95a106e0
36 files changed
+2296 -60

No files matched your search

+10 -2
View File
@@ -89,8 +89,10 @@ export async function importClothingSet(params: {
setType: string;
setId: number;
onProgress?: (status: string) => void;
signal?: AbortSignal;
}): Promise<ImportClothingSetResult> {
const { setType, setId, onProgress } = params;
const { setType, setId, onProgress, signal } = params;
signal?.throwIfAborted();
const warnings: string[] = [];
const [officialFd, officialLibs] = await Promise.all([
@@ -136,12 +138,17 @@ export async function importClothingSet(params: {
let hardFail = false;
for (const libId of requiredLibIds) {
signal?.throwIfAborted();
const officialLib = officialLibs.find((l) => l.id === libId);
if (!officialLib) continue;
if (!localLibIds.has(libId)) {
onProgress?.(`importing library ${libId}`);
const result = await importSingleFigure({ lib: libId, onProgress });
const result = await importSingleFigure({
lib: libId,
onProgress,
signal,
});
if (!result.ok) {
hardFail = true;
warnings.push(
@@ -169,6 +176,7 @@ export async function importClothingSet(params: {
}
const mappedSet = mapOfficialSet(set);
signal?.throwIfAborted();
await mergeSet(setType, st.paletteId, mappedSet as never);
if (palette) {