UNPKG

wonder.js

Version:
46 lines (41 loc) 1.96 kB
'use strict'; var $$String = require("bs-platform/lib/js/string.js"); var Pervasives = require("bs-platform/lib/js/pervasives.js"); var Caml_option = require("bs-platform/lib/js/caml_option.js"); var Log$WonderLog = require("wonder-log/lib/js/src/Log.js"); var Contract$WonderLog = require("wonder-log/lib/js/src/Contract.js"); var DomExtend$Wonderjs = require("../../../external/DomExtend.js"); var DomService$Wonderjs = require("../DomService.js"); var StateDataMain$Wonderjs = require("../../state/main/data/StateDataMain.js"); var IsDebugMainService$Wonderjs = require("../../state/main/state/IsDebugMainService.js"); function _getCanvasId(domId) { var match = $$String.contains(domId, /* "#" */35); if (match) { return domId; } else { return Contract$WonderLog.ensureCheck((function (id) { return Contract$WonderLog.test(Log$WonderLog.buildAssertMessage("dom id start with \'#\'", "is " + (String(domId) + "")), (function (param) { return Contract$WonderLog.assertTrue((/#[^#]+/).test(id)); })); }), IsDebugMainService$Wonderjs.getIsDebug(StateDataMain$Wonderjs.stateData), "#" + (String(domId) + "")); } } function createCanvas(canvasId) { if (canvasId !== undefined) { var canvasId$1 = canvasId; var match = DomExtend$Wonderjs.findFirstHtmlElement(document, _getCanvasId(canvasId$1)); if (match !== undefined) { return Caml_option.valFromOption(match); } else { return Pervasives.failwith("canvas whose id is " + (String(canvasId$1) + " should exist")); } } else { var arg = DomExtend$Wonderjs.findFirstHtmlElement(document, "body"); return (function (param) { return DomExtend$Wonderjs.prependTo(param, arg); })(DomService$Wonderjs.buildCanvas()); } } exports._getCanvasId = _getCanvasId; exports.createCanvas = createCanvas; /* Log-WonderLog Not a pure module */