diff --git a/dwds/CHANGELOG.md b/dwds/CHANGELOG.md index 6d0cb20c6..814cfe500 100644 --- a/dwds/CHANGELOG.md +++ b/dwds/CHANGELOG.md @@ -2,6 +2,7 @@ - Bump `build_web_compilers` to ^4.4.1. - Remove unused `clientFuture` arg from `DwdsVmClient` methods. +- Fix pausing starting of `main` after the hot restart. ## 26.2.2 diff --git a/dwds/web/reloader/ddc_restarter.dart b/dwds/web/reloader/ddc_restarter.dart index 22116661b..696f4e4f8 100644 --- a/dwds/web/reloader/ddc_restarter.dart +++ b/dwds/web/reloader/ddc_restarter.dart @@ -13,7 +13,17 @@ import 'restarter.dart'; external DartLibrary dartLibrary; extension type DartLibrary._(JSObject _) implements JSObject { - external void reload(String? runId, JSPromise? readyToRunMain); + external void reload(ReloadConfiguration configuration); +} + +@anonymous +@JS() +@staticInterop +class ReloadConfiguration { + external factory ReloadConfiguration({ + String? runId, + JSPromise? readyToRunMain, + }); } class DdcRestarter implements Restarter { @@ -27,7 +37,9 @@ class DdcRestarter implements Restarter { reloadedSourcesPath == null, "'reloadedSourcesPath' should not be used for the DDC module format.", ); - dartLibrary.reload(runId, readyToRunMain?.toJS); + dartLibrary.reload( + ReloadConfiguration(runId: runId, readyToRunMain: readyToRunMain?.toJS), + ); final reloadCompleter = Completer(); final sub = window.onMessage.listen((event) { final message = event.data?.dartify();