ほら、マルチセレクトメニューとかで「すべて選択」「すべて解除」とかやりたいじゃないですか。
残念ながら、SlackのAPIにはそのような機能がないのでviews.update を駆使して実現する。
まず views.open でModal Viewを表示する。
 | 
 | 
後述するが  このようなモーダルビューができるMultiSelectBlockElement の action_id は意味を成さなくなるので空でよい。

そんで、
select-menu-action ブロックの slack.InteractionTypeBlockActions(“block_action”) のハンドラで
 | 
 | 
という具合に、InitialOptions を差し替えて views.update を実行する。
ただし、ドキュメントにもあるように
Preserving input entry
Data entered or selected in input blocks can be preserved while updating views. The new view object that you use with views.update should contain the same input blocks and elements with identical block_id and action_id values.
    views.update method | Slack
InputBlock の block_id と、そのブロックに属する BlockElement の action_id が views.open のときと同じだと入力状態が維持されるということになっているので、 action_id を空にして渡してやることで値の上書きを可能にする。
空で実行すると都度ランダムな文字列が割り当てられ、異なる action_id になるためである。
まったく小賢しいのだが、これで「すべて選択」「すべて解除」ボタンが実装できた。
くそめんどくさいのでどうにかしてほしい。