{"version":3,"sources":["../alphaListNav.js"],"names":["AlphaListNav","listElem","options","console","error","listItems","_getListItems","alphaObj","_getAlphaObj","newListHTML","_generateNewListHTML","alphaNav","_generateAlphaNav","parentNode","replaceChild","insertBefore","initAlphaListNav","addEventListener","e","preventDefault","target","dataset","filter","letter","children","btn","classList","remove","ul","add","div","id","querySelector","replace","showCounts","Array","prototype","slice","call","forEach","alphaLink","count","Object","keys","reduce","accum","key","length","countElem","document","createElement","className","style","cssText","textContent","visibility","appendChild","countElemHeight","getBoundingClientRect","height","countTopPos","top","removeChild","elem","node","ret","i","nodeType","_getText","firstChild","nextSibling","nodeValue","newListElem","alphaNavElem","initLetter","includeAll","toLowerCase","allListGroups","querySelectorAll","hasOwnProperty","initHidden","initHiddenText","getElementById","firstLetter","_getArrayAtoZ","find","char","listItemsArray","alphaList","val","text","filterSelector","filterElem","trim","prefixes","RegExp","result","exec","charAt","lastIndex","match","concatenateNums","push","initHiddenTextLi","wrapper","NewList","sort","a","b","map","showLetterHeadings","heading","_getHeading","cloneNode","noMatchDiv","noMatchUl","noMatchLi","noMatchText","abcChars","includeNums","_getArray0to9","reverse","unshift","toString","includeOther","navigationEntries","block","navChar","allText","flagDisabled","removeDisabled","innerHTML","apply","x","String","fromCharCode","defaultOptions","_isDomElement","regexes","source","join","init","HTMLElement","nodeName","headingText","test","toUpperCase"],"mappings":"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","sourcesContent":["\"use strict\";\r\n/*! alphaListNav.js - v0.7.1\r\nBuild Date: 02-05-2020\r\nAuthor: [Bryan Elliott] (https://github.com/elliottprogrammer/)\r\nGit Repository: git+https://github.com/elliottprogrammer/alphaListNav.js.git */\r\n\r\n/**\r\n* ** TODO: **\r\n* 2. Add options\r\n* - dont-count:\r\n* - Remember last letter cookie?\r\n* - onLetterClick function()\r\n* 3. Add nice css styling\r\n* 4. Refactor & optimize for size\r\n* \r\n**/\r\n\r\nclass AlphaListNav {\r\n constructor(listElem, options = {}) {\r\n\r\n const defaultOptions = {\r\n initHidden: true,\r\n initHiddenText: 'Tap a letter above to view matching items', // string or boolean false\r\n initLetter: '',\r\n includeAll: true,\r\n allText: 'All',\r\n noMatchText: 'No matching entries',\r\n includeNums: true,\r\n concatenateNums: true, // 0 - 9\r\n includeOther: false,\r\n flagDisabled: true,\r\n removeDisabled: false,\r\n prefixes: [], // array of strings and/or RegEx's\r\n filterSelector: '',\r\n showCounts: true,\r\n showLetterHeadings: true,\r\n }\r\n\r\n\r\n this.listElem = this._isDomElement(listElem) ? listElem : document.getElementById(listElem);\r\n\r\n this.options = {\r\n ...defaultOptions,\r\n ...options\r\n }\r\n\r\n this.alphaObj = null;\r\n this.alphaNav = null;\r\n this.newListHTML = null;\r\n\r\n // if there is options.prefixes[], check if any are strings, if so, convert to them to RegEx's\r\n if (this.options.prefixes.length) {\r\n const regexes = this.options.prefixes.map(val => {\r\n if (typeof val === 'string') {\r\n val = val.replace(/[.*+?^${}()|[\\]\\\\]/, '\\\\$&');\r\n return val + '\\\\s';//new RegExp(val);\r\n }\r\n if (typeof val === 'object' && val instanceof RegExp) {\r\n return val.source + '\\\\s';\r\n }\r\n });\r\n this.options.prefixes = new RegExp(regexes.join(\"|\"), \"gi\");\r\n }\r\n\r\n this.init();\r\n }\r\n\r\n init = () => {\r\n\r\n // if first arg is not an HTMLElement, return\r\n if (!this.listElem) { console.error('The supplied argument must be a HTML DOM element or a valid element id (string)'); return; }\r\n // get array of list items\r\n const listItems = this._getListItems(this.listElem);\r\n //console.log(listItems);\r\n // sort list into an alphabetical object\r\n this.alphaObj = this._getAlphaObj(listItems);\r\n //console.log(this.alphaObj);\r\n // generate new list html with sorting markup\r\n this.newListHTML = this._generateNewListHTML(this.alphaObj);\r\n // generate the alpha-nav buttons html\r\n this.alphaNav = this._generateAlphaNav(this.alphaObj);\r\n // Replace the old list with the new alpha-list in the dom\r\n this.listElem.parentNode.replaceChild(this.newListHTML, this.listElem);\r\n // // get reference to the new alpha-list\r\n //const newListElem = document.getElementById('alpha-list');\r\n // Add alpha-nav buttons to dom\r\n this.newListHTML.parentNode.insertBefore(this.alphaNav, this.newListHTML);\r\n // get reference to alpha-nav\r\n //const alphaNavElem = document.getElementById('alpha-nav');\r\n\r\n this.initAlphaListNav(this.newListHTML, this.alphaNav, this.alphaObj);\r\n\r\n // Add event listener to alpha-nav buttons\r\n this.alphaNav.addEventListener('click', e => {\r\n // TODO: replace with create selectLetter() function\r\n e.preventDefault();\r\n if (!e.target.dataset.filter) return;\r\n const letter = e.target.dataset.filter;\r\n // remove active class from all buttons\r\n for (let btn of this.alphaNav.children) {\r\n btn.classList.remove('active');\r\n }\r\n // remove active class from all lists\r\n for (let ul of this.newListHTML.children) {\r\n ul.classList.remove('active');\r\n }\r\n // add active class to button clicked\r\n e.target.classList.add('active');\r\n // add active class to the list matching the cooresponding clicked letter\r\n if (letter === '*') {\r\n for (let div of this.newListHTML.children) {\r\n if (div.id !== 'no-match')\r\n div.classList.add('active');\r\n }\r\n } else {\r\n this.newListHTML.querySelector(`#${letter.replace(/[-]/, '\\\\$&')}`).classList.add('active');\r\n }\r\n\r\n });\r\n\r\n // Show letter counts\r\n if (this.options.showCounts) {\r\n Array.prototype.slice.call(this.alphaNav.children).forEach(alphaLink => {\r\n alphaLink.addEventListener('mouseover', e => {\r\n let count = 0;\r\n if (e.target.dataset.filter) {\r\n const filter = e.target.dataset.filter;\r\n if (filter !== 'no-match') {\r\n if (filter === '*') {\r\n count = Object.keys(this.alphaObj).reduce((accum, key) => {\r\n return accum + this.alphaObj[key].length;\r\n }, 0);\r\n } else {\r\n count = this.alphaObj[filter].length\r\n }\r\n }\r\n };\r\n const countElem = document.createElement('span');\r\n countElem.className = \"alphaNav-count-elem\";\r\n countElem.style.cssText = `position:absolute;left:0;width:100%;text-align:center;font-size:75%;`;\r\n countElem.textContent = count;\r\n // inject into dom, but with no visibility so we can calculate the element height\r\n countElem.style.visibility = 'none';\r\n e.target.appendChild(countElem);\r\n const countElemHeight = countElem.getBoundingClientRect().height;\r\n // top position is -count elem height + 3.\r\n const countTopPos = countElemHeight + 2;\r\n // set count elem top position\r\n countElem.style.top = `-${countTopPos}px`;\r\n // and make visible\r\n countElem.style.visibility = 'visible';\r\n });\r\n\r\n alphaLink.addEventListener('mouseout', e => {\r\n e.target.removeChild(e.target.children[0]);\r\n })\r\n });\r\n }\r\n\r\n }\r\n\r\n // Retrieve the text value from DOM node or an array of DOM nodes.\r\n // Taken from jQuery (source: https://github.com/jquery/jquery/blob/master/src/core.js)\r\n _getText = (elem) => {\r\n let node,\r\n ret = \"\",\r\n i = 0,\r\n nodeType = elem.nodeType;\r\n if (!nodeType) {\r\n // If no nodeType, this is expected to be an array\r\n while ((node = elem[i++])) {\r\n // Do not traverse comment nodes\r\n ret += this._getText(node);\r\n }\r\n } else if (nodeType === 1 || nodeType === 9 || nodeType === 11) {\r\n // Use textContent for elements\r\n if (typeof elem.textContent === \"string\") {\r\n return elem.textContent;\r\n } else {\r\n // Traverse its children\r\n for (elem = elem.firstChild; elem; elem = elem.nextSibling) {\r\n ret += this._getText(elem);\r\n }\r\n }\r\n } else if (nodeType === 3 || nodeType === 4) {\r\n return elem.nodeValue;\r\n }\r\n return ret;\r\n }\r\n\r\n initAlphaListNav = (newListElem, alphaNavElem, alphaObj) => {\r\n // if initLetter is set, show that letter first\r\n if (this.options.initLetter) {\r\n // if init letter is All(*), show all\r\n if (this.options.initLetter === '*' && this.options.includeAll) {\r\n alphaNavElem.querySelector(`a[data-filter=\"${this.options.initLetter.toLowerCase()}\"]`).classList.add('active');\r\n const allListGroups = newListElem.querySelectorAll('div.alpha-list-wrapper');\r\n Array.prototype.slice.call(allListGroups).forEach(div => div.classList.add('active'));\r\n // else show init letter, if it exists..\r\n } else if (alphaObj.hasOwnProperty(this.options.initLetter.toLowerCase())) {\r\n // TODO: replace with create selectLetter() function\r\n alphaNavElem.querySelector(`a[data-filter=\"${this.options.initLetter.toLowerCase()}\"]`).classList.add('active');\r\n newListElem.querySelector(`#${this.options.initLetter.toLowerCase()}`).classList.add('active');\r\n }\r\n } else {\r\n // if initHidden set, don't show list\r\n if (this.options.initHidden) {\r\n if (this.options.initHiddenText)\r\n document.getElementById('initText').classList.add('active');\r\n // if includeAll is set, show all list\r\n } else if (this.options.includeAll) {\r\n const allListGroups = newListElem.querySelectorAll('div.alpha-list-wrapper');\r\n Array.prototype.slice.call(allListGroups).forEach(div => div.classList.add('active'));\r\n alphaNavElem.querySelector(`a[data-filter=\"*\"]`).classList.add('active');\r\n // if none of above, find first letter with with list items, and show that first.\r\n } else {\r\n const firstLetter = this._getArrayAtoZ().find(char => alphaObj.hasOwnProperty(char.toLowerCase())).toLowerCase();\r\n\r\n // TODO: replace with/create selectLetter() function\r\n alphaNavElem.querySelector(`a[data-filter=\"${firstLetter}\"]`).classList.add('active');\r\n document.getElementById(firstLetter).classList.add('active');\r\n }\r\n }\r\n }\r\n\r\n _getListItems(listElem) {\r\n if (!listElem.children.length)\r\n return [];\r\n return Array.prototype.slice.call(listElem.children);\r\n }\r\n\r\n _isDomElement(elem) {\r\n return (\r\n typeof HTMLElement === \"object\" ? elem instanceof HTMLElement : //DOM2\r\n elem && typeof elem === \"object\" && elem !== null && elem.nodeType === 1 && typeof elem.nodeName === \"string\"\r\n );\r\n }\r\n\r\n // create object of list items ordered by each alphabet letter\r\n _getAlphaObj = (listItemsArray) => {\r\n const alphaList = listItemsArray.reduce((accum, val) => {\r\n let text = '';\r\n if (this.options.filterSelector) {\r\n const filterElem = val.querySelector(this.options.filterSelector);\r\n text = filterElem ? this._getText(filterElem) : this._getText(val);\r\n } else {\r\n text = this._getText(val);\r\n }\r\n if (text) {\r\n // if text first char is (-_*) for some reason, remove it because it will cause problems.\r\n text.trim().replace(/^[_*-]/, '');\r\n let letter;\r\n if (this.options.prefixes instanceof RegExp) {\r\n let result;\r\n if ((result = this.options.prefixes.exec(text)) !== null) {\r\n letter = text.charAt(this.options.prefixes.lastIndex).toLowerCase();\r\n } else {\r\n letter = text.charAt(0).toLowerCase();\r\n }\r\n } else {\r\n letter = text.charAt(0).toLowerCase();\r\n }\r\n if (letter.match(/[0-9A-Za-z]/)) {\r\n if (this.options.concatenateNums) {\r\n if (letter.match(/[0-9]/)) {\r\n letter = '_';\r\n }\r\n }\r\n } else {\r\n letter = '-'\r\n }\r\n\r\n if (accum[letter]) {\r\n accum[letter].push(val)\r\n } else {\r\n accum[letter] = [val];\r\n }\r\n }\r\n return accum;\r\n }, {});\r\n if (this.options.initHidden) {\r\n const initHiddenTextLi = document.createElement('li');\r\n initHiddenTextLi.className = 'init-hidden-text';\r\n initHiddenTextLi.textContent = this.options.initHiddenText\r\n alphaList['initText'] = [initHiddenTextLi];\r\n }\r\n return alphaList;\r\n }\r\n\r\n _getHeading(key) {\r\n let headingText = '';\r\n switch (true) {\r\n case /^[*]$/.test(key):\r\n headingText = this.options.allText;\r\n break;\r\n case /^[_]$/.test(key):\r\n headingText = '0 - 9';\r\n break;\r\n case /^[-]$/.test(key):\r\n headingText = 'Others';\r\n break;\r\n case /^initText$/.test(key):\r\n break;\r\n default:\r\n headingText = key.toUpperCase();\r\n }\r\n return headingText;\r\n }\r\n\r\n // generate new list HTML markup\r\n _generateNewListHTML = (alphaObj) => {\r\n const wrapper = document.createElement('div');\r\n wrapper.id = 'alpha-list';\r\n wrapper.className = 'alpha-list';\r\n const NewList = Object.keys(alphaObj)\r\n .sort((a, b) => {\r\n if (a === '-') return 1;\r\n if (b === '-') return -1;\r\n if (a < b)\r\n return -1;\r\n if (a > b)\r\n return 1;\r\n return 0;\r\n })\r\n .map((key) => {\r\n const div = document.createElement('div');\r\n div.id = key;\r\n div.className = 'alpha-list-wrapper';\r\n if (this.options.showLetterHeadings) {\r\n const heading = document.createElement('h3');\r\n heading.className = 'alpha-list-heading';\r\n heading.textContent = this._getHeading(key)\r\n if (heading.textContent)\r\n div.appendChild(heading);\r\n }\r\n const ul = document.createElement('ul');\r\n ul.className = 'alpha-list-group';\r\n\r\n alphaObj[key].forEach(node => {\r\n ul.appendChild(node.cloneNode(true));\r\n });\r\n div.appendChild(ul);\r\n wrapper.appendChild(div);\r\n return div;\r\n });\r\n const noMatchDiv = document.createElement('div');\r\n noMatchDiv.id = 'no-match';\r\n const noMatchUl = document.createElement('ul');\r\n noMatchUl.className = 'no-match-group';\r\n const noMatchLi = document.createElement('li');\r\n noMatchLi.textContent = this.options.noMatchText;\r\n\r\n noMatchUl.appendChild(noMatchLi);\r\n noMatchDiv.appendChild(noMatchUl);\r\n wrapper.appendChild(noMatchDiv);\r\n return wrapper;\r\n }\r\n\r\n // Generate alphabet navigation HTML markup\r\n _generateAlphaNav = (alphaObj) => {\r\n const alphaNav = document.createElement('div');\r\n alphaNav.id = 'alpha-nav';\r\n alphaNav.className = 'character-container';\r\n const abcChars = this._getArrayAtoZ();\r\n if (this.options.includeNums) {\r\n if (!this.options.concatenateNums) {\r\n this._getArray0to9().reverse().forEach(val => abcChars.unshift(val.toString()));\r\n } else {\r\n abcChars.unshift('_');\r\n }\r\n }\r\n if (this.options.includeOther)\r\n abcChars.push('-');\r\n if (this.options.includeAll)\r\n abcChars.unshift('*')\r\n //console.log(abcChars);\r\n const navigationEntries = abcChars.reduce((block, navChar) => {\r\n\r\n if (alphaObj[navChar.toLowerCase()]) {\r\n if (navChar === '_') {\r\n return block + '0 - 9';\r\n } else if (navChar === '-') {\r\n return block + '...';\r\n } else {\r\n return block + '' + navChar + '';\r\n }\r\n\r\n } else if (navChar === '*') {\r\n return block + '' + this.options.allText + '';\r\n }\r\n if (this.options.flagDisabled) {\r\n if (this.options.removeDisabled) {\r\n return block;\r\n }\r\n if (navChar === '_') {\r\n return block + '
0 - 9
';\r\n } else if (navChar === '-') {\r\n return block + '
...
';\r\n } else {\r\n return block + '
' + navChar + '
';\r\n }\r\n }\r\n return block + '' + navChar + '';\r\n }, '');\r\n alphaNav.innerHTML = navigationEntries;\r\n return alphaNav;\r\n }\r\n\r\n // generate array of alphebet, a - z\r\n _getArrayAtoZ = () => {\r\n return Array\r\n .apply(null, { length: 26 })\r\n .map((x, i) => String.fromCharCode(65 + i));\r\n }\r\n\r\n _getArray0to9 = () => {\r\n return Array\r\n .apply(null, new Array(10))\r\n .map((x, i) => i);\r\n };\r\n\r\n}"],"file":"alphaListNav.js"}