_markdownIt() {
    if (!window["markdownit"])
      return;
    if (!this.config.mdPlugins && window["uibuilder"] && window["uibuilder"].ui_md_plugins)
      this.config.mdPlugins = window["uibuilder"].ui_md_plugins;
    _UibRouter.mdOpts = {
      html: true,
      xhtmlOut: false,
      linkify: true,
      _highlight: true,
      _strict: false,
      _view: "html",
      langPrefix: "language-",
      // NB: the highlightjs (hljs) library must be loaded before markdown-it for this to work
      highlight: function(str, lang) {
        if (window["hljs"]) {
          if (lang && window["hljs"].getLanguage(lang)) {
            try {
              return `<pre><code class="hljs border language-${lang}" data-language="${lang}" title="Source language: '${lang}'">${window["hljs"].highlight(str, { language: lang, ignoreIllegals: true }).value}</code></pre>`;
            } finally {
            }
          } else {
            try {
              const high = window["hljs"].highlightAuto(str);
              return `<pre><code class="hljs border language-${high.language}" data-language="${high.language}" title="Source language estimated by HighlightJS: '${high.language}'">${high.value}</code></pre>`;
            } finally {
            }
          }
        }
        return `<pre><code class="border">${Ui.md.utils.escapeHtml(str).trim()}</code></pre>`;
      }
    };
    _UibRouter.md = window["markdownit"](_UibRouter.mdOpts);
    if (this.config.mdPlugins) {
      if (!Array.isArray(this.config.mdPlugins)) {
        console.error("[uibrouter:_markDownIt:plugins] Could not load plugins, config.mdPlugins is not an array");
        return;
      }
      this.config.mdPlugins.forEach((plugin) => {
        if (typeof plugin === "string") {
          _UibRouter.md.use(window[plugin]);
        } else {
          const name = Object.keys(plugin)[0];
          _UibRouter.md.use(window[name], plugin[name]);
        }
      });
    }
  }
Set up the MarkdownIT library if loaded