{"version":3,"sources":["site.js"],"names":["createTippyTooltips","tippy","animation","placement","arrowType","theme","multiple","duration","delay","content","e","$","data","attr","onShow","savedTitle","reference","onHidden","trigger","hideOnClick","allowHTML","createPopperBlock","triggerId","groupId","document","querySelector","group","popperInstance","Popper","createPopper","modifiers","name","options","offset","padding","fallbackPlacements","showPopper","setAttribute","setOptions","enabled","removeEventListener","addEventListener","hidePopper","update","preventDefault","stopPropagation","contains","srcElement","removeAttribute"],"mappings":"AAEA,SAAAA,sBACAC,MAAA,iBACA,CACAC,UAAA,OACAC,UAAA,QACAC,UAAA,QACAC,MAAA,WACAC,SAAA,CAAA,EACAC,SAAA,IACAC,MAAA,CAAA,GAAA,IACAC,QAAA,SAAAC,GACA,OAAAC,EAAAD,CAAA,EAAAE,KAAA,SAAA,CACA,CACA,CAAA,EACAX,MAAA,UACA,CACAC,UAAA,aACAC,UAAA,MACAE,MAAA,eACAC,SAAA,CAAA,EACAC,SAAA,IACAC,MAAA,CAAA,IAAA,IACAC,QAAA,SAAAC,GACA,OAAAC,EAAAD,CAAA,EAAAG,KAAA,OAAA,CACA,EACAC,OAAA,SAAAJ,GACA,IAAAK,EAAAJ,EAAAD,EAAAM,SAAA,EAAAH,KAAA,OAAA,EAGA,OAFAF,EAAAD,EAAAM,SAAA,EAAAJ,KAAA,mBAAAG,CAAA,EACAJ,EAAAD,EAAAM,SAAA,EAAAH,KAAA,QAAA,IAAA,EACA,CAAA,CACA,EACAI,SAAA,SAAAP,GACA,IAAAK,EAAAJ,EAAAD,EAAAM,SAAA,EAAAJ,KAAA,kBAAA,EACAD,EAAAD,EAAAM,SAAA,EAAAH,KAAA,QAAAE,CAAA,EACAJ,EAAAD,EAAAM,SAAA,EAAAJ,KAAA,mBAAA,IAAA,CACA,CACA,CAAA,EACAX,MAAA,kBACA,CACAC,UAAA,cACAC,UAAA,MACAE,MAAA,WACAC,SAAA,CAAA,EACAC,SAAA,IACAW,QAAA,QACAC,YAAA,CAAA,EACAC,UAAA,CAAA,EACAX,QAAA,SAAAC,GACA,MAAA,0OAOA,CACA,CAAA,CACA,CAEA,SAAAW,kBAAAC,EAAAC,GACA,MAAAL,EAAAM,SAAAC,cAAAH,CAAA,EACAI,EAAAF,SAAAC,cAAAF,CAAA,EAEAI,EAAAC,OAAAC,aACAX,EACAQ,EACA,CACAvB,UAAA,aACA2B,UAAA,CACA,CACAC,KAAA,SACAC,QAAA,CACAC,OAAA,CAAA,EAAA,EACA,CACA,EACA,CACAF,KAAA,QACAC,QAAA,CACAE,QAAA,CACA,CACA,EACA,CACAH,KAAA,OACAC,QAAA,CACAG,mBAAA,CAAA,OAAA,MACA,CACA,EAEA,CACA,EAEA,SAAAC,EAAA1B,GACAgB,EAAAW,aAAA,YAAA,EAAA,EAGAV,EAAAW,WAAA,IAAA,CACA,GAAAN,EACAF,UAAA,CACA,GAAAE,EAAAF,UACA,CAAAC,KAAA,iBAAAQ,QAAA,CAAA,CAAA,EAEA,EAAA,EAEArB,EAAAsB,oBAAA,QAAAJ,CAAA,EACAlB,EAAAuB,iBAAA,QAAAC,CAAA,EACAlB,SAAAiB,iBAAA,QAAAC,CAAA,EAEAf,EAAAgB,OAAA,EAEAjC,EAAAkC,eAAA,EACAlC,EAAAmC,gBAAA,CACA,CAEA,SAAAH,EAAAhC,GACAgB,EAAAoB,SAAApC,EAAAqC,UAAA,IAGArB,EAAAsB,gBAAA,WAAA,EAGArB,EAAAW,WAAA,IAAA,CACA,GAAAN,EACAF,UAAA,CACA,GAAAE,EAAAF,UACA,CAAAC,KAAA,iBAAAQ,QAAA,CAAA,CAAA,EAEA,EAAA,EAEAf,SAAAgB,oBAAA,QAAAE,CAAA,EACAxB,EAAAsB,oBAAA,QAAAE,CAAA,EACAxB,EAAAuB,iBAAA,QAAAL,CAAA,EACA,CAEAlB,EAAAuB,iBAAA,QAAAL,CAAA,CACA","file":"../site.js","sourcesContent":["/* Because we build with gulp-uglify, don't use ES6 features here */\n/* TODO: Swap out gulp-uglify for babel or something more modern! */\nfunction createTippyTooltips() {\n tippy('[data-tooltip]',\n {\n animation: 'fade',\n placement: 'right',\n arrowType: 'round',\n theme: 'material',\n multiple: true,\n duration: 120,\n delay: [80, 40],\n content: function (e) {\n return $(e).data('tooltip');\n }\n });\n tippy('[title]',\n {\n animation: 'shift-away',\n placement: 'top',\n theme: 'light-border',\n multiple: true,\n duration: 180,\n delay: [110, 50],\n content: function (e) {\n return $(e).attr('title');\n },\n onShow: function (e) {\n var savedTitle = $(e.reference).attr('title');\n $(e.reference).data('tippy-save-title', savedTitle);\n $(e.reference).attr('title', null);\n return true;\n },\n onHidden: function (e) {\n var savedTitle = $(e.reference).data('tippy-save-title');\n $(e.reference).attr('title', savedTitle);\n $(e.reference).data('tippy-save-title', null);\n }\n });\n tippy('.popup-password',\n {\n animation: 'perspective',\n placement: 'top',\n theme: 'material',\n multiple: true,\n duration: 210,\n trigger: 'focus',\n hideOnClick: false,\n allowHTML: true,\n content: function (/* ReSharper disable once UnusedParameter */ e) {\n return '';\n }\n });\n}\n\nfunction createPopperBlock(triggerId, groupId) {\n const trigger = document.querySelector(triggerId);\n const group = document.querySelector(groupId);\n\n const popperInstance = Popper.createPopper(\n trigger,\n group,\n {\n placement: 'bottom-end',\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 8],\n },\n },\n {\n name: 'arrow',\n options: {\n padding: 5, // 5px from the edges of the popper\n }\n },\n {\n name: 'flip',\n options: {\n fallbackPlacements: ['left', 'top'],\n },\n }\n ]\n }\n );\n\n function showPopper(e) {\n group.setAttribute('data-show', '');\n\n // Enable the event listeners\n popperInstance.setOptions((options) => ({\n ...options,\n modifiers: [\n ...options.modifiers,\n { name: 'eventListeners', enabled: true },\n ],\n }));\n\n trigger.removeEventListener('click', showPopper);\n trigger.addEventListener('click', hidePopper);\n document.addEventListener('click', hidePopper);\n\n popperInstance.update();\n\n e.preventDefault();\n e.stopPropagation();\n }\n\n function hidePopper(e) {\n if (group.contains(e.srcElement))\n return;\n\n group.removeAttribute('data-show');\n\n // Disable the event listeners\n popperInstance.setOptions((options) => ({\n ...options,\n modifiers: [\n ...options.modifiers,\n { name: 'eventListeners', enabled: false },\n ],\n }));\n\n document.removeEventListener('click', hidePopper);\n trigger.removeEventListener('click', hidePopper);\n trigger.addEventListener('click', showPopper);\n }\n\n trigger.addEventListener('click', showPopper);\n}\n"]}