UNPKG

matrix-react-sdk

Version:
39 lines (37 loc) 6.46 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = SyntaxHighlight; var _react = _interopRequireDefault(require("react")); var _useAsyncMemo = require("../../../hooks/useAsyncMemo"); function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } /* Copyright 2024 New Vector Ltd. Copyright 2023 The Matrix.org Foundation C.I.C. Copyright 2017 Michael Telatynski <7t3chguy@gmail.com> SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only Please see LICENSE files in the repository root for full details. */ function SyntaxHighlight({ children, language }) { const highlighted = (0, _useAsyncMemo.useAsyncMemo)(async () => { const { default: highlight } = await Promise.resolve().then(() => _interopRequireWildcard(require("highlight.js"))); return language ? highlight.highlight(children, { language }) : highlight.highlightAuto(children); }, [language, children]); return /*#__PURE__*/_react.default.createElement("pre", { className: `mx_SyntaxHighlight hljs language-${highlighted?.language}` }, highlighted ? /*#__PURE__*/_react.default.createElement("code", { dangerouslySetInnerHTML: { __html: highlighted.value } }) : children); } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl91c2VBc3luY01lbW8iLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIlN5bnRheEhpZ2hsaWdodCIsImNoaWxkcmVuIiwibGFuZ3VhZ2UiLCJoaWdobGlnaHRlZCIsInVzZUFzeW5jTWVtbyIsImhpZ2hsaWdodCIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImhpZ2hsaWdodEF1dG8iLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiLCJfX2h0bWwiLCJ2YWx1ZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdzL2VsZW1lbnRzL1N5bnRheEhpZ2hsaWdodC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAyMDI0IE5ldyBWZWN0b3IgTHRkLlxuQ29weXJpZ2h0IDIwMjMgVGhlIE1hdHJpeC5vcmcgRm91bmRhdGlvbiBDLkkuQy5cbkNvcHlyaWdodCAyMDE3IE1pY2hhZWwgVGVsYXR5bnNraSA8N3QzY2hndXlAZ21haWwuY29tPlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB7IHVzZUFzeW5jTWVtbyB9IGZyb20gXCIuLi8uLi8uLi9ob29rcy91c2VBc3luY01lbW9cIjtcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgICBsYW5ndWFnZT86IHN0cmluZztcbiAgICBjaGlsZHJlbjogc3RyaW5nO1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBTeW50YXhIaWdobGlnaHQoeyBjaGlsZHJlbiwgbGFuZ3VhZ2UgfTogUHJvcHMpOiBKU1guRWxlbWVudCB7XG4gICAgY29uc3QgaGlnaGxpZ2h0ZWQgPSB1c2VBc3luY01lbW8oYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGRlZmF1bHQ6IGhpZ2hsaWdodCB9ID0gYXdhaXQgaW1wb3J0KFwiaGlnaGxpZ2h0LmpzXCIpO1xuICAgICAgICByZXR1cm4gbGFuZ3VhZ2UgPyBoaWdobGlnaHQuaGlnaGxpZ2h0KGNoaWxkcmVuLCB7IGxhbmd1YWdlIH0pIDogaGlnaGxpZ2h0LmhpZ2hsaWdodEF1dG8oY2hpbGRyZW4pO1xuICAgIH0sIFtsYW5ndWFnZSwgY2hpbGRyZW5dKTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxwcmUgY2xhc3NOYW1lPXtgbXhfU3ludGF4SGlnaGxpZ2h0IGhsanMgbGFuZ3VhZ2UtJHtoaWdobGlnaHRlZD8ubGFuZ3VhZ2V9YH0+XG4gICAgICAgICAgICB7aGlnaGxpZ2h0ZWQgPyA8Y29kZSBkYW5nZXJvdXNseVNldElubmVySFRNTD17eyBfX2h0bWw6IGhpZ2hsaWdodGVkLnZhbHVlIH19IC8+IDogY2hpbGRyZW59XG4gICAgICAgIDwvcHJlPlxuICAgICk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFTQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxhQUFBLEdBQUFELE9BQUE7QUFBMkQsU0FBQUUseUJBQUFDLENBQUEsNkJBQUFDLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEsQ0FBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQUksd0JBQUFKLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSyxVQUFBLFNBQUFMLENBQUEsZUFBQUEsQ0FBQSx1QkFBQUEsQ0FBQSx5QkFBQUEsQ0FBQSxXQUFBTSxPQUFBLEVBQUFOLENBQUEsUUFBQUcsQ0FBQSxHQUFBSix3QkFBQSxDQUFBRyxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxHQUFBLENBQUFQLENBQUEsVUFBQUcsQ0FBQSxDQUFBSyxHQUFBLENBQUFSLENBQUEsT0FBQVMsQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsQ0FBQSxJQUFBZixDQUFBLG9CQUFBZSxDQUFBLE9BQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBakIsQ0FBQSxFQUFBZSxDQUFBLFNBQUFHLENBQUEsR0FBQVAsQ0FBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFkLENBQUEsRUFBQWUsQ0FBQSxVQUFBRyxDQUFBLEtBQUFBLENBQUEsQ0FBQVYsR0FBQSxJQUFBVSxDQUFBLENBQUFDLEdBQUEsSUFBQVAsTUFBQSxDQUFBQyxjQUFBLENBQUFKLENBQUEsRUFBQU0sQ0FBQSxFQUFBRyxDQUFBLElBQUFULENBQUEsQ0FBQU0sQ0FBQSxJQUFBZixDQUFBLENBQUFlLENBQUEsWUFBQU4sQ0FBQSxDQUFBSCxPQUFBLEdBQUFOLENBQUEsRUFBQUcsQ0FBQSxJQUFBQSxDQUFBLENBQUFnQixHQUFBLENBQUFuQixDQUFBLEVBQUFTLENBQUEsR0FBQUEsQ0FBQSxJQVgzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBV2UsU0FBU1csZUFBZUEsQ0FBQztFQUFFQyxRQUFRO0VBQUVDO0FBQWdCLENBQUMsRUFBZTtFQUNoRixNQUFNQyxXQUFXLEdBQUcsSUFBQUMsMEJBQVksRUFBQyxZQUFZO0lBQ3pDLE1BQU07TUFBRWxCLE9BQU8sRUFBRW1CO0lBQVUsQ0FBQyxHQUFHLE1BQUFDLE9BQUEsQ0FBQUMsT0FBQSxHQUFBQyxJQUFBLE9BQUF4Qix1QkFBQSxDQUFBUCxPQUFBLENBQWEsY0FBYyxHQUFDO0lBQzNELE9BQU95QixRQUFRLEdBQUdHLFNBQVMsQ0FBQ0EsU0FBUyxDQUFDSixRQUFRLEVBQUU7TUFBRUM7SUFBUyxDQUFDLENBQUMsR0FBR0csU0FBUyxDQUFDSSxhQUFhLENBQUNSLFFBQVEsQ0FBQztFQUNyRyxDQUFDLEVBQUUsQ0FBQ0MsUUFBUSxFQUFFRCxRQUFRLENBQUMsQ0FBQztFQUV4QixvQkFDSTFCLE1BQUEsQ0FBQVcsT0FBQSxDQUFBd0IsYUFBQTtJQUFLQyxTQUFTLEVBQUUsb0NBQW9DUixXQUFXLEVBQUVELFFBQVE7RUFBRyxHQUN2RUMsV0FBVyxnQkFBRzVCLE1BQUEsQ0FBQVcsT0FBQSxDQUFBd0IsYUFBQTtJQUFNRSx1QkFBdUIsRUFBRTtNQUFFQyxNQUFNLEVBQUVWLFdBQVcsQ0FBQ1c7SUFBTTtFQUFFLENBQUUsQ0FBQyxHQUFHYixRQUNqRixDQUFDO0FBRWQiLCJpZ25vcmVMaXN0IjpbXX0=