{"version":3,"sources":["dropdown.js"],"names":["$","window","document","undefined","Math","self","Function","fn","dropdown","parameters","returnedValue","$allModules","this","$document","moduleSelector","selector","hasTouch","documentElement","time","Date","getTime","performance","query","arguments","methodInvoked","queryArguments","slice","call","each","elementIndex","initialLoad","pageLostFocus","willRefocus","elementNamespace","id","selectObserver","menuObserver","module","settings","isPlainObject","extend","className","message","fields","keys","metadata","namespace","regExp","error","templates","eventNamespace","moduleNamespace","$module","$context","context","$text","find","text","$search","search","$sizer","sizer","$input","input","$icon","icon","$combo","prev","length","$menu","children","menu","$item","item","activated","itemActivated","internalChange","element","instance","data","initialize","debug","is","alreadySetup","setup","reference","layout","refreshData","save","defaults","restore","selected","create","bind","events","observeChanges","instantiate","verbose","destroy","remove","tabbable","off","removeData","disconnect","MutationObserver","event","select","mutation","observe","has","childList","subtree","random","toString","substr","userChoice","values","$userChoices","$userChoice","html","get","userValues","isArray","index","value","addition","add","variables","addResult","attr","addClass","hideAdditions","hidden","userLabels","label","appendTo","insertAfter","minCharacters","filter","hide","firstUnfiltered","selectedItem","not","unselectable","eq","nextAvailable","$selected","$nextAvailable","nextAll","$prevAvailable","prevAll","hasNext","api","apiSettings","urlData","on","returnedObject","prop","insertBefore","multiple","searchSelection","allowTab","set","selectValues","parent","closest","selection","hasClass","missingMultiple","disabled","removeAttr","detach","prependTo","refresh","invoke","$firstModules","$lastModules","refreshSelectors","refreshItems","clearData","defaultText","defaultValue","placeholderText","toggle","active","show","callback","isFunction","can","maxSelections","allResultsFiltered","allFiltered","onShow","animate","click","intent","menuSearch","focusSearch","visible","onHide","hideOthers","hideMenu","transition","hideSubMenus","$subMenus","touchEvents","keyboardEvents","inputEvents","mouseEvents","single","test","mouseenter","keydown","inputEvent","change","mousedown","mouseup","focus","blur","delay","mouseleave","touch","unbind","searchTerm","afterFiltered","filterActive","onNoResults","allowAdditions","empty","noResults","userSuggestion","focusedOnSearch","useLabels","useAPI","queryRemote","noAPI","filterItems","errorDuration","cache","throttle","onError","serverError","onFailure","onSuccess","response","remoteValues","results","escapedTerm","escape","beginsWithRegExp","RegExp","$choice","match","String","choiceText","push","fullTextSearch","exactSearch","fuzzySearch","choiceValue","filteredItem","filtered","term","termLength","queryLength","toLowerCase","characterIndex","nextCharacterIndex","queryCharacter","charCodeAt","indexOf","skipHandler","forceSelection","$currentlySelected","$activeItem","$selectedItem","hasSelected","showOnFocus","activeElement","activeLabel","$target","target","clearTimeout","timer","setTimeout","$label","$labels","$activeLabels","$nextActive","$prevActive","$range","nextUntil","prevUntil","shiftKey","removeClass","ctrlKey","toggleClass","onLabelSelect","apply","activeLabels","toggleBehavior","bubbledLabelClick","bubbledIconClick","determine","eventOnElement","preventDefault","type","stopPropagation","eventInModule","mutations","$addedNode","addedNodes","$removedNode","removedNodes","$changedNodes","isUserAddition","isMessage","$subMenu","$otherMenus","siblings","hasSubMenu","isBubbledEvent","itemTimer","skipRefocus","allowCategorySelection","userAddition","scrollPosition","selectAction","pressedKey","which","isShortcutKey","inObject","$activeLabel","labelIndex","labelCount","hasActiveLabel","hasMultipleActive","isFirstLabel","isLastLabel","isSearch","isFocusedOnSearch","isFocused","focused","caretAtStart","caretPosition","leftArrow","siblingLabel","end","last","rightArrow","first","next","deleteKey","backspace","$nextItem","isSubMenuItem","$visibleItems","addBack","$parentMenu","inVisibleMenu","animating","hasSelectedItem","selectedIsSelectable","delimiterPressed","delimiter","isAdditionWithoutMenu","enter","upArrow","selectOnKeydown","downArrow","pageUp","scrollPage","pageDown","selectedLetter","fromCharCode","trigger","createEvent","inputElement","initEvent","dispatchEvent","action","inDocument","inModule","inVisibleDOM","body","contains","notOnLabel","notInMenu","nothing","activate","hideAndClear","combo","trim","val","searchWidth","ceil","width","selectionCount","count","upward","grep","uniqueArray","array","inArray","range","rangeLength","selectionStart","createRange","moveStart","isEmptyMultiselect","selectInput","split","name","read","remoteData","preserveHTML","clone","menuIcon","oninput","onpropertychange","$option","placeholder","sortSelect","sort","a","b","activeItem","itemWithAdditions","$items","$userItems","hasUserItems","strict","shouldSearch","isMultiple","optionText","optionValue","check","clear","labels","saveRemoteData","Storage","noStorage","sessionStorage","getItem","setItem","clearValue","direction","isWithinRange","$nextSelectedItem","$currentItem","menuHeight","outerHeight","currentScroll","scrollTop","itemHeight","itemsPerPage","floor","newScroll","$selectableItem","isSearchMultiple","searchValue","hasSearchValue","valueIsSet","glyphWidth","css","loading","partialSearch","forceScroll","hasActive","offset","itemOffset","menuOffset","menuScroll","abovePage","belowPage","edgeTolerance","position","top","height","letter","alreadySelectedLetter","firstLetter","$nextValue","onScreen","$element","escapedValue","hasInput","currentValue","stringValue","allowReselection","extendSelect","fireOnInit","onChange","exactly","selectedText","selectedValue","isFiltered","isActive","isUserValue","shouldAnimate","$next","onLabelCreate","variation","duration","$message","hasOption","$addition","$existingItem","alreadyHasValue","hasUserSuggestion","hasCount","hasMaxCount","hasTerm","replace","addedValue","addedText","newValue","concat","join","onAdd","removedValue","removedText","$removedItem","arrayValue","onRemove","$removedLabel","userValue","onLabelRemove","charAt","items","$normalResults","hasValue","calculations","$currentMenu","canOpenDownward","above","below","needle","object","found","property","selectMutation","selectChanged","start","animation","queue","onStart","onComplete","noTransition","multipleValues","isUnparsable","hasQuotes","quote","setting","internal","silent","log","prototype","console","info","currentTime","executionTime","previousTime","Name","Arguments","Element","Execution Time","display","title","totalTime","group","table","groupCollapsed","groupEnd","passedArguments","maxDepth","depth","camelCaseValue","toUpperCase","method","keepOnScreen","$selectedLabels","option","maybeText","maybeDisabled","choice","jQuery"],"mappings":"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","file":"dropdown.min.js","sourcesContent":["/*!\n * # Semantic UI 2.2.6 - Dropdown\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license\n * http://opensource.org/licenses/MIT\n *\n */\n\n;(function ($, window, document, undefined) {\n\n\"use strict\";\n\nwindow = (typeof window != 'undefined' && window.Math == Math)\n ? window\n : (typeof self != 'undefined' && self.Math == Math)\n ? self\n : Function('return this')()\n;\n\n$.fn.dropdown = function(parameters) {\n var\n $allModules = $(this),\n $document = $(document),\n\n moduleSelector = $allModules.selector || '',\n\n hasTouch = ('ontouchstart' in document.documentElement),\n time = new Date().getTime(),\n performance = [],\n\n query = arguments[0],\n methodInvoked = (typeof query == 'string'),\n queryArguments = [].slice.call(arguments, 1),\n returnedValue\n ;\n\n $allModules\n .each(function(elementIndex) {\n var\n settings = ( $.isPlainObject(parameters) )\n ? $.extend(true, {}, $.fn.dropdown.settings, parameters)\n : $.extend({}, $.fn.dropdown.settings),\n\n className = settings.className,\n message = settings.message,\n fields = settings.fields,\n keys = settings.keys,\n metadata = settings.metadata,\n namespace = settings.namespace,\n regExp = settings.regExp,\n selector = settings.selector,\n error = settings.error,\n templates = settings.templates,\n\n eventNamespace = '.' + namespace,\n moduleNamespace = 'module-' + namespace,\n\n $module = $(this),\n $context = $(settings.context),\n $text = $module.find(selector.text),\n $search = $module.find(selector.search),\n $sizer = $module.find(selector.sizer),\n $input = $module.find(selector.input),\n $icon = $module.find(selector.icon),\n\n $combo = ($module.prev().find(selector.text).length > 0)\n ? $module.prev().find(selector.text)\n : $module.prev(),\n\n $menu = $module.children(selector.menu),\n $item = $menu.find(selector.item),\n\n activated = false,\n itemActivated = false,\n internalChange = false,\n element = this,\n instance = $module.data(moduleNamespace),\n\n initialLoad,\n pageLostFocus,\n willRefocus,\n elementNamespace,\n id,\n selectObserver,\n menuObserver,\n module\n ;\n\n module = {\n\n initialize: function() {\n module.debug('Initializing dropdown', settings);\n\n if( module.is.alreadySetup() ) {\n module.setup.reference();\n }\n else {\n module.setup.layout();\n module.refreshData();\n\n module.save.defaults();\n module.restore.selected();\n\n module.create.id();\n module.bind.events();\n\n module.observeChanges();\n module.instantiate();\n }\n\n },\n\n instantiate: function() {\n module.verbose('Storing instance of dropdown', module);\n instance = module;\n $module\n .data(moduleNamespace, module)\n ;\n },\n\n destroy: function() {\n module.verbose('Destroying previous dropdown', $module);\n module.remove.tabbable();\n $module\n .off(eventNamespace)\n .removeData(moduleNamespace)\n ;\n $menu\n .off(eventNamespace)\n ;\n $document\n .off(elementNamespace)\n ;\n module.disconnect.menuObserver();\n module.disconnect.selectObserver();\n },\n\n observeChanges: function() {\n if('MutationObserver' in window) {\n selectObserver = new MutationObserver(module.event.select.mutation);\n menuObserver = new MutationObserver(module.event.menu.mutation);\n module.debug('Setting up mutation observer', selectObserver, menuObserver);\n module.observe.select();\n module.observe.menu();\n }\n },\n\n disconnect: {\n menuObserver: function() {\n if(menuObserver) {\n menuObserver.disconnect();\n }\n },\n selectObserver: function() {\n if(selectObserver) {\n selectObserver.disconnect();\n }\n }\n },\n observe: {\n select: function() {\n if(module.has.input()) {\n selectObserver.observe($input[0], {\n childList : true,\n subtree : true\n });\n }\n },\n menu: function() {\n if(module.has.menu()) {\n menuObserver.observe($menu[0], {\n childList : true,\n subtree : true\n });\n }\n }\n },\n\n create: {\n id: function() {\n id = (Math.random().toString(16) + '000000000').substr(2, 8);\n elementNamespace = '.' + id;\n module.verbose('Creating unique id for element', id);\n },\n userChoice: function(values) {\n var\n $userChoices,\n $userChoice,\n isUserValue,\n html\n ;\n values = values || module.get.userValues();\n if(!values) {\n return false;\n }\n values = $.isArray(values)\n ? values\n : [values]\n ;\n $.each(values, function(index, value) {\n if(module.get.item(value) === false) {\n html = settings.templates.addition( module.add.variables(message.addResult, value) );\n $userChoice = $('
')\n .html(html)\n .attr('data-' + metadata.value, value)\n .attr('data-' + metadata.text, value)\n .addClass(className.addition)\n .addClass(className.item)\n ;\n if(settings.hideAdditions) {\n $userChoice.addClass(className.hidden);\n }\n $userChoices = ($userChoices === undefined)\n ? $userChoice\n : $userChoices.add($userChoice)\n ;\n module.verbose('Creating user choices for value', value, $userChoice);\n }\n });\n return $userChoices;\n },\n userLabels: function(value) {\n var\n userValues = module.get.userValues()\n ;\n if(userValues) {\n module.debug('Adding user labels', userValues);\n $.each(userValues, function(index, value) {\n module.verbose('Adding custom user value');\n module.add.label(value, value);\n });\n }\n },\n menu: function() {\n $menu = $('')\n .addClass(className.menu)\n .appendTo($module)\n ;\n },\n sizer: function() {\n $sizer = $('')\n .addClass(className.sizer)\n .insertAfter($search)\n ;\n }\n },\n\n search: function(query) {\n query = (query !== undefined)\n ? query\n : module.get.query()\n ;\n module.verbose('Searching for query', query);\n if(module.has.minCharacters(query)) {\n module.filter(query);\n }\n else {\n module.hide();\n }\n },\n\n select: {\n firstUnfiltered: function() {\n module.verbose('Selecting first non-filtered element');\n module.remove.selectedItem();\n $item\n .not(selector.unselectable)\n .not(selector.addition + selector.hidden)\n .eq(0)\n .addClass(className.selected)\n ;\n },\n nextAvailable: function($selected) {\n $selected = $selected.eq(0);\n var\n $nextAvailable = $selected.nextAll(selector.item).not(selector.unselectable).eq(0),\n $prevAvailable = $selected.prevAll(selector.item).not(selector.unselectable).eq(0),\n hasNext = ($nextAvailable.length > 0)\n ;\n if(hasNext) {\n module.verbose('Moving selection to', $nextAvailable);\n $nextAvailable.addClass(className.selected);\n }\n else {\n module.verbose('Moving selection to', $prevAvailable);\n $prevAvailable.addClass(className.selected);\n }\n }\n },\n\n setup: {\n api: function() {\n var\n apiSettings = {\n debug : settings.debug,\n urlData : {\n value : module.get.value(),\n query : module.get.query()\n },\n on : false\n }\n ;\n module.verbose('First request, initializing API');\n $module\n .api(apiSettings)\n ;\n },\n layout: function() {\n if( $module.is('select') ) {\n module.setup.select();\n module.setup.returnedObject();\n }\n if( !module.has.menu() ) {\n module.create.menu();\n }\n if( module.is.search() && !module.has.search() ) {\n module.verbose('Adding search input');\n $search = $('')\n .addClass(className.search)\n .prop('autocomplete', 'off')\n .insertBefore($text)\n ;\n }\n if( module.is.multiple() && module.is.searchSelection() && !module.has.sizer()) {\n module.create.sizer();\n }\n if(settings.allowTab) {\n module.set.tabbable();\n }\n },\n select: function() {\n var\n selectValues = module.get.selectValues()\n ;\n module.debug('Dropdown initialized on a select', selectValues);\n if( $module.is('select') ) {\n $input = $module;\n }\n // see if select is placed correctly already\n if($input.parent(selector.dropdown).length > 0) {\n module.debug('UI dropdown already exists. Creating dropdown menu only');\n $module = $input.closest(selector.dropdown);\n if( !module.has.menu() ) {\n module.create.menu();\n }\n $menu = $module.children(selector.menu);\n module.setup.menu(selectValues);\n }\n else {\n module.debug('Creating entire dropdown from select');\n $module = $('')\n .attr('class', $input.attr('class') )\n .addClass(className.selection)\n .addClass(className.dropdown)\n .html( templates.dropdown(selectValues) )\n .insertBefore($input)\n ;\n if($input.hasClass(className.multiple) && $input.prop('multiple') === false) {\n module.error(error.missingMultiple);\n $input.prop('multiple', true);\n }\n if($input.is('[multiple]')) {\n module.set.multiple();\n }\n if ($input.prop('disabled')) {\n module.debug('Disabling dropdown');\n $module.addClass(className.disabled);\n }\n $input\n .removeAttr('class')\n .detach()\n .prependTo($module)\n ;\n }\n module.refresh();\n },\n menu: function(values) {\n $menu.html( templates.menu(values, fields));\n $item = $menu.find(selector.item);\n },\n reference: function() {\n module.debug('Dropdown behavior was called on select, replacing with closest dropdown');\n // replace module reference\n $module = $module.parent(selector.dropdown);\n module.refresh();\n module.setup.returnedObject();\n // invoke method in context of current instance\n if(methodInvoked) {\n instance = module;\n module.invoke(query);\n }\n },\n returnedObject: function() {\n var\n $firstModules = $allModules.slice(0, elementIndex),\n $lastModules = $allModules.slice(elementIndex + 1)\n ;\n // adjust all modules to use correct reference\n $allModules = $firstModules.add($module).add($lastModules);\n }\n },\n\n refresh: function() {\n module.refreshSelectors();\n module.refreshData();\n },\n\n refreshItems: function() {\n $item = $menu.find(selector.item);\n },\n\n refreshSelectors: function() {\n module.verbose('Refreshing selector cache');\n $text = $module.find(selector.text);\n $search = $module.find(selector.search);\n $input = $module.find(selector.input);\n $icon = $module.find(selector.icon);\n $combo = ($module.prev().find(selector.text).length > 0)\n ? $module.prev().find(selector.text)\n : $module.prev()\n ;\n $menu = $module.children(selector.menu);\n $item = $menu.find(selector.item);\n },\n\n refreshData: function() {\n module.verbose('Refreshing cached metadata');\n $item\n .removeData(metadata.text)\n .removeData(metadata.value)\n ;\n },\n\n clearData: function() {\n module.verbose('Clearing metadata');\n $item\n .removeData(metadata.text)\n .removeData(metadata.value)\n ;\n $module\n .removeData(metadata.defaultText)\n .removeData(metadata.defaultValue)\n .removeData(metadata.placeholderText)\n ;\n },\n\n toggle: function() {\n module.verbose('Toggling menu visibility');\n if( !module.is.active() ) {\n module.show();\n }\n else {\n module.hide();\n }\n },\n\n show: function(callback) {\n callback = $.isFunction(callback)\n ? callback\n : function(){}\n ;\n if( module.can.show() && !module.is.active() ) {\n module.debug('Showing dropdown');\n if(module.has.message() && !(module.has.maxSelections() || module.has.allResultsFiltered()) ) {\n module.remove.message();\n }\n if(module.is.allFiltered()) {\n return true;\n }\n if(settings.onShow.call(element) !== false) {\n module.animate.show(function() {\n if( module.can.click() ) {\n module.bind.intent();\n }\n if(module.has.menuSearch()) {\n module.focusSearch();\n }\n module.set.visible();\n callback.call(element);\n });\n }\n }\n },\n\n hide: function(callback) {\n callback = $.isFunction(callback)\n ? callback\n : function(){}\n ;\n if( module.is.active() ) {\n module.debug('Hiding dropdown');\n if(settings.onHide.call(element) !== false) {\n module.animate.hide(function() {\n module.remove.visible();\n callback.call(element);\n });\n }\n }\n },\n\n hideOthers: function() {\n module.verbose('Finding other dropdowns to hide');\n $allModules\n .not($module)\n .has(selector.menu + '.' + className.visible)\n .dropdown('hide')\n ;\n },\n\n hideMenu: function() {\n module.verbose('Hiding menu instantaneously');\n module.remove.active();\n module.remove.visible();\n $menu.transition('hide');\n },\n\n hideSubMenus: function() {\n var\n $subMenus = $menu.children(selector.item).find(selector.menu)\n ;\n module.verbose('Hiding sub menus', $subMenus);\n $subMenus.transition('hide');\n },\n\n bind: {\n events: function() {\n if(hasTouch) {\n module.bind.touchEvents();\n }\n module.bind.keyboardEvents();\n module.bind.inputEvents();\n module.bind.mouseEvents();\n },\n touchEvents: function() {\n module.debug('Touch device detected binding additional touch events');\n if( module.is.searchSelection() ) {\n // do nothing special yet\n }\n else if( module.is.single() ) {\n $module\n .on('touchstart' + eventNamespace, module.event.test.toggle)\n ;\n }\n $menu\n .on('touchstart' + eventNamespace, selector.item, module.event.item.mouseenter)\n ;\n },\n keyboardEvents: function() {\n module.verbose('Binding keyboard events');\n $module\n .on('keydown' + eventNamespace, module.event.keydown)\n ;\n if( module.has.search() ) {\n $module\n .on(module.get.inputEvent() + eventNamespace, selector.search, module.event.input)\n ;\n }\n if( module.is.multiple() ) {\n $document\n .on('keydown' + elementNamespace, module.event.document.keydown)\n ;\n }\n },\n inputEvents: function() {\n module.verbose('Binding input change events');\n $module\n .on('change' + eventNamespace, selector.input, module.event.change)\n ;\n },\n mouseEvents: function() {\n module.verbose('Binding mouse events');\n if(module.is.multiple()) {\n $module\n .on('click' + eventNamespace, selector.label, module.event.label.click)\n .on('click' + eventNamespace, selector.remove, module.event.remove.click)\n ;\n }\n if( module.is.searchSelection() ) {\n $module\n .on('mousedown' + eventNamespace, module.event.mousedown)\n .on('mouseup' + eventNamespace, module.event.mouseup)\n .on('mousedown' + eventNamespace, selector.menu, module.event.menu.mousedown)\n .on('mouseup' + eventNamespace, selector.menu, module.event.menu.mouseup)\n .on('click' + eventNamespace, selector.icon, module.event.icon.click)\n .on('focus' + eventNamespace, selector.search, module.event.search.focus)\n .on('click' + eventNamespace, selector.search, module.event.search.focus)\n .on('blur' + eventNamespace, selector.search, module.event.search.blur)\n .on('click' + eventNamespace, selector.text, module.event.text.focus)\n ;\n if(module.is.multiple()) {\n $module\n .on('click' + eventNamespace, module.event.click)\n ;\n }\n }\n else {\n if(settings.on == 'click') {\n $module\n .on('click' + eventNamespace, selector.icon, module.event.icon.click)\n .on('click' + eventNamespace, module.event.test.toggle)\n ;\n }\n else if(settings.on == 'hover') {\n $module\n .on('mouseenter' + eventNamespace, module.delay.show)\n .on('mouseleave' + eventNamespace, module.delay.hide)\n ;\n }\n else {\n $module\n .on(settings.on + eventNamespace, module.toggle)\n ;\n }\n $module\n .on('mousedown' + eventNamespace, module.event.mousedown)\n .on('mouseup' + eventNamespace, module.event.mouseup)\n .on('focus' + eventNamespace, module.event.focus)\n .on('blur' + eventNamespace, module.event.blur)\n ;\n }\n $menu\n .on('mouseenter' + eventNamespace, selector.item, module.event.item.mouseenter)\n .on('mouseleave' + eventNamespace, selector.item, module.event.item.mouseleave)\n .on('click' + eventNamespace, selector.item, module.event.item.click)\n ;\n },\n intent: function() {\n module.verbose('Binding hide intent event to document');\n if(hasTouch) {\n $document\n .on('touchstart' + elementNamespace, module.event.test.touch)\n .on('touchmove' + elementNamespace, module.event.test.touch)\n ;\n }\n $document\n .on('click' + elementNamespace, module.event.test.hide)\n ;\n }\n },\n\n unbind: {\n intent: function() {\n module.verbose('Removing hide intent event from document');\n if(hasTouch) {\n $document\n .off('touchstart' + elementNamespace)\n .off('touchmove' + elementNamespace)\n ;\n }\n $document\n .off('click' + elementNamespace)\n ;\n }\n },\n\n filter: function(query) {\n var\n searchTerm = (query !== undefined)\n ? query\n : module.get.query(),\n afterFiltered = function() {\n if(module.is.multiple()) {\n module.filterActive();\n }\n module.select.firstUnfiltered();\n if( module.has.allResultsFiltered() ) {\n if( settings.onNoResults.call(element, searchTerm) ) {\n if(settings.allowAdditions) {\n if(settings.hideAdditions) {\n module.verbose('User addition with no menu, setting empty style');\n module.set.empty();\n module.hideMenu();\n }\n }\n else {\n module.verbose('All items filtered, showing message', searchTerm);\n module.add.message(message.noResults);\n }\n }\n else {\n module.verbose('All items filtered, hiding dropdown', searchTerm);\n module.hideMenu();\n }\n }\n else {\n module.remove.empty();\n module.remove.message();\n }\n if(settings.allowAdditions) {\n module.add.userSuggestion(query);\n }\n if(module.is.searchSelection() && module.can.show() && module.is.focusedOnSearch() ) {\n module.show();\n }\n }\n ;\n if(settings.useLabels && module.has.maxSelections()) {\n return;\n }\n if(settings.apiSettings) {\n if( module.can.useAPI() ) {\n module.queryRemote(searchTerm, function() {\n afterFiltered();\n });\n }\n else {\n module.error(error.noAPI);\n }\n }\n else {\n module.filterItems(searchTerm);\n afterFiltered();\n }\n },\n\n queryRemote: function(query, callback) {\n var\n apiSettings = {\n errorDuration : false,\n cache : 'local',\n throttle : settings.throttle,\n urlData : {\n query: query\n },\n onError: function() {\n module.add.message(message.serverError);\n callback();\n },\n onFailure: function() {\n module.add.message(message.serverError);\n callback();\n },\n onSuccess : function(response) {\n module.remove.message();\n module.setup.menu({\n values: response[fields.remoteValues]\n });\n callback();\n }\n }\n ;\n if( !$module.api('get request') ) {\n module.setup.api();\n }\n apiSettings = $.extend(true, {}, apiSettings, settings.apiSettings);\n $module\n .api('setting', apiSettings)\n .api('query')\n ;\n },\n\n filterItems: function(query) {\n var\n searchTerm = (query !== undefined)\n ? query\n : module.get.query(),\n results = null,\n escapedTerm = module.escape.regExp(searchTerm),\n beginsWithRegExp = new RegExp('^' + escapedTerm, 'igm')\n ;\n // avoid loop if we're matching nothing\n if( module.has.query() ) {\n results = [];\n\n module.verbose('Searching for matching values', searchTerm);\n $item\n .each(function(){\n var\n $choice = $(this),\n text,\n value\n ;\n if(settings.match == 'both' || settings.match == 'text') {\n text = String(module.get.choiceText($choice, false));\n if(text.search(beginsWithRegExp) !== -1) {\n results.push(this);\n return true;\n }\n else if (settings.fullTextSearch === 'exact' && module.exactSearch(searchTerm, text)) {\n results.push(this);\n return true;\n }\n else if (settings.fullTextSearch === true && module.fuzzySearch(searchTerm, text)) {\n results.push(this);\n return true;\n }\n }\n if(settings.match == 'both' || settings.match == 'value') {\n value = String(module.get.choiceValue($choice, text));\n\n if(value.search(beginsWithRegExp) !== -1) {\n results.push(this);\n return true;\n }\n else if(settings.fullTextSearch && module.fuzzySearch(searchTerm, value)) {\n results.push(this);\n return true;\n }\n }\n })\n ;\n }\n module.debug('Showing only matched items', searchTerm);\n module.remove.filteredItem();\n if(results) {\n $item\n .not(results)\n .addClass(className.filtered)\n ;\n }\n },\n\n fuzzySearch: function(query, term) {\n var\n termLength = term.length,\n queryLength = query.length\n ;\n query = query.toLowerCase();\n term = term.toLowerCase();\n if(queryLength > termLength) {\n return false;\n }\n if(queryLength === termLength) {\n return (query === term);\n }\n search: for (var characterIndex = 0, nextCharacterIndex = 0; characterIndex < queryLength; characterIndex++) {\n var\n queryCharacter = query.charCodeAt(characterIndex)\n ;\n while(nextCharacterIndex < termLength) {\n if(term.charCodeAt(nextCharacterIndex++) === queryCharacter) {\n continue search;\n }\n }\n return false;\n }\n return true;\n },\n exactSearch: function (query, term) {\n query = query.toLowerCase();\n term = term.toLowerCase();\n if(term.indexOf(query) > -1) {\n return true;\n }\n return false;\n },\n filterActive: function() {\n if(settings.useLabels) {\n $item.filter('.' + className.active)\n .addClass(className.filtered)\n ;\n }\n },\n\n focusSearch: function(skipHandler) {\n if( module.has.search() && !module.is.focusedOnSearch() ) {\n if(skipHandler) {\n $module.off('focus' + eventNamespace, selector.search);\n $search.focus();\n $module.on('focus' + eventNamespace, selector.search, module.event.search.focus);\n }\n else {\n $search.focus();\n }\n }\n },\n\n forceSelection: function() {\n var\n $currentlySelected = $item.not(className.filtered).filter('.' + className.selected).eq(0),\n $activeItem = $item.not(className.filtered).filter('.' + className.active).eq(0),\n $selectedItem = ($currentlySelected.length > 0)\n ? $currentlySelected\n : $activeItem,\n hasSelected = ($selectedItem.length > 0)\n ;\n if(hasSelected) {\n module.debug('Forcing partial selection to selected item', $selectedItem);\n module.event.item.click.call($selectedItem, {}, true);\n return;\n }\n else {\n if(settings.allowAdditions) {\n module.set.selected(module.get.query());\n module.remove.searchTerm();\n }\n else {\n module.remove.searchTerm();\n }\n }\n },\n\n event: {\n change: function() {\n if(!internalChange) {\n module.debug('Input changed, updating selection');\n module.set.selected();\n }\n },\n focus: function() {\n if(settings.showOnFocus && !activated && module.is.hidden() && !pageLostFocus) {\n module.show();\n }\n },\n blur: function(event) {\n pageLostFocus = (document.activeElement === this);\n if(!activated && !pageLostFocus) {\n module.remove.activeLabel();\n module.hide();\n }\n },\n mousedown: function() {\n if(module.is.searchSelection()) {\n // prevent menu hiding on immediate re-focus\n willRefocus = true;\n }\n else {\n // prevents focus callback from occurring on mousedown\n activated = true;\n }\n },\n mouseup: function() {\n if(module.is.searchSelection()) {\n // prevent menu hiding on immediate re-focus\n willRefocus = false;\n }\n else {\n activated = false;\n }\n },\n click: function(event) {\n var\n $target = $(event.target)\n ;\n // focus search\n if($target.is($module)) {\n if(!module.is.focusedOnSearch()) {\n module.focusSearch();\n }\n else {\n module.show();\n }\n }\n },\n search: {\n focus: function() {\n activated = true;\n if(module.is.multiple()) {\n module.remove.activeLabel();\n }\n if(settings.showOnFocus) {\n module.search();\n }\n },\n blur: function(event) {\n pageLostFocus = (document.activeElement === this);\n if(!willRefocus) {\n if(!itemActivated && !pageLostFocus) {\n if(settings.forceSelection) {\n module.forceSelection();\n }\n module.hide();\n }\n }\n willRefocus = false;\n }\n },\n icon: {\n click: function(event) {\n module.toggle();\n }\n },\n text: {\n focus: function(event) {\n activated = true;\n module.focusSearch();\n }\n },\n input: function(event) {\n if(module.is.multiple() || module.is.searchSelection()) {\n module.set.filtered();\n }\n clearTimeout(module.timer);\n module.timer = setTimeout(module.search, settings.delay.search);\n },\n label: {\n click: function(event) {\n var\n $label = $(this),\n $labels = $module.find(selector.label),\n $activeLabels = $labels.filter('.' + className.active),\n $nextActive = $label.nextAll('.' + className.active),\n $prevActive = $label.prevAll('.' + className.active),\n $range = ($nextActive.length > 0)\n ? $label.nextUntil($nextActive).add($activeLabels).add($label)\n : $label.prevUntil($prevActive).add($activeLabels).add($label)\n ;\n if(event.shiftKey) {\n $activeLabels.removeClass(className.active);\n $range.addClass(className.active);\n }\n else if(event.ctrlKey) {\n $label.toggleClass(className.active);\n }\n else {\n $activeLabels.removeClass(className.active);\n $label.addClass(className.active);\n }\n settings.onLabelSelect.apply(this, $labels.filter('.' + className.active));\n }\n },\n remove: {\n click: function() {\n var\n $label = $(this).parent()\n ;\n if( $label.hasClass(className.active) ) {\n // remove all selected labels\n module.remove.activeLabels();\n }\n else {\n // remove this label only\n module.remove.activeLabels( $label );\n }\n }\n },\n test: {\n toggle: function(event) {\n var\n toggleBehavior = (module.is.multiple())\n ? module.show\n : module.toggle\n ;\n if(module.is.bubbledLabelClick(event) || module.is.bubbledIconClick(event)) {\n return;\n }\n if( module.determine.eventOnElement(event, toggleBehavior) ) {\n event.preventDefault();\n }\n },\n touch: function(event) {\n module.determine.eventOnElement(event, function() {\n if(event.type == 'touchstart') {\n module.timer = setTimeout(function() {\n module.hide();\n }, settings.delay.touch);\n }\n else if(event.type == 'touchmove') {\n clearTimeout(module.timer);\n }\n });\n event.stopPropagation();\n },\n hide: function(event) {\n module.determine.eventInModule(event, module.hide);\n }\n },\n select: {\n mutation: function(mutations) {\n module.debug('