From 62543f2b973ad3ea2e3a306ff21df093f2c2b0b0 Mon Sep 17 00:00:00 2001 From: nojaf Date: Tue, 29 Apr 2025 10:14:57 +0200 Subject: [PATCH 1/3] Improve FormData.get --- src/FetchAPI/FormData.res | 4 ++-- tests/FetchAPI/FormData__test.js | 15 +++++++++++++++ tests/FetchAPI/FormData__test.res | 7 +++++++ 3 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 tests/FetchAPI/FormData__test.js create mode 100644 tests/FetchAPI/FormData__test.res diff --git a/src/FetchAPI/FormData.res b/src/FetchAPI/FormData.res index 1530a19..9606170 100644 --- a/src/FetchAPI/FormData.res +++ b/src/FetchAPI/FormData.res @@ -31,13 +31,13 @@ external delete: (formData, string) => unit = "delete" [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/get) */ @send -external get: (formData, string) => file = "get" +external get: (formData, string) => string = "get" /** [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/get) */ @send -external get2: (formData, string) => string = "get" +external getFile: (formData, string) => file = "get" /** [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/getAll) diff --git a/tests/FetchAPI/FormData__test.js b/tests/FetchAPI/FormData__test.js new file mode 100644 index 0000000..3cc97ef --- /dev/null +++ b/tests/FetchAPI/FormData__test.js @@ -0,0 +1,15 @@ +// Generated by ReScript, PLEASE EDIT WITH CARE + + +let formData = new FormData(document.forms.myForm); + +let phone = formData.get("phone"); + +let image = formData.get("image"); + +export { + formData, + phone, + image, +} +/* formData Not a pure module */ diff --git a/tests/FetchAPI/FormData__test.res b/tests/FetchAPI/FormData__test.res new file mode 100644 index 0000000..743defc --- /dev/null +++ b/tests/FetchAPI/FormData__test.res @@ -0,0 +1,7 @@ +/* This works when your form has an id of "myForm" */ +@scope(("document", "forms")) +external myForm: DOMAPI.htmlFormElement = "myForm" + +let formData = FormData.make(~form=myForm) +let phone = formData->FormData.get("phone") +let image = formData->FormData.getFile("image") From 05c290447e8aeb9ef144580c250d8acc9cc58129 Mon Sep 17 00:00:00 2001 From: nojaf Date: Tue, 29 Apr 2025 10:15:06 +0200 Subject: [PATCH 2/3] Format canvas test --- tests/DOMAPI/HTMLCanvasElement__test.res | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tests/DOMAPI/HTMLCanvasElement__test.res b/tests/DOMAPI/HTMLCanvasElement__test.res index 15f9b73..9c8de21 100644 --- a/tests/DOMAPI/HTMLCanvasElement__test.res +++ b/tests/DOMAPI/HTMLCanvasElement__test.res @@ -19,4 +19,10 @@ switch ctx.fillStyle->FillStyle.decode { } let img: DOMAPI.htmlImageElement = document->Document.createElement("img")->Obj.magic -ctx->CanvasRenderingContext2D.drawImageWithDimensions(~image=img, ~dx=0., ~dy=0., ~dw=200., ~dh=200.) +ctx->CanvasRenderingContext2D.drawImageWithDimensions( + ~image=img, + ~dx=0., + ~dy=0., + ~dw=200., + ~dh=200., +) From f813554569c9a410aba7c37194a33fb82f849456 Mon Sep 17 00:00:00 2001 From: nojaf Date: Tue, 29 Apr 2025 10:16:19 +0200 Subject: [PATCH 3/3] Rename other overloads --- src/FetchAPI/FormData.res | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/FetchAPI/FormData.res b/src/FetchAPI/FormData.res index 9606170..d51b023 100644 --- a/src/FetchAPI/FormData.res +++ b/src/FetchAPI/FormData.res @@ -18,7 +18,7 @@ external append: (formData, ~name: string, ~value: string) => unit = "append" [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/append) */ @send -external append2: (formData, ~name: string, ~blobValue: blob, ~filename: string=?) => unit = +external appendBlob: (formData, ~name: string, ~blobValue: blob, ~filename: string=?) => unit = "append" /** @@ -61,4 +61,4 @@ external set: (formData, ~name: string, ~value: string) => unit = "set" [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/set) */ @send -external set2: (formData, ~name: string, ~blobValue: blob, ~filename: string=?) => unit = "set" +external setBlob: (formData, ~name: string, ~blobValue: blob, ~filename: string=?) => unit = "set"