瀏覽代碼

[js] move typed array classes from js.html to js.lib (#7894)

As mentioned in #7390 and #6586.
Jens Fischer 6 年之前
父節點
當前提交
12bcf2664a
共有 83 個文件被更改,包括 977 次插入677 次删除
  1. 1 1
      std/haxe/io/BytesBuffer.hx
  2. 1 1
      std/haxe/io/BytesData.hx
  3. 1 1
      std/haxe/io/BytesInput.hx
  4. 1 1
      std/haxe/io/FPHelper.hx
  5. 3 3
      std/js/_std/haxe/io/ArrayBufferView.hx
  6. 7 7
      std/js/_std/haxe/io/Bytes.hx
  7. 8 8
      std/js/_std/haxe/io/BytesBuffer.hx
  8. 1 1
      std/js/_std/haxe/io/Float32Array.hx
  9. 1 1
      std/js/_std/haxe/io/Float64Array.hx
  10. 1 1
      std/js/_std/haxe/io/Int32Array.hx
  11. 1 1
      std/js/_std/haxe/io/UInt16Array.hx
  12. 1 1
      std/js/_std/haxe/io/UInt32Array.hx
  13. 1 1
      std/js/_std/haxe/io/UInt8Array.hx
  14. 1 30
      std/js/html/ArrayBuffer.hx
  15. 1 15
      std/js/html/ArrayBufferView.hx
  16. 1 1
      std/js/html/Blob.hx
  17. 1 1
      std/js/html/Crypto.hx
  18. 2 2
      std/js/html/DOMMatrix.hx
  19. 2 2
      std/js/html/DOMMatrixReadOnly.hx
  20. 1 35
      std/js/html/DataView.hx
  21. 1 1
      std/js/html/File.hx
  22. 1 1
      std/js/html/FileReaderSync.hx
  23. 1 45
      std/js/html/Float32Array.hx
  24. 1 45
      std/js/html/Float64Array.hx
  25. 2 2
      std/js/html/FontFace.hx
  26. 2 2
      std/js/html/ImageData.hx
  27. 1 45
      std/js/html/Int16Array.hx
  28. 1 45
      std/js/html/Int32Array.hx
  29. 1 45
      std/js/html/Int8Array.hx
  30. 2 2
      std/js/html/Navigator.hx
  31. 1 1
      std/js/html/Request.hx
  32. 1 1
      std/js/html/RequestInit.hx
  33. 3 3
      std/js/html/Response.hx
  34. 2 2
      std/js/html/SourceBuffer.hx
  35. 6 6
      std/js/html/SubtleCrypto.hx
  36. 2 2
      std/js/html/TextDecoder.hx
  37. 1 1
      std/js/html/TextEncoder.hx
  38. 1 45
      std/js/html/Uint16Array.hx
  39. 1 45
      std/js/html/Uint32Array.hx
  40. 1 45
      std/js/html/Uint8Array.hx
  41. 1 45
      std/js/html/Uint8ClampedArray.hx
  42. 2 2
      std/js/html/WebSocket.hx
  43. 6 6
      std/js/html/Window.hx
  44. 6 6
      std/js/html/WorkerGlobalScope.hx
  45. 2 2
      std/js/html/XMLHttpRequest.hx
  46. 4 4
      std/js/html/audio/AnalyserNode.hx
  47. 3 3
      std/js/html/audio/AudioBuffer.hx
  48. 3 3
      std/js/html/audio/BaseAudioContext.hx
  49. 1 1
      std/js/html/audio/BiquadFilterNode.hx
  50. 1 1
      std/js/html/audio/IIRFilterNode.hx
  51. 1 1
      std/js/html/audio/WaveShaperNode.hx
  52. 1 1
      std/js/html/eme/MediaEncryptedEvent.hx
  53. 1 1
      std/js/html/eme/MediaKeyMessageEvent.hx
  54. 1 1
      std/js/html/eme/MediaKeyMessageEventInit.hx
  55. 1 1
      std/js/html/eme/MediaKeyNeededEventInit.hx
  56. 4 4
      std/js/html/eme/MediaKeySession.hx
  57. 4 4
      std/js/html/eme/MediaKeyStatusMap.hx
  58. 2 2
      std/js/html/eme/MediaKeys.hx
  59. 4 4
      std/js/html/idb/FileHandle.hx
  60. 1 1
      std/js/html/midi/MIDIMessageEvent.hx
  61. 1 1
      std/js/html/midi/MIDIMessageEventInit.hx
  62. 1 1
      std/js/html/push/PushEventInit.hx
  63. 1 1
      std/js/html/push/PushMessageData.hx
  64. 1 1
      std/js/html/push/PushSubscription.hx
  65. 3 3
      std/js/html/push/PushSubscriptionInit.hx
  66. 1 1
      std/js/html/push/PushSubscriptionOptions.hx
  67. 1 1
      std/js/html/push/PushSubscriptionOptionsInit.hx
  68. 2 2
      std/js/html/rtc/DataChannel.hx
  69. 24 24
      std/js/html/webgl/RenderingContext.hx
  70. 50 50
      std/js/html/webgl/WebGL2RenderingContext.hx
  71. 54 0
      std/js/lib/ArrayBuffer.hx
  72. 39 0
      std/js/lib/ArrayBufferView.hx
  73. 59 0
      std/js/lib/DataView.hx
  74. 69 0
      std/js/lib/Float32Array.hx
  75. 69 0
      std/js/lib/Float64Array.hx
  76. 69 0
      std/js/lib/Int16Array.hx
  77. 69 0
      std/js/lib/Int32Array.hx
  78. 69 0
      std/js/lib/Int8Array.hx
  79. 69 0
      std/js/lib/Uint16Array.hx
  80. 69 0
      std/js/lib/Uint32Array.hx
  81. 69 0
      std/js/lib/Uint8Array.hx
  82. 69 0
      std/js/lib/Uint8ClampedArray.hx
  83. 1 1
      tests/unit/src/unitstd/haxe/io/Float64Array.unit.hx

+ 1 - 1
std/haxe/io/BytesBuffer.hx

@@ -195,7 +195,7 @@ class BytesBuffer {
 		var buf = new python.Bytearray(b);
 		var bytes = new Bytes(buf.length, buf);
 		#elseif js
-		var bytes = new Bytes(new js.html.Uint8Array(b).buffer);
+		var bytes = new Bytes(new js.lib.Uint8Array(b).buffer);
 		#else
 		var bytes = new Bytes(b.length,b);
 		#end

+ 1 - 1
std/haxe/io/BytesData.hx

@@ -34,7 +34,7 @@ package haxe.io;
 #elseif python
 	typedef BytesData = python.Bytearray;
 #elseif js
-	typedef BytesData = js.html.ArrayBuffer;
+	typedef BytesData = js.lib.ArrayBuffer;
 #elseif hl
 	class BytesDataImpl {
 		public var bytes : hl.Bytes;

+ 1 - 1
std/haxe/io/BytesInput.hx

@@ -22,7 +22,7 @@
 package haxe.io;
 
 class BytesInput extends Input {
-	var b : #if js js.html.Uint8Array #elseif hl hl.Bytes #else BytesData #end;
+	var b : #if js js.lib.Uint8Array #elseif hl hl.Bytes #else BytesData #end;
 	#if !flash
 	var pos : Int;
 	var len : Int;

+ 1 - 1
std/haxe/io/FPHelper.hx

@@ -127,7 +127,7 @@ class FPHelper {
 			b;
 		}
 	#elseif js
-		static var helper = new js.html.DataView(new js.html.ArrayBuffer(8));
+		static var helper = new js.lib.DataView(new js.lib.ArrayBuffer(8));
 	#end
 
 	#if neko_v21 inline #end

+ 3 - 3
std/js/_std/haxe/io/ArrayBufferView.hx

@@ -21,7 +21,7 @@
  */
  package haxe.io;
 
-typedef ArrayBufferViewData = js.html.ArrayBufferView;
+typedef ArrayBufferViewData = js.lib.ArrayBufferView;
 
 abstract ArrayBufferView(ArrayBufferViewData) {
 
@@ -30,7 +30,7 @@ abstract ArrayBufferView(ArrayBufferViewData) {
 	public var byteLength(get, never) : Int;
 
 	public inline function new( size : Int ) {
-		this = new js.html.Uint8Array(size);
+		this = new js.lib.Uint8Array(size);
 	}
 
 	inline function get_byteOffset() return this.byteOffset;
@@ -40,7 +40,7 @@ abstract ArrayBufferView(ArrayBufferViewData) {
 	}
 
 	public inline function sub( begin : Int, ?length : Int ) {
-		return fromData(new js.html.Uint8Array(this.buffer.slice(begin, length == null ? null : begin+length)));
+		return fromData(new js.lib.Uint8Array(this.buffer.slice(begin, length == null ? null : begin+length)));
 	}
 
 	public inline function getData() : ArrayBufferViewData {

+ 7 - 7
std/js/_std/haxe/io/Bytes.hx

@@ -25,12 +25,12 @@ package haxe.io;
 class Bytes {
 
 	public var length(default,null) : Int;
-	var b : js.html.Uint8Array;
-	var data : js.html.DataView;
+	var b : js.lib.Uint8Array;
+	var data : js.lib.DataView;
 
 	function new(data:BytesData) {
 		this.length = data.byteLength;
-		this.b = new js.html.Uint8Array(data);
+		this.b = new js.lib.Uint8Array(data);
 		untyped {
 			b.bufferValue = data; // some impl does not return the same instance in .buffer
 			data.hxBytes = this;
@@ -75,7 +75,7 @@ class Bytes {
 	}
 
 	inline function initData() : Void {
-		if( data == null ) data = new js.html.DataView(b.buffer, b.byteOffset, b.byteLength);
+		if( data == null ) data = new js.lib.DataView(b.buffer, b.byteOffset, b.byteLength);
 	}
 
 	public function getDouble( pos : Int ) : Float {
@@ -198,7 +198,7 @@ class Bytes {
 
 	public static function ofString( s : String, ?encoding : Encoding ) : Bytes {
 		if( encoding == RawNative ) {
-			var buf = new js.html.Uint8Array(s.length << 1);
+			var buf = new js.lib.Uint8Array(s.length << 1);
 			for( i in 0...s.length ) {
 				var c : Int = StringTools.fastCodeAt(s,i);
 				buf[i << 1] = c & 0xFF;
@@ -230,7 +230,7 @@ class Bytes {
 				a.push( 0x80 | (c & 63) );
 			}
 		}
-		return new Bytes(new js.html.Uint8Array(a).buffer);
+		return new Bytes(new js.lib.Uint8Array(a).buffer);
 	}
 
 	public static function ofData( b : BytesData ) : Bytes {
@@ -253,7 +253,7 @@ class Bytes {
 			i++;
 		}
 
-		return new Bytes(new js.html.Uint8Array(a).buffer);
+		return new Bytes(new js.lib.Uint8Array(a).buffer);
 	}
 
 	public inline static function fastGet( b : BytesData, pos : Int ) : Int {

+ 8 - 8
std/js/_std/haxe/io/BytesBuffer.hx

@@ -24,9 +24,9 @@ package haxe.io;
 @:coreApi
 class BytesBuffer {
 
-	var buffer : js.html.ArrayBuffer;
-	var view : js.html.DataView;
-	var u8 : js.html.Uint8Array;
+	var buffer : js.lib.ArrayBuffer;
+	var view : js.lib.DataView;
+	var u8 : js.lib.Uint8Array;
 	var pos : Int;
 	var size : Int;
 
@@ -49,7 +49,7 @@ class BytesBuffer {
 	public function add( src : Bytes ) : Void {
 		if( pos + src.length > size ) grow(src.length);
 		if( size == 0 ) return;
-		var sub = new js.html.Uint8Array(@:privateAccess src.b.buffer, @:privateAccess src.b.byteOffset, src.length);
+		var sub = new js.lib.Uint8Array(@:privateAccess src.b.buffer, @:privateAccess src.b.byteOffset, src.length);
 		u8.set(sub, pos);
 		pos += src.length;
 	}
@@ -87,7 +87,7 @@ class BytesBuffer {
 		if( pos < 0 || len < 0 || pos + len > src.length ) throw Error.OutsideBounds;
 		if( this.pos + len > size ) grow(len);
 		if( size == 0 ) return;
-		var sub = new js.html.Uint8Array(@:privateAccess src.b.buffer, @:privateAccess src.b.byteOffset + pos, len);
+		var sub = new js.lib.Uint8Array(@:privateAccess src.b.buffer, @:privateAccess src.b.byteOffset + pos, len);
 		u8.set(sub, this.pos);
 		this.pos += len;
 	}
@@ -97,14 +97,14 @@ class BytesBuffer {
 		var nsize = size == 0 ? 16 : size;
 		while( nsize < req )
 			nsize = (nsize * 3) >> 1;
-		var nbuf = new js.html.ArrayBuffer(nsize);
-		var nu8 = new js.html.Uint8Array(nbuf);
+		var nbuf = new js.lib.ArrayBuffer(nsize);
+		var nu8 = new js.lib.Uint8Array(nbuf);
 		if( size > 0 )
 			nu8.set(u8);
 		size = nsize;
 		buffer = nbuf;
 		u8 = nu8;
-		view = new js.html.DataView(buffer);
+		view = new js.lib.DataView(buffer);
 	}
 
 	public function getBytes() : Bytes @:privateAccess {

+ 1 - 1
std/js/_std/haxe/io/Float32Array.hx

@@ -21,7 +21,7 @@
  */
 package haxe.io;
 
-typedef Float32ArrayData = js.html.Float32Array;
+typedef Float32ArrayData = js.lib.Float32Array;
 
 @:coreApi
 abstract Float32Array(Float32ArrayData) {

+ 1 - 1
std/js/_std/haxe/io/Float64Array.hx

@@ -21,7 +21,7 @@
  */
 package haxe.io;
 
-typedef Float64ArrayData = js.html.Float64Array;
+typedef Float64ArrayData = js.lib.Float64Array;
 
 @:coreApi
 abstract Float64Array(Float64ArrayData) {

+ 1 - 1
std/js/_std/haxe/io/Int32Array.hx

@@ -21,7 +21,7 @@
  */
 package haxe.io;
 
-typedef Int32ArrayData = js.html.Int32Array;
+typedef Int32ArrayData = js.lib.Int32Array;
 
 @:coreApi
 abstract Int32Array(Int32ArrayData) {

+ 1 - 1
std/js/_std/haxe/io/UInt16Array.hx

@@ -21,7 +21,7 @@
  */
 package haxe.io;
 
-typedef UInt16ArrayData = js.html.Uint16Array;
+typedef UInt16ArrayData = js.lib.Uint16Array;
 
 @:coreApi
 abstract UInt16Array(UInt16ArrayData) {

+ 1 - 1
std/js/_std/haxe/io/UInt32Array.hx

@@ -21,7 +21,7 @@
  */
 package haxe.io;
 
-typedef UInt32ArrayData = js.html.Uint32Array;
+typedef UInt32ArrayData = js.lib.Uint32Array;
 
 @:coreApi
 abstract UInt32Array(UInt32ArrayData) {

+ 1 - 1
std/js/_std/haxe/io/UInt8Array.hx

@@ -21,7 +21,7 @@
  */
 package haxe.io;
 
-typedef UInt8ArrayData = js.html.Uint8Array;
+typedef UInt8ArrayData = js.lib.Uint8Array;
 
 @:coreApi
 abstract UInt8Array(UInt8ArrayData) {

+ 1 - 30
std/js/html/ArrayBuffer.hx

@@ -20,35 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("ArrayBuffer")
-extern class ArrayBuffer {
-	static function isView( value : Dynamic ) : Bool;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	function new( length : Int ) : Void;
-	function slice( begin : Int, ?end : Int ) : ArrayBuffer;
-}
-
-#if (js_es <= 5)
-@:ifFeature('js.html.ArrayBuffer.slice')
-private class ArrayBufferCompat {
-
-	static function sliceImpl(begin, ?end) {	
-		var u = new js.html.Uint8Array(js.Lib.nativeThis, begin, end == null ? null : (end - begin));
-		var resultArray = new js.html.Uint8Array(u.byteLength);	
-		resultArray.set(u);	
-		return resultArray.buffer;
-	}
-
-	static function __init__(): Void untyped {
-		// IE10 ArrayBuffer.slice polyfill
-		if( __js__("ArrayBuffer").prototype.slice == null ) __js__("ArrayBuffer").prototype.slice = sliceImpl;
-	}
-
-}
-#end
+@:deprecated typedef ArrayBuffer = js.lib.ArrayBuffer;

+ 1 - 15
std/js/html/ArrayBufferView.hx

@@ -20,20 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-/**
-	`ArrayBufferView` is a helper type representing any of the following JavaScript `TypedArray` types:
-
-	Documentation [ArrayBufferView](https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
-
-	@see <https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView>
-**/
-extern interface ArrayBufferView {
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-}
+@:deprecated typedef ArrayBufferView = js.lib.ArrayBufferView;

+ 1 - 1
std/js/html/Blob.hx

@@ -46,7 +46,7 @@ extern class Blob
 	var type(default,null) : String;
 	
 	/** @throws DOMError */
-	function new( ?blobParts : Array<haxe.extern.EitherType<ArrayBuffer,haxe.extern.EitherType<ArrayBufferView,haxe.extern.EitherType<Blob,String>>>>, ?options : BlobPropertyBag ) : Void;
+	function new( ?blobParts : Array<haxe.extern.EitherType<js.lib.ArrayBuffer,haxe.extern.EitherType<js.lib.ArrayBufferView,haxe.extern.EitherType<Blob,String>>>>, ?options : BlobPropertyBag ) : Void;
 	
 	/**
 		Returns a new `Blob` object containing the data in the specified range of bytes of the source `Blob`.

+ 1 - 1
std/js/html/Crypto.hx

@@ -44,5 +44,5 @@ extern class Crypto {
 		Fills the passed `TypedArray` with cryptographically sound random values.
 		@throws DOMError
 	**/
-	function getRandomValues( array : ArrayBufferView ) : ArrayBufferView;
+	function getRandomValues( array : js.lib.ArrayBufferView ) : js.lib.ArrayBufferView;
 }

+ 2 - 2
std/js/html/DOMMatrix.hx

@@ -37,8 +37,8 @@ extern class DOMMatrix extends DOMMatrixReadOnly {
 	@:overload( function() : Void {} )
 	@:overload( function( transformList : String ) : Void {} )
 	@:overload( function( other : DOMMatrixReadOnly ) : Void {} )
-	@:overload( function( array32 : Float32Array ) : Void {} )
-	@:overload( function( array64 : Float64Array ) : Void {} )
+	@:overload( function( array32 : js.lib.Float32Array ) : Void {} )
+	@:overload( function( array64 : js.lib.Float64Array ) : Void {} )
 	function new( numberSequence : Array<Float> ) : Void;
 	function multiplySelf( other : DOMMatrix ) : DOMMatrix;
 	function preMultiplySelf( other : DOMMatrix ) : DOMMatrix;

+ 2 - 2
std/js/html/DOMMatrixReadOnly.hx

@@ -187,13 +187,13 @@ extern class DOMMatrixReadOnly {
 		Returns a `Float32Array` containing the 6 components (`a`, `b`, `c`, `d`, `e`, `f`) in the case of a 2D matrix or the 16 components (`m11`, `m12`, `m13`, `m14`, `m21`, `m22`, `m23`, `m24`, `m31`, `m32`, `m33`, `m34`, `m41`, `m42`, `m43`, `m44`) for a 3D matrix.
 		@throws DOMError
 	**/
-	function toFloat32Array() : Float32Array;
+	function toFloat32Array() : js.lib.Float32Array;
 	
 	/**
 		Returns a `Float64Array` containing the 6 components (`a`, `b`, `c`, `d`, `e`, `f`) in the case of a 2D matrix or the 16 components (`m11`, `m12`, `m13`, `m14`, `m21`, `m22`, `m23`, `m24`, `m31`, `m32`, `m33`, `m34`, `m41`, `m42`, `m43`, `m44`) for a 3D matrix.
 		@throws DOMError
 	**/
-	function toFloat64Array() : Float64Array;
+	function toFloat64Array() : js.lib.Float64Array;
 	
 	/**
 		Returns a JSON representation of the `DOMMatrixReadOnly` object.

+ 1 - 35
std/js/html/DataView.hx

@@ -20,40 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("DataView")
-extern class DataView implements ArrayBufferView {
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?byteLength : Int ) : Void;
-	@:pure
-	function getInt8( byteOffset : Int ) : Int;
-	@:pure
-	function getUint8( byteOffset : Int ) : Int;
-	@:pure
-	function getInt16( byteOffset : Int, ?littleEndian : Bool ) : Int;
-	@:pure
-	function getUint16( byteOffset : Int, ?littleEndian : Bool ) : Int;
-	@:pure
-	function getInt32( byteOffset : Int, ?littleEndian : Bool ) : Int;
-	@:pure
-	function getUint32( byteOffset : Int, ?littleEndian : Bool ) : Int;
-	@:pure
-	function getFloat32( byteOffset : Int, ?littleEndian : Bool ) : Float;
-	@:pure
-	function getFloat64( byteOffset : Int, ?littleEndian : Bool ) : Float;
-	function setInt8( byteOffset : Int, value : Int ) : Void;
-	function setUint8( byteOffset : Int, value : Int ) : Void;
-	function setInt16( byteOffset : Int, value : Int, ?littleEndian : Bool ) : Void;
-	function setUint16( byteOffset : Int, value : Int, ?littleEndian : Bool ) : Void;
-	function setInt32( byteOffset : Int, value : Int, ?littleEndian : Bool ) : Void;
-	function setUint32( byteOffset : Int, value : Int, ?littleEndian : Bool ) : Void;
-	function setFloat32( byteOffset : Int, value : Float, ?littleEndian : Bool ) : Void;
-	function setFloat64( byteOffset : Int, value : Float, ?littleEndian : Bool ) : Void;
-}
+@:deprecated typedef DataView = js.lib.DataView;

+ 1 - 1
std/js/html/File.hx

@@ -45,5 +45,5 @@ extern class File extends Blob {
 	var lastModified(default,null) : Int;
 	
 	/** @throws DOMError */
-	function new( fileBits : Array<haxe.extern.EitherType<haxe.extern.EitherType<ArrayBufferView,ArrayBuffer>,haxe.extern.EitherType<Blob,String>>>, fileName : String, ?options : FilePropertyBag ) : Void;
+	function new( fileBits : Array<haxe.extern.EitherType<haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer>,haxe.extern.EitherType<Blob,String>>>, fileName : String, ?options : FilePropertyBag ) : Void;
 }

+ 1 - 1
std/js/html/FileReaderSync.hx

@@ -36,7 +36,7 @@ extern class FileReaderSync {
 	/** @throws DOMError */
 	function new() : Void;
 	/** @throws DOMError */
-	function readAsArrayBuffer( blob : Blob ) : ArrayBuffer;
+	function readAsArrayBuffer( blob : Blob ) : js.lib.ArrayBuffer;
 	/** @throws DOMError */
 	function readAsBinaryString( blob : Blob ) : String;
 	/** @throws DOMError */

+ 1 - 45
std/js/html/Float32Array.hx

@@ -20,50 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("Float32Array")
-extern class Float32Array implements ArrayBufferView implements ArrayAccess<Float> {
-	static inline var BYTES_PER_ELEMENT : Int = 4;
-	
-	@:pure
-	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Float32Array;
-	@:pure
-	static function from( source : Array<Float>, ?mapFn : Float -> Float -> Float, ?thisArg : Dynamic ) : Float32Array;
-	@:native("BYTES_PER_ELEMENT")
-	var BYTES_PER_ELEMENT_(default,null) : Int;
-	var length(default,null) : Int;
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	@:overload( function( length : Int ) : Void {} )
-	@:overload( function( array : Float32Array ) : Void {} )
-	@:overload( function( array : Array<Float> ) : Void {} )
-	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
-	@:overload( function( array : Float32Array, ?offset : Int ) : Void {} )
-	function set( array : Array<Float>, ?offset : Int ) : Void;
-	function copyWithin( target : Int, start : Int, ?end : Int ) : Float32Array;
-	function every( callback : Float -> Int -> Float32Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function fill( value : Float, ?start : Int, ?end : Int ) : Float32Array;
-	function filter( callbackfn : Float -> Int -> Float32Array -> Dynamic, ?thisArg : Dynamic ) : Float32Array;
-	function find( predicate : Float -> Int -> Float32Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
-	function findIndex( predicate : Float -> Int -> Float32Array -> Bool, ?thisArg : Dynamic ) : Int;
-	function forEach( callbackfn : Float -> Int -> Float32Array -> Void, ?thisArg : Dynamic ) : Void;
-	function indexOf( searchElement : Float, ?fromIndex : Int ) : Int;
-	function join( ?separator : String ) : String;
-	function lastIndexOf( searchElement : Float, ?fromIndex : Int ) : Int;
-	function map( callbackfn : Float -> Int -> Float32Array -> Float, ?thisArg : Dynamic ) : Float32Array;
-	@:overload( function( callbackfn : Float -> Float -> Int -> Float32Array -> Float ) : Int {} )
-	function reduce( callbackfn : Dynamic -> Float -> Int -> Float32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	@:overload( function( callbackfn : Float -> Float -> Int -> Float32Array -> Float ) : Int {} )
-	function reduceRight( callbackfn : Dynamic -> Float -> Int -> Float32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	function reverse() : Float32Array;
-	function slice( ?start : Int, ?end : Int ) : Float32Array;
-	function some( callbackfn : Float -> Int -> Float32Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function sort( ?compareFn : Float -> Float -> Int ) : Float32Array;
-	function subarray( begin : Int, ?end : Int ) : Float32Array;
-}
+@:deprecated typedef Float32Array = js.lib.Float32Array;

+ 1 - 45
std/js/html/Float64Array.hx

@@ -20,50 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("Float64Array")
-extern class Float64Array implements ArrayBufferView implements ArrayAccess<Float> {
-	static inline var BYTES_PER_ELEMENT : Int = 8;
-	
-	@:pure
-	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Float64Array;
-	@:pure
-	static function from( source : Array<Float>, ?mapFn : Float -> Float -> Float, ?thisArg : Dynamic ) : Float64Array;
-	@:native("BYTES_PER_ELEMENT")
-	var BYTES_PER_ELEMENT_(default,null) : Int;
-	var length(default,null) : Int;
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	@:overload( function( length : Int ) : Void {} )
-	@:overload( function( array : Float64Array ) : Void {} )
-	@:overload( function( array : Array<Float> ) : Void {} )
-	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
-	@:overload( function( array : Float64Array, ?offset : Int ) : Void {} )
-	function set( array : Array<Float>, ?offset : Int ) : Void;
-	function copyWithin( target : Int, start : Int, ?end : Int ) : Float64Array;
-	function every( callback : Float -> Int -> Float64Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function fill( value : Float, ?start : Int, ?end : Int ) : Float64Array;
-	function filter( callbackfn : Float -> Int -> Float64Array -> Dynamic, ?thisArg : Dynamic ) : Float64Array;
-	function find( predicate : Float -> Int -> Float64Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
-	function findIndex( predicate : Float -> Int -> Float64Array -> Bool, ?thisArg : Dynamic ) : Int;
-	function forEach( callbackfn : Float -> Int -> Float64Array -> Void, ?thisArg : Dynamic ) : Void;
-	function indexOf( searchElement : Float, ?fromIndex : Int ) : Int;
-	function join( ?separator : String ) : String;
-	function lastIndexOf( searchElement : Float, ?fromIndex : Int ) : Int;
-	function map( callbackfn : Float -> Int -> Float64Array -> Float, ?thisArg : Dynamic ) : Float64Array;
-	@:overload( function( callbackfn : Float -> Float -> Int -> Float64Array -> Float ) : Int {} )
-	function reduce( callbackfn : Dynamic -> Float -> Int -> Float64Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	@:overload( function( callbackfn : Float -> Float -> Int -> Float64Array -> Float ) : Int {} )
-	function reduceRight( callbackfn : Dynamic -> Float -> Int -> Float64Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	function reverse() : Float64Array;
-	function slice( ?start : Int, ?end : Int ) : Float64Array;
-	function some( callbackfn : Float -> Int -> Float64Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function sort( ?compareFn : Float -> Float -> Int ) : Float64Array;
-	function subarray( begin : Int, ?end : Int ) : Float64Array;
-}
+@:deprecated typedef Float64Array = js.lib.Float64Array;

+ 2 - 2
std/js/html/FontFace.hx

@@ -80,8 +80,8 @@ extern class FontFace {
 	var loaded(default,null) : Promise<FontFace>;
 	
 	/** @throws DOMError */
-	@:overload( function( family : String, source : ArrayBuffer, ?descriptors : FontFaceDescriptors) : FontFace {} )
-	@:overload( function( family : String, source : ArrayBufferView, ?descriptors : FontFaceDescriptors) : FontFace {} )
+	@:overload( function( family : String, source : js.lib.ArrayBuffer, ?descriptors : FontFaceDescriptors) : FontFace {} )
+	@:overload( function( family : String, source : js.lib.ArrayBufferView, ?descriptors : FontFaceDescriptors) : FontFace {} )
 	function new( family : String, source : String, ?descriptors : FontFaceDescriptors ) : Void;
 	
 	/**

+ 2 - 2
std/js/html/ImageData.hx

@@ -47,9 +47,9 @@ extern class ImageData {
 	/**
 		Is a `Uint8ClampedArray` representing a one-dimensional array containing the data in the RGBA order, with integer values between `0` and `255` (included).
 	**/
-	var data(default,null) : Uint8ClampedArray;
+	var data(default,null) : js.lib.Uint8ClampedArray;
 	
 	/** @throws DOMError */
 	@:overload( function( sw : Int, sh : Int ) : Void {} )
-	function new( data : Uint8ClampedArray, sw : Int, ?sh : Int ) : Void;
+	function new( data : js.lib.Uint8ClampedArray, sw : Int, ?sh : Int ) : Void;
 }

+ 1 - 45
std/js/html/Int16Array.hx

@@ -20,50 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("Int16Array")
-extern class Int16Array implements ArrayBufferView implements ArrayAccess<Int> {
-	static inline var BYTES_PER_ELEMENT : Int = 2;
-	
-	@:pure
-	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Int16Array;
-	@:pure
-	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Int16Array;
-	@:native("BYTES_PER_ELEMENT")
-	var BYTES_PER_ELEMENT_(default,null) : Int;
-	var length(default,null) : Int;
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	@:overload( function( length : Int ) : Void {} )
-	@:overload( function( array : Int16Array ) : Void {} )
-	@:overload( function( array : Array<Int> ) : Void {} )
-	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
-	@:overload( function( array : Int16Array, ?offset : Int ) : Void {} )
-	function set( array : Array<Int>, ?offset : Int ) : Void;
-	function copyWithin( target : Int, start : Int, ?end : Int ) : Int16Array;
-	function every( callback : Int -> Int -> Int16Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function fill( value : Int, ?start : Int, ?end : Int ) : Int16Array;
-	function filter( callbackfn : Int -> Int -> Int16Array -> Dynamic, ?thisArg : Dynamic ) : Int16Array;
-	function find( predicate : Int -> Int -> Int16Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
-	function findIndex( predicate : Int -> Int -> Int16Array -> Bool, ?thisArg : Dynamic ) : Int;
-	function forEach( callbackfn : Int -> Int -> Int16Array -> Void, ?thisArg : Dynamic ) : Void;
-	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function join( ?separator : String ) : String;
-	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function map( callbackfn : Int -> Int -> Int16Array -> Int, ?thisArg : Dynamic ) : Int16Array;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Int16Array -> Int ) : Int {} )
-	function reduce( callbackfn : Dynamic -> Int -> Int -> Int16Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Int16Array -> Int ) : Int {} )
-	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Int16Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	function reverse() : Int16Array;
-	function slice( ?start : Int, ?end : Int ) : Int16Array;
-	function some( callbackfn : Int -> Int -> Int16Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function sort( ?compareFn : Int -> Int -> Int ) : Int16Array;
-	function subarray( begin : Int, ?end : Int ) : Int16Array;
-}
+@:deprecated typedef Int16Array = js.lib.Int16Array;

+ 1 - 45
std/js/html/Int32Array.hx

@@ -20,50 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("Int32Array")
-extern class Int32Array implements ArrayBufferView implements ArrayAccess<Int> {
-	static inline var BYTES_PER_ELEMENT : Int = 4;
-	
-	@:pure
-	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Int32Array;
-	@:pure
-	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Int32Array;
-	@:native("BYTES_PER_ELEMENT")
-	var BYTES_PER_ELEMENT_(default,null) : Int;
-	var length(default,null) : Int;
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	@:overload( function( length : Int ) : Void {} )
-	@:overload( function( array : Int32Array ) : Void {} )
-	@:overload( function( array : Array<Int> ) : Void {} )
-	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
-	@:overload( function( array : Int32Array, ?offset : Int ) : Void {} )
-	function set( array : Array<Int>, ?offset : Int ) : Void;
-	function copyWithin( target : Int, start : Int, ?end : Int ) : Int32Array;
-	function every( callback : Int -> Int -> Int32Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function fill( value : Int, ?start : Int, ?end : Int ) : Int32Array;
-	function filter( callbackfn : Int -> Int -> Int32Array -> Dynamic, ?thisArg : Dynamic ) : Int32Array;
-	function find( predicate : Int -> Int -> Int32Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
-	function findIndex( predicate : Int -> Int -> Int32Array -> Bool, ?thisArg : Dynamic ) : Int;
-	function forEach( callbackfn : Int -> Int -> Int32Array -> Void, ?thisArg : Dynamic ) : Void;
-	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function join( ?separator : String ) : String;
-	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function map( callbackfn : Int -> Int -> Int32Array -> Int, ?thisArg : Dynamic ) : Int32Array;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Int32Array -> Int ) : Int {} )
-	function reduce( callbackfn : Dynamic -> Int -> Int -> Int32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Int32Array -> Int ) : Int {} )
-	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Int32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	function reverse() : Int32Array;
-	function slice( ?start : Int, ?end : Int ) : Int32Array;
-	function some( callbackfn : Int -> Int -> Int32Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function sort( ?compareFn : Int -> Int -> Int ) : Int32Array;
-	function subarray( begin : Int, ?end : Int ) : Int32Array;
-}
+@:deprecated typedef Int32Array = js.lib.Int32Array;

+ 1 - 45
std/js/html/Int8Array.hx

@@ -20,50 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("Int8Array")
-extern class Int8Array implements ArrayBufferView implements ArrayAccess<Int> {
-	static inline var BYTES_PER_ELEMENT : Int = 1;
-	
-	@:pure
-	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Int8Array;
-	@:pure
-	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Int8Array;
-	@:native("BYTES_PER_ELEMENT")
-	var BYTES_PER_ELEMENT_(default,null) : Int;
-	var length(default,null) : Int;
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	@:overload( function( length : Int ) : Void {} )
-	@:overload( function( array : Int8Array ) : Void {} )
-	@:overload( function( array : Array<Int> ) : Void {} )
-	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
-	@:overload( function( array : Int8Array, ?offset : Int ) : Void {} )
-	function set( array : Array<Int>, ?offset : Int ) : Void;
-	function copyWithin( target : Int, start : Int, ?end : Int ) : Int8Array;
-	function every( callback : Int -> Int -> Int8Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function fill( value : Int, ?start : Int, ?end : Int ) : Int8Array;
-	function filter( callbackfn : Int -> Int -> Int8Array -> Dynamic, ?thisArg : Dynamic ) : Int8Array;
-	function find( predicate : Int -> Int -> Int8Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
-	function findIndex( predicate : Int -> Int -> Int8Array -> Bool, ?thisArg : Dynamic ) : Int;
-	function forEach( callbackfn : Int -> Int -> Int8Array -> Void, ?thisArg : Dynamic ) : Void;
-	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function join( ?separator : String ) : String;
-	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function map( callbackfn : Int -> Int -> Int8Array -> Int, ?thisArg : Dynamic ) : Int8Array;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Int8Array -> Int ) : Int {} )
-	function reduce( callbackfn : Dynamic -> Int -> Int -> Int8Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Int8Array -> Int ) : Int {} )
-	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Int8Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	function reverse() : Int8Array;
-	function slice( ?start : Int, ?end : Int ) : Int8Array;
-	function some( callbackfn : Int -> Int -> Int8Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function sort( ?compareFn : Int -> Int -> Int ) : Int8Array;
-	function subarray( begin : Int, ?end : Int ) : Int8Array;
-}
+@:deprecated typedef Int8Array = js.lib.Int8Array;

+ 2 - 2
std/js/html/Navigator.hx

@@ -111,8 +111,8 @@ extern class Navigator {
 	/** @throws DOMError */
 	function requestMIDIAccess( ?options : js.html.midi.MIDIOptions ) : Promise<js.html.midi.MIDIAccess>;
 	/** @throws DOMError */
-	@:overload( function( url : String, ?data : ArrayBufferView) : Bool {} )
-	@:overload( function( url : String, ?data : ArrayBuffer) : Bool {} )
+	@:overload( function( url : String, ?data : js.lib.ArrayBufferView) : Bool {} )
+	@:overload( function( url : String, ?data : js.lib.ArrayBuffer) : Bool {} )
 	@:overload( function( url : String, ?data : FormData) : Bool {} )
 	@:overload( function( url : String, ?data : URLSearchParams) : Bool {} )
 	@:overload( function( url : String, ?data : String) : Bool {} )

+ 1 - 1
std/js/html/Request.hx

@@ -101,7 +101,7 @@ extern class Request {
 	**/
 	function clone() : Request;
 	/** @throws DOMError */
-	function arrayBuffer() : Promise<ArrayBuffer>;
+	function arrayBuffer() : Promise<js.lib.ArrayBuffer>;
 	/** @throws DOMError */
 	function blob() : Promise<Blob>;
 	/** @throws DOMError */

+ 1 - 1
std/js/html/RequestInit.hx

@@ -25,7 +25,7 @@
 package js.html;
 
 typedef RequestInit = {
-	var ?body : haxe.extern.EitherType<Blob,haxe.extern.EitherType<haxe.extern.EitherType<ArrayBufferView,ArrayBuffer>,haxe.extern.EitherType<FormData,haxe.extern.EitherType<URLSearchParams,String>>>>;
+	var ?body : haxe.extern.EitherType<Blob,haxe.extern.EitherType<haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer>,haxe.extern.EitherType<FormData,haxe.extern.EitherType<URLSearchParams,String>>>>;
 	var ?cache : RequestCache;
 	var ?credentials : RequestCredentials;
 	var ?headers : haxe.extern.EitherType<Headers,haxe.extern.EitherType<Array<Array<String>>,haxe.DynamicAccess<String>>>;

+ 3 - 3
std/js/html/Response.hx

@@ -82,8 +82,8 @@ extern class Response {
 	var bodyUsed(default,null) : Bool;
 	
 	/** @throws DOMError */
-	@:overload( function( ?body : ArrayBufferView, ?init : ResponseInit) : Response {} )
-	@:overload( function( ?body : ArrayBuffer, ?init : ResponseInit) : Response {} )
+	@:overload( function( ?body : js.lib.ArrayBufferView, ?init : ResponseInit) : Response {} )
+	@:overload( function( ?body : js.lib.ArrayBuffer, ?init : ResponseInit) : Response {} )
 	@:overload( function( ?body : FormData, ?init : ResponseInit) : Response {} )
 	@:overload( function( ?body : URLSearchParams, ?init : ResponseInit) : Response {} )
 	@:overload( function( ?body : Dynamic/*MISSING ReadableStream*/, ?init : ResponseInit) : Response {} )
@@ -96,7 +96,7 @@ extern class Response {
 	**/
 	function clone() : Response;
 	/** @throws DOMError */
-	function arrayBuffer() : Promise<ArrayBuffer>;
+	function arrayBuffer() : Promise<js.lib.ArrayBuffer>;
 	/** @throws DOMError */
 	function blob() : Promise<Blob>;
 	/** @throws DOMError */

+ 2 - 2
std/js/html/SourceBuffer.hx

@@ -94,8 +94,8 @@ extern class SourceBuffer extends EventTarget {
 		Appends media segment data from an `ArrayBuffer` or `ArrayBufferView` object to the `SourceBuffer`.
 		@throws DOMError
 	**/
-	@:overload( function( data : ArrayBuffer ) : Void {} )
-	function appendBuffer( data : ArrayBufferView ) : Void;
+	@:overload( function( data : js.lib.ArrayBuffer ) : Void {} )
+	function appendBuffer( data : js.lib.ArrayBufferView ) : Void;
 	
 	/**
 		Aborts the current segment and resets the segment parser.

+ 6 - 6
std/js/html/SubtleCrypto.hx

@@ -38,31 +38,31 @@ extern class SubtleCrypto {
 		Returns a `Promise` of the encrypted data corresponding to the clear text, algorithm and key given as parameters.
 		@throws DOMError
 	**/
-	function encrypt( algorithm : haxe.extern.EitherType<Dynamic,String>, key : CryptoKey, data : haxe.extern.EitherType<ArrayBufferView,ArrayBuffer> ) : Promise<Dynamic>;
+	function encrypt( algorithm : haxe.extern.EitherType<Dynamic,String>, key : CryptoKey, data : haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer> ) : Promise<Dynamic>;
 	
 	/**
 		Returns a `Promise` of the clear data corresponding to the encrypted text, algorithm and key given as parameters.
 		@throws DOMError
 	**/
-	function decrypt( algorithm : haxe.extern.EitherType<Dynamic,String>, key : CryptoKey, data : haxe.extern.EitherType<ArrayBufferView,ArrayBuffer> ) : Promise<Dynamic>;
+	function decrypt( algorithm : haxe.extern.EitherType<Dynamic,String>, key : CryptoKey, data : haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer> ) : Promise<Dynamic>;
 	
 	/**
 		Returns a `Promise` of the signature corresponding to the text, algorithm and key given as parameters.
 		@throws DOMError
 	**/
-	function sign( algorithm : haxe.extern.EitherType<Dynamic,String>, key : CryptoKey, data : haxe.extern.EitherType<ArrayBufferView,ArrayBuffer> ) : Promise<Dynamic>;
+	function sign( algorithm : haxe.extern.EitherType<Dynamic,String>, key : CryptoKey, data : haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer> ) : Promise<Dynamic>;
 	
 	/**
 		Returns a `Promise` of a `Boolean` value indicating if the signature given as parameter matches the text, algorithm and key also given as parameters.
 		@throws DOMError
 	**/
-	function verify( algorithm : haxe.extern.EitherType<Dynamic,String>, key : CryptoKey, signature : haxe.extern.EitherType<ArrayBufferView,ArrayBuffer>, data : haxe.extern.EitherType<ArrayBufferView,ArrayBuffer> ) : Promise<Dynamic>;
+	function verify( algorithm : haxe.extern.EitherType<Dynamic,String>, key : CryptoKey, signature : haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer>, data : haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer> ) : Promise<Dynamic>;
 	
 	/**
 		Returns a `Promise` of a digest generated from the algorithm and text given as parameters.
 		@throws DOMError
 	**/
-	function digest( algorithm : haxe.extern.EitherType<Dynamic,String>, data : haxe.extern.EitherType<ArrayBufferView,ArrayBuffer> ) : Promise<Dynamic>;
+	function digest( algorithm : haxe.extern.EitherType<Dynamic,String>, data : haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer> ) : Promise<Dynamic>;
 	
 	/**
 		Returns a `Promise` of a newly generated `CryptoKey`, for symmetrical algorithms, or a `CryptoKeyPair`, containing two newly generated keys, for asymmetrical algorithm, that matches the algorithm, the usages and the extractability given as parameters.
@@ -108,5 +108,5 @@ extern class SubtleCrypto {
 		Returns a `Promise` of a `CryptoKey` corresponding to the wrapped key given in parameter.
 		@throws DOMError
 	**/
-	function unwrapKey( format : String, wrappedKey : haxe.extern.EitherType<ArrayBufferView,ArrayBuffer>, unwrappingKey : CryptoKey, unwrapAlgorithm : haxe.extern.EitherType<Dynamic,String>, unwrappedKeyAlgorithm : haxe.extern.EitherType<Dynamic,String>, extractable : Bool, keyUsages : Array<String> ) : Promise<Dynamic>;
+	function unwrapKey( format : String, wrappedKey : haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer>, unwrappingKey : CryptoKey, unwrapAlgorithm : haxe.extern.EitherType<Dynamic,String>, unwrappedKeyAlgorithm : haxe.extern.EitherType<Dynamic,String>, extractable : Bool, keyUsages : Array<String> ) : Promise<Dynamic>;
 }

+ 2 - 2
std/js/html/TextDecoder.hx

@@ -56,6 +56,6 @@ extern class TextDecoder {
 		Returns a `DOMString` containing the text decoded with the method of the specific `TextDecoder` object.
 		@throws DOMError
 	**/
-	@:overload( function( ?input : ArrayBuffer, ?options : TextDecodeOptions) : String {} )
-	function decode( ?input : ArrayBufferView, ?options : TextDecodeOptions ) : String;
+	@:overload( function( ?input : js.lib.ArrayBuffer, ?options : TextDecodeOptions) : String {} )
+	function decode( ?input : js.lib.ArrayBufferView, ?options : TextDecodeOptions ) : String;
 }

+ 1 - 1
std/js/html/TextEncoder.hx

@@ -45,5 +45,5 @@ extern class TextEncoder {
 	/**
 		Returns a `Uint8Array` containing utf-8 encoded text.
 	**/
-	function encode( input : String = "" ) : Uint8Array;
+	function encode( input : String = "" ) : js.lib.Uint8Array;
 }

+ 1 - 45
std/js/html/Uint16Array.hx

@@ -20,50 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("Uint16Array")
-extern class Uint16Array implements ArrayBufferView implements ArrayAccess<Int> {
-	static inline var BYTES_PER_ELEMENT : Int = 2;
-	
-	@:pure
-	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Uint16Array;
-	@:pure
-	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Uint16Array;
-	@:native("BYTES_PER_ELEMENT")
-	var BYTES_PER_ELEMENT_(default,null) : Int;
-	var length(default,null) : Int;
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	@:overload( function( length : Int ) : Void {} )
-	@:overload( function( array : Uint16Array ) : Void {} )
-	@:overload( function( array : Array<Int> ) : Void {} )
-	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
-	@:overload( function( array : Uint16Array, ?offset : Int ) : Void {} )
-	function set( array : Array<Int>, ?offset : Int ) : Void;
-	function copyWithin( target : Int, start : Int, ?end : Int ) : Uint16Array;
-	function every( callback : Int -> Int -> Uint16Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function fill( value : Int, ?start : Int, ?end : Int ) : Uint16Array;
-	function filter( callbackfn : Int -> Int -> Uint16Array -> Dynamic, ?thisArg : Dynamic ) : Uint16Array;
-	function find( predicate : Int -> Int -> Uint16Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
-	function findIndex( predicate : Int -> Int -> Uint16Array -> Bool, ?thisArg : Dynamic ) : Int;
-	function forEach( callbackfn : Int -> Int -> Uint16Array -> Void, ?thisArg : Dynamic ) : Void;
-	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function join( ?separator : String ) : String;
-	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function map( callbackfn : Int -> Int -> Uint16Array -> Int, ?thisArg : Dynamic ) : Uint16Array;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Uint16Array -> Int ) : Int {} )
-	function reduce( callbackfn : Dynamic -> Int -> Int -> Uint16Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Uint16Array -> Int ) : Int {} )
-	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Uint16Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	function reverse() : Uint16Array;
-	function slice( ?start : Int, ?end : Int ) : Uint16Array;
-	function some( callbackfn : Int -> Int -> Uint16Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function sort( ?compareFn : Int -> Int -> Int ) : Uint16Array;
-	function subarray( begin : Int, ?end : Int ) : Uint16Array;
-}
+@:deprecated typedef Uint16Array = js.lib.Uint16Array;

+ 1 - 45
std/js/html/Uint32Array.hx

@@ -20,50 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("Uint32Array")
-extern class Uint32Array implements ArrayBufferView implements ArrayAccess<Int> {
-	static inline var BYTES_PER_ELEMENT : Int = 4;
-	
-	@:pure
-	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Uint32Array;
-	@:pure
-	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Uint32Array;
-	@:native("BYTES_PER_ELEMENT")
-	var BYTES_PER_ELEMENT_(default,null) : Int;
-	var length(default,null) : Int;
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	@:overload( function( length : Int ) : Void {} )
-	@:overload( function( array : Uint32Array ) : Void {} )
-	@:overload( function( array : Array<Int> ) : Void {} )
-	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
-	@:overload( function( array : Uint32Array, ?offset : Int ) : Void {} )
-	function set( array : Array<Int>, ?offset : Int ) : Void;
-	function copyWithin( target : Int, start : Int, ?end : Int ) : Uint32Array;
-	function every( callback : Int -> Int -> Uint32Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function fill( value : Int, ?start : Int, ?end : Int ) : Uint32Array;
-	function filter( callbackfn : Int -> Int -> Uint32Array -> Dynamic, ?thisArg : Dynamic ) : Uint32Array;
-	function find( predicate : Int -> Int -> Uint32Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
-	function findIndex( predicate : Int -> Int -> Uint32Array -> Bool, ?thisArg : Dynamic ) : Int;
-	function forEach( callbackfn : Int -> Int -> Uint32Array -> Void, ?thisArg : Dynamic ) : Void;
-	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function join( ?separator : String ) : String;
-	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function map( callbackfn : Int -> Int -> Uint32Array -> Int, ?thisArg : Dynamic ) : Uint32Array;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Uint32Array -> Int ) : Int {} )
-	function reduce( callbackfn : Dynamic -> Int -> Int -> Uint32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Uint32Array -> Int ) : Int {} )
-	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Uint32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	function reverse() : Uint32Array;
-	function slice( ?start : Int, ?end : Int ) : Uint32Array;
-	function some( callbackfn : Int -> Int -> Uint32Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function sort( ?compareFn : Int -> Int -> Int ) : Uint32Array;
-	function subarray( begin : Int, ?end : Int ) : Uint32Array;
-}
+@:deprecated typedef Uint32Array = js.lib.Uint32Array;

+ 1 - 45
std/js/html/Uint8Array.hx

@@ -20,50 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("Uint8Array")
-extern class Uint8Array implements ArrayBufferView implements ArrayAccess<Int> {
-	static inline var BYTES_PER_ELEMENT : Int = 1;
-	
-	@:pure
-	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Uint8Array;
-	@:pure
-	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Uint8Array;
-	@:native("BYTES_PER_ELEMENT")
-	var BYTES_PER_ELEMENT_(default,null) : Int;
-	var length(default,null) : Int;
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	@:overload( function( length : Int ) : Void {} )
-	@:overload( function( array : Uint8Array ) : Void {} )
-	@:overload( function( array : Array<Int> ) : Void {} )
-	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
-	@:overload( function( array : Uint8Array, ?offset : Int ) : Void {} )
-	function set( array : Array<Int>, ?offset : Int ) : Void;
-	function copyWithin( target : Int, start : Int, ?end : Int ) : Uint8Array;
-	function every( callback : Int -> Int -> Uint8Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function fill( value : Int, ?start : Int, ?end : Int ) : Uint8Array;
-	function filter( callbackfn : Int -> Int -> Uint8Array -> Dynamic, ?thisArg : Dynamic ) : Uint8Array;
-	function find( predicate : Int -> Int -> Uint8Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
-	function findIndex( predicate : Int -> Int -> Uint8Array -> Bool, ?thisArg : Dynamic ) : Int;
-	function forEach( callbackfn : Int -> Int -> Uint8Array -> Void, ?thisArg : Dynamic ) : Void;
-	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function join( ?separator : String ) : String;
-	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function map( callbackfn : Int -> Int -> Uint8Array -> Int, ?thisArg : Dynamic ) : Uint8Array;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Uint8Array -> Int ) : Int {} )
-	function reduce( callbackfn : Dynamic -> Int -> Int -> Uint8Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Uint8Array -> Int ) : Int {} )
-	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Uint8Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	function reverse() : Uint8Array;
-	function slice( ?start : Int, ?end : Int ) : Uint8Array;
-	function some( callbackfn : Int -> Int -> Uint8Array -> Bool, ?thisArg : Dynamic ) : Bool;
-	function sort( ?compareFn : Int -> Int -> Int ) : Uint8Array;
-	function subarray( begin : Int, ?end : Int ) : Uint8Array;
-}
+@:deprecated typedef Uint8Array = js.lib.Uint8Array;

+ 1 - 45
std/js/html/Uint8ClampedArray.hx

@@ -20,50 +20,6 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
-// This file is generated from typedarray.webidl. Do not edit!
-
 package js.html;
 
-@:native("Uint8ClampedArray")
-extern class Uint8ClampedArray implements ArrayBufferView implements ArrayAccess<Int> {
-	static inline var BYTES_PER_ELEMENT : Int = 1;
-	
-	@:pure
-	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Uint8ClampedArray;
-	@:pure
-	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Uint8ClampedArray;
-	@:native("BYTES_PER_ELEMENT")
-	var BYTES_PER_ELEMENT_(default,null) : Int;
-	var length(default,null) : Int;
-	var buffer(default,null) : ArrayBuffer;
-	var byteOffset(default,null) : Int;
-	var byteLength(default,null) : Int;
-	
-	/** @throws DOMError */
-	@:overload( function( length : Int ) : Void {} )
-	@:overload( function( array : Uint8ClampedArray ) : Void {} )
-	@:overload( function( array : Array<Int> ) : Void {} )
-	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
-	@:overload( function( array : Uint8ClampedArray, ?offset : Int ) : Void {} )
-	function set( array : Array<Int>, ?offset : Int ) : Void;
-	function copyWithin( target : Int, start : Int, ?end : Int ) : Uint8ClampedArray;
-	function every( callback : Int -> Int -> Uint8ClampedArray -> Bool, ?thisArg : Dynamic ) : Bool;
-	function fill( value : Int, ?start : Int, ?end : Int ) : Uint8ClampedArray;
-	function filter( callbackfn : Int -> Int -> Uint8ClampedArray -> Dynamic, ?thisArg : Dynamic ) : Uint8ClampedArray;
-	function find( predicate : Int -> Int -> Uint8ClampedArray -> Bool, ?thisArg : Dynamic ) : Dynamic;
-	function findIndex( predicate : Int -> Int -> Uint8ClampedArray -> Bool, ?thisArg : Dynamic ) : Int;
-	function forEach( callbackfn : Int -> Int -> Uint8ClampedArray -> Void, ?thisArg : Dynamic ) : Void;
-	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function join( ?separator : String ) : String;
-	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
-	function map( callbackfn : Int -> Int -> Uint8ClampedArray -> Int, ?thisArg : Dynamic ) : Uint8ClampedArray;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Uint8ClampedArray -> Int ) : Int {} )
-	function reduce( callbackfn : Dynamic -> Int -> Int -> Uint8ClampedArray -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	@:overload( function( callbackfn : Int -> Int -> Int -> Uint8ClampedArray -> Int ) : Int {} )
-	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Uint8ClampedArray -> Dynamic, initialValue : Dynamic ) : Dynamic;
-	function reverse() : Uint8ClampedArray;
-	function slice( ?start : Int, ?end : Int ) : Uint8ClampedArray;
-	function some( callbackfn : Int -> Int -> Uint8ClampedArray -> Bool, ?thisArg : Dynamic ) : Bool;
-	function sort( ?compareFn : Int -> Int -> Int ) : Uint8ClampedArray;
-	function subarray( begin : Int, ?end : Int ) : Uint8ClampedArray;
-}
+@:deprecated typedef Uint8ClampedArray = js.lib.Uint8ClampedArray;

+ 2 - 2
std/js/html/WebSocket.hx

@@ -98,6 +98,6 @@ extern class WebSocket extends EventTarget {
 	/** @throws DOMError */
 	@:overload( function( data : String ) : Void {} )
 	@:overload( function( data : Blob ) : Void {} )
-	@:overload( function( data : ArrayBuffer ) : Void {} )
-	function send( data : ArrayBufferView ) : Void;
+	@:overload( function( data : js.lib.ArrayBuffer ) : Void {} )
+	function send( data : js.lib.ArrayBufferView ) : Void;
 }

+ 6 - 6
std/js/html/Window.hx

@@ -580,24 +580,24 @@ extern class Window extends EventTarget {
 	@:overload( function( aImage : ImageData) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : CanvasRenderingContext2D) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageBitmap) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBufferView) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBuffer) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBufferView) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBuffer) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : VideoElement, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : CanvasElement, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : Blob, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageData, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : CanvasRenderingContext2D, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageBitmap, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBufferView, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBuffer, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBufferView, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBuffer, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : VideoElement, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : CanvasElement, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : Blob, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageData, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : CanvasRenderingContext2D, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageBitmap, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBufferView, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBuffer, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBufferView, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBuffer, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageElement ) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageElement, aSx : Int, aSy : Int, aSw : Int, aSh : Int ) : Promise<ImageBitmap> {} )
 	function createImageBitmap( aImage : ImageElement, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout> ) : Promise<ImageBitmap>;

+ 6 - 6
std/js/html/WorkerGlobalScope.hx

@@ -100,24 +100,24 @@ extern class WorkerGlobalScope extends EventTarget {
 	@:overload( function( aImage : ImageData) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : CanvasRenderingContext2D) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageBitmap) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBufferView) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBuffer) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBufferView) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBuffer) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : VideoElement, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : CanvasElement, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : Blob, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageData, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : CanvasRenderingContext2D, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageBitmap, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBufferView, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBuffer, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBufferView, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBuffer, aSx : Int, aSy : Int, aSw : Int, aSh : Int) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : VideoElement, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : CanvasElement, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : Blob, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageData, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : CanvasRenderingContext2D, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageBitmap, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBufferView, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
-	@:overload( function( aImage : ArrayBuffer, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBufferView, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
+	@:overload( function( aImage : js.lib.ArrayBuffer, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout>) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageElement ) : Promise<ImageBitmap> {} )
 	@:overload( function( aImage : ImageElement, aSx : Int, aSy : Int, aSw : Int, aSh : Int ) : Promise<ImageBitmap> {} )
 	function createImageBitmap( aImage : ImageElement, aOffset : Int, aLength : Int, aFormat : ImageBitmapFormat, aLayout : Array<ChannelPixelLayout> ) : Promise<ImageBitmap>;

+ 2 - 2
std/js/html/XMLHttpRequest.hx

@@ -122,8 +122,8 @@ extern class XMLHttpRequest extends XMLHttpRequestEventTarget {
 		@throws DOMError
 	**/
 	@:overload( function( ?body : Blob) : Void {} )
-	@:overload( function( ?body : ArrayBufferView) : Void {} )
-	@:overload( function( ?body : ArrayBuffer) : Void {} )
+	@:overload( function( ?body : js.lib.ArrayBufferView) : Void {} )
+	@:overload( function( ?body : js.lib.ArrayBuffer) : Void {} )
 	@:overload( function( ?body : FormData) : Void {} )
 	@:overload( function( ?body : URLSearchParams) : Void {} )
 	@:overload( function( ?body : String) : Void {} )

+ 4 - 4
std/js/html/audio/AnalyserNode.hx

@@ -65,20 +65,20 @@ extern class AnalyserNode extends AudioNode {
 	/**
 		Copies the current frequency data into a `Float32Array` array passed into it.
 	**/
-	function getFloatFrequencyData( array : js.html.Float32Array ) : Void;
+	function getFloatFrequencyData( array : js.lib.Float32Array ) : Void;
 	
 	/**
 		Copies the current frequency data into a `Uint8Array` (unsigned byte array) passed into it.
 	**/
-	function getByteFrequencyData( array : js.html.Uint8Array ) : Void;
+	function getByteFrequencyData( array : js.lib.Uint8Array ) : Void;
 	
 	/**
 		Copies the current waveform, or time-domain, data into a `Float32Array` array passed into it.
 	**/
-	function getFloatTimeDomainData( array : js.html.Float32Array ) : Void;
+	function getFloatTimeDomainData( array : js.lib.Float32Array ) : Void;
 	
 	/**
 		Copies the current waveform, or time-domain, data into a `Uint8Array` (unsigned byte array) passed into it.
 	**/
-	function getByteTimeDomainData( array : js.html.Uint8Array ) : Void;
+	function getByteTimeDomainData( array : js.lib.Uint8Array ) : Void;
 }

+ 3 - 3
std/js/html/audio/AudioBuffer.hx

@@ -61,17 +61,17 @@ extern class AudioBuffer {
 		Returns a `Float32Array` containing the PCM data associated with the channel, defined by the `channel` parameter (with `0` representing the first channel).
 		@throws DOMError
 	**/
-	function getChannelData( channel : Int ) : js.html.Float32Array;
+	function getChannelData( channel : Int ) : js.lib.Float32Array;
 	
 	/**
 		Copies the samples from the specified channel of the `AudioBuffer` to the `destination` array.
 		@throws DOMError
 	**/
-	function copyFromChannel( destination : js.html.Float32Array, channelNumber : Int, startInChannel : Int = 0 ) : Void;
+	function copyFromChannel( destination : js.lib.Float32Array, channelNumber : Int, startInChannel : Int = 0 ) : Void;
 	
 	/**
 		Copies the samples to the specified channel of the `AudioBuffer`, from the `source` array.
 		@throws DOMError
 	**/
-	function copyToChannel( source : js.html.Float32Array, channelNumber : Int, startInChannel : Int = 0 ) : Void;
+	function copyToChannel( source : js.lib.Float32Array, channelNumber : Int, startInChannel : Int = 0 ) : Void;
 }

+ 3 - 3
std/js/html/audio/BaseAudioContext.hx

@@ -81,8 +81,8 @@ extern class BaseAudioContext extends js.html.EventTarget {
 		Asynchronously decodes audio file data contained in an `ArrayBuffer`. In this case, the ArrayBuffer is usually loaded from an `XMLHttpRequest`'s `response` attribute after setting the `responseType` to `arraybuffer`. This method only works on complete files, not fragments of audio files.
 		@throws DOMError
 	**/
-	@:overload( function( audioData : js.html.ArrayBuffer, ?successCallback : AudioBuffer -> Void, ?errorCallback : Void -> Void ) : Promise<AudioBuffer> {} )
-	function decodeAudioData( audioData : js.html.ArrayBuffer, ?successCallback : AudioBuffer -> Void, ?errorCallback : js.html.DOMException -> Void ) : Promise<AudioBuffer>;
+	@:overload( function( audioData : js.lib.ArrayBuffer, ?successCallback : AudioBuffer -> Void, ?errorCallback : Void -> Void ) : Promise<AudioBuffer> {} )
+	function decodeAudioData( audioData : js.lib.ArrayBuffer, ?successCallback : AudioBuffer -> Void, ?errorCallback : js.html.DOMException -> Void ) : Promise<AudioBuffer>;
 	
 	/**
 		Creates an `AudioBufferSourceNode`, which can be used to play and manipulate audio data contained within an `AudioBuffer` object. `AudioBuffer`s are created using `AudioContext.createBuffer` or returned by `AudioContext.decodeAudioData` when it successfully decodes an audio track.
@@ -184,5 +184,5 @@ extern class BaseAudioContext extends js.html.EventTarget {
 		Creates a `PeriodicWave`, used to define a periodic waveform that can be used to determine the output of an `OscillatorNode`.
 		@throws DOMError
 	**/
-	function createPeriodicWave( real : js.html.Float32Array, imag : js.html.Float32Array, ?constraints : PeriodicWaveConstraints ) : PeriodicWave;
+	function createPeriodicWave( real : js.lib.Float32Array, imag : js.lib.Float32Array, ?constraints : PeriodicWaveConstraints ) : PeriodicWave;
 }

+ 1 - 1
std/js/html/audio/BiquadFilterNode.hx

@@ -137,5 +137,5 @@ extern class BiquadFilterNode extends AudioNode {
 	/**
 		From the current filter parameter settings this method calculates the frequency response for frequencies specified in the provided array of frequencies.
 	**/
-	function getFrequencyResponse( frequencyHz : js.html.Float32Array, magResponse : js.html.Float32Array, phaseResponse : js.html.Float32Array ) : Void;
+	function getFrequencyResponse( frequencyHz : js.lib.Float32Array, magResponse : js.lib.Float32Array, phaseResponse : js.lib.Float32Array ) : Void;
 }

+ 1 - 1
std/js/html/audio/IIRFilterNode.hx

@@ -35,5 +35,5 @@ package js.html.audio;
 extern class IIRFilterNode extends AudioNode {
 	/** @throws DOMError */
 	function new( context : BaseAudioContext, options : IIRFilterOptions ) : Void;
-	function getFrequencyResponse( frequencyHz : js.html.Float32Array, magResponse : js.html.Float32Array, phaseResponse : js.html.Float32Array ) : Void;
+	function getFrequencyResponse( frequencyHz : js.lib.Float32Array, magResponse : js.lib.Float32Array, phaseResponse : js.lib.Float32Array ) : Void;
 }

+ 1 - 1
std/js/html/audio/WaveShaperNode.hx

@@ -37,7 +37,7 @@ extern class WaveShaperNode extends AudioNode {
 	/**
 		Is a `Float32Array` of numbers describing the distortion to apply.
 	**/
-	var curve : js.html.Float32Array;
+	var curve : js.lib.Float32Array;
 	
 	/**
 		Is an enumerated value indicating if oversampling must be used. Oversampling is a technique for creating more samples (up-sampling) before applying the distortion effect to the audio signal.

+ 1 - 1
std/js/html/eme/MediaEncryptedEvent.hx

@@ -27,7 +27,7 @@ package js.html.eme;
 @:native("MediaEncryptedEvent")
 extern class MediaEncryptedEvent extends js.html.Event {
 	var initDataType(default,null) : String;
-	var initData(default,null) : js.html.ArrayBuffer;
+	var initData(default,null) : js.lib.ArrayBuffer;
 	
 	/** @throws DOMError */
 	function new( type : String, ?eventInitDict : MediaKeyNeededEventInit ) : Void;

+ 1 - 1
std/js/html/eme/MediaKeyMessageEvent.hx

@@ -42,7 +42,7 @@ extern class MediaKeyMessageEvent extends js.html.Event {
 	/**
 		Returns an `ArrayBuffer` with a message from the content decryption module. Messages vary by key system.
 	**/
-	var message(default,null) : js.html.ArrayBuffer;
+	var message(default,null) : js.lib.ArrayBuffer;
 	
 	/** @throws DOMError */
 	function new( type : String, eventInitDict : MediaKeyMessageEventInit ) : Void;

+ 1 - 1
std/js/html/eme/MediaKeyMessageEventInit.hx

@@ -25,6 +25,6 @@
 package js.html.eme;
 
 typedef MediaKeyMessageEventInit = EventInit & {
-	var message : js.html.ArrayBuffer;
+	var message : js.lib.ArrayBuffer;
 	var messageType : MediaKeyMessageType;
 }

+ 1 - 1
std/js/html/eme/MediaKeyNeededEventInit.hx

@@ -25,6 +25,6 @@
 package js.html.eme;
 
 typedef MediaKeyNeededEventInit = EventInit & {
-	var ?initData : js.html.ArrayBuffer;
+	var ?initData : js.lib.ArrayBuffer;
 	var ?initDataType : String;
 }

+ 4 - 4
std/js/html/eme/MediaKeySession.hx

@@ -69,8 +69,8 @@ extern class MediaKeySession extends js.html.EventTarget {
 	/**
 		Returns a `Promise` after generating a media request based on initialization data.
 	**/
-	@:overload( function( initDataType : String, initData : js.html.ArrayBuffer) : Promise<Void> {} )
-	function generateRequest( initDataType : String, initData : js.html.ArrayBufferView ) : Promise<Void>;
+	@:overload( function( initDataType : String, initData : js.lib.ArrayBuffer) : Promise<Void> {} )
+	function generateRequest( initDataType : String, initData : js.lib.ArrayBufferView ) : Promise<Void>;
 	
 	/**
 		Returns a `Promise` that resolves to a boolean value after loading data for a specified session object. 
@@ -80,8 +80,8 @@ extern class MediaKeySession extends js.html.EventTarget {
 	/**
 		Returns a `Promise` after loading messages and licenses to the CDM.
 	**/
-	@:overload( function( response : js.html.ArrayBuffer) : Promise<Void> {} )
-	function update( response : js.html.ArrayBufferView ) : Promise<Void>;
+	@:overload( function( response : js.lib.ArrayBuffer) : Promise<Void> {} )
+	function update( response : js.lib.ArrayBufferView ) : Promise<Void>;
 	
 	/**
 		

+ 4 - 4
std/js/html/eme/MediaKeyStatusMap.hx

@@ -43,15 +43,15 @@ extern class MediaKeyStatusMap {
 	/**
 		Returns a boolean asserting whether a value has been associated with the given key.
 	**/
-	@:overload( function( keyId : js.html.ArrayBuffer) : Bool {} )
-	function has( keyId : js.html.ArrayBufferView ) : Bool;
+	@:overload( function( keyId : js.lib.ArrayBuffer) : Bool {} )
+	function has( keyId : js.lib.ArrayBufferView ) : Bool;
 	
 	/**
 		Returns the value associated with the given key, or `undefined` if there is none.
 		@throws DOMError
 	**/
-	@:overload( function( keyId : js.html.ArrayBuffer) : Dynamic {} )
-	function get( keyId : js.html.ArrayBufferView ) : Dynamic;
+	@:overload( function( keyId : js.lib.ArrayBuffer) : Dynamic {} )
+	function get( keyId : js.lib.ArrayBufferView ) : Dynamic;
 	
 	/**
 		Returns a new `Iterator` object containing an array of `[key, value]` for each element in the status map, in insertion order.

+ 2 - 2
std/js/html/eme/MediaKeys.hx

@@ -45,6 +45,6 @@ extern class MediaKeys {
 	/**
 		Returns a `Promise` to a server certificate to be used to encrypt messages to the license server.
 	**/
-	@:overload( function( serverCertificate : js.html.ArrayBuffer) : Promise<Void> {} )
-	function setServerCertificate( serverCertificate : js.html.ArrayBufferView ) : Promise<Void>;
+	@:overload( function( serverCertificate : js.lib.ArrayBuffer) : Promise<Void> {} )
+	function setServerCertificate( serverCertificate : js.lib.ArrayBufferView ) : Promise<Void>;
 }

+ 4 - 4
std/js/html/idb/FileHandle.hx

@@ -42,13 +42,13 @@ extern class FileHandle extends js.html.EventTarget {
 	/** @throws DOMError */
 	function readAsText( size : Int, ?encoding : String ) : FileRequest;
 	/** @throws DOMError */
-	@:overload( function( value : js.html.ArrayBuffer) : FileRequest {} )
-	@:overload( function( value : js.html.ArrayBufferView) : FileRequest {} )
+	@:overload( function( value : js.lib.ArrayBuffer) : FileRequest {} )
+	@:overload( function( value : js.lib.ArrayBufferView) : FileRequest {} )
 	@:overload( function( value : js.html.Blob) : FileRequest {} )
 	function write( value : String ) : FileRequest;
 	/** @throws DOMError */
-	@:overload( function( value : js.html.ArrayBuffer) : FileRequest {} )
-	@:overload( function( value : js.html.ArrayBufferView) : FileRequest {} )
+	@:overload( function( value : js.lib.ArrayBuffer) : FileRequest {} )
+	@:overload( function( value : js.lib.ArrayBufferView) : FileRequest {} )
 	@:overload( function( value : js.html.Blob) : FileRequest {} )
 	function append( value : String ) : FileRequest;
 	/** @throws DOMError */

+ 1 - 1
std/js/html/midi/MIDIMessageEvent.hx

@@ -26,7 +26,7 @@ package js.html.midi;
 
 @:native("MIDIMessageEvent")
 extern class MIDIMessageEvent extends js.html.Event {
-	var data(default,null) : js.html.Uint8Array;
+	var data(default,null) : js.lib.Uint8Array;
 	
 	/** @throws DOMError */
 	function new( type : String, ?eventInitDict : MIDIMessageEventInit ) : Void;

+ 1 - 1
std/js/html/midi/MIDIMessageEventInit.hx

@@ -25,5 +25,5 @@
 package js.html.midi;
 
 typedef MIDIMessageEventInit = EventInit & {
-	var ?data : js.html.Uint8Array;
+	var ?data : js.lib.Uint8Array;
 }

+ 1 - 1
std/js/html/push/PushEventInit.hx

@@ -25,5 +25,5 @@
 package js.html.push;
 
 typedef PushEventInit = ExtendableEventInit & {
-	var ?data : haxe.extern.EitherType<haxe.extern.EitherType<js.html.ArrayBufferView,js.html.ArrayBuffer>,String>;
+	var ?data : haxe.extern.EitherType<haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer>,String>;
 }

+ 1 - 1
std/js/html/push/PushMessageData.hx

@@ -38,7 +38,7 @@ extern class PushMessageData {
 		Extracts the data as an `ArrayBuffer` object.
 		@throws DOMError
 	**/
-	function arrayBuffer() : js.html.ArrayBuffer;
+	function arrayBuffer() : js.lib.ArrayBuffer;
 	
 	/**
 		Extracts the data as a `Blob` object.

+ 1 - 1
std/js/html/push/PushSubscription.hx

@@ -51,7 +51,7 @@ extern class PushSubscription {
 		Returns an `ArrayBuffer` which contains the client's public key, which can then be sent to a server and used in encrypting push message data.
 		@throws DOMError
 	**/
-	function getKey( name : PushEncryptionKeyName ) : js.html.ArrayBuffer;
+	function getKey( name : PushEncryptionKeyName ) : js.lib.ArrayBuffer;
 	
 	/**
 		Starts the asynchronous process of unsubscribing from the push service, returning a `Promise` that resolves to a `Boolean` when the current subscription is successfully unregistered.

+ 3 - 3
std/js/html/push/PushSubscriptionInit.hx

@@ -25,9 +25,9 @@
 package js.html.push;
 
 typedef PushSubscriptionInit = {
-	var ?appServerKey : haxe.extern.EitherType<js.html.ArrayBufferView,js.html.ArrayBuffer>;
-	var ?authSecret : js.html.ArrayBuffer;
+	var ?appServerKey : haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer>;
+	var ?authSecret : js.lib.ArrayBuffer;
 	var endpoint : String;
-	var ?p256dhKey : js.html.ArrayBuffer;
+	var ?p256dhKey : js.lib.ArrayBuffer;
 	var scope : String;
 }

+ 1 - 1
std/js/html/push/PushSubscriptionOptions.hx

@@ -26,6 +26,6 @@ package js.html.push;
 
 @:native("PushSubscriptionOptions")
 extern class PushSubscriptionOptions {
-	var applicationServerKey(default,null) : js.html.ArrayBuffer;
+	var applicationServerKey(default,null) : js.lib.ArrayBuffer;
 	
 }

+ 1 - 1
std/js/html/push/PushSubscriptionOptionsInit.hx

@@ -25,5 +25,5 @@
 package js.html.push;
 
 typedef PushSubscriptionOptionsInit = {
-	var ?applicationServerKey : haxe.extern.EitherType<haxe.extern.EitherType<js.html.ArrayBufferView,js.html.ArrayBuffer>,String>;
+	var ?applicationServerKey : haxe.extern.EitherType<haxe.extern.EitherType<js.lib.ArrayBufferView,js.lib.ArrayBuffer>,String>;
 }

+ 2 - 2
std/js/html/rtc/DataChannel.hx

@@ -54,6 +54,6 @@ extern class DataChannel extends js.html.EventTarget {
 	/** @throws DOMError */
 	@:overload( function( data : String ) : Void {} )
 	@:overload( function( data : js.html.Blob ) : Void {} )
-	@:overload( function( data : js.html.ArrayBuffer ) : Void {} )
-	function send( data : js.html.ArrayBufferView ) : Void;
+	@:overload( function( data : js.lib.ArrayBuffer ) : Void {} )
+	function send( data : js.lib.ArrayBufferView ) : Void;
 }

+ 24 - 24
std/js/html/webgl/RenderingContext.hx

@@ -351,36 +351,36 @@ extern class RenderingContext {
 		Updates buffer data.
 	**/
 	@:overload( function( target : Int, size : Int, usage : Int ) : Void {} )
-	@:overload( function( target : Int, data : js.html.ArrayBuffer, usage : Int ) : Void {} )
-	function bufferData( target : Int, data : js.html.ArrayBufferView, usage : Int ) : Void;
+	@:overload( function( target : Int, data : js.lib.ArrayBuffer, usage : Int ) : Void {} )
+	function bufferData( target : Int, data : js.lib.ArrayBufferView, usage : Int ) : Void;
 	
 	/**
 		Updates buffer data starting at a passed offset.
 	**/
-	@:overload( function( target : Int, offset : Int, data : js.html.ArrayBuffer ) : Void {} )
-	function bufferSubData( target : Int, offset : Int, data : js.html.ArrayBufferView ) : Void;
+	@:overload( function( target : Int, offset : Int, data : js.lib.ArrayBuffer ) : Void {} )
+	function bufferSubData( target : Int, offset : Int, data : js.lib.ArrayBufferView ) : Void;
 	
 	/**
 		Specifies a 2D texture image in a compressed format.
 	**/
-	function compressedTexImage2D( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, data : js.html.ArrayBufferView ) : Void;
+	function compressedTexImage2D( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, data : js.lib.ArrayBufferView ) : Void;
 	
 	/**
 		Specifies a 2D texture sub-image in a compressed format.
 	**/
-	function compressedTexSubImage2D( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, data : js.html.ArrayBufferView ) : Void;
+	function compressedTexSubImage2D( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, data : js.lib.ArrayBufferView ) : Void;
 	
 	/**
 		Reads a block of pixels from the `WebGLFrameBuffer`.
 		@throws DOMError
 	**/
-	function readPixels( x : Int, y : Int, width : Int, height : Int, format : Int, type : Int, pixels : js.html.ArrayBufferView ) : Void;
+	function readPixels( x : Int, y : Int, width : Int, height : Int, format : Int, type : Int, pixels : js.lib.ArrayBufferView ) : Void;
 	
 	/**
 		Specifies a 2D texture image.
 		@throws DOMError
 	**/
-	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, format : Int, type : Int, pixels : js.html.ArrayBufferView ) : Void {} )
+	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, format : Int, type : Int, pixels : js.lib.ArrayBufferView ) : Void {} )
 	@:overload( function( target : Int, level : Int, internalformat : Int, format : Int, type : Int, pixels : js.html.ImageBitmap ) : Void {} )
 	@:overload( function( target : Int, level : Int, internalformat : Int, format : Int, type : Int, pixels : js.html.ImageData ) : Void {} )
 	@:overload( function( target : Int, level : Int, internalformat : Int, format : Int, type : Int, image : js.html.ImageElement ) : Void {} )
@@ -391,34 +391,34 @@ extern class RenderingContext {
 		Updates a sub-rectangle of the current `WebGLTexture`.
 		@throws DOMError
 	**/
-	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, type : Int, pixels : js.html.ArrayBufferView ) : Void {} )
+	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, type : Int, pixels : js.lib.ArrayBufferView ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, format : Int, type : Int, pixels : js.html.ImageBitmap ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, format : Int, type : Int, pixels : js.html.ImageData ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, format : Int, type : Int, image : js.html.ImageElement ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, format : Int, type : Int, canvas : js.html.CanvasElement ) : Void {} )
 	function texSubImage2D( target : Int, level : Int, xoffset : Int, yoffset : Int, format : Int, type : Int, video : js.html.VideoElement ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Float>) : Void {} )
-	function uniform1fv( location : UniformLocation, data : js.html.Float32Array ) : Void;
+	function uniform1fv( location : UniformLocation, data : js.lib.Float32Array ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Float>) : Void {} )
-	function uniform2fv( location : UniformLocation, data : js.html.Float32Array ) : Void;
+	function uniform2fv( location : UniformLocation, data : js.lib.Float32Array ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Float>) : Void {} )
-	function uniform3fv( location : UniformLocation, data : js.html.Float32Array ) : Void;
+	function uniform3fv( location : UniformLocation, data : js.lib.Float32Array ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Float>) : Void {} )
-	function uniform4fv( location : UniformLocation, data : js.html.Float32Array ) : Void;
+	function uniform4fv( location : UniformLocation, data : js.lib.Float32Array ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>) : Void {} )
-	function uniform1iv( location : UniformLocation, data : js.html.Int32Array ) : Void;
+	function uniform1iv( location : UniformLocation, data : js.lib.Int32Array ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>) : Void {} )
-	function uniform2iv( location : UniformLocation, data : js.html.Int32Array ) : Void;
+	function uniform2iv( location : UniformLocation, data : js.lib.Int32Array ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>) : Void {} )
-	function uniform3iv( location : UniformLocation, data : js.html.Int32Array ) : Void;
+	function uniform3iv( location : UniformLocation, data : js.lib.Int32Array ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>) : Void {} )
-	function uniform4iv( location : UniformLocation, data : js.html.Int32Array ) : Void;
+	function uniform4iv( location : UniformLocation, data : js.lib.Int32Array ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>) : Void {} )
-	function uniformMatrix2fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array ) : Void;
+	function uniformMatrix2fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>) : Void {} )
-	function uniformMatrix3fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array ) : Void;
+	function uniformMatrix3fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>) : Void {} )
-	function uniformMatrix4fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array ) : Void;
+	function uniformMatrix4fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array ) : Void;
 	
 	/**
 		Returns a `WebGLContextAttributes` object that contains the actual context parameters. Might return `null`, if the context is lost.
@@ -925,16 +925,16 @@ extern class RenderingContext {
 	function validateProgram( program : Program ) : Void;
 	function vertexAttrib1f( indx : Int, x : Float ) : Void;
 	@:overload( function( indx : Int, values : Array<Float>) : Void {} )
-	function vertexAttrib1fv( indx : Int, values : js.html.Float32Array ) : Void;
+	function vertexAttrib1fv( indx : Int, values : js.lib.Float32Array ) : Void;
 	function vertexAttrib2f( indx : Int, x : Float, y : Float ) : Void;
 	@:overload( function( indx : Int, values : Array<Float>) : Void {} )
-	function vertexAttrib2fv( indx : Int, values : js.html.Float32Array ) : Void;
+	function vertexAttrib2fv( indx : Int, values : js.lib.Float32Array ) : Void;
 	function vertexAttrib3f( indx : Int, x : Float, y : Float, z : Float ) : Void;
 	@:overload( function( indx : Int, values : Array<Float>) : Void {} )
-	function vertexAttrib3fv( indx : Int, values : js.html.Float32Array ) : Void;
+	function vertexAttrib3fv( indx : Int, values : js.lib.Float32Array ) : Void;
 	function vertexAttrib4f( indx : Int, x : Float, y : Float, z : Float, w : Float ) : Void;
 	@:overload( function( indx : Int, values : Array<Float>) : Void {} )
-	function vertexAttrib4fv( indx : Int, values : js.html.Float32Array ) : Void;
+	function vertexAttrib4fv( indx : Int, values : js.lib.Float32Array ) : Void;
 	
 	/**
 		Specifies the data formats and locations of vertex attributes in a vertex attributes array.

+ 50 - 50
std/js/html/webgl/WebGL2RenderingContext.hx

@@ -598,16 +598,16 @@ extern class WebGL2RenderingContext extends RenderingContext {
 		Initializes and creates the buffer object's data store.
 	**/
 	@:overload( function( target : Int, size : Int, usage : Int ) : Void {} )
-	@:overload( function( target : Int, srcData : js.html.ArrayBuffer, usage : Int ) : Void {} )
-	@:overload( function( target : Int, srcData : js.html.ArrayBufferView, usage : Int ) : Void {} )
-	function bufferData( target : Int, srcData : js.html.ArrayBufferView, usage : Int, srcOffset : Int, length : Int = 0 ) : Void;
+	@:overload( function( target : Int, srcData : js.lib.ArrayBuffer, usage : Int ) : Void {} )
+	@:overload( function( target : Int, srcData : js.lib.ArrayBufferView, usage : Int ) : Void {} )
+	function bufferData( target : Int, srcData : js.lib.ArrayBufferView, usage : Int, srcOffset : Int, length : Int = 0 ) : Void;
 	
 	/**
 		Updates a subset of a buffer object's data store.
 	**/
-	@:overload( function( target : Int, offset : Int, srcData : js.html.ArrayBuffer ) : Void {} )
-	@:overload( function( target : Int, offset : Int, srcData : js.html.ArrayBufferView ) : Void {} )
-	function bufferSubData( target : Int, dstByteOffset : Int, srcData : js.html.ArrayBufferView, srcOffset : Int, length : Int = 0 ) : Void;
+	@:overload( function( target : Int, offset : Int, srcData : js.lib.ArrayBuffer ) : Void {} )
+	@:overload( function( target : Int, offset : Int, srcData : js.lib.ArrayBufferView ) : Void {} )
+	function bufferSubData( target : Int, dstByteOffset : Int, srcData : js.lib.ArrayBufferView, srcOffset : Int, length : Int = 0 ) : Void;
 	
 	/**
 		Copies part of the data of a buffer to another buffer.
@@ -617,7 +617,7 @@ extern class WebGL2RenderingContext extends RenderingContext {
 	/**
 		Reads data from a buffer and writes them to an `ArrayBuffer` or `SharedArrayBuffer`.
 	**/
-	function getBufferSubData( target : Int, srcByteOffset : Int, dstData : js.html.ArrayBufferView, dstOffset : Int = 0, length : Int = 0 ) : Void;
+	function getBufferSubData( target : Int, srcByteOffset : Int, dstData : js.lib.ArrayBufferView, dstOffset : Int = 0, length : Int = 0 ) : Void;
 	
 	/**
 		Transfers a block of pixels from the read framebuffer to the draw framebuffer.
@@ -667,7 +667,7 @@ extern class WebGL2RenderingContext extends RenderingContext {
 	**/
 	function texStorage3D( target : Int, levels : Int, internalformat : Int, width : Int, height : Int, depth : Int ) : Void;
 	/** @throws DOMError */
-	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, format : Int, type : Int, pixels : js.html.ArrayBufferView ) : Void {} )
+	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, format : Int, type : Int, pixels : js.lib.ArrayBufferView ) : Void {} )
 	@:overload( function( target : Int, level : Int, internalformat : Int, format : Int, type : Int, source : js.html.CanvasElement ) : Void {} )
 	@:overload( function( target : Int, level : Int, internalformat : Int, format : Int, type : Int, source : js.html.ImageElement ) : Void {} )
 	@:overload( function( target : Int, level : Int, internalformat : Int, format : Int, type : Int, source : js.html.VideoElement ) : Void {} )
@@ -679,9 +679,9 @@ extern class WebGL2RenderingContext extends RenderingContext {
 	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, format : Int, type : Int, source : js.html.VideoElement ) : Void {} )
 	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, format : Int, type : Int, source : js.html.ImageBitmap ) : Void {} )
 	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, format : Int, type : Int, source : js.html.ImageData ) : Void {} )
-	function texImage2D( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, format : Int, type : Int, srcData : js.html.ArrayBufferView, srcOffset : Int ) : Void;
+	function texImage2D( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, format : Int, type : Int, srcData : js.lib.ArrayBufferView, srcOffset : Int ) : Void;
 	/** @throws DOMError */
-	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, type : Int, pixels : js.html.ArrayBufferView ) : Void {} )
+	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, type : Int, pixels : js.lib.ArrayBufferView ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, format : Int, type : Int, source : js.html.CanvasElement ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, format : Int, type : Int, source : js.html.ImageElement ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, format : Int, type : Int, source : js.html.VideoElement ) : Void {} )
@@ -693,7 +693,7 @@ extern class WebGL2RenderingContext extends RenderingContext {
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, type : Int, source : js.html.VideoElement ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, type : Int, source : js.html.ImageBitmap ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, type : Int, source : js.html.ImageData ) : Void {} )
-	function texSubImage2D( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, type : Int, srcData : js.html.ArrayBufferView, srcOffset : Int ) : Void;
+	function texSubImage2D( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, type : Int, srcData : js.lib.ArrayBufferView, srcOffset : Int ) : Void;
 	
 	/**
 		Specifies a three-dimensional texture image.
@@ -705,8 +705,8 @@ extern class WebGL2RenderingContext extends RenderingContext {
 	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, depth : Int, border : Int, format : Int, type : Int, source : js.html.VideoElement ) : Void {} )
 	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, depth : Int, border : Int, format : Int, type : Int, source : js.html.ImageBitmap ) : Void {} )
 	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, depth : Int, border : Int, format : Int, type : Int, source : js.html.ImageData ) : Void {} )
-	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, depth : Int, border : Int, format : Int, type : Int, srcData : js.html.ArrayBufferView ) : Void {} )
-	function texImage3D( target : Int, level : Int, internalformat : Int, width : Int, height : Int, depth : Int, border : Int, format : Int, type : Int, srcData : js.html.ArrayBufferView, srcOffset : Int ) : Void;
+	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, depth : Int, border : Int, format : Int, type : Int, srcData : js.lib.ArrayBufferView ) : Void {} )
+	function texImage3D( target : Int, level : Int, internalformat : Int, width : Int, height : Int, depth : Int, border : Int, format : Int, type : Int, srcData : js.lib.ArrayBufferView, srcOffset : Int ) : Void;
 	
 	/**
 		Specifies a sub-rectangle of the current 3D texture.
@@ -718,28 +718,28 @@ extern class WebGL2RenderingContext extends RenderingContext {
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, zoffset : Int, width : Int, height : Int, depth : Int, format : Int, type : Int, source : js.html.VideoElement ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, zoffset : Int, width : Int, height : Int, depth : Int, format : Int, type : Int, source : js.html.ImageBitmap ) : Void {} )
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, zoffset : Int, width : Int, height : Int, depth : Int, format : Int, type : Int, source : js.html.ImageData ) : Void {} )
-	function texSubImage3D( target : Int, level : Int, xoffset : Int, yoffset : Int, zoffset : Int, width : Int, height : Int, depth : Int, format : Int, type : Int, srcData : js.html.ArrayBufferView, srcOffset : Int = 0 ) : Void;
+	function texSubImage3D( target : Int, level : Int, xoffset : Int, yoffset : Int, zoffset : Int, width : Int, height : Int, depth : Int, format : Int, type : Int, srcData : js.lib.ArrayBufferView, srcOffset : Int = 0 ) : Void;
 	
 	/**
 		Copies pixels from the current `WebGLFramebuffer` into an existing 3D texture sub-image.
 	**/
 	function copyTexSubImage3D( target : Int, level : Int, xoffset : Int, yoffset : Int, zoffset : Int, x : Int, y : Int, width : Int, height : Int ) : Void;
 	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, imageSize : Int, offset : Int ) : Void {} )
-	function compressedTexImage2D( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, srcData : js.html.ArrayBufferView, srcOffset : Int = 0, srcLengthOverride : Int = 0 ) : Void;
+	function compressedTexImage2D( target : Int, level : Int, internalformat : Int, width : Int, height : Int, border : Int, srcData : js.lib.ArrayBufferView, srcOffset : Int = 0, srcLengthOverride : Int = 0 ) : Void;
 	
 	/**
 		Specifies a three-dimensional texture image in a compressed format.
 	**/
 	@:overload( function( target : Int, level : Int, internalformat : Int, width : Int, height : Int, depth : Int, border : Int, imageSize : Int, offset : Int ) : Void {} )
-	function compressedTexImage3D( target : Int, level : Int, internalformat : Int, width : Int, height : Int, depth : Int, border : Int, srcData : js.html.ArrayBufferView, srcOffset : Int = 0, srcLengthOverride : Int = 0 ) : Void;
+	function compressedTexImage3D( target : Int, level : Int, internalformat : Int, width : Int, height : Int, depth : Int, border : Int, srcData : js.lib.ArrayBufferView, srcOffset : Int = 0, srcLengthOverride : Int = 0 ) : Void;
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, imageSize : Int, offset : Int ) : Void {} )
-	function compressedTexSubImage2D( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, srcData : js.html.ArrayBufferView, srcOffset : Int = 0, srcLengthOverride : Int = 0 ) : Void;
+	function compressedTexSubImage2D( target : Int, level : Int, xoffset : Int, yoffset : Int, width : Int, height : Int, format : Int, srcData : js.lib.ArrayBufferView, srcOffset : Int = 0, srcLengthOverride : Int = 0 ) : Void;
 	
 	/**
 		Specifies a three-dimensional sub-rectangle for a texture image in a compressed format.
 	**/
 	@:overload( function( target : Int, level : Int, xoffset : Int, yoffset : Int, zoffset : Int, width : Int, height : Int, depth : Int, format : Int, imageSize : Int, offset : Int ) : Void {} )
-	function compressedTexSubImage3D( target : Int, level : Int, xoffset : Int, yoffset : Int, zoffset : Int, width : Int, height : Int, depth : Int, format : Int, srcData : js.html.ArrayBufferView, srcOffset : Int = 0, srcLengthOverride : Int = 0 ) : Void;
+	function compressedTexSubImage3D( target : Int, level : Int, xoffset : Int, yoffset : Int, zoffset : Int, width : Int, height : Int, depth : Int, format : Int, srcData : js.lib.ArrayBufferView, srcOffset : Int = 0, srcLengthOverride : Int = 0 ) : Void;
 	
 	/**
 		Returns the binding of color numbers to user-defined varying out variables.
@@ -750,53 +750,53 @@ extern class WebGL2RenderingContext extends RenderingContext {
 	function uniform3ui( location : UniformLocation, v0 : Int, v1 : Int, v2 : Int ) : Void;
 	function uniform4ui( location : UniformLocation, v0 : Int, v1 : Int, v2 : Int, v3 : Int ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform1fv( location : UniformLocation, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform1fv( location : UniformLocation, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform2fv( location : UniformLocation, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform2fv( location : UniformLocation, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform3fv( location : UniformLocation, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform3fv( location : UniformLocation, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform4fv( location : UniformLocation, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform4fv( location : UniformLocation, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform1iv( location : UniformLocation, data : js.html.Int32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform1iv( location : UniformLocation, data : js.lib.Int32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform2iv( location : UniformLocation, data : js.html.Int32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform2iv( location : UniformLocation, data : js.lib.Int32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform3iv( location : UniformLocation, data : js.html.Int32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform3iv( location : UniformLocation, data : js.lib.Int32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform4iv( location : UniformLocation, data : js.html.Int32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform4iv( location : UniformLocation, data : js.lib.Int32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform1uiv( location : UniformLocation, data : js.html.Uint32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform1uiv( location : UniformLocation, data : js.lib.Uint32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform2uiv( location : UniformLocation, data : js.html.Uint32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform2uiv( location : UniformLocation, data : js.lib.Uint32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform3uiv( location : UniformLocation, data : js.html.Uint32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform3uiv( location : UniformLocation, data : js.lib.Uint32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, data : Array<Int>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniform4uiv( location : UniformLocation, data : js.html.Uint32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniform4uiv( location : UniformLocation, data : js.lib.Uint32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniformMatrix2fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniformMatrix2fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniformMatrix3x2fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniformMatrix3x2fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniformMatrix4x2fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniformMatrix4x2fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniformMatrix2x3fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniformMatrix2x3fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniformMatrix3fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniformMatrix3fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniformMatrix4x3fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniformMatrix4x3fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniformMatrix2x4fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniformMatrix2x4fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniformMatrix3x4fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniformMatrix3x4fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	@:overload( function( location : UniformLocation, transpose : Bool, data : Array<Float>, srcOffset : Int = 0, srcLength : Int = 0) : Void {} )
-	function uniformMatrix4fv( location : UniformLocation, transpose : Bool, data : js.html.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
+	function uniformMatrix4fv( location : UniformLocation, transpose : Bool, data : js.lib.Float32Array, srcOffset : Int = 0, srcLength : Int = 0 ) : Void;
 	function vertexAttribI4i( index : Int, x : Int, y : Int, z : Int, w : Int ) : Void;
 	@:overload( function( index : Int, values : Array<Int>) : Void {} )
-	function vertexAttribI4iv( index : Int, values : js.html.Int32Array ) : Void;
+	function vertexAttribI4iv( index : Int, values : js.lib.Int32Array ) : Void;
 	function vertexAttribI4ui( index : Int, x : Int, y : Int, z : Int, w : Int ) : Void;
 	@:overload( function( index : Int, values : Array<Int>) : Void {} )
-	function vertexAttribI4uiv( index : Int, values : js.html.Uint32Array ) : Void;
+	function vertexAttribI4uiv( index : Int, values : js.lib.Uint32Array ) : Void;
 	
 	/**
 		Specifies integer data formats and locations of vertex attributes in a vertex attributes array.
@@ -823,20 +823,20 @@ extern class WebGL2RenderingContext extends RenderingContext {
 	**/
 	function drawRangeElements( mode : Int, start : Int, end : Int, count : Int, type : Int, offset : Int ) : Void;
 	/** @throws DOMError */
-	@:overload( function( x : Int, y : Int, width : Int, height : Int, format : Int, type : Int, dstData : js.html.ArrayBufferView ) : Void {} )
+	@:overload( function( x : Int, y : Int, width : Int, height : Int, format : Int, type : Int, dstData : js.lib.ArrayBufferView ) : Void {} )
 	@:overload( function( x : Int, y : Int, width : Int, height : Int, format : Int, type : Int, offset : Int ) : Void {} )
-	function readPixels( x : Int, y : Int, width : Int, height : Int, format : Int, type : Int, dstData : js.html.ArrayBufferView, dstOffset : Int ) : Void;
+	function readPixels( x : Int, y : Int, width : Int, height : Int, format : Int, type : Int, dstData : js.lib.ArrayBufferView, dstOffset : Int ) : Void;
 	
 	/**
 		Specifies a list of color buffers to be drawn into.
 	**/
 	function drawBuffers( buffers : Array<Int> ) : Void;
 	@:overload( function( buffer : Int, drawbuffer : Int, values : Array<Float>, srcOffset : Int = 0) : Void {} )
-	function clearBufferfv( buffer : Int, drawbuffer : Int, values : js.html.Float32Array, srcOffset : Int = 0 ) : Void;
+	function clearBufferfv( buffer : Int, drawbuffer : Int, values : js.lib.Float32Array, srcOffset : Int = 0 ) : Void;
 	@:overload( function( buffer : Int, drawbuffer : Int, values : Array<Int>, srcOffset : Int = 0) : Void {} )
-	function clearBufferiv( buffer : Int, drawbuffer : Int, values : js.html.Int32Array, srcOffset : Int = 0 ) : Void;
+	function clearBufferiv( buffer : Int, drawbuffer : Int, values : js.lib.Int32Array, srcOffset : Int = 0 ) : Void;
 	@:overload( function( buffer : Int, drawbuffer : Int, values : Array<Int>, srcOffset : Int = 0) : Void {} )
-	function clearBufferuiv( buffer : Int, drawbuffer : Int, values : js.html.Uint32Array, srcOffset : Int = 0 ) : Void;
+	function clearBufferuiv( buffer : Int, drawbuffer : Int, values : js.lib.Uint32Array, srcOffset : Int = 0 ) : Void;
 	function clearBufferfi( buffer : Int, drawbuffer : Int, depth : Float, stencil : Int ) : Void;
 	
 	/**
@@ -1165,16 +1165,16 @@ extern class WebGL2RenderingContext extends RenderingContext {
 	function validateProgram( program : Program ) : Void;
 	function vertexAttrib1f( indx : Int, x : Float ) : Void;
 	@:overload( function( indx : Int, values : Array<Float>) : Void {} )
-	function vertexAttrib1fv( indx : Int, values : js.html.Float32Array ) : Void;
+	function vertexAttrib1fv( indx : Int, values : js.lib.Float32Array ) : Void;
 	function vertexAttrib2f( indx : Int, x : Float, y : Float ) : Void;
 	@:overload( function( indx : Int, values : Array<Float>) : Void {} )
-	function vertexAttrib2fv( indx : Int, values : js.html.Float32Array ) : Void;
+	function vertexAttrib2fv( indx : Int, values : js.lib.Float32Array ) : Void;
 	function vertexAttrib3f( indx : Int, x : Float, y : Float, z : Float ) : Void;
 	@:overload( function( indx : Int, values : Array<Float>) : Void {} )
-	function vertexAttrib3fv( indx : Int, values : js.html.Float32Array ) : Void;
+	function vertexAttrib3fv( indx : Int, values : js.lib.Float32Array ) : Void;
 	function vertexAttrib4f( indx : Int, x : Float, y : Float, z : Float, w : Float ) : Void;
 	@:overload( function( indx : Int, values : Array<Float>) : Void {} )
-	function vertexAttrib4fv( indx : Int, values : js.html.Float32Array ) : Void;
+	function vertexAttrib4fv( indx : Int, values : js.lib.Float32Array ) : Void;
 	function vertexAttribPointer( indx : Int, size : Int, type : Int, normalized : Bool, stride : Int, offset : Int ) : Void;
 	function viewport( x : Int, y : Int, width : Int, height : Int ) : Void;
 }

+ 54 - 0
std/js/lib/ArrayBuffer.hx

@@ -0,0 +1,54 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("ArrayBuffer")
+extern class ArrayBuffer {
+	static function isView( value : Dynamic ) : Bool;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	function new( length : Int ) : Void;
+	function slice( begin : Int, ?end : Int ) : ArrayBuffer;
+}
+
+#if (js_es <= 5)
+@:ifFeature('js.lib.ArrayBuffer.slice')
+private class ArrayBufferCompat {
+
+	static function sliceImpl(begin, ?end) {	
+		var u = new js.lib.Uint8Array(js.Lib.nativeThis, begin, end == null ? null : (end - begin));
+		var resultArray = new js.lib.Uint8Array(u.byteLength);	
+		resultArray.set(u);	
+		return resultArray.buffer;
+	}
+
+	static function __init__(): Void untyped {
+		// IE10 ArrayBuffer.slice polyfill
+		if( __js__("ArrayBuffer").prototype.slice == null ) __js__("ArrayBuffer").prototype.slice = sliceImpl;
+	}
+
+}
+#end

+ 39 - 0
std/js/lib/ArrayBufferView.hx

@@ -0,0 +1,39 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+/**
+	`ArrayBufferView` is a helper type representing any of the following JavaScript `TypedArray` types:
+
+	Documentation [ArrayBufferView](https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView) by [Mozilla Contributors](https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView$history), licensed under [CC-BY-SA 2.5](https://creativecommons.org/licenses/by-sa/2.5/).
+
+	@see <https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView>
+**/
+extern interface ArrayBufferView {
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+}

+ 59 - 0
std/js/lib/DataView.hx

@@ -0,0 +1,59 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("DataView")
+extern class DataView implements ArrayBufferView {
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?byteLength : Int ) : Void;
+	@:pure
+	function getInt8( byteOffset : Int ) : Int;
+	@:pure
+	function getUint8( byteOffset : Int ) : Int;
+	@:pure
+	function getInt16( byteOffset : Int, ?littleEndian : Bool ) : Int;
+	@:pure
+	function getUint16( byteOffset : Int, ?littleEndian : Bool ) : Int;
+	@:pure
+	function getInt32( byteOffset : Int, ?littleEndian : Bool ) : Int;
+	@:pure
+	function getUint32( byteOffset : Int, ?littleEndian : Bool ) : Int;
+	@:pure
+	function getFloat32( byteOffset : Int, ?littleEndian : Bool ) : Float;
+	@:pure
+	function getFloat64( byteOffset : Int, ?littleEndian : Bool ) : Float;
+	function setInt8( byteOffset : Int, value : Int ) : Void;
+	function setUint8( byteOffset : Int, value : Int ) : Void;
+	function setInt16( byteOffset : Int, value : Int, ?littleEndian : Bool ) : Void;
+	function setUint16( byteOffset : Int, value : Int, ?littleEndian : Bool ) : Void;
+	function setInt32( byteOffset : Int, value : Int, ?littleEndian : Bool ) : Void;
+	function setUint32( byteOffset : Int, value : Int, ?littleEndian : Bool ) : Void;
+	function setFloat32( byteOffset : Int, value : Float, ?littleEndian : Bool ) : Void;
+	function setFloat64( byteOffset : Int, value : Float, ?littleEndian : Bool ) : Void;
+}

+ 69 - 0
std/js/lib/Float32Array.hx

@@ -0,0 +1,69 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("Float32Array")
+extern class Float32Array implements ArrayBufferView implements ArrayAccess<Float> {
+	static inline var BYTES_PER_ELEMENT : Int = 4;
+	
+	@:pure
+	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Float32Array;
+	@:pure
+	static function from( source : Array<Float>, ?mapFn : Float -> Float -> Float, ?thisArg : Dynamic ) : Float32Array;
+	@:native("BYTES_PER_ELEMENT")
+	var BYTES_PER_ELEMENT_(default,null) : Int;
+	var length(default,null) : Int;
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	@:overload( function( length : Int ) : Void {} )
+	@:overload( function( array : Float32Array ) : Void {} )
+	@:overload( function( array : Array<Float> ) : Void {} )
+	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
+	@:overload( function( array : Float32Array, ?offset : Int ) : Void {} )
+	function set( array : Array<Float>, ?offset : Int ) : Void;
+	function copyWithin( target : Int, start : Int, ?end : Int ) : Float32Array;
+	function every( callback : Float -> Int -> Float32Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function fill( value : Float, ?start : Int, ?end : Int ) : Float32Array;
+	function filter( callbackfn : Float -> Int -> Float32Array -> Dynamic, ?thisArg : Dynamic ) : Float32Array;
+	function find( predicate : Float -> Int -> Float32Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
+	function findIndex( predicate : Float -> Int -> Float32Array -> Bool, ?thisArg : Dynamic ) : Int;
+	function forEach( callbackfn : Float -> Int -> Float32Array -> Void, ?thisArg : Dynamic ) : Void;
+	function indexOf( searchElement : Float, ?fromIndex : Int ) : Int;
+	function join( ?separator : String ) : String;
+	function lastIndexOf( searchElement : Float, ?fromIndex : Int ) : Int;
+	function map( callbackfn : Float -> Int -> Float32Array -> Float, ?thisArg : Dynamic ) : Float32Array;
+	@:overload( function( callbackfn : Float -> Float -> Int -> Float32Array -> Float ) : Int {} )
+	function reduce( callbackfn : Dynamic -> Float -> Int -> Float32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	@:overload( function( callbackfn : Float -> Float -> Int -> Float32Array -> Float ) : Int {} )
+	function reduceRight( callbackfn : Dynamic -> Float -> Int -> Float32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	function reverse() : Float32Array;
+	function slice( ?start : Int, ?end : Int ) : Float32Array;
+	function some( callbackfn : Float -> Int -> Float32Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function sort( ?compareFn : Float -> Float -> Int ) : Float32Array;
+	function subarray( begin : Int, ?end : Int ) : Float32Array;
+}

+ 69 - 0
std/js/lib/Float64Array.hx

@@ -0,0 +1,69 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("Float64Array")
+extern class Float64Array implements ArrayBufferView implements ArrayAccess<Float> {
+	static inline var BYTES_PER_ELEMENT : Int = 8;
+	
+	@:pure
+	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Float64Array;
+	@:pure
+	static function from( source : Array<Float>, ?mapFn : Float -> Float -> Float, ?thisArg : Dynamic ) : Float64Array;
+	@:native("BYTES_PER_ELEMENT")
+	var BYTES_PER_ELEMENT_(default,null) : Int;
+	var length(default,null) : Int;
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	@:overload( function( length : Int ) : Void {} )
+	@:overload( function( array : Float64Array ) : Void {} )
+	@:overload( function( array : Array<Float> ) : Void {} )
+	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
+	@:overload( function( array : Float64Array, ?offset : Int ) : Void {} )
+	function set( array : Array<Float>, ?offset : Int ) : Void;
+	function copyWithin( target : Int, start : Int, ?end : Int ) : Float64Array;
+	function every( callback : Float -> Int -> Float64Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function fill( value : Float, ?start : Int, ?end : Int ) : Float64Array;
+	function filter( callbackfn : Float -> Int -> Float64Array -> Dynamic, ?thisArg : Dynamic ) : Float64Array;
+	function find( predicate : Float -> Int -> Float64Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
+	function findIndex( predicate : Float -> Int -> Float64Array -> Bool, ?thisArg : Dynamic ) : Int;
+	function forEach( callbackfn : Float -> Int -> Float64Array -> Void, ?thisArg : Dynamic ) : Void;
+	function indexOf( searchElement : Float, ?fromIndex : Int ) : Int;
+	function join( ?separator : String ) : String;
+	function lastIndexOf( searchElement : Float, ?fromIndex : Int ) : Int;
+	function map( callbackfn : Float -> Int -> Float64Array -> Float, ?thisArg : Dynamic ) : Float64Array;
+	@:overload( function( callbackfn : Float -> Float -> Int -> Float64Array -> Float ) : Int {} )
+	function reduce( callbackfn : Dynamic -> Float -> Int -> Float64Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	@:overload( function( callbackfn : Float -> Float -> Int -> Float64Array -> Float ) : Int {} )
+	function reduceRight( callbackfn : Dynamic -> Float -> Int -> Float64Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	function reverse() : Float64Array;
+	function slice( ?start : Int, ?end : Int ) : Float64Array;
+	function some( callbackfn : Float -> Int -> Float64Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function sort( ?compareFn : Float -> Float -> Int ) : Float64Array;
+	function subarray( begin : Int, ?end : Int ) : Float64Array;
+}

+ 69 - 0
std/js/lib/Int16Array.hx

@@ -0,0 +1,69 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("Int16Array")
+extern class Int16Array implements ArrayBufferView implements ArrayAccess<Int> {
+	static inline var BYTES_PER_ELEMENT : Int = 2;
+	
+	@:pure
+	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Int16Array;
+	@:pure
+	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Int16Array;
+	@:native("BYTES_PER_ELEMENT")
+	var BYTES_PER_ELEMENT_(default,null) : Int;
+	var length(default,null) : Int;
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	@:overload( function( length : Int ) : Void {} )
+	@:overload( function( array : Int16Array ) : Void {} )
+	@:overload( function( array : Array<Int> ) : Void {} )
+	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
+	@:overload( function( array : Int16Array, ?offset : Int ) : Void {} )
+	function set( array : Array<Int>, ?offset : Int ) : Void;
+	function copyWithin( target : Int, start : Int, ?end : Int ) : Int16Array;
+	function every( callback : Int -> Int -> Int16Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function fill( value : Int, ?start : Int, ?end : Int ) : Int16Array;
+	function filter( callbackfn : Int -> Int -> Int16Array -> Dynamic, ?thisArg : Dynamic ) : Int16Array;
+	function find( predicate : Int -> Int -> Int16Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
+	function findIndex( predicate : Int -> Int -> Int16Array -> Bool, ?thisArg : Dynamic ) : Int;
+	function forEach( callbackfn : Int -> Int -> Int16Array -> Void, ?thisArg : Dynamic ) : Void;
+	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function join( ?separator : String ) : String;
+	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function map( callbackfn : Int -> Int -> Int16Array -> Int, ?thisArg : Dynamic ) : Int16Array;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Int16Array -> Int ) : Int {} )
+	function reduce( callbackfn : Dynamic -> Int -> Int -> Int16Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Int16Array -> Int ) : Int {} )
+	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Int16Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	function reverse() : Int16Array;
+	function slice( ?start : Int, ?end : Int ) : Int16Array;
+	function some( callbackfn : Int -> Int -> Int16Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function sort( ?compareFn : Int -> Int -> Int ) : Int16Array;
+	function subarray( begin : Int, ?end : Int ) : Int16Array;
+}

+ 69 - 0
std/js/lib/Int32Array.hx

@@ -0,0 +1,69 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("Int32Array")
+extern class Int32Array implements ArrayBufferView implements ArrayAccess<Int> {
+	static inline var BYTES_PER_ELEMENT : Int = 4;
+	
+	@:pure
+	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Int32Array;
+	@:pure
+	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Int32Array;
+	@:native("BYTES_PER_ELEMENT")
+	var BYTES_PER_ELEMENT_(default,null) : Int;
+	var length(default,null) : Int;
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	@:overload( function( length : Int ) : Void {} )
+	@:overload( function( array : Int32Array ) : Void {} )
+	@:overload( function( array : Array<Int> ) : Void {} )
+	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
+	@:overload( function( array : Int32Array, ?offset : Int ) : Void {} )
+	function set( array : Array<Int>, ?offset : Int ) : Void;
+	function copyWithin( target : Int, start : Int, ?end : Int ) : Int32Array;
+	function every( callback : Int -> Int -> Int32Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function fill( value : Int, ?start : Int, ?end : Int ) : Int32Array;
+	function filter( callbackfn : Int -> Int -> Int32Array -> Dynamic, ?thisArg : Dynamic ) : Int32Array;
+	function find( predicate : Int -> Int -> Int32Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
+	function findIndex( predicate : Int -> Int -> Int32Array -> Bool, ?thisArg : Dynamic ) : Int;
+	function forEach( callbackfn : Int -> Int -> Int32Array -> Void, ?thisArg : Dynamic ) : Void;
+	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function join( ?separator : String ) : String;
+	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function map( callbackfn : Int -> Int -> Int32Array -> Int, ?thisArg : Dynamic ) : Int32Array;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Int32Array -> Int ) : Int {} )
+	function reduce( callbackfn : Dynamic -> Int -> Int -> Int32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Int32Array -> Int ) : Int {} )
+	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Int32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	function reverse() : Int32Array;
+	function slice( ?start : Int, ?end : Int ) : Int32Array;
+	function some( callbackfn : Int -> Int -> Int32Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function sort( ?compareFn : Int -> Int -> Int ) : Int32Array;
+	function subarray( begin : Int, ?end : Int ) : Int32Array;
+}

+ 69 - 0
std/js/lib/Int8Array.hx

@@ -0,0 +1,69 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("Int8Array")
+extern class Int8Array implements ArrayBufferView implements ArrayAccess<Int> {
+	static inline var BYTES_PER_ELEMENT : Int = 1;
+	
+	@:pure
+	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Int8Array;
+	@:pure
+	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Int8Array;
+	@:native("BYTES_PER_ELEMENT")
+	var BYTES_PER_ELEMENT_(default,null) : Int;
+	var length(default,null) : Int;
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	@:overload( function( length : Int ) : Void {} )
+	@:overload( function( array : Int8Array ) : Void {} )
+	@:overload( function( array : Array<Int> ) : Void {} )
+	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
+	@:overload( function( array : Int8Array, ?offset : Int ) : Void {} )
+	function set( array : Array<Int>, ?offset : Int ) : Void;
+	function copyWithin( target : Int, start : Int, ?end : Int ) : Int8Array;
+	function every( callback : Int -> Int -> Int8Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function fill( value : Int, ?start : Int, ?end : Int ) : Int8Array;
+	function filter( callbackfn : Int -> Int -> Int8Array -> Dynamic, ?thisArg : Dynamic ) : Int8Array;
+	function find( predicate : Int -> Int -> Int8Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
+	function findIndex( predicate : Int -> Int -> Int8Array -> Bool, ?thisArg : Dynamic ) : Int;
+	function forEach( callbackfn : Int -> Int -> Int8Array -> Void, ?thisArg : Dynamic ) : Void;
+	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function join( ?separator : String ) : String;
+	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function map( callbackfn : Int -> Int -> Int8Array -> Int, ?thisArg : Dynamic ) : Int8Array;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Int8Array -> Int ) : Int {} )
+	function reduce( callbackfn : Dynamic -> Int -> Int -> Int8Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Int8Array -> Int ) : Int {} )
+	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Int8Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	function reverse() : Int8Array;
+	function slice( ?start : Int, ?end : Int ) : Int8Array;
+	function some( callbackfn : Int -> Int -> Int8Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function sort( ?compareFn : Int -> Int -> Int ) : Int8Array;
+	function subarray( begin : Int, ?end : Int ) : Int8Array;
+}

+ 69 - 0
std/js/lib/Uint16Array.hx

@@ -0,0 +1,69 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("Uint16Array")
+extern class Uint16Array implements ArrayBufferView implements ArrayAccess<Int> {
+	static inline var BYTES_PER_ELEMENT : Int = 2;
+	
+	@:pure
+	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Uint16Array;
+	@:pure
+	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Uint16Array;
+	@:native("BYTES_PER_ELEMENT")
+	var BYTES_PER_ELEMENT_(default,null) : Int;
+	var length(default,null) : Int;
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	@:overload( function( length : Int ) : Void {} )
+	@:overload( function( array : Uint16Array ) : Void {} )
+	@:overload( function( array : Array<Int> ) : Void {} )
+	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
+	@:overload( function( array : Uint16Array, ?offset : Int ) : Void {} )
+	function set( array : Array<Int>, ?offset : Int ) : Void;
+	function copyWithin( target : Int, start : Int, ?end : Int ) : Uint16Array;
+	function every( callback : Int -> Int -> Uint16Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function fill( value : Int, ?start : Int, ?end : Int ) : Uint16Array;
+	function filter( callbackfn : Int -> Int -> Uint16Array -> Dynamic, ?thisArg : Dynamic ) : Uint16Array;
+	function find( predicate : Int -> Int -> Uint16Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
+	function findIndex( predicate : Int -> Int -> Uint16Array -> Bool, ?thisArg : Dynamic ) : Int;
+	function forEach( callbackfn : Int -> Int -> Uint16Array -> Void, ?thisArg : Dynamic ) : Void;
+	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function join( ?separator : String ) : String;
+	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function map( callbackfn : Int -> Int -> Uint16Array -> Int, ?thisArg : Dynamic ) : Uint16Array;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Uint16Array -> Int ) : Int {} )
+	function reduce( callbackfn : Dynamic -> Int -> Int -> Uint16Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Uint16Array -> Int ) : Int {} )
+	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Uint16Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	function reverse() : Uint16Array;
+	function slice( ?start : Int, ?end : Int ) : Uint16Array;
+	function some( callbackfn : Int -> Int -> Uint16Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function sort( ?compareFn : Int -> Int -> Int ) : Uint16Array;
+	function subarray( begin : Int, ?end : Int ) : Uint16Array;
+}

+ 69 - 0
std/js/lib/Uint32Array.hx

@@ -0,0 +1,69 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("Uint32Array")
+extern class Uint32Array implements ArrayBufferView implements ArrayAccess<Int> {
+	static inline var BYTES_PER_ELEMENT : Int = 4;
+	
+	@:pure
+	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Uint32Array;
+	@:pure
+	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Uint32Array;
+	@:native("BYTES_PER_ELEMENT")
+	var BYTES_PER_ELEMENT_(default,null) : Int;
+	var length(default,null) : Int;
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	@:overload( function( length : Int ) : Void {} )
+	@:overload( function( array : Uint32Array ) : Void {} )
+	@:overload( function( array : Array<Int> ) : Void {} )
+	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
+	@:overload( function( array : Uint32Array, ?offset : Int ) : Void {} )
+	function set( array : Array<Int>, ?offset : Int ) : Void;
+	function copyWithin( target : Int, start : Int, ?end : Int ) : Uint32Array;
+	function every( callback : Int -> Int -> Uint32Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function fill( value : Int, ?start : Int, ?end : Int ) : Uint32Array;
+	function filter( callbackfn : Int -> Int -> Uint32Array -> Dynamic, ?thisArg : Dynamic ) : Uint32Array;
+	function find( predicate : Int -> Int -> Uint32Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
+	function findIndex( predicate : Int -> Int -> Uint32Array -> Bool, ?thisArg : Dynamic ) : Int;
+	function forEach( callbackfn : Int -> Int -> Uint32Array -> Void, ?thisArg : Dynamic ) : Void;
+	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function join( ?separator : String ) : String;
+	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function map( callbackfn : Int -> Int -> Uint32Array -> Int, ?thisArg : Dynamic ) : Uint32Array;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Uint32Array -> Int ) : Int {} )
+	function reduce( callbackfn : Dynamic -> Int -> Int -> Uint32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Uint32Array -> Int ) : Int {} )
+	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Uint32Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	function reverse() : Uint32Array;
+	function slice( ?start : Int, ?end : Int ) : Uint32Array;
+	function some( callbackfn : Int -> Int -> Uint32Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function sort( ?compareFn : Int -> Int -> Int ) : Uint32Array;
+	function subarray( begin : Int, ?end : Int ) : Uint32Array;
+}

+ 69 - 0
std/js/lib/Uint8Array.hx

@@ -0,0 +1,69 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("Uint8Array")
+extern class Uint8Array implements ArrayBufferView implements ArrayAccess<Int> {
+	static inline var BYTES_PER_ELEMENT : Int = 1;
+	
+	@:pure
+	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Uint8Array;
+	@:pure
+	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Uint8Array;
+	@:native("BYTES_PER_ELEMENT")
+	var BYTES_PER_ELEMENT_(default,null) : Int;
+	var length(default,null) : Int;
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	@:overload( function( length : Int ) : Void {} )
+	@:overload( function( array : Uint8Array ) : Void {} )
+	@:overload( function( array : Array<Int> ) : Void {} )
+	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
+	@:overload( function( array : Uint8Array, ?offset : Int ) : Void {} )
+	function set( array : Array<Int>, ?offset : Int ) : Void;
+	function copyWithin( target : Int, start : Int, ?end : Int ) : Uint8Array;
+	function every( callback : Int -> Int -> Uint8Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function fill( value : Int, ?start : Int, ?end : Int ) : Uint8Array;
+	function filter( callbackfn : Int -> Int -> Uint8Array -> Dynamic, ?thisArg : Dynamic ) : Uint8Array;
+	function find( predicate : Int -> Int -> Uint8Array -> Bool, ?thisArg : Dynamic ) : Dynamic;
+	function findIndex( predicate : Int -> Int -> Uint8Array -> Bool, ?thisArg : Dynamic ) : Int;
+	function forEach( callbackfn : Int -> Int -> Uint8Array -> Void, ?thisArg : Dynamic ) : Void;
+	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function join( ?separator : String ) : String;
+	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function map( callbackfn : Int -> Int -> Uint8Array -> Int, ?thisArg : Dynamic ) : Uint8Array;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Uint8Array -> Int ) : Int {} )
+	function reduce( callbackfn : Dynamic -> Int -> Int -> Uint8Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Uint8Array -> Int ) : Int {} )
+	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Uint8Array -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	function reverse() : Uint8Array;
+	function slice( ?start : Int, ?end : Int ) : Uint8Array;
+	function some( callbackfn : Int -> Int -> Uint8Array -> Bool, ?thisArg : Dynamic ) : Bool;
+	function sort( ?compareFn : Int -> Int -> Int ) : Uint8Array;
+	function subarray( begin : Int, ?end : Int ) : Uint8Array;
+}

+ 69 - 0
std/js/lib/Uint8ClampedArray.hx

@@ -0,0 +1,69 @@
+/*
+ * Copyright (C)2005-2019 Haxe Foundation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
+
+// This file is generated from typedarray.webidl. Do not edit!
+
+package js.lib;
+
+@:native("Uint8ClampedArray")
+extern class Uint8ClampedArray implements ArrayBufferView implements ArrayAccess<Int> {
+	static inline var BYTES_PER_ELEMENT : Int = 1;
+	
+	@:pure
+	static function of( items : haxe.extern.Rest<Array<Dynamic>> ) : Uint8ClampedArray;
+	@:pure
+	static function from( source : Array<Int>, ?mapFn : Int -> Int -> Int, ?thisArg : Dynamic ) : Uint8ClampedArray;
+	@:native("BYTES_PER_ELEMENT")
+	var BYTES_PER_ELEMENT_(default,null) : Int;
+	var length(default,null) : Int;
+	var buffer(default,null) : ArrayBuffer;
+	var byteOffset(default,null) : Int;
+	var byteLength(default,null) : Int;
+	
+	/** @throws DOMError */
+	@:overload( function( length : Int ) : Void {} )
+	@:overload( function( array : Uint8ClampedArray ) : Void {} )
+	@:overload( function( array : Array<Int> ) : Void {} )
+	function new( buffer : ArrayBuffer, ?byteOffset : Int, ?length : Int ) : Void;
+	@:overload( function( array : Uint8ClampedArray, ?offset : Int ) : Void {} )
+	function set( array : Array<Int>, ?offset : Int ) : Void;
+	function copyWithin( target : Int, start : Int, ?end : Int ) : Uint8ClampedArray;
+	function every( callback : Int -> Int -> Uint8ClampedArray -> Bool, ?thisArg : Dynamic ) : Bool;
+	function fill( value : Int, ?start : Int, ?end : Int ) : Uint8ClampedArray;
+	function filter( callbackfn : Int -> Int -> Uint8ClampedArray -> Dynamic, ?thisArg : Dynamic ) : Uint8ClampedArray;
+	function find( predicate : Int -> Int -> Uint8ClampedArray -> Bool, ?thisArg : Dynamic ) : Dynamic;
+	function findIndex( predicate : Int -> Int -> Uint8ClampedArray -> Bool, ?thisArg : Dynamic ) : Int;
+	function forEach( callbackfn : Int -> Int -> Uint8ClampedArray -> Void, ?thisArg : Dynamic ) : Void;
+	function indexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function join( ?separator : String ) : String;
+	function lastIndexOf( searchElement : Int, ?fromIndex : Int ) : Int;
+	function map( callbackfn : Int -> Int -> Uint8ClampedArray -> Int, ?thisArg : Dynamic ) : Uint8ClampedArray;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Uint8ClampedArray -> Int ) : Int {} )
+	function reduce( callbackfn : Dynamic -> Int -> Int -> Uint8ClampedArray -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	@:overload( function( callbackfn : Int -> Int -> Int -> Uint8ClampedArray -> Int ) : Int {} )
+	function reduceRight( callbackfn : Dynamic -> Int -> Int -> Uint8ClampedArray -> Dynamic, initialValue : Dynamic ) : Dynamic;
+	function reverse() : Uint8ClampedArray;
+	function slice( ?start : Int, ?end : Int ) : Uint8ClampedArray;
+	function some( callbackfn : Int -> Int -> Uint8ClampedArray -> Bool, ?thisArg : Dynamic ) : Bool;
+	function sort( ?compareFn : Int -> Int -> Int ) : Uint8ClampedArray;
+	function subarray( begin : Int, ?end : Int ) : Uint8ClampedArray;
+}

+ 1 - 1
tests/unit/src/unitstd/haxe/io/Float64Array.unit.hx

@@ -1,5 +1,5 @@
 #if js
-if( untyped js.html.Float64Array == "notsupported" ) return;
+if( untyped js.lib.Float64Array == "notsupported" ) return;
 #end
 
 var b = new haxe.io.Float64Array(5);