## Configuration ### Default configs Internally, `` uses the following defaults in its constructor: ```js { // URLs of Marked and Prism libraries markedUrl: 'https://cdn.jsdelivr.net/gh/markedjs/marked@3/marked.min.js', // URLs in an array are loaded in the prescribed order prismUrl: [ // Add `data-manual` attribute to its ` ``` #### Default style template By default, each instance of `` applies the external stylesheets defined in `cssUrls`. Internally, ```html ``` is semantically equivalent to this: ```html ``` You can override the default style template by passing in a new one. ```html ``` ### Global config object To override the default configs **globally** to **all** instances of ``, a `ZeroMdConfig` object hoisted to the global `window` scope can be defined. For example: ```html ... ``` #### Change default style template globally By default, `` uses a Github-themed stylesheet paired with a light-themed one for code blocks. To update the default external stylesheets globally, define a global config object. ```html ... ... ``` #### Change globals in web project If you're using `` in a web project with a bundler, something like this should work: ```js import ZeroMd from 'zero-md' // Define a new custom class class ZeroMdCustom extends ZeroMd { constructor () { // Call `super()` with new configs super({ markedUrl: '/lib/marked.js', prismUrl: '/lib/prism.js', cssUrls: [ '/styles/markdown.css', '/styles/highlight.css' ], hostCss: ':host{display:inline-block;}' }) } } // Register the element with custom class customElements.define('zero-md', ZeroMdCustom) ```