UNPKG

@usirin/spellcaster

Version:

Remote execution of spells defined in spellbooks

64 lines (63 loc) 2.16 kB
"use strict"; var __webpack_require__ = {}; (()=>{ __webpack_require__.d = function(exports1, definition) { for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, { enumerable: true, get: definition[key] }); }; })(); (()=>{ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }; })(); (()=>{ __webpack_require__.r = function(exports1) { if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, { value: 'Module' }); Object.defineProperty(exports1, '__esModule', { value: true }); }; })(); var __webpack_exports__ = {}; __webpack_require__.r(__webpack_exports__); __webpack_require__.d(__webpack_exports__, { serve: ()=>serve, createSpellbookServer: ()=>createSpellbookServer }); const forge_namespaceObject = require("@usirin/forge"); const external_transport_cjs_namespaceObject = require("./transport.cjs"); function serve(spellbook, transport) { return transport.incoming.pipeThrough((0, external_transport_cjs_namespaceObject.createSpellbookStream)(spellbook)).pipeTo(transport.outgoing); } const createSpellbookServer = (0, forge_namespaceObject.factory)("server", (spellbook, options)=>{ let running = false; return { start () { if (running) return; running = true; serve(spellbook, options.transport); }, stop () { running = false; }, isRunning () { return running; }, getSpellbook () { return spellbook; }, getTransport () { return options.transport; } }; }); var __webpack_export_target__ = exports; for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__]; if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', { value: true });