external constructors.onUnload event stream to ElementEventGetters extension methods.ElementStream as a public class.^3.4.0.TrustedTypes members.external Element constructors that would result in a runtime error.createAudioElement in favor of the HTMLAudioElement constructor.Redeprecate APIs that were deprecated in 0.4.1 but undeprecated in 0.4.2.
Add support for dart fix migrations from dart:html classes to package:web classes.
Contribute a markdown file for the renamed classes from dart:html to package:web (see renames.md).
Migrate classes to use interop extension types that implement JSObject.
Add generics to APIs that use JSArray and JSPromise. Typedefs of a Dart primitive type are instead replaced with their JS type equivalent if they appear as a type parameter in order to conform with the type bounds of JSArray and JSPromise.
Changed record types to be JSObject instead of JSAny.
Reduce the number of DOM APIs we generate code for. Currently, the API needs to be standards-track, and be supported by Safari, Chrome, and Firefox.
Updated the source IDL version to 3.43.1.
Deprecate a few type aliases in favor of their standardized versions:
| Deprecated | Preferred |
|---|---|
AudioElement | HTMLAudioElement |
HtmlElement | HTMLElement |
CanvasElement | HTMLCanvasElement |
ImageElement | HTMLImageElement |
VideoElement | HTMLVideoElement |
CssStyleDeclaration | CSSStyleDeclaration |
ContextEvent | WebGLContextEvent |
WebGL | WebGLRenderingContext |
Deprecate the top-level createElementTag, createCanvasElement, createIFrameElement, and querySelector functions. Instead, use the standard creation and query methods on document.
Deprecate the client extension methods on MouseEvent and Touch. Instead, directly use the clientX and clientY properties.
Deprecate the HttpRequest API borrowed from dart:html. Consider migrating to package:http instead.
0.4.1. Because deprecations are breaking in Flutter, they should be done in a breaking change.web.dart.helpers.dart library in favor of web.dart.WebSocketappend() and clone() extension methods on Node.NodeGlue.append in favor of Node.appendChild.NodeGlue.clone in favor of Node.cloneNode.@webref/css to 6.10.0.implements JSObject from all types. This is needed to move the JS types exposed in dart:js_interop to extension types. This subtyping will be added back in a future version when we move all package:web types to extension types.onMessage getter to WindowEventGetters extension methods.helpers.dart: expose the EventStreamProviders class.createIFrameElement method to helpers.dart.JSAnys were treated as nullable.JSVoid to void.interface mixins are no longer emitted as interfaces. Their members are instead added to the interface that mixes them in.v3.39.1.typedefs were not declared with the IDL type's nullability.double are now aliased to num. This is to make it easier for users to pass integer values without going through a cast and to make migration from dart:html easier.isInstanceOfDomType as dart:js_interop now exposes instanceOfString.helpers.dartEventStreamProviderhelpers.dart top-level library.bool, int, double, String in APIs.JSAny as an IDL type now includes null.