UNPKG

@gmetrixr/rjson

Version:
51 lines (50 loc) 2.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const r_1 = require("../../../r"); const R_1 = require("../../../r/R"); const recordFactories_1 = require("../../../r/recordFactories"); class Migration { execute(projectJson) { const pJson = projectJson; const projectF = r_1.r.project(pJson); const menus = projectF.getRecords(r_1.RT.menu); for (const menu of menus) { const menuF = new R_1.RecordFactory(menu); //Convert string id to number if (typeof menuF.get(r_1.rtp.menu.menu_scene_id) === "string") { const stringId = menuF.get(r_1.rtp.menu.menu_scene_id); menuF.set(r_1.rtp.menu.menu_scene_id, Number(stringId)); } const sceneId = menuF.get(r_1.rtp.menu.menu_scene_id); //Save in scene.props.linked_menu_id if (typeof sceneId === "number") { const scene = projectF.getRecord(r_1.RT.scene, sceneId); if (scene) { const sceneF = new recordFactories_1.SceneFactory(scene); sceneF.set(r_1.rtp.scene.linked_menu_id, menu.id); } } } const tms = projectF.getRecords(r_1.RT.tour_mode); for (const tourMode of tms) { const tourModeF = new R_1.RecordFactory(tourMode); //Convert string id to number if (typeof tourModeF.get(r_1.rtp.tour_mode.tour_mode_scene_id) === "string") { const stringId = tourModeF.get(r_1.rtp.tour_mode.tour_mode_scene_id); tourModeF.set(r_1.rtp.tour_mode.tour_mode_scene_id, Number(stringId)); } const sceneId = tourModeF.get(r_1.rtp.tour_mode.tour_mode_scene_id); //Save in scene.props.linked_tour_mode_id if (typeof sceneId === "number") { const scene = projectF.getRecord(r_1.RT.scene, sceneId); if (scene) { const sceneF = new recordFactories_1.SceneFactory(scene); sceneF.set(r_1.rtp.scene.linked_tour_mode_id, tourMode.id); } } } projectF.set(r_1.rtp.project.version, 156); } } const migration = new Migration(); exports.default = migration;