UNPKG

wonder.js

Version:
107 lines (91 loc) 4.33 kB
'use strict'; var Js_option = require("bs-platform/lib/js/js_option.js"); var Log$WonderLog = require("wonder-log/lib/js/src/Log.js"); var OptionService$Wonderjs = require("../../../atom/OptionService.js"); var ImmutableHashMapService$WonderCommonlib = require("wonder-commonlib/lib/js/src/ImmutableHashMapService.js"); function createScriptAttribute(param) { return ImmutableHashMapService$WonderCommonlib.createEmpty(/* () */0); } function _getTypeFromJsObj (jsObj){ return jsObj.type; }; function _createScriptAttributeField(attributeFieldJsObj) { var type_ = _getTypeFromJsObj(attributeFieldJsObj); var tmp; switch (type_) { case "float" : tmp = /* Float */1; break; case "int" : tmp = /* Int */0; break; default: tmp = Log$WonderLog.fatal(Log$WonderLog.buildFatalMessage("_createScriptAttributeField", "unknown type: " + (String(type_) + ""), "", "", "")); } return /* record */[ /* type_ */tmp, /* defaultValue */attributeFieldJsObj.defaultValue, /* value */attributeFieldJsObj.defaultValue ]; } function addScriptAttributeFieldJsObj(fieldName, attributeFieldJsObj, attribute) { return ImmutableHashMapService$WonderCommonlib.set(fieldName, _createScriptAttributeField(attributeFieldJsObj), attribute); } var removeScriptAttributeField = ImmutableHashMapService$WonderCommonlib.deleteVal; var getScriptAttributeEntries = ImmutableHashMapService$WonderCommonlib.getValidEntries; var getScriptAttributeField = ImmutableHashMapService$WonderCommonlib.get; function getScriptAttributeFieldValue(fieldName, attribute) { return Js_option.map((function (param) { return param[/* value */2]; }), ImmutableHashMapService$WonderCommonlib.get(fieldName, attribute)); } function unsafeGetScriptAttributeFieldValue(fieldName, attribute) { return OptionService$Wonderjs.unsafeGet(getScriptAttributeFieldValue(fieldName, attribute)); } function setScriptAttributeFieldValue(fieldName, value, attribute) { var match = ImmutableHashMapService$WonderCommonlib.get(fieldName, attribute); if (match !== undefined) { var field = match; return ImmutableHashMapService$WonderCommonlib.set(fieldName, /* record */[ /* type_ */field[/* type_ */0], /* defaultValue */field[/* defaultValue */1], /* value */value ], attribute); } else { return attribute; } } function getScriptAttributeFieldDefaultValue(fieldName, attribute) { return Js_option.map((function (param) { return param[/* defaultValue */1]; }), ImmutableHashMapService$WonderCommonlib.get(fieldName, attribute)); } function unsafeGetScriptAttributeFieldDefaultValue(fieldName, attribute) { return OptionService$Wonderjs.unsafeGet(getScriptAttributeFieldDefaultValue(fieldName, attribute)); } function setScriptAttributeFieldDefaultValueAndValue(fieldName, value, attribute) { var match = ImmutableHashMapService$WonderCommonlib.get(fieldName, attribute); if (match !== undefined) { return ImmutableHashMapService$WonderCommonlib.set(fieldName, /* record */[ /* type_ */match[/* type_ */0], /* defaultValue */value, /* value */value ], attribute); } else { return attribute; } } exports.createScriptAttribute = createScriptAttribute; exports._getTypeFromJsObj = _getTypeFromJsObj; exports._createScriptAttributeField = _createScriptAttributeField; exports.addScriptAttributeFieldJsObj = addScriptAttributeFieldJsObj; exports.removeScriptAttributeField = removeScriptAttributeField; exports.getScriptAttributeEntries = getScriptAttributeEntries; exports.getScriptAttributeField = getScriptAttributeField; exports.getScriptAttributeFieldValue = getScriptAttributeFieldValue; exports.unsafeGetScriptAttributeFieldValue = unsafeGetScriptAttributeFieldValue; exports.setScriptAttributeFieldValue = setScriptAttributeFieldValue; exports.getScriptAttributeFieldDefaultValue = getScriptAttributeFieldDefaultValue; exports.unsafeGetScriptAttributeFieldDefaultValue = unsafeGetScriptAttributeFieldDefaultValue; exports.setScriptAttributeFieldDefaultValueAndValue = setScriptAttributeFieldDefaultValueAndValue; /* Log-WonderLog Not a pure module */