{ target: DOMElement, params: Object }
objects.\n */\n findElements: function(globalParams, element)\n {\n var elements = element ? [element] : utils.toArray(document.getElementsByTagName(sh.config.tagName)),\n conf = sh.config,\n result = []\n ;\n\n // support for feature\n elements = elements.concat(dom.getSyntaxHighlighterScriptTags());\n\n if (elements.length === 0)\n return result;\n\n for (var i = 0, l = elements.length; i < l; i++)\n {\n var item = {\n target: elements[i],\n // local params take precedence over globals\n params: optsParser.defaults(optsParser.parse(elements[i].className), globalParams)\n };\n\n if (item.params['brush'] == null)\n continue;\n\n result.push(item);\n }\n\n return result;\n },\n\n /**\n * Shorthand to highlight all elements on the page that are marked as\n * SyntaxHighlighter source code.\n *\n * @param {Object} globalParams Optional parameters which override element's\n * parameters. Only used if element is specified.\n *\n * @param {Object} element Optional element to highlight. If none is\n * provided, all elements in the current document\n * are highlighted.\n */\n highlight: function(globalParams, element)\n {\n var elements = sh.findElements(globalParams, element),\n propertyName = 'innerHTML',\n brush = null,\n renderer,\n conf = sh.config\n ;\n\n if (elements.length === 0)\n return;\n\n for (var i = 0, l = elements.length; i < l; i++)\n {\n var element = elements[i],\n target = element.target,\n params = element.params,\n brushName = params.brush,\n brush,\n matches,\n code\n ;\n\n if (brushName == null)\n continue;\n\n brush = findBrush(brushName);\n\n if (!brush)\n continue;\n\n // local params take precedence over defaults\n params = optsParser.defaults(params || {}, defaults);\n params = optsParser.defaults(params, config);\n\n // Instantiate a brush\n if (params['html-script'] == true || defaults['html-script'] == true)\n {\n brush = new HtmlScript(findBrush('xml'), brush);\n brushName = 'htmlscript';\n }\n else\n {\n brush = new brush();\n }\n\n code = target[propertyName];\n\n // remove CDATA from tags if it's present\n if (conf.useScriptTags)\n code = stripCData(code);\n\n // Inject title if the attribute is present\n if ((target.title || '') != '')\n params.title = target.title;\n\n params['brush'] = brushName;\n\n code = transformers(code, params);\n matches = match.applyRegexList(code, brush.regexList, params);\n renderer = new Renderer(code, matches, params);\n\n element = dom.create('div');\n element.innerHTML = renderer.getHtml();\n\n // id = utils.guid();\n // element.id = highlighters.id(id);\n // highlighters.set(id, element);\n\n if (params.quickCode)\n dom.attachEvent(dom.findElement(element, '.code'), 'dblclick', dom.quickCodeHandler);\n\n // carry over ID\n if ((target.id || '') != '')\n element.id = target.id;\n\n target.parentNode.replaceChild(element, target);\n }\n }\n}; // end of sh\n\n/**\n * Displays an alert.\n * @param {String} str String to display.\n */\nfunction alert(str)\n{\n window.alert('SyntaxHighlighter\\n\\n' + str);\n};\n\n/**\n * Finds a brush by its alias.\n *\n * @param {String} alias Brush alias.\n * @param {Boolean} showAlert Suppresses the alert if false.\n * @return {Brush} Returns bursh constructor if found, null otherwise.\n */\nfunction findBrush(alias, showAlert)\n{\n var brushes = sh.vars.discoveredBrushes,\n result = null\n ;\n\n if (brushes == null)\n {\n brushes = {};\n\n // Find all brushes\n for (var brushName in sh.brushes)\n {\n var brush = sh.brushes[brushName],\n aliases = brush.aliases\n ;\n\n if (aliases == null) {\n continue;\n }\n\n brush.className = brush.className || brush.aliases[0];\n brush.brushName = brush.className || brushName.toLowerCase();\n\n for (var i = 0, l = aliases.length; i < l; i++) {\n brushes[aliases[i]] = brushName;\n }\n }\n\n sh.vars.discoveredBrushes = brushes;\n }\n\n result = sh.brushes[brushes[alias]];\n\n if (result == null && showAlert)\n alert(sh.config.strings.noBrush + alias);\n\n return result;\n};\n\n/**\n * Strips from content because it should be used\n * there in most cases for XHTML compliance.\n * @param {String} original Input code.\n * @return {String} Returns code without leading tags.\n */\nfunction stripCData(original)\n{\n var left = '',\n // for some reason IE inserts some leading blanks here\n copy = utils.trim(original),\n changed = false,\n leftLength = left.length,\n rightLength = right.length\n ;\n\n if (copy.indexOf(left) == 0)\n {\n copy = copy.substring(leftLength);\n changed = true;\n }\n\n var copyLength = copy.length;\n\n if (copy.indexOf(right) == copyLength - rightLength)\n {\n copy = copy.substring(0, copyLength - rightLength);\n changed = true;\n }\n\n return changed ? copy : original;\n};\n\nlet brushCounter = 0;\n\nexport default sh;\nexport const registerBrush = brush => sh.brushes['brush' + brushCounter++] = brush.default || brush;\nexport const clearRegisteredBrushes = () => {\n sh.brushes = {};\n brushCounter = 0;\n}\n\n/* an EJS hook for `gulp build --brushes` command\n * */\n\n\n registerBrush(require('brush-csharp'));\n\n registerBrush(require('brush-css'));\n\n registerBrush(require('brush-javascript'));\n\n registerBrush(require('brush-xml'));\n\n\n/*\n\n */\n\n\n\n// WEBPACK FOOTER //\n// ./src/core.js","var XRegExp = require('syntaxhighlighter-regex').XRegExp;\n\nvar BOOLEANS = {'true': true, 'false': false};\n\nfunction camelize(key)\n{\n return key.replace(/-(\\w+)/g, function(match, word)\n {\n return word.charAt(0).toUpperCase() + word.substr(1);\n });\n}\n\nfunction process(value)\n{\n var result = BOOLEANS[value];\n return result == null ? value : result;\n}\n\nmodule.exports = {\n defaults: function(target, source)\n {\n for(var key in source || {})\n if (!target.hasOwnProperty(key))\n target[key] = target[camelize(key)] = source[key];\n\n return target;\n },\n\n parse: function(str)\n {\n var match,\n key,\n result = {},\n arrayRegex = XRegExp(\"^\\\\[(?
tag with given style applied to it.\n *\n * @param {String} str Input string.\n * @param {String} css Style name to apply to the string.\n * @return {String} Returns input string with each line surrounded by tag.\n */\n wrapLinesWithCode: function(str, css)\n {\n if (str == null || str.length == 0 || str == '\\n' || css == null)\n return str;\n\n var _this = this,\n results = [],\n lines,\n line,\n spaces,\n i,\n l\n ;\n\n str = str.replace(/... to them so that leading spaces aren't included.\n for (i = 0, l = lines.length; i < l; i++)\n {\n line = lines[i];\n spaces = '';\n\n if (line.length > 0)\n {\n line = line.replace(/^( | )+/, function(s)\n {\n spaces = s;\n return '';\n });\n\n line = line.length === 0\n ? spaces\n : spaces + '' + line + '
'\n ;\n }\n\n results.push(line);\n }\n\n return results.join('\\n');\n },\n\n /**\n * Turns all URLs in the code into tags.\n * @param {String} code Input code.\n * @return {String} Returns code with ' + spaces + '
' : '') + line\n );\n }\n\n return html;\n },\n\n /**\n * Returns HTML for the table title or empty string if title is null.\n */\n getTitleHtml: function(title)\n {\n return title ? '${_this.renderLineNumbers(code)} | ` : ``}\n\n ${html} \n | \n
findElement(container, className, true)
.\n * @param {Element} target Target element.\n * @param {String} className Class name to look for.\n * @return {Element} Returns found parent element on null.\n */\nfunction findParentElement(target, className)\n{\n return findElement(target, className, true);\n}\n\n/**\n * Opens up a centered popup window.\n * @param {String} url URL to open in the window.\n * @param {String} name Popup name.\n * @param {int} width Popup width.\n * @param {int} height Popup height.\n * @param {String} options window.open() options.\n * @return {Window} Returns window instance.\n */\nfunction popup(url, name, width, height, options)\n{\n var x = (screen.width - width) / 2,\n y = (screen.height - height) / 2\n ;\n\n options += ', left=' + x +\n ', top=' + y +\n ', width=' + width +\n ', height=' + height\n ;\n options = options.replace(/^,/, '');\n\n var win = window.open(url, name, options);\n win.focus();\n return win;\n}\n\nfunction getElementsByTagName(name)\n{\n return document.getElementsByTagName(name);\n}\n\n/**\n * Finds all elements on the page which could be processes by SyntaxHighlighter.\n */\nfunction findElementsToHighlight(opts)\n{\n var elements = getElementsByTagName(opts['tagName']),\n scripts,\n i\n ;\n\n // support for feature\n if(opts['useScriptTags'])\n {\n scripts = getElementsByTagName('script');\n\n for (i = 0; i < scripts.length; i++)\n {\n if (scripts[i].type.match(/^(text\\/)?syntaxhighlighter$/))\n elements.push(scripts[i]);\n }\n }\n\n return elements;\n}\n\nfunction create(name)\n{\n return document.createElement(name);\n}\n\n/**\n * Quick code mouse double click handler.\n */\nfunction quickCodeHandler(e)\n{\n var target = e.target,\n highlighterDiv = findParentElement(target, '.syntaxhighlighter'),\n container = findParentElement(target, '.container'),\n textarea = document.createElement('textarea'),\n highlighter\n ;\n\n if (!container || !highlighterDiv || findElement(container, 'textarea'))\n return;\n\n //highlighter = highlighters.get(highlighterDiv.id);\n\n // add source class name\n addClass(highlighterDiv, 'source');\n\n // Have to go over each line and grab it's text, can't just do it on the\n // container because Firefox loses all \\n where as Webkit doesn't.\n var lines = container.childNodes,\n code = []\n ;\n\n for (var i = 0, l = lines.length; i < l; i++)\n code.push(lines[i].innerText || lines[i].textContent);\n\n // using \\r instead of \\r or \\r\\n makes this work equally well on IE, FF and Webkit\n code = code.join('\\r');\n\n // For Webkit browsers, replace nbsp with a breaking space\n code = code.replace(/\\u00a0/g, \" \");\n\n // inject tag\n textarea.readOnly = true; // https://github.com/syntaxhighlighter/syntaxhighlighter/pull/329\n textarea.appendChild(document.createTextNode(code));\n container.appendChild(textarea);\n\n // preselect all text\n textarea.focus();\n textarea.select();\n\n // set up handler for lost focus\n attachEvent(textarea, 'blur', function(e)\n {\n textarea.parentNode.removeChild(textarea);\n removeClass(highlighterDiv, 'source');\n });\n};\n\nmodule.exports = {\n quickCodeHandler: quickCodeHandler,\n create: create,\n popup: popup,\n hasClass: hasClass,\n addClass: addClass,\n removeClass: removeClass,\n attachEvent: attachEvent,\n findElement: findElement,\n findParentElement: findParentElement,\n getSyntaxHighlighterScriptTags: getSyntaxHighlighterScriptTags,\n findElementsToHighlight: findElementsToHighlight\n}\n\n\n// WEBPACK FOOTER //\n// ./src/dom.js","module.exports = {\n space: ' ',\n\n /** Enables use of tags. */\n useScriptTags: true,\n\n /** Blogger mode flag. */\n bloggerMode: false,\n\n stripBrs: false,\n\n /** Name of the tag that SyntaxHighlighter will automatically look for. */\n tagName: 'pre'\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/config.js","module.exports = {\n /** Additional CSS class names to be added to highlighter elements. */\n 'class-name': '',\n\n /** First line number. */\n 'first-line': 1,\n\n /**\n * Pads line numbers. Possible values are:\n *\n * false - don't pad line numbers.\n * true - automaticaly pad numbers with minimum required number of leading zeroes.\n * [int] - length up to which pad line numbers.\n */\n 'pad-line-numbers': false,\n\n /** Lines to highlight. */\n 'highlight': null,\n\n /** Title to be displayed above the code block. */\n 'title': null,\n\n /** Enables or disables smart tabs. */\n 'smart-tabs': true,\n\n /** Gets or sets tab size. */\n 'tab-size': 4,\n\n /** Enables or disables gutter. */\n 'gutter': true,\n\n /** Enables quick code copy and paste from double click. */\n 'quick-code': true,\n\n /** Forces code view to be collapsed. */\n 'collapse': false,\n\n /** Enables or disables automatic links. */\n 'auto-links': true,\n\n 'unindent': true,\n\n 'html-script': false\n};\n\n\n// WEBPACK FOOTER //\n// ./src/defaults.js","var applyRegexList = require('syntaxhighlighter-match').applyRegexList;\n\nfunction HtmlScript(BrushXML, brushClass)\n{\n var scriptBrush,\n xmlBrush = new BrushXML()\n ;\n\n if (brushClass == null)\n return;\n\n scriptBrush = new brushClass();\n\n if (scriptBrush.htmlScript == null)\n throw new Error('Brush wasn\\'t configured for html-script option: ' + brushClass.brushName);\n\n xmlBrush.regexList.push(\n { regex: scriptBrush.htmlScript.code, func: process }\n );\n\n this.regexList = xmlBrush.regexList;\n\n function offsetMatches(matches, offset)\n {\n for (var j = 0, l = matches.length; j < l; j++)\n matches[j].index += offset;\n }\n\n function process(match, info)\n {\n var code = match.code,\n results = [],\n regexList = scriptBrush.regexList,\n offset = match.index + match.left.length,\n htmlScript = scriptBrush.htmlScript,\n matches\n ;\n\n function add(matches)\n {\n results = results.concat(matches);\n }\n\n matches = applyRegexList(code, regexList);\n offsetMatches(matches, offset);\n add(matches);\n\n // add left script bracket\n if (htmlScript.left != null && match.left != null)\n {\n matches = applyRegexList(match.left, [htmlScript.left]);\n offsetMatches(matches, match.index);\n add(matches);\n }\n\n // add right script bracket\n if (htmlScript.right != null && match.right != null)\n {\n matches = applyRegexList(match.right, [htmlScript.right]);\n offsetMatches(matches, match.index + match[0].lastIndexOf(match.right));\n add(matches);\n }\n\n for (var j = 0, l = results.length; j < l; j++)\n results[j].brushName = brushClass.brushName;\n\n return results;\n }\n};\n\nmodule.exports = HtmlScript;\n\n\n\n// WEBPACK FOOTER //\n// ./src/html_script.js","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n\n// WEBPACK FOOTER //\n// ./~/process/browser.js","import Renderer from 'syntaxhighlighter-html-renderer';\nimport { XRegExp } from 'syntaxhighlighter-regex';\nimport { applyRegexList } from 'syntaxhighlighter-match';\n\nmodule.exports = class BrushBase {\n /**\n * Converts space separated list of keywords into a regular expression string.\n * @param {String} str Space separated keywords.\n * @return {String} Returns regular expression string.\n */\n getKeywords(str)\n {\n const results = str\n .replace(/^\\s+|\\s+$/g, '')\n .replace(/\\s+/g, '|')\n ;\n\n return `\\\\b(?:${results})\\\\b`;\n }\n\n /**\n * Makes a brush compatible with the `html-script` functionality.\n * @param {Object} regexGroup Object containing `left` and `right` regular expressions.\n */\n forHtmlScript(regexGroup)\n {\n const regex = { 'end': regexGroup.right.source };\n\n if (regexGroup.eof) {\n regex.end = `(?:(?:${regex.end})|$)`;\n }\n\n this.htmlScript = {\n left: { regex: regexGroup.left, css: 'script' },\n right: { regex: regexGroup.right, css: 'script' },\n code: XRegExp(\n \"(?.*?)\" +\n \"(?\" + regex.end + \")\",\n \"sgi\"\n )\n };\n }\n\n getHtml(code, params = {}) {\n const matches = applyRegexList(code, this.regexList);\n const renderer = new Renderer(code, matches, params);\n return renderer.getHtml();\n }\n};\n\n\n\n// WEBPACK FOOTER //\n// ./~/brush-base/brush-base.js","var BrushBase = require('brush-base');\nvar regexLib = require('syntaxhighlighter-regex').commonRegExp;\nvar Match = require('syntaxhighlighter-match').Match;\n\nfunction Brush() {\n var keywords = 'abstract as base bool break byte case catch char checked class const ' +\n 'continue decimal default delegate do double else enum event explicit volatile ' +\n 'extern false finally fixed float for foreach get goto if implicit in int ' +\n 'interface internal is lock long namespace new null object operator out ' +\n 'override params private protected public readonly ref return sbyte sealed set ' +\n 'short sizeof stackalloc static string struct switch this throw true try ' +\n 'typeof uint ulong unchecked unsafe ushort using virtual void while var ' +\n 'from group by into select let where orderby join on equals ascending descending';\n\n function fixComments(match, regexInfo) {\n var css = (match[0].indexOf(\"///\") == 0) ? 'color1' : 'comments';\n return [new Match(match[0], match.index, css)];\n }\n\n this.regexList = [\n {\n regex: regexLib.singleLineCComments,\n func: fixComments\n },\n {\n regex: regexLib.multiLineCComments,\n css: 'comments'\n },\n {\n regex: /@\"(?:[^\"]|\"\")*\"/g,\n css: 'string'\n },\n {\n regex: regexLib.doubleQuotedString,\n css: 'string'\n },\n {\n regex: regexLib.singleQuotedString,\n css: 'string'\n },\n {\n regex: /^\\s*#.*/gm,\n css: 'preprocessor'\n },\n {\n regex: new RegExp(this.getKeywords(keywords), 'gm'),\n css: 'keyword'\n },\n {\n regex: /\\bpartial(?=\\s+(?:class|interface|struct)\\b)/g,\n css: 'keyword'\n },\n {\n regex: /\\byield(?=\\s+(?:return|break)\\b)/g,\n css: 'keyword'\n }\n\t\t];\n\n this.forHtmlScript(regexLib.aspScriptTags);\n};\n\nBrush.prototype = new BrushBase();\nBrush.aliases = ['c#', 'c-sharp', 'csharp'];\nmodule.exports = Brush;\n\n\n// WEBPACK FOOTER //\n// ./~/brush-csharp/brush.js","var BrushBase = require('brush-base');\nvar regexLib = require('syntaxhighlighter-regex').commonRegExp;\n\nfunction Brush() {\n function getKeywordsCSS(str) {\n return '\\\\b([a-z_]|)' + str.replace(/ /g, '(?=:)\\\\b|\\\\b([a-z_\\\\*]|\\\\*|)') + '(?=:)\\\\b';\n };\n\n function getValuesCSS(str) {\n return '\\\\b' + str.replace(/ /g, '(?!-)(?!:)\\\\b|\\\\b()') + '\\:\\\\b';\n };\n\n var keywords = 'ascent azimuth background-attachment background-color background-image background-position ' +\n 'background-repeat background baseline bbox border-collapse border-color border-spacing border-style border-top ' +\n 'border-right border-bottom border-left border-top-color border-right-color border-bottom-color border-left-color ' +\n 'border-top-style border-right-style border-bottom-style border-left-style border-top-width border-right-width ' +\n 'border-bottom-width border-left-width border-width border bottom cap-height caption-side centerline clear clip color ' +\n 'content counter-increment counter-reset cue-after cue-before cue cursor definition-src descent direction display ' +\n 'elevation empty-cells float font-size-adjust font-family font-size font-stretch font-style font-variant font-weight font ' +\n 'height left letter-spacing line-height list-style-image list-style-position list-style-type list-style margin-top ' +\n 'margin-right margin-bottom margin-left margin marker-offset marks mathline max-height max-width min-height min-width orphans ' +\n 'outline-color outline-style outline-width outline overflow padding-top padding-right padding-bottom padding-left padding page ' +\n 'page-break-after page-break-before page-break-inside pause pause-after pause-before pitch pitch-range play-during position ' +\n 'quotes right richness size slope src speak-header speak-numeral speak-punctuation speak speech-rate stemh stemv stress ' +\n 'table-layout text-align top text-decoration text-indent text-shadow text-transform unicode-bidi unicode-range units-per-em ' +\n 'vertical-align visibility voice-family volume white-space widows width widths word-spacing x-height z-index';\n\n var values = 'above absolute all always aqua armenian attr aural auto avoid baseline behind below bidi-override black blink block blue bold bolder ' +\n 'both bottom braille capitalize caption center center-left center-right circle close-quote code collapse compact condensed ' +\n 'continuous counter counters crop cross crosshair cursive dashed decimal decimal-leading-zero default digits disc dotted double ' +\n 'embed embossed e-resize expanded extra-condensed extra-expanded fantasy far-left far-right fast faster fixed format fuchsia ' +\n 'gray green groove handheld hebrew help hidden hide high higher icon inline-table inline inset inside invert italic ' +\n 'justify landscape large larger left-side left leftwards level lighter lime line-through list-item local loud lower-alpha ' +\n 'lowercase lower-greek lower-latin lower-roman lower low ltr marker maroon medium message-box middle mix move narrower ' +\n 'navy ne-resize no-close-quote none no-open-quote no-repeat normal nowrap n-resize nw-resize oblique olive once open-quote outset ' +\n 'outside overline pointer portrait pre print projection purple red relative repeat repeat-x repeat-y rgb ridge right right-side ' +\n 'rightwards rtl run-in screen scroll semi-condensed semi-expanded separate se-resize show silent silver slower slow ' +\n 'small small-caps small-caption smaller soft solid speech spell-out square s-resize static status-bar sub super sw-resize ' +\n 'table-caption table-cell table-column table-column-group table-footer-group table-header-group table-row table-row-group teal ' +\n 'text-bottom text-top thick thin top transparent tty tv ultra-condensed ultra-expanded underline upper-alpha uppercase upper-latin ' +\n 'upper-roman url visible wait white wider w-resize x-fast x-high x-large x-loud x-low x-slow x-small x-soft xx-large xx-small yellow';\n\n var fonts = '[mM]onospace [tT]ahoma [vV]erdana [aA]rial [hH]elvetica [sS]ans-serif [sS]erif [cC]ourier mono sans serif';\n\n this.regexList = [\n {\n regex: regexLib.multiLineCComments,\n css: 'comments'\n },\n {\n regex: regexLib.doubleQuotedString,\n css: 'string'\n },\n {\n regex: regexLib.singleQuotedString,\n css: 'string'\n },\n {\n regex: /\\#[a-fA-F0-9]{3,6}/g,\n css: 'value'\n },\n {\n regex: /(-?\\d+)(\\.\\d+)?(px|em|pt|\\:|\\%|)/g,\n css: 'value'\n },\n {\n regex: /!important/g,\n css: 'color3'\n },\n {\n regex: new RegExp(getKeywordsCSS(keywords), 'gm'),\n css: 'keyword'\n },\n {\n regex: new RegExp(getValuesCSS(values), 'g'),\n css: 'value'\n },\n {\n regex: new RegExp(this.getKeywords(fonts), 'g'),\n css: 'color1'\n }\n\t\t];\n\n this.forHtmlScript({\n left: /(<|<)\\s*style.*?(>|>)/gi,\n right: /(<|<)\\/\\s*style\\s*(>|>)/gi\n });\n};\n\nBrush.prototype = new BrushBase();\nBrush.aliases = ['css'];\nmodule.exports = Brush;\n\n\n// WEBPACK FOOTER //\n// ./~/brush-css/brush.js","var BrushBase = require('brush-base');\nvar regexLib = require('syntaxhighlighter-regex').commonRegExp;\n\nfunction Brush() {\n var keywords = 'break case catch class continue ' +\n 'default delete do else enum export extends false ' +\n 'for from as function if implements import in instanceof ' +\n 'interface let new null package private protected ' +\n 'static return super switch ' +\n 'this throw true try typeof var while with yield';\n\n this.regexList = [\n {\n regex: regexLib.multiLineDoubleQuotedString,\n css: 'string'\n },\n {\n regex: regexLib.multiLineSingleQuotedString,\n css: 'string'\n },\n {\n regex: regexLib.singleLineCComments,\n css: 'comments'\n },\n {\n regex: regexLib.multiLineCComments,\n css: 'comments'\n },\n {\n regex: /\\s*#.*/gm,\n css: 'preprocessor'\n },\n {\n regex: new RegExp(this.getKeywords(keywords), 'gm'),\n css: 'keyword'\n }\n ];\n\n this.forHtmlScript(regexLib.scriptScriptTags);\n}\n\nBrush.prototype = new BrushBase();\nBrush.aliases = ['js', 'jscript', 'javascript', 'json'];\nmodule.exports = Brush;\n\n\n// WEBPACK FOOTER //\n// ./~/brush-javascript/brush.js","var BrushBase = require('brush-base');\nvar regexLib = require('syntaxhighlighter-regex').commonRegExp;\nvar XRegExp = require('syntaxhighlighter-regex').XRegExp;\nvar Match = require('syntaxhighlighter-match').Match;\n\nfunction Brush() {\n function process(match, regexInfo) {\n var code = match[0],\n tag = XRegExp.exec(code, XRegExp('(<|<)[\\\\s\\\\/\\\\?!]*(?[:\\\\w-\\\\.]+)', 'xg')),\n result = [];\n\n if (match.attributes != null) {\n var attributes,\n pos = 0,\n regex = XRegExp('(? [\\\\w:.-]+)' +\n '\\\\s*=\\\\s*' +\n '(? \".*?\"|\\'.*?\\'|\\\\w+)',\n 'xg');\n\n while ((attributes = XRegExp.exec(code, regex, pos)) != null) {\n result.push(new Match(attributes.name, match.index + attributes.index, 'color1'));\n result.push(new Match(attributes.value, match.index + attributes.index + attributes[0].indexOf(attributes.value), 'string'));\n pos = attributes.index + attributes[0].length;\n }\n }\n\n if (tag != null)\n result.push(\n new Match(tag.name, match.index + tag[0].indexOf(tag.name), 'keyword')\n );\n\n return result;\n }\n\n this.regexList = [\n {\n regex: XRegExp('(\\\\<|<)\\\\!\\\\[[\\\\w\\\\s]*?\\\\[(.|\\\\s)*?\\\\]\\\\](\\\\>|>)', 'gm'),\n css: 'color2'\n },\n {\n regex: regexLib.xmlComments,\n css: 'comments'\n },\n {\n regex: XRegExp('(<|<)[\\\\s\\\\/\\\\?!]*(\\\\w+)(?.*?)[\\\\s\\\\/\\\\?]*(>|>)', 'sg'),\n func: process\n }\n\t];\n};\n\nBrush.prototype = new BrushBase();\nBrush.aliases = ['xml', 'xhtml', 'xslt', 'html', 'plist'];\nmodule.exports = Brush;\n\n\n// WEBPACK FOOTER //\n// ./~/brush-xml/brush.js","/*!\n * domready (c) Dustin Diaz 2014 - License MIT\n */\n!function (name, definition) {\n\n if (typeof module != 'undefined') module.exports = definition()\n else if (typeof define == 'function' && typeof define.amd == 'object') define(definition)\n else this[name] = definition()\n\n}('domready', function () {\n\n var fns = [], listener\n , doc = document\n , hack = doc.documentElement.doScroll\n , domContentLoaded = 'DOMContentLoaded'\n , loaded = (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState)\n\n\n if (!loaded)\n doc.addEventListener(domContentLoaded, listener = function () {\n doc.removeEventListener(domContentLoaded, listener)\n loaded = 1\n while (listener = fns.shift()) listener()\n })\n\n return function (fn) {\n loaded ? setTimeout(fn, 0) : fns.push(fn)\n }\n\n});\n\n\n\n// WEBPACK FOOTER //\n// ./~/domready/ready.js","export const string = value =>\n value\n .replace(/^([A-Z])/g, (_, character) => character.toLowerCase())\n .replace(/([A-Z])/g, (_, character) => '-' + character.toLowerCase());\n\nexport const object = value => {\n const result = {};\n Object.keys(value).forEach(key => result[string(key)] = value[key]);\n return result;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/dasherize.js"],"sourceRoot":""}