window.open でタブを開いて そのタブが閉じたら続きの処理をするとき 閉じたことを検出したい
window.onclose というプロパティがあるけど これは window が閉じられたらではなくて dialog が閉じたら発生するイベントらしい(ややこしいな
window が閉じられたことを検出するには unload イベント
beforeunload もあるけど外部からのリスナ設定だとこっちは呼び出されないみたい

const w = window.open(url)
w.addEventListener("load", () => console.log("load"))
w.addEventListener("unload", () => console.log("unload"))

これを試してみると

unload
load
(タブを閉じる)
unload

開いた直後に unload イベントが起きてる
その後ロードが終わったら load イベント
タブが閉じた後にもう一度 unload イベント

読み込み開始時に unload が起きるらしいけどこれはいらない情報
この unload は確実にどのブラウザでも起きるのか怪しそうな気がするし unload イベントのリスナは load イベントの中でつけるのが良さそう

const w = window.open(url)
w.addEventListener("load", () => {
w.addEventListener("unload", () => console.log("unload"))
})