Sort by updated date, and open first note

毎度お世話になっております。
下記のようなことをやりたく、自作メソッドをinit.js に書いてショートカットを割り当てようとしているのですが、上手く動作せず、対処法を伺えませんでしょうか。

やりたいこと

任意の語句でNoteを検索後、ショートカットキーを押すと
①Noteが更新日時の降順でソートされる
②一番上のNote、すなわち更新日時が最新のNoteが開かれる
というのがまとめて実行されるようにしたいです

やってみたこと

inkdrop.commands.add(document.body, 'sort-and-open-first-note', async () => {
  inkdrop.commands.dispatch(document.body, "view:sort-by-date-updated-in-desc");
  inkdrop.commands.dispatch(document.body, "core:open-first-note");
})

を init.js に記述し、 sort-and-open-first-note コマンドをショートカットに割当。

実際の挙動

当該ショートカットを実行すると、
Noteは更新日時の降順でソートされるが、最新のNoteが開かれない。
仮説として、
view:sort-by-date-updated-in-desc
が実行された後、ソートされた状態のNote一覧をうまく取得できていないため、
core:open-first-note を実行しても、最新のNoteを開けないのでは、と推察しております。

大変恐縮ですが、ご教示のほどよろしくお願い致します。

Ryukiさん

こんにちは。なるほど面白いカスタマイズですね。
実行したいコマンドはデータアクセスを伴うので非同期処理になります。
なのでソート処理が終わらぬうちに “core:open-first-note” コマンドが実行されてしまっています。
コマンドの実行完了を待つ方法は無いのですが、 setTimeout で 100ms ぐらい遅延させれば正しく開けるはずです。
お試し下さい。

早速のご回答、ありがとうございます!
なるほど、承知しました。試してみます!

うまくいきました!!!
どうもありがとうございます、大変助かりました。

awesome!