wonder.js
Version:
52 lines (46 loc) • 3.38 kB
JavaScript
'use strict';
var MostUtils$Wonderjs = require("../../../../asset/utils/MostUtils.js");
var MessageService$Wonderjs = require("../../../../service/primitive/worker/MessageService.js");
var ExecIMGUIAPI$WonderImgui = require("wonder-imgui/lib/js/src/api/ExecIMGUIAPI.js");
var ArrayService$WonderCommonlib = require("wonder-commonlib/lib/js/src/ArrayService.js");
var ManageIMGUIService$WonderImgui = require("wonder-imgui/lib/js/src/service/record/ManageIMGUIService.js");
var AllDeviceManagerService$Wonderjs = require("../../../../service/record/all/device/AllDeviceManagerService.js");
var ExecDataAllIMGUIService$Wonderjs = require("../../../../service/record/all/imgui/ExecDataAllIMGUIService.js");
var SerializeAllIMGUIService$Wonderjs = require("../../../../service/record/all/imgui/SerializeAllIMGUIService.js");
var StateRenderWorkerService$Wonderjs = require("../../../../service/state/render_worker/state/StateRenderWorkerService.js");
var RecordAPIRenderWorkerService$Wonderjs = require("../../../../service/state/render_worker/api/RecordAPIRenderWorkerService.js");
var ManageIMGUIRenderWorkerService$Wonderjs = require("../../../../service/state/render_worker/imgui/ManageIMGUIRenderWorkerService.js");
var RecordIMGUIRenderWorkerService$Wonderjs = require("../../../../service/state/render_worker/imgui/RecordIMGUIRenderWorkerService.js");
function _addAllExecFuncData(execFuncDataArr, imguiRecord) {
return ArrayService$WonderCommonlib.reduceOneParam((function (imguiRecord, param) {
return ExecIMGUIAPI$WonderImgui.addExecFuncData(param[/* name */3], param[/* customData */1], param[/* execOrder */2], param[/* execFunc */0], imguiRecord);
}), imguiRecord, SerializeAllIMGUIService$Wonderjs.Exec[/* deserializeExecFuncDataArrToWonderIMGUIType */3](execFuncDataArr));
}
function _updateExecData(execFuncDataArr, imguiRecord) {
var match = ExecDataAllIMGUIService$Wonderjs.hasExecFuncData(execFuncDataArr);
if (match) {
return _addAllExecFuncData(execFuncDataArr, ExecIMGUIAPI$WonderImgui.clearExecFuncDataArr(imguiRecord));
} else {
return imguiRecord;
}
}
function execJob(flags, e, stateData) {
return MostUtils$Wonderjs.callFunc((function (param) {
var state = StateRenderWorkerService$Wonderjs.unsafeGetState(stateData);
var data = MessageService$Wonderjs.getRecord(e);
var imguiData = data.imguiData;
var execFuncDataArr = imguiData.execFuncDataArr;
var imguiRecord = _updateExecData(execFuncDataArr, RecordIMGUIRenderWorkerService$Wonderjs.getRecord(state));
state[/* imguiRecord */29] = imguiRecord;
var state$1 = ManageIMGUIService$WonderImgui.render(AllDeviceManagerService$Wonderjs.unsafeGetGl(state[/* deviceManagerRecord */4]), imguiData.ioData, RecordAPIRenderWorkerService$Wonderjs.getIMGUIAPIJsObj(state), /* tuple */[
ManageIMGUIRenderWorkerService$Wonderjs.getRecord,
ManageIMGUIRenderWorkerService$Wonderjs.setRecord
], state);
StateRenderWorkerService$Wonderjs.setState(stateData, state$1);
return e;
}));
}
exports._addAllExecFuncData = _addAllExecFuncData;
exports._updateExecData = _updateExecData;
exports.execJob = execJob;
/* MostUtils-Wonderjs Not a pure module */