{"version":3,"sources":["https://lively-kernel.org/lively4/lively4-tabs/src/components/halo/lively-halo-vivide-script-suggestion.js"],"names":["HaloItem","getMatches","setScript","LivelyHaloVivideScriptSuggestion","initialize","evt","updateList","search","list","window","suggestions","stringify","_","value","forEach","s","appendChild"],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;AAEOA,c;;AACEC,gB,oCAAAA,U;AAAYC,e,oCAAAA,S;;;;;;;;;;;;;;;;;;AADdF,mS;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACcE,oS;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAZD,qS;;;;;;;;;;;;;;;;;;AAEM,YAAME,gCAAN,SAA+CH,QAA/C,CAAwD;AACrEI,qBAAY;AACV,iGAA+B,mBAA/B,yBAAqE,SAArE,EAAgFC,OAAO;AAAA;AAAA;AAAA;AAAA;;AACrF,iBAAKC,UAAL,wBAAgBD,GAAhB,YAAgBA,GAAhB,gFAAgBA,GAAhB,EAAgBA,GAAhB;AACD,WAFD;AADU;AAIV,eAAKC,UAAL;;AAJU;AAKX;;AAED,cAAMA,UAAN,CAAiBC,MAAjB,EAAwB;AAAA;AAAA;AAAA;;AACtB,gBAAMC,oCAAO,IAAP,oCAAsC,iBAAtC,EAAN;AACA,sJAAiB,EAAjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,cAAI,8EAACC,MAAD,cAAgB,yFAACA,MAAD,oBAApB;AAAwC;AAAxC,WACA,MAAMC,cAAc,MAAM,kLAAW,sEAAKC,SAAL,oGAAeF,MAAf,sBAAiC,CAAjC,GAAqC,CAACG,CAAD,EAAIC,KAAJ;AAAA;AAAA;AAAA;AAAc,2BAAOA,KAAP,YAAOA,KAAP,oFAAOA,KAAP,EAAOA,KAAP,MAAiB,QAAjB,IAA4BA,KAA5B,YAA4BA,KAA5B,oFAA4BA,KAA5B,EAA4BA,KAA5B,IAAoC,QAAOA,KAAP,YAAOA,KAAP,oFAAOA,KAAP,EAAOA,KAAP,CAApC;AAAd,WAArC,CAAX,IAAiHN,MAAjH,YAAiHA,MAAjH,sFAAiHA,MAAjH,EAAiHA,MAAjH,EAA1B;AAJsB;AAKtB,uKAAYO,OAAZ,CAAoBC,KAAK;AAAA;AAAA;AAAA;AAAA;;AACvB,+HAAKC,WAAL,0DAA4B;AAAM,mIAAUD,CAAV,YAAUA,CAAV,4EAAUA,CAAV,EAAUA,CAAV,wFAAiBN,MAAjB;AAAN,aAA5B,2CAAkEM,CAAlE,YAAkEA,CAAlE,4EAAkEA,CAAlE,EAAkEA,CAAlE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAgF,WADlF;AAED;AAfoE;;yBAAlDZ,gC;;;;;;;;;;;;6BAAAA,iT","file":"lively-halo-vivide-script-suggestion.js","sourcesContent":["\"enable aexpr\";\n\nimport HaloItem from 'src/components/halo/lively-halo-item.js';\nimport { getMatches, setScript } from 'src/client/vivide/scripts/loading.js';\n\nexport default class LivelyHaloVivideScriptSuggestion extends HaloItem {\n  initialize(){\n    this.shadowRoot.getElementById('suggestion-search').addEventListener(\"keydown\", evt => {\n      this.updateList(evt.target.value);\n    });\n    this.updateList();\n  }\n  \n  async updateList(search){\n    const list = this.shadowRoot.getElementById('suggestion-list');\n    list.innerHTML = \"\";\n    if (!window.that || !window.that.input) return;\n    const suggestions = await getMatches(JSON.stringify(window.that.input[0], (_, value) => typeof value === \"object\" ? value : typeof value), search);\n    suggestions.forEach(s => {\n      list.appendChild(<li click={() => setScript(s.url, window.that)}>{s.name}</li>)})\n  }\n}"]}