UNPKG

wonder.js

Version:
513 lines (493 loc) 71.4 kB
'use strict'; var Js_dict = require("bs-platform/lib/js/js_dict.js"); var Json_decode$WonderBsJson = require("wonder-bs-json/lib/js/src/Json_decode.js"); function _convertAsset(json) { return Json_decode$WonderBsJson.field("asset", (function (json) { return /* record */[ /* version */Json_decode$WonderBsJson.field("version", Json_decode$WonderBsJson.string, json), /* generator */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("generator", Json_decode$WonderBsJson.string, param); }), json) ]; }), json); } function _convertSamplers(json) { return Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("samplers", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* magFilter */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("magFilter", Json_decode$WonderBsJson.$$int, param); }), json), /* minFilter */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("minFilter", Json_decode$WonderBsJson.$$int, param); }), json), /* wrapS */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("wrapS", Json_decode$WonderBsJson.$$int, param); }), json), /* wrapT */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("wrapT", Json_decode$WonderBsJson.$$int, param); }), json) ]; }), param); }), param); }), json); } function _convertBuffers(json) { return Json_decode$WonderBsJson.field("buffers", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* uri */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("uri", Json_decode$WonderBsJson.string, param); }), json), /* byteLength */Json_decode$WonderBsJson.field("byteLength", Json_decode$WonderBsJson.$$int, json) ]; }), param); }), json); } function _convertBufferViews(json) { return Json_decode$WonderBsJson.field("bufferViews", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* buffer */Json_decode$WonderBsJson.field("buffer", Json_decode$WonderBsJson.$$int, json), /* byteOffset */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("byteOffset", Json_decode$WonderBsJson.$$int, param); }), json), /* byteLength */Json_decode$WonderBsJson.field("byteLength", Json_decode$WonderBsJson.$$int, json), /* byteStride */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("byteStride", Json_decode$WonderBsJson.$$int, param); }), json) ]; }), param); }), json); } function _convertAccessors(json) { return Json_decode$WonderBsJson.field("accessors", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* bufferView */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("bufferView", Json_decode$WonderBsJson.$$int, param); }), json), /* byteOffset */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("byteOffset", Json_decode$WonderBsJson.$$int, param); }), json), /* count */Json_decode$WonderBsJson.field("count", Json_decode$WonderBsJson.$$int, json), /* componentType */Json_decode$WonderBsJson.field("componentType", Json_decode$WonderBsJson.$$int, json), /* type_ */Json_decode$WonderBsJson.field("type", Json_decode$WonderBsJson.string, json) ]; }), param); }), json); } function _convertTextures(json) { return Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("textures", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* sampler */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("sampler", Json_decode$WonderBsJson.$$int, param); }), json), /* source */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("source", Json_decode$WonderBsJson.$$int, param); }), json), /* name */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("name", Json_decode$WonderBsJson.string, param); }), json), /* extras */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("extras", (function (json) { return /* record */[ /* format */Json_decode$WonderBsJson.field("format", Json_decode$WonderBsJson.$$int, json), /* type_ */Json_decode$WonderBsJson.field("type_", Json_decode$WonderBsJson.$$int, json), /* flipY */Json_decode$WonderBsJson.field("flipY", Json_decode$WonderBsJson.bool, json) ]; }), param); }), json) ]; }), param); }), param); }), json); } function _convertImages(json) { return Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("images", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* uri */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("uri", Json_decode$WonderBsJson.string, param); }), json), /* name */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("name", Json_decode$WonderBsJson.string, param); }), json), /* bufferView */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("bufferView", Json_decode$WonderBsJson.$$int, param); }), json), /* mimeType */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("mimeType", Json_decode$WonderBsJson.string, param); }), json) ]; }), param); }), param); }), json); } function _convertCustomData (json){ return json.customData; }; function _convertExtendData(json) { return Json_decode$WonderBsJson.field("extendData", (function (json) { return /* record */[ /* customControlData */Json_decode$WonderBsJson.field("customControlData", (function (json) { return /* record */[/* funcMap */Json_decode$WonderBsJson.field("funcMap", Json_decode$WonderBsJson.string, json)]; }), json), /* skinData */Json_decode$WonderBsJson.field("skinData", (function (json) { return /* record */[/* allSkinDataMap */Json_decode$WonderBsJson.field("allSkinDataMap", Json_decode$WonderBsJson.string, json)]; }), json) ]; }), json); } function _convertAssetData(json) { return Json_decode$WonderBsJson.field("assetData", (function (json) { return /* record */[ /* fontData */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("fontData", (function (json) { return /* record */[ /* fntData */Json_decode$WonderBsJson.field("fntData", (function (json) { return /* record */[ /* name */Json_decode$WonderBsJson.field("name", Json_decode$WonderBsJson.string, json), /* content */Json_decode$WonderBsJson.field("content", Json_decode$WonderBsJson.string, json) ]; }), json), /* bitmapData */Json_decode$WonderBsJson.field("bitmapData", (function (json) { return /* record */[ /* name */Json_decode$WonderBsJson.field("name", Json_decode$WonderBsJson.string, json), /* bufferView */Json_decode$WonderBsJson.field("bufferView", Json_decode$WonderBsJson.$$int, json) ]; }), json) ]; }), param); }), json), /* customImagesData */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("customImagesData", (function (json) { return /* record */[/* customImages */Json_decode$WonderBsJson.field("customImages", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* id */Json_decode$WonderBsJson.field("id", Json_decode$WonderBsJson.string, json), /* bufferView */Json_decode$WonderBsJson.field("bufferView", Json_decode$WonderBsJson.$$int, json), /* mimeType */Json_decode$WonderBsJson.field("mimeType", Json_decode$WonderBsJson.string, json) ]; }), param); }), json)]; }), param); }), json) ]; }), json); } function _convertExecData(json) { return Json_decode$WonderBsJson.field("execData", (function (json) { return /* record */[/* execFuncDataArr */Json_decode$WonderBsJson.field("execFuncDataArr", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* execFunc */Json_decode$WonderBsJson.field("execFunc", Json_decode$WonderBsJson.string, json), /* customData */_convertCustomData(json), /* execOrder */Json_decode$WonderBsJson.field("execOrder", Json_decode$WonderBsJson.$$int, json), /* name */Json_decode$WonderBsJson.field("name", Json_decode$WonderBsJson.string, json) ]; }), param); }), json)]; }), json); } function _convertScenes(json) { return Json_decode$WonderBsJson.field("scenes", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* nodes */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("nodes", (function (param) { return Json_decode$WonderBsJson.array(Json_decode$WonderBsJson.$$int, param); }), param); }), json), /* extensions */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("extensions", (function (json) { return /* record */[/* khr_lights */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("KHR_lights", (function (json) { return /* record */[/* light */Json_decode$WonderBsJson.field("light", Json_decode$WonderBsJson.$$int, json)]; }), param); }), json)]; }), param); }), json), /* extras */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("extras", (function (json) { return /* record */[ /* imgui */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("imgui", (function (json) { return /* record */[ /* assetData */_convertAssetData(json), /* execData */_convertExecData(json), /* extendData */_convertExtendData(json) ]; }), param); }), json), /* skybox */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("skybox", (function (json) { return /* record */[/* cubemap */Json_decode$WonderBsJson.field("cubemap", Json_decode$WonderBsJson.$$int, json)]; }), param); }), json), /* isRoot */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("isRoot", Json_decode$WonderBsJson.bool, param); }), json) ]; }), param); }), json) ]; }), param); }), json); } function _convertExtensions(json) { return Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("extensions", (function (json) { return /* record */[/* khr_lights */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("KHR_lights", (function (json) { return /* record */[/* lights */Json_decode$WonderBsJson.field("lights", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* type_ */Json_decode$WonderBsJson.field("type", Json_decode$WonderBsJson.string, json), /* color */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("color", (function (param) { return Json_decode$WonderBsJson.array(Json_decode$WonderBsJson.$$float, param); }), param); }), json), /* intensity */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("intensity", Json_decode$WonderBsJson.$$float, param); }), json), /* constantAttenuation */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("constantAttenuation", Json_decode$WonderBsJson.$$float, param); }), json), /* linearAttenuation */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("linearAttenuation", Json_decode$WonderBsJson.$$float, param); }), json), /* quadraticAttenuation */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("quadraticAttenuation", Json_decode$WonderBsJson.$$float, param); }), json), /* range */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("range", Json_decode$WonderBsJson.$$float, param); }), json) ]; }), param); }), json)]; }), param); }), json)]; }), param); }), json); } function _getScriptMap(key, json) { return Js_dict.get(json, key); } function _convertExtras(json) { return Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("extras", (function (json) { return /* record */[ /* basicCameraViews */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("basicCameraViews", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[/* isActive */Json_decode$WonderBsJson.field("isActive", Json_decode$WonderBsJson.bool, json)]; }), param); }), param); }), json), /* flyCameraControllers */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("flyCameraControllers", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* moveSpeed */Json_decode$WonderBsJson.field("moveSpeed", Json_decode$WonderBsJson.$$float, json), /* rotateSpeed */Json_decode$WonderBsJson.field("rotateSpeed", Json_decode$WonderBsJson.$$float, json), /* wheelSpeed */Json_decode$WonderBsJson.field("wheelSpeed", Json_decode$WonderBsJson.$$float, json) ]; }), param); }), param); }), json), /* arcballCameraControllers */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("arcballCameraControllers", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* distance */Json_decode$WonderBsJson.field("distance", Json_decode$WonderBsJson.$$float, json), /* minDistance */Json_decode$WonderBsJson.field("minDistance", Json_decode$WonderBsJson.$$float, json), /* phi */Json_decode$WonderBsJson.field("phi", Json_decode$WonderBsJson.$$float, json), /* theta */Json_decode$WonderBsJson.field("theta", Json_decode$WonderBsJson.$$float, json), /* thetaMargin */Json_decode$WonderBsJson.field("thetaMargin", Json_decode$WonderBsJson.$$float, json), /* target */Json_decode$WonderBsJson.field("target", (function (param) { return Json_decode$WonderBsJson.tuple3(Json_decode$WonderBsJson.$$float, Json_decode$WonderBsJson.$$float, Json_decode$WonderBsJson.$$float, param); }), json), /* moveSpeedX */Json_decode$WonderBsJson.field("moveSpeedX", Json_decode$WonderBsJson.$$float, json), /* moveSpeedY */Json_decode$WonderBsJson.field("moveSpeedY", Json_decode$WonderBsJson.$$float, json), /* rotateSpeed */Json_decode$WonderBsJson.field("rotateSpeed", Json_decode$WonderBsJson.$$float, json), /* wheelSpeed */Json_decode$WonderBsJson.field("wheelSpeed", Json_decode$WonderBsJson.$$float, json) ]; }), param); }), param); }), json), /* basicMaterials */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("basicMaterials", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* colorFactor */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("colorFactor", (function (param) { return Json_decode$WonderBsJson.array(Json_decode$WonderBsJson.$$float, param); }), param); }), json), /* name */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("name", Json_decode$WonderBsJson.string, param); }), json) ]; }), param); }), param); }), json), /* meshRenderers */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("meshRenderers", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* drawMode */Json_decode$WonderBsJson.field("drawMode", Json_decode$WonderBsJson.$$int, json), /* isRender */Json_decode$WonderBsJson.field("isRender", Json_decode$WonderBsJson.bool, json) ]; }), param); }), param); }), json), /* scripts */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("scripts", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* isActive */Json_decode$WonderBsJson.field("isActive", Json_decode$WonderBsJson.bool, json), /* eventFunctionDataMap */_getScriptMap("eventFunctionDataMap", json), /* attributeMap */_getScriptMap("attributeMap", json) ]; }), param); }), param); }), json), /* cubemapTextures */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("cubemapTextures", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* name */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("name", Json_decode$WonderBsJson.string, param); }), json), /* sampler */Json_decode$WonderBsJson.field("sampler", Json_decode$WonderBsJson.$$int, json), /* flipY */Json_decode$WonderBsJson.field("flipY", Json_decode$WonderBsJson.bool, json), /* pxSource */Json_decode$WonderBsJson.field("pxSource", Json_decode$WonderBsJson.$$int, json), /* nxSource */Json_decode$WonderBsJson.field("nxSource", Json_decode$WonderBsJson.$$int, json), /* pySource */Json_decode$WonderBsJson.field("pySource", Json_decode$WonderBsJson.$$int, json), /* nySource */Json_decode$WonderBsJson.field("nySource", Json_decode$WonderBsJson.$$int, json), /* pzSource */Json_decode$WonderBsJson.field("pzSource", Json_decode$WonderBsJson.$$int, json), /* nzSource */Json_decode$WonderBsJson.field("nzSource", Json_decode$WonderBsJson.$$int, json), /* pxFormat */Json_decode$WonderBsJson.field("pxFormat", Json_decode$WonderBsJson.$$int, json), /* nxFormat */Json_decode$WonderBsJson.field("nxFormat", Json_decode$WonderBsJson.$$int, json), /* pyFormat */Json_decode$WonderBsJson.field("pyFormat", Json_decode$WonderBsJson.$$int, json), /* nyFormat */Json_decode$WonderBsJson.field("nyFormat", Json_decode$WonderBsJson.$$int, json), /* pzFormat */Json_decode$WonderBsJson.field("pzFormat", Json_decode$WonderBsJson.$$int, json), /* nzFormat */Json_decode$WonderBsJson.field("nzFormat", Json_decode$WonderBsJson.$$int, json), /* pxType */Json_decode$WonderBsJson.field("pxType", Json_decode$WonderBsJson.$$int, json), /* nxType */Json_decode$WonderBsJson.field("nxType", Json_decode$WonderBsJson.$$int, json), /* pyType */Json_decode$WonderBsJson.field("pyType", Json_decode$WonderBsJson.$$int, json), /* nyType */Json_decode$WonderBsJson.field("nyType", Json_decode$WonderBsJson.$$int, json), /* pzType */Json_decode$WonderBsJson.field("pzType", Json_decode$WonderBsJson.$$int, json), /* nzType */Json_decode$WonderBsJson.field("nzType", Json_decode$WonderBsJson.$$int, json) ]; }), param); }), param); }), json) ]; }), param); }), json); } function _convertCameras(json) { return Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("cameras", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* type_ */Json_decode$WonderBsJson.field("type", Json_decode$WonderBsJson.string, json), /* perspective */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("perspective", (function (json) { return /* record */[ /* aspectRatio */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("aspectRatio", Json_decode$WonderBsJson.$$float, param); }), json), /* yfov */Json_decode$WonderBsJson.field("yfov", Json_decode$WonderBsJson.$$float, json), /* zfar */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("zfar", Json_decode$WonderBsJson.$$float, param); }), json), /* znear */Json_decode$WonderBsJson.field("znear", Json_decode$WonderBsJson.$$float, json) ]; }), param); }), json), /* orthographic */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("orthographic", (function (json) { return /* record */[ /* xmag */Json_decode$WonderBsJson.field("xmag", Json_decode$WonderBsJson.$$float, json), /* ymag */Json_decode$WonderBsJson.field("ymag", Json_decode$WonderBsJson.$$float, json), /* zfar */Json_decode$WonderBsJson.field("zfar", Json_decode$WonderBsJson.$$float, json), /* znear */Json_decode$WonderBsJson.field("znear", Json_decode$WonderBsJson.$$float, json) ]; }), param); }), json) ]; }), param); }), param); }), json); } function _convertMeshes(json) { return Json_decode$WonderBsJson.field("meshes", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* primitives */Json_decode$WonderBsJson.field("primitives", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* attributes */Json_decode$WonderBsJson.field("attributes", (function (json) { return /* record */[ /* position */Json_decode$WonderBsJson.field("POSITION", Json_decode$WonderBsJson.$$int, json), /* normal */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("NORMAL", Json_decode$WonderBsJson.$$int, param); }), json), /* texCoord_0 */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("TEXCOORD_0", Json_decode$WonderBsJson.$$int, param); }), json), /* texCoord_1 */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("TEXCOORD_1", Json_decode$WonderBsJson.$$int, param); }), json) ]; }), json), /* indices */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("indices", Json_decode$WonderBsJson.$$int, param); }), json), /* material */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("material", Json_decode$WonderBsJson.$$int, param); }), json), /* mode */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("mode", Json_decode$WonderBsJson.$$int, param); }), json) ]; }), param); }), json), /* name */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("name", Json_decode$WonderBsJson.string, param); }), json) ]; }), param); }), json); } function _convertMaterials(json) { return Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("materials", (function (param) { return Json_decode$WonderBsJson.array((function (json) { return /* record */[ /* pbrMetallicRoughness */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("pbrMetallicRoughness", (function (json) { return /* record */[ /* baseColorFactor */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("baseColorFactor", (function (param) { return Json_decode$WonderBsJson.array(Json_decode$WonderBsJson.$$float, param); }), param); }), json), /* baseColorTexture */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("baseColorTexture", (function (json) { return /* record */[ /* index */Json_decode$WonderBsJson.field("index", Json_decode$WonderBsJson.$$int, json), /* texCoord */Json_decode$WonderBsJson.optional((function (param) { return Json_decode$WonderBsJson.field("texCoord", Json_decode$WonderBsJson.$$int, param); }), json) ]; }), param); }), json),