SYMBOL INDEX (60 symbols across 7 files) FILE: hads.js constant INDEXES (line 57) | const INDEXES = [ constant ICONS (line 62) | const ICONS = { constant STYLESHEET (line 68) | const STYLESHEET = 'custom.css'; constant PATHS (line 69) | const PATHS = { method code (line 74) | get code() { method customStylesheet (line 78) | get customStylesheet() { method export (line 82) | get export() { method hads (line 86) | get hads() { method images (line 90) | get images() { method root (line 94) | get root() { constant SCRIPTS (line 100) | const SCRIPTS = [ constant STYLESHEETS (line 106) | const STYLESHEETS = [ function renderPage (line 218) | function renderPage() { function tryProcessFile (line 273) | function tryProcessFile() { FILE: lib/helpers.js class Helpers (line 6) | class Helpers { method extractRoute (line 7) | static extractRoute(requestPath) { method sanitizePath (line 11) | static sanitizePath(path) { method hasQueryOption (line 15) | static hasQueryOption(query, option) { method processPackages (line 19) | static processPackages(callback) { method ensureMarkdownExtension (line 35) | static ensureMarkdownExtension(file) { method readCode (line 47) | static async readCode() { FILE: lib/indexer.js constant EXCLUSIONS (line 12) | const EXCLUSIONS = ['node_modules']; class Indexer (line 14) | class Indexer { method constructor (line 15) | constructor(basePath) { method indexFiles (line 25) | indexFiles() { method updateIndexForFile (line 38) | updateIndexForFile(file) { method getContent (line 54) | getContent(file) { method getFiles (line 58) | getFiles() { method search (line 62) | search(string) { FILE: lib/matcher.js constant MARKDOWN_EXTENSIONS (line 6) | const MARKDOWN_EXTENSIONS = ['md', 'mkdn', 'mdown', 'markdown']; constant IMAGES_EXTENSIONS (line 7) | const IMAGES_EXTENSIONS = ['png', 'jpg', 'jpeg', 'gif', 'svg', 'webp']; constant CODE_EXTENSIONS (line 8) | const CODE_EXTENSIONS = [ class Matcher (line 25) | class Matcher { method isMarkdown (line 26) | static isMarkdown(file) { method isImage (line 30) | static isImage(file) { method getImages (line 34) | static getImages() { method isCode (line 38) | static isCode(file) { method getCode (line 42) | static getCode() { method hasExtension (line 46) | static hasExtension(file, extensions) { FILE: lib/renderer.js constant SEARCH_EXTRACT_LENGTH (line 11) | const SEARCH_EXTRACT_LENGTH = 400; constant SEARCH_RESULTS_MAX (line 12) | const SEARCH_RESULTS_MAX = 10; constant ROOT_FILES_INDEX (line 14) | const ROOT_FILES_INDEX = { constant NUMBER_SEPARATORS (line 20) | const NUMBER_SEPARATORS = /[-_]/g; class Renderer (line 22) | class Renderer { method constructor (line 23) | constructor(indexer, options) { method renderRaw (line 29) | renderRaw(file) { method renderFile (line 33) | renderFile(file) { method renderCode (line 37) | renderCode(file) { method renderSearch (line 42) | renderSearch(search) { method renderIndex (line 71) | renderIndex() { method renderTableOfContents (line 99) | renderTableOfContents(content) { method renderMarkdown (line 114) | renderMarkdown(content) { method removeLinks (line 162) | static removeLinks(text) { method formatHref (line 167) | static formatHref(href, isExport) { method renderIndexLevel (line 181) | static renderIndexLevel(index, level) { method encodeFileLink (line 255) | static encodeFileLink(link) { method trimNumberPrefix (line 266) | static trimNumberPrefix(key) { method getNumberPrefix (line 284) | static getNumberPrefix(key) { FILE: public/js/client.js function getUploadMessage (line 29) | function getUploadMessage(file) { FILE: test/code.js function hello (line 1) | function hello(name) {