UNPKG

vox-saver

Version:

Takes a JavaScript Object of .vox file data and returns a Byte Array with all the containing informations

29 lines 1.15 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; const unparseVoxChunk_1 = __importDefault(require("../unparseVoxChunk/unparseVoxChunk")); const isObject_1 = __importDefault(require("lodash/isObject")); const write4ByteInteger_1 = __importDefault(require("../shared/write4ByteInteger/write4ByteInteger")); const writeMAIN = (content) => { return [ "MAIN".split("").map(char => char.charCodeAt(0)), (0, write4ByteInteger_1.default)(0), (0, write4ByteInteger_1.default)(content.length), content, ]; }; const writeRiffFile = (voxStructure) => { let content = []; Object.keys(voxStructure).forEach((key) => { const value = voxStructure[key]; if (value === undefined || ((0, isObject_1.default)(value) && Object.keys(value).length === 0)) { return; } content.push((0, unparseVoxChunk_1.default)(key, value)); }); content = writeMAIN(content.flat()).flat(); return content; }; module.exports = writeRiffFile; //# sourceMappingURL=writeRiffFile.js.map