UNPKG

@patternplate/client

Version:

Universal javascript client application for patternplate

45 lines (34 loc) 1.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _arson = _interopRequireDefault(require("arson")); var _lodash = require("lodash"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var _default = highlight; exports.default = _default; const startWorker = (0, _lodash.memoize)(url => { const _global = global, Worker = _global.Worker; return new Worker(url); }); function highlight(options) { return new Promise((resolve, reject) => { const worker = startWorker(options.worker); const onWorkerMessage = e => { const data = _arson.default.parse(e.data); if (data.id !== options.id) { return; } if (data.payload.type === "error") { return reject(data.payload.error); } resolve(data); worker.removeEventListener("message", onWorkerMessage); }; worker.addEventListener("message", onWorkerMessage); worker.postMessage(_arson.default.stringify(options)); }); } //# sourceMappingURL=highlight.js.map