ds4/src/migration/002.js

39 lines
1.1 KiB
JavaScript

// SPDX-FileCopyrightText: 2021 Johannes Loher
//
// SPDX-License-Identifier: MIT
import {
getSceneMigrator,
migrateCollection,
migrateCompendiums,
getCompendiumMigrator,
getActorMigrator,
} from "./migrationHelpers.js";
/** @type {import("./migration.js").Migration["migrate"]} */
async function migrate() {
await migrateCollection(game.items, migrateItem);
await migrateCollection(game.actors, migrateActor);
await migrateCollection(game.scenes, migrateScene);
await migrateCompendiums(migrateCompendium);
}
/** @type {import('./migrationHelpers.js').Migrator<Item>} */
async function migrateItem(item) {
if (item.type === "equipment" || item.type === "trinket") {
await item.update({ type: item.type === "equipment" ? "loot" : "equipment" });
}
}
const migrateActor = getActorMigrator(migrateItem);
const migrateScene = getSceneMigrator(migrateActor);
const migrateCompendium = getCompendiumMigrator(
{ migrateItem, migrateActor, migrateScene },
{ migrateToTemplateEarly: false },
);
/** @type {import("./migration.js").Migration} */
export const migration = {
migrate,
migrateCompendium,
};