UNPKG

@atlaskit/renderer

Version:
37 lines 1.62 kB
import { defaultSchema } from '@atlaskit/editor-common'; import { getValidDocument } from '@atlaskit/editor-common'; export { default as ReactSerializer } from './react'; export { default as TextSerializer } from './text'; export { default as ReactRenderer } from './ui/Renderer'; var SUPPORTS_HIRES_TIMER_API = window.performance && performance.now; var withStopwatch = function (cb) { var startTime = SUPPORTS_HIRES_TIMER_API ? performance.now() : Date.now(); var output = cb(); var endTime = SUPPORTS_HIRES_TIMER_API ? performance.now() : Date.now(); var time = endTime - startTime; return { output: output, time: time }; }; export var renderDocument = function (doc, serializer, schema) { if (schema === void 0) { schema = defaultSchema; } var stat = { sanitizeTime: 0 }; var _a = withStopwatch(function () { return getValidDocument(doc, schema); }), validDoc = _a.output, sanitizeTime = _a.time; // save sanitize time to stats stat.sanitizeTime = sanitizeTime; if (!validDoc) { return { stat: stat, result: null }; } var _b = withStopwatch(function () { return schema.nodeFromJSON(validDoc); }), node = _b.output, buildTreeTime = _b.time; // save build tree time to stats stat.buildTreeTime = buildTreeTime; var _c = withStopwatch(function () { return serializer.serializeFragment(node.content); }), result = _c.output, serializeTime = _c.time; // save serialize tree time to stats stat.serializeTime = serializeTime; return { result: result, stat: stat }; }; //# sourceMappingURL=index.js.map