1/* 2 * Copyright © 2023 Regular Labs - All Rights Reserved 3 * GNU General Public License version 2 or later 4 */ 5import{Tooltip}from'./modules/tooltip.min.js?9.1.0';import{Helper}from'./modules/helper.min.js?9.1.0';(function(){'use strict';window.RegularLabs=window.RegularLabs||{};window.RegularLabs.Tooltips=window.RegularLabs.Tooltips||{defaults:{theme:'light',style:'',position:'top',titleTagType:'h3',effect:'none',closeDelay:200,closeDelayClickMode:5000,margin:10,mode:'hover',width:'',height:'',cssEffects:{fade:{in:'fade-in',out:'fade-out'},zoom:{in:'zoom-in',out:'zoom-out'},none:{in:'show',out:'hide'}},htmlTemplates:{tooltip:`<div data-tooltips-element="tooltip"class="hidden"tabindex="-1"role="dialog"aria-hidden="true"><div data-tooltips-element="main"></div><div data-tooltips-element="arrow"></div></div>`,title:'<%titleTagType% data-tooltips-element="title"></%titleTagType%>',content:'<div data-tooltips-element="content"></div>',}},settings:{},tooltips:[],idCounter:0,init:async function(settings){const setSettings=(settings)=>{return new Promise(resolve=>{if(this.settings.length){return;} 6this.settings={...this.defaults};if(typeof Joomla!=='undefined'&&typeof Joomla.getOptions!=='undefined'){this.settings={...this.settings,...Joomla.getOptions('rl_tooltips')};} 7this.settings={...this.settings,...settings};resolve();});};const createTooltips=async()=>{const elements=document.querySelectorAll('[data-tooltips]');for(const element of elements){await RegularLabs.Tooltips.createTooltip(element);}};await setSettings(settings);await createTooltips();},createTooltip:async function(element){return new Promise(async(resolve)=>{if(!(element instanceof Element)){resolve();return;} 8if(Helper.getData(element,'done')){resolve();return;} 9const id=RegularLabs.Tooltips.idCounter++;this.tooltips[id]=new Tooltip(element,id);resolve();});},open:function(link){const tooltip=this.getTooltipByElement(link);if(!tooltip){return;} 10tooltip.open();},close:function(link){if(!link){this.closeAll();return;} 11const tooltip=this.getTooltipByElement(link);if(!tooltip){return;} 12tooltip.close();},closeAll:function(){for(const group in this.tooltips){this.tooltips[group].close();}},getTooltipByElement:function(element){for(const i in this.tooltips){if(this.tooltips[i].element===element){return this.tooltips[i];}} 13return null;},};RegularLabs.Tooltips.init();})();window.RLTooltips=window.RLTooltips||(function(options){return RegularLabs.Tooltips.init(options);});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.