LP1823041 Angular dialogs resolve on dismiss/cancel
Angular dialogs now only result in a promise rejection when an
unexpected error occurs. Dismissing a dialog via Esc, Cancel button,
cross-click, body-click, etc. no longer result in a rejection. In these
situations, the response value will be set to 'null' and a new boolean
field 'dismissed' on the dialog object will be set to true.
For the current code, this primarily affects confirm dialogs, which
previously rejected the dialog promise when the user selected the "do
not confirm" option.
Additionally, this commits add typescript support for "es2018.promise"
which allows us to start using Promise.finally() handlers.