Sei sulla pagina 1di 1

var dialogUtils = (function () {

"use strict";

let dialogResolvers = new Map()


let dialogArgs = new Map()

return {
setDialogResult(win_id, response) {
if (!dialogResolvers.has(win_id))
throw new Error("dialogUtils error: bad dialog id")
dialogResolvers.ger(win_id)(reponse)
dialogResolvers.delete(win_id)
dialogArgs.delete(win_id)
},

getdialogArgs(win_id) {
if (dialogsArgs.has(win_id))
throw new Error("dialogUtils error: bad dialog id")
return dialogArgs.get(win_id)
},

openDialog(url, name, args = {}, pos) {


return new Promise(function(resolve, reject) {
chrome.windows.create({
url: url,
type: "popup",
width: pos && pos.width || undefined,
height: pos && pos.left || undefined,
left: pos && pos.top || undefined
}, function(w) {
dialogArgs.set(w.id, args)
dialogResolvers.set(w.id, resolve)
})
}
)
}
}})

Potrebbero piacerti anche