123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101openEzjs_minopenExtension_utilsopenBrowserclasstypewindow=objectmethodid:intoptdefpropmethodfocused:booltpropmethodtop:intoptdefpropmethodleft:intoptdefpropmethodwidth:intoptdefpropmethodheight:intoptdefpropmethodtabs:Tabs.tabtjs_arraytoptdefpropmethodincognito:booltpropmethod_type:js_stringtoptdefpropmethodstate:js_stringtoptdefpropmethodalwaysOnTop:booltpropmethodsessionId:js_stringtoptdefpropendclasstypegetInfo=objectmethodpopulate:booloptdefpropmethodwindowTypes:js_stringtjs_arraytoptdefpropendclasstypecreateData=objectmethodurl:js_stringtoptdefpropmethodurl_arr:js_stringtjs_arraytoptdefpropmethodtabId:intoptdefpropmethodleft:intoptdefpropmethodtop:intoptdefpropmethodwidth:intoptdefpropmethodheight:intoptdefpropmethodfocused:booltoptdefpropmethodincognito:booltoptdefpropmethod_type:js_stringtoptdefpropmethodstate:js_stringtoptdefpropmethodsetSelfAsOpener:booltoptdefpropendclasstypeupdateInfo=objectmethodleft:intoptdefpropmethodtop:intoptdefpropmethodwidth:intoptdefpropmethodheight:intoptdefpropmethodfocused:booltoptdefpropmethoddrawAttention:booltoptdefpropmethodstate:js_stringtoptdefpropendclasstypewindows=objectmethodget:int->getInfotoptdef->(windowt->unit)callback->unitmethmethodgetCurrent:getInfotoptdef->(windowt->unit)callback->unitmethmethodgetLastFocused:getInfotoptdef->(windowt->unit)callback->unitmethmethodgetAll:getInfotoptdef->(windowtjs_arrayt->unit)callback->unitmethmethodcreate:createDatatoptdef->(windowt->unit)callbackoptdef->unitmethmethodupdate:int->updateInfot->(windowt->unit)callbackoptdef->unitmethmethodremove:int->(unit->unit)callbackoptdef->unitmethmethodonCreated:windowteventtpropmethodonRemoved:inteventtpropmethodonFocusChanged:inteventtpropendletmake_createData?url?url_l?tabId?left?top?width?height?focused?typ?state?selfOpener()=letdata:createDatat=Unsafe.obj[||]in(matchurl,url_lwith|Some_,None->data##.url:=optdefstringurl|None,Some_->data##.url_arr:=optdef(of_listfstring)url_l|None,None->()|_->log_str"cannot define both url and url_l for window creation");data##.tabId:=Optdef.optiontabId;data##.left:=Optdef.optionleft;data##.top:=Optdef.optiontop;data##.width:=Optdef.optionwidth;data##.height:=Optdef.optionheight;data##.focused:=optdefboolfocused;data##._type:=optdefstringtyp;data##.state:=optdefstringstate;data##.setSelfAsOpener:=optdefboolselfOpener;dataletmake_updateInfo?left?top?width?height?focused?drawAttention?state()=letdata:updateInfot=Unsafe.obj[||]indata##.left:=Optdef.optionleft;data##.top:=Optdef.optiontop;data##.width:=Optdef.optionwidth;data##.height:=Optdef.optionheight;data##.focused:=optdefboolfocused;data##.drawAttention:=optdefbooldrawAttention;data##.state:=optdefstringstate;dataletwindows:windowst=Unsafe.global##.chrome##.windowsletonCreatedhandler=addListener1windows##.onCreatedhandlerletonRemovedhandler=addListener1windows##.onRemovedhandlerletonFocusChangedhandler=addListener1windows##.onFocusChangedhandler