{"version":3,"sources":["jsdelivr-header.js","/npm/itsa-react-fs-markdown@15.1.3/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACJA,aAEA,IACI,SAOA,SAAU,GARV,MAAQ,CAAC,EAET,KAAO,QAAQ,QACf,GAAK,QAAQ,MACb,KAAO,QAAQ,gBACf,MAAQ,QAAQ,SAChB,eAAiB,QAAQ,oBACzB,WAAa,QAAQ,cAGzB,SAAW,SAAS,EAAK,EAAM,GAC3B,OAAO,IAAK,OAAO,EAAK,IAAK,EAAkB,IAAK,IAAK,KAAK,EAClE,EAEA,GAAK,IAAI,WAAW,CAChB,MAAM,EACN,UAAU,EACV,QAAQ,EACR,aAAa,EACb,OAAQ,OACR,SAAS,EACT,WAAc,iBACd,UAAW,SAAU,EAAK,GACtB,GAAI,GAAQ,KAAK,YAAY,GACzB,IACI,OAAO,KAAK,UAAU,EAAM,GAAK,KACrC,CAAE,MAAO,GAAK,CAElB,IACI,OAAO,KAAK,cAAc,GAAK,KACnC,CAAE,MAAO,GAAK,CACd,MAAO,EACX,IAGJ,IAAI,cAAgB,MAAM,YAAY,CAClC,OAAQ,WACJ,IAAI,EAAM,GAAG,OAAO,KAAK,MAAM,QAAU,IACzC,OAAO,MAAM,IAAI,IAAI,CAAC,wBAAyB,CAAC,OAAQ,IAC5D,IAGA,WAAa,CACb,SAAU,SAAS,EAAU,GAkBzB,OAjBK,SAAS,EAAS,cAAe,SAClC,GAAY,OAEX,MAAM,KACP,MAAM,GAAY,IAAI,SAAQ,SAAS,GACnC,GAAG,SAAS,KAAK,KAAK,SAAU,GAAW,QAAQ,SAAS,EAAK,GAC7D,GAAI,EACA,EAAQ,EAAkB,GAAK,CAAC,OAAQ,SAEvC,CACD,IAAI,EAAY,MAAM,cAAc,cAAe,CAAC,OAAQ,IACxD,EAAe,eAAe,qBAAqB,GACvD,EAAQ,EAAkB,EAAe,CAAC,OAAQ,GACtD,CACJ,GACJ,KAEG,MAAM,EACjB,EAEA,gBAAiB,SAAS,GACjB,SAAS,EAAS,cAAe,SAClC,GAAY,cAET,MAAM,EACjB,EAEA,WAAY,WACR,MAAQ,CAAC,CACb,GAGJ,OAAO,QAAU,SAAS,GAEtB,OADA,SAAW,EACJ,UACX","file":"/npm/itsa-react-fs-markdown@15.1.3/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/itsa-react-fs-markdown@15.1.3/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/*eslint no-empty: 0*/\n\n'use strict';\n\nvar CACHE = {},\n    BASE_DIR,\n    Path = require('path'),\n    fs = require('fs'),\n    hljs = require('highlight.js'),\n    React = require('react'),\n    ReactDOMServer = require('react-dom/server'),\n    Remarkable = require('remarkable'),\n    endsWith, md;\n\nendsWith = function(str, test, caseInsensitive) {\n    return (new RegExp(test+'$', caseInsensitive ? 'i': '')).test(str);\n};\n\nmd = new Remarkable({\n    html: true,\n    xhtmlOut: true,\n    breaks: true,\n    typographer: true,\n    quotes: '“”‘’',\n    linkify: true,\n    langPrefix:   'hljs language-',\n    highlight: function (str, lang) {\n        if (lang && hljs.getLanguage(lang)) {\n            try {\n                return hljs.highlight(lang, str).value;\n            } catch (__) {}\n        }\n        try {\n            return hljs.highlightAuto(str).value;\n        } catch (__) {}\n        return ''; // use external default escaping\n    }\n});\n\nvar ReactMarkdown = React.createClass({\n    render: function() {\n        var ast = md.render(this.props.source || '');\n        return React.DOM.div({dangerouslySetInnerHTML: {__html: ast}});\n    }\n});\n\nvar FsMarkdown = {\n    readFile: function(filename, returnPlainText) {\n        if (!endsWith(filename.toUpperCase(), '.MD')) {\n            filename += '.MD';\n        }\n        if (!CACHE[filename]) {\n            CACHE[filename] = new Promise(function(resolve) {\n                fs.readFile(Path.join(BASE_DIR, filename), 'utf8', function(err, data) {\n                    if (err) {\n                        resolve(returnPlainText ? '' : {__html: ''});\n                    }\n                    else {\n                        var Component = React.createElement(ReactMarkdown, {source: data}),\n                            staticMarkup = ReactDOMServer.renderToStaticMarkup(Component);\n                        resolve(returnPlainText ? staticMarkup : {__html: staticMarkup});\n                    }\n                });\n            });\n        }\n        return CACHE[filename];\n    },\n\n    clearCachedFile: function(filename) {\n        if (!endsWith(filename.toUpperCase(), '.MD')) {\n            filename += '.MD';\n        }\n        delete CACHE[filename];\n    },\n\n    clearCache: function() {\n        CACHE = {};\n    }\n};\n\nmodule.exports = function(baseDir) {\n    BASE_DIR = baseDir;\n    return FsMarkdown;\n};"]}