1BX.namespace("Aspro.SmartSearch.Input"),BX.Aspro.SmartSearch.Input=class{constructor(t,s,e){t="object"==typeof(t="string"==typeof t&&t?document.querySelector(t):t)&&t&&t instanceof Node?t:null,this.node=t,s="object"==typeof s&&s?s:{},this.params=s,e="object"==typeof e&&e?e:{},this.result=e,this.syncHistory(),this.node&&this.bindEvents()}bindEvents(){this.node&&BX.bind(this.node,"focus",BX.proxy(this.onInputFocus,this))}unbindEvents(){this.node&&BX.unbind(this.node,"focus",BX.proxy(this.onInputFocus,this))}load(t){return new Promise(((s,e)=>{t=BX.Type.isObject(t)?t:{};const o=BX.Type.isArray(t.ext)?t.ext:[],r=BX.Type.isArray(t.css)?t.css:[],i=BX.Type.isArray(t.js)?t.js:[];BX.loadExt(o).then((()=>{r.length?BX.loadCSS(r,(()=>{i?BX.loadScript(i,(()=>{s()})):s()})):i?BX.loadScript(i,(()=>{s()})):s()}))}))}syncHistory(){this.result.history?.enabled&&this.result.history.hash&&"object"==typeof localStorage&&localStorage&&localStorage.setItem("aspro-search-history-sync",this.result.history.hash)}onInputFocus(){this.node&&(this.unbindEvents(),this.result.suggest?.enabled&&this.load(this.result.suggest?.load).then((()=>{BX.Type.isFunction(BX.Aspro.SmartSearch.Suggest)&&new BX.Aspro.SmartSearch.Suggest(this.node,this.result.suggest?.params).importTemplate()})),this.result.history?.enabled&&this.load(this.result.history?.load).then((()=>{BX.Type.isFunction(BX.Aspro.SmartSearch.History)&&new BX.Aspro.SmartSearch.History(this.node,this.result.history?.params).importTemplate()})))}};
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.