FileReader
event getters: onAbort
, onError
, onLoad
, onLoadStart
, onProgress
.UnderlyingSource
and UnderlyingSourceBase
where the types don't exist.HttpStatus
class that declares http status codes. This is a copy of the HttpStatus
from the dart:_internal
library that's exposed only through dart:io
and dart:html
.JSImmutableListWrapper
which helps create a dart list from a JS list.TouchListWrapper
and TouchListConvert
in favor of JSImmutableListWrapper
.[]
and []=
overloaded operators to types which define unnamed getter
s and setter
s, respectively.external
so they can be switch
ed over.responseHeaders
to XMLHttpRequest
.WebAssembly
types.CrossOriginWindow
and CrossOriginLocation
wrappers for cross-origin windows and locations, respectively, that can be accessed through HTMLIFrameElement.contentWindowCrossOrigin
, Window.openCrossOrigin
, Window.openerCrossOrigin
, Window.topCrossOrigin
, and Window.parentCrossOrigin
.external
constructors.onUnload
event stream to ElementEventGetters
extension methods.ElementStream
as a public class.^3.4.0
.double
instead of num
. This is to avoid users accidentally downcasting num
, which has different semantics depending on whether you compile to JS or Wasm. See issue #57 for more details.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
.WebSocket
append()
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
.JSAny
s were treated as nullable.JSVoid
to void
.interface mixin
s are no longer emitted as interfaces. Their members are instead added to the interface that mixes them in.v3.39.1
.typedef
s 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.dart
EventStreamProvider
helpers.dart
top-level library.bool
, int
, double
, String
in APIs.JSAny
as an IDL type now includes null
.