@shapediver/sdk.sdtf-v1
Version:
Official sdTF SDK for TypeScript
29 lines • 1.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SdtfFormatter = void 0;
const ISdtfReadableComponentList_1 = require("../reader/ISdtfReadableComponentList");
const ISdtfComponentList_1 = require("../structure/ISdtfComponentList");
const SdtfComponentFactoryWrapper_1 = require("../structure/SdtfComponentFactoryWrapper");
const SdtfWriteableComponentPostProcessor_1 = require("../writer/SdtfWriteableComponentPostProcessor");
class SdtfFormatter {
constructor(integrations) {
this.factory = new SdtfComponentFactoryWrapper_1.SdtfComponentFactoryWrapper();
this.postProcessor = new SdtfWriteableComponentPostProcessor_1.SdtfWriteableComponentPostProcessor(integrations);
}
prettifyReadableAsset(asset) {
const readableList = (0, ISdtfReadableComponentList_1.readableComponentListFromAsset)(asset);
const componentList = this.factory.createFromReadable(readableList);
return this.prettifyAsset(componentList);
}
prettifyWriteableAsset(asset) {
const writeableList = this.postProcessor.optimize(asset);
const componentList = this.factory.createFromWriteable(writeableList);
return this.prettifyAsset(componentList);
}
prettifyAsset(componentList) {
const json = (0, ISdtfComponentList_1.toJsonContent)(componentList);
return JSON.stringify(json, undefined, 2);
}
}
exports.SdtfFormatter = SdtfFormatter;
//# sourceMappingURL=SdtfFormatter.js.map