UNPKG

@gmetrixr/rjson

Version:
29 lines (28 loc) 1.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const r_1 = require("../../../r"); /** * Add text version = v1 for existing elements */ class Migration { execute(projectJson) { const pJson = projectJson; const projectF = r_1.r.record(pJson); for (const scene of projectF.getRecords(r_1.RT.scene)) { const sceneF = r_1.r.record(scene); const textElements = sceneF.getAllDeepChildrenWithFilter(r_1.RT.element, (e) => e.props.element_type === r_1.en.ElementType.text); for (const element of textElements) { const elementF = r_1.r.element(element); // ! using get here instead of getValueOrDefault to get the actual value in the json const textVersion = elementF.get(r_1.rtp.element.text_version); if (textVersion === null || textVersion === undefined) { // if undefined or null, this is a legacy text element. elementF.set(r_1.rtp.element.text_version, "v1"); } } } projectF.set(r_1.rtp.project.version, 125); } } const migration = new Migration(); exports.default = migration;