From d4f6577e545211a78cd0c0c104d6ecf85b761016 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 9 Jan 2026 14:29:46 +0300 Subject: [PATCH 1/4] Fix imageData.data type --- src/DOMAPI.res | 4 ++-- src/DOMAPI/ImageData.res | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/DOMAPI.res b/src/DOMAPI.res index be217f4..80fdb61 100644 --- a/src/DOMAPI.res +++ b/src/DOMAPI.res @@ -3020,7 +3020,7 @@ and htmlCollectionOf<'t> = { } /** -A collection of HTML form control elements. +A collection of HTML form control elements. [See HTMLFormControlsCollection on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFormControlsCollection) */ @editor.completeFrom(HTMLFormControlsCollection) and htmlFormControlsCollection = { @@ -9403,7 +9403,7 @@ type imageData = { Returns the one-dimensional array containing the data in RGBA order, as integers in the range 0 to 255. [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ImageData/data) */ - data: array, + data: Uint8ClampedArray.t, /** [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ImageData/colorSpace) */ diff --git a/src/DOMAPI/ImageData.res b/src/DOMAPI/ImageData.res index 0598ef6..aca7b33 100644 --- a/src/DOMAPI/ImageData.res +++ b/src/DOMAPI/ImageData.res @@ -11,7 +11,7 @@ external make: (~sw: int, ~sh: int, ~settings: imageDataSettings=?) => imageData */ @new external make2: ( - ~data: array, + ~data: Uint8ClampedArray.t, ~sw: int, ~sh: int=?, ~settings: imageDataSettings=?, From 6fe2fbccfb432d357dab424e68c9e2193b985bb7 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 9 Jan 2026 15:56:53 +0300 Subject: [PATCH 2/4] Rename ImageData.make2 to ImageData.makeWithData --- src/DOMAPI/ImageData.res | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/DOMAPI/ImageData.res b/src/DOMAPI/ImageData.res index aca7b33..7cd8701 100644 --- a/src/DOMAPI/ImageData.res +++ b/src/DOMAPI/ImageData.res @@ -10,7 +10,7 @@ external make: (~sw: int, ~sh: int, ~settings: imageDataSettings=?) => imageData [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ImageData) */ @new -external make2: ( +external makeWithData: ( ~data: Uint8ClampedArray.t, ~sw: int, ~sh: int=?, From 8d151be92700775067424cd5833c458ca32caca2 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 9 Jan 2026 15:57:13 +0300 Subject: [PATCH 3/4] Add ImageData tests --- tests/DOMAPI/ImageData.res__test.js | 11 +++++++++++ tests/DOMAPI/ImageData.res__test.res | 5 +++++ 2 files changed, 16 insertions(+) create mode 100644 tests/DOMAPI/ImageData.res__test.js create mode 100644 tests/DOMAPI/ImageData.res__test.res diff --git a/tests/DOMAPI/ImageData.res__test.js b/tests/DOMAPI/ImageData.res__test.js new file mode 100644 index 0000000..032d1b7 --- /dev/null +++ b/tests/DOMAPI/ImageData.res__test.js @@ -0,0 +1,11 @@ +// Generated by ReScript, PLEASE EDIT WITH CARE + + +let imageData = new ImageData(new Uint8ClampedArray([]), 100, 100); + +console.log(imageData.data.length); + +export { + imageData, +} +/* imageData Not a pure module */ diff --git a/tests/DOMAPI/ImageData.res__test.res b/tests/DOMAPI/ImageData.res__test.res new file mode 100644 index 0000000..25ec05a --- /dev/null +++ b/tests/DOMAPI/ImageData.res__test.res @@ -0,0 +1,5 @@ +open DOMAPI + +let imageData = ImageData.makeWithData(~data=Uint8ClampedArray.fromArray([]), ~sw=100, ~sh=100) + +imageData.data->TypedArray.length->Console.log From 6226e6a41beb7b4ccb13ac94d326b3026db6d1f8 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 9 Jan 2026 16:16:45 +0300 Subject: [PATCH 4/4] rename ImageData test --- tests/DOMAPI/{ImageData.res__test.js => ImageData__test.js} | 0 tests/DOMAPI/{ImageData.res__test.res => ImageData__test.res} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename tests/DOMAPI/{ImageData.res__test.js => ImageData__test.js} (100%) rename tests/DOMAPI/{ImageData.res__test.res => ImageData__test.res} (100%) diff --git a/tests/DOMAPI/ImageData.res__test.js b/tests/DOMAPI/ImageData__test.js similarity index 100% rename from tests/DOMAPI/ImageData.res__test.js rename to tests/DOMAPI/ImageData__test.js diff --git a/tests/DOMAPI/ImageData.res__test.res b/tests/DOMAPI/ImageData__test.res similarity index 100% rename from tests/DOMAPI/ImageData.res__test.res rename to tests/DOMAPI/ImageData__test.res