@@ -760,6 +760,24 @@ public class BeforeUnloadEvent: Event {
760760 // XXX: member 'returnValue' is ignored
761761}
762762
763+ public enum BinaryType: JSString, JSValueCompatible {
764+ case blob = "blob"
765+ case arraybuffer = "arraybuffer"
766+
767+ @inlinable public static func construct(from jsValue: JSValue) -> Self? {
768+ if let string = jsValue.jsString {
769+ return Self(rawValue: string)
770+ }
771+ return nil
772+ }
773+
774+ @inlinable public init?(string: String) {
775+ self.init(rawValue: JSString(string))
776+ }
777+
778+ @inlinable public var jsValue: JSValue { rawValue.jsValue }
779+ }
780+
763781public class Blob: JSBridgedClass {
764782 @inlinable public class var constructor: JSFunction { JSObject.global[Strings.Blob].function! }
765783
@@ -2184,6 +2202,56 @@ public enum ClientType: JSString, JSValueCompatible {
21842202 @inlinable public var jsValue: JSValue { rawValue.jsValue }
21852203}
21862204
2205+ public class CloseEvent: Event {
2206+ @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.CloseEvent].function! }
2207+
2208+ public required init(unsafelyWrapping jsObject: JSObject) {
2209+ _wasClean = ReadonlyAttribute(jsObject: jsObject, name: Strings.wasClean)
2210+ _code = ReadonlyAttribute(jsObject: jsObject, name: Strings.code)
2211+ _reason = ReadonlyAttribute(jsObject: jsObject, name: Strings.reason)
2212+ super.init(unsafelyWrapping: jsObject)
2213+ }
2214+
2215+ @inlinable public convenience init(type: String, eventInitDict: CloseEventInit? = nil) {
2216+ self.init(unsafelyWrapping: Self.constructor.new(arguments: [type.jsValue, eventInitDict?.jsValue ?? .undefined]))
2217+ }
2218+
2219+ @ReadonlyAttribute
2220+ public var wasClean: Bool
2221+
2222+ @ReadonlyAttribute
2223+ public var code: UInt16
2224+
2225+ @ReadonlyAttribute
2226+ public var reason: String
2227+ }
2228+
2229+ public class CloseEventInit: BridgedDictionary {
2230+ public convenience init(wasClean: Bool, code: UInt16, reason: String) {
2231+ let object = JSObject.global[Strings.Object].function!.new()
2232+ object[Strings.wasClean] = wasClean.jsValue
2233+ object[Strings.code] = code.jsValue
2234+ object[Strings.reason] = reason.jsValue
2235+ self.init(unsafelyWrapping: object)
2236+ }
2237+
2238+ public required init(unsafelyWrapping object: JSObject) {
2239+ _wasClean = ReadWriteAttribute(jsObject: object, name: Strings.wasClean)
2240+ _code = ReadWriteAttribute(jsObject: object, name: Strings.code)
2241+ _reason = ReadWriteAttribute(jsObject: object, name: Strings.reason)
2242+ super.init(unsafelyWrapping: object)
2243+ }
2244+
2245+ @ReadWriteAttribute
2246+ public var wasClean: Bool
2247+
2248+ @ReadWriteAttribute
2249+ public var code: UInt16
2250+
2251+ @ReadWriteAttribute
2252+ public var reason: String
2253+ }
2254+
21872255public enum ColorSpaceConversion: JSString, JSValueCompatible {
21882256 case none = "none"
21892257 case `default` = "default"
@@ -14183,6 +14251,76 @@ public class VideoTrackList: EventTarget {
1418314251 public var onremovetrack: EventHandler
1418414252}
1418514253
14254+ public class WebSocket: EventTarget {
14255+ @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.WebSocket].function! }
14256+
14257+ public required init(unsafelyWrapping jsObject: JSObject) {
14258+ _url = ReadonlyAttribute(jsObject: jsObject, name: Strings.url)
14259+ _readyState = ReadonlyAttribute(jsObject: jsObject, name: Strings.readyState)
14260+ _bufferedAmount = ReadonlyAttribute(jsObject: jsObject, name: Strings.bufferedAmount)
14261+ _onopen = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onopen)
14262+ _onerror = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onerror)
14263+ _onclose = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onclose)
14264+ _extensions = ReadonlyAttribute(jsObject: jsObject, name: Strings.extensions)
14265+ _protocol = ReadonlyAttribute(jsObject: jsObject, name: Strings.protocol)
14266+ _onmessage = ClosureAttribute1Optional(jsObject: jsObject, name: Strings.onmessage)
14267+ _binaryType = ReadWriteAttribute(jsObject: jsObject, name: Strings.binaryType)
14268+ super.init(unsafelyWrapping: jsObject)
14269+ }
14270+
14271+ @inlinable public convenience init(url: String, protocols: String_or_seq_of_String? = nil) {
14272+ self.init(unsafelyWrapping: Self.constructor.new(arguments: [url.jsValue, protocols?.jsValue ?? .undefined]))
14273+ }
14274+
14275+ @ReadonlyAttribute
14276+ public var url: String
14277+
14278+ public static let CONNECTING: UInt16 = 0
14279+
14280+ public static let OPEN: UInt16 = 1
14281+
14282+ public static let CLOSING: UInt16 = 2
14283+
14284+ public static let CLOSED: UInt16 = 3
14285+
14286+ @ReadonlyAttribute
14287+ public var readyState: UInt16
14288+
14289+ @ReadonlyAttribute
14290+ public var bufferedAmount: UInt64
14291+
14292+ @ClosureAttribute1Optional
14293+ public var onopen: EventHandler
14294+
14295+ @ClosureAttribute1Optional
14296+ public var onerror: EventHandler
14297+
14298+ @ClosureAttribute1Optional
14299+ public var onclose: EventHandler
14300+
14301+ @ReadonlyAttribute
14302+ public var extensions: String
14303+
14304+ @ReadonlyAttribute
14305+ public var `protocol`: String
14306+
14307+ @inlinable public func close(code: UInt16? = nil, reason: String? = nil) {
14308+ let this = jsObject
14309+ _ = this[Strings.close].function!(this: this, arguments: [code?.jsValue ?? .undefined, reason?.jsValue ?? .undefined])
14310+ }
14311+
14312+ @ClosureAttribute1Optional
14313+ public var onmessage: EventHandler
14314+
14315+ @ReadWriteAttribute
14316+ public var binaryType: BinaryType
14317+
14318+ @inlinable public func send(data: BlobPart) {
14319+ let this = jsObject
14320+ _ = this[Strings.send].function!(this: this, arguments: [data.jsValue])
14321+ }
14322+ }
14323+
1418614324public class WheelEvent: MouseEvent {
1418714325 @inlinable override public class var constructor: JSFunction { JSObject.global[Strings.WheelEvent].function! }
1418814326
@@ -15930,6 +16068,7 @@ public enum console {
1593016068 @usableFromInline static let CanvasRenderingContext2D: JSString = "CanvasRenderingContext2D"
1593116069 @usableFromInline static let CaretPosition: JSString = "CaretPosition"
1593216070 @usableFromInline static let CharacterData: JSString = "CharacterData"
16071+ @usableFromInline static let CloseEvent: JSString = "CloseEvent"
1593316072 @usableFromInline static let Comment: JSString = "Comment"
1593416073 @usableFromInline static let CompositionEvent: JSString = "CompositionEvent"
1593516074 @usableFromInline static let CountQueuingStrategy: JSString = "CountQueuingStrategy"
@@ -16123,6 +16262,7 @@ public enum console {
1612316262 @usableFromInline static let ValidityState: JSString = "ValidityState"
1612416263 @usableFromInline static let VideoTrack: JSString = "VideoTrack"
1612516264 @usableFromInline static let VideoTrackList: JSString = "VideoTrackList"
16265+ @usableFromInline static let WebSocket: JSString = "WebSocket"
1612616266 @usableFromInline static let WheelEvent: JSString = "WheelEvent"
1612716267 @usableFromInline static let Window: JSString = "Window"
1612816268 @usableFromInline static let Worker: JSString = "Worker"
@@ -16266,6 +16406,7 @@ public enum console {
1626616406 @usableFromInline static let behavior: JSString = "behavior"
1626716407 @usableFromInline static let bezierCurveTo: JSString = "bezierCurveTo"
1626816408 @usableFromInline static let bgColor: JSString = "bgColor"
16409+ @usableFromInline static let binaryType: JSString = "binaryType"
1626916410 @usableFromInline static let blob: JSString = "blob"
1627016411 @usableFromInline static let block: JSString = "block"
1627116412 @usableFromInline static let blocking: JSString = "blocking"
@@ -16279,6 +16420,7 @@ public enum console {
1627916420 @usableFromInline static let btoa: JSString = "btoa"
1628016421 @usableFromInline static let bubbles: JSString = "bubbles"
1628116422 @usableFromInline static let buffered: JSString = "buffered"
16423+ @usableFromInline static let bufferedAmount: JSString = "bufferedAmount"
1628216424 @usableFromInline static let button: JSString = "button"
1628316425 @usableFromInline static let buttons: JSString = "buttons"
1628416426 @usableFromInline static let byobRequest: JSString = "byobRequest"
@@ -16516,6 +16658,7 @@ public enum console {
1651616658 @usableFromInline static let eventPhase: JSString = "eventPhase"
1651716659 @usableFromInline static let execCommand: JSString = "execCommand"
1651816660 @usableFromInline static let extends: JSString = "extends"
16661+ @usableFromInline static let extensions: JSString = "extensions"
1651916662 @usableFromInline static let external: JSString = "external"
1652016663 @usableFromInline static let extractContents: JSString = "extractContents"
1652116664 @usableFromInline static let f: JSString = "f"
@@ -17382,6 +17525,7 @@ public enum console {
1738217525 @usableFromInline static let w: JSString = "w"
1738317526 @usableFromInline static let waiting: JSString = "waiting"
1738417527 @usableFromInline static let warn: JSString = "warn"
17528+ @usableFromInline static let wasClean: JSString = "wasClean"
1738517529 @usableFromInline static let webkitMatchesSelector: JSString = "webkitMatchesSelector"
1738617530 @usableFromInline static let whatToShow: JSString = "whatToShow"
1738717531 @usableFromInline static let whenDefined: JSString = "whenDefined"
0 commit comments