rescript-lang / rescript-lang/experimental-rescript-webapi

Improve generated overloads

Offen
#27 0 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

help wanted
Vorherrschende Sprache
ReScript
Sterne
40
Forks
11
Ø Merge
3 T. 12 Std.
Gemergte PRs (30 T.)
12

Beschreibung

The initial batch of bindings was generated. Some methods have generated overloads.
We should try and improve these manually.
Either via:

  • Renaming to hold a more suitable underscore suffix. (See addEventListener as example)
  • Remove some of these overloads if they don't make sense. (Like setTimeout taking a string as argument).
src/Global.res
  • setTimeout2
  • setInterval2
  • createImageBitmap18
  • alert2
  • postMessage2
  • scroll2
  • scrollTo2
  • scrollBy2
src/CanvasAPI/Path2D.res
  • make2
  • roundRect3
src/IndexedDBAPI/IDBObjectStore.res
  • createIndex2
src/IndexedDBAPI/IDBDatabase.res
  • transaction2
src/DOMAPI/HTMLInputElement.res
  • setRangeText2
src/DOMAPI/Element.res
  • after2
  • animate2
  • append2
  • before2
  • prepend2
  • replaceChildren2
  • replaceWith2
  • scroll2
  • scrollBy2
  • scrollTo2
src/DOMAPI/DOMMatrixReadOnly.res
  • make2
src/DOMAPI/HTMLCanvasElement.res
  • getContext_WebGL2
src/DOMAPI/VideoFrame.res
  • make10
  • copyTo3
src/DOMAPI/HTMLTextAreaElement.res
  • setRangeText2
src/DOMAPI/Navigator.res
  • sendBeacon7
  • vibrate2
src/DOMAPI/Document.res
  • prepend2
  • append2
  • replaceChildren2
  • createElement2
  • createElementNS2
  • open2
src/DOMAPI/CanvasRenderingContext2D.res
  • setTransform2
  • createPattern7
  • fill2
  • stroke2
  • clip2
  • isPointInPath2
  • isPointInStroke2
  • drawFocusIfNeeded2
  • drawImage21
  • createImageData2
  • putImageData2
  • roundRect3
src/DOMAPI/DOMMatrix.res
  • make2
src/DOMAPI/HTMLSlotElement.res
  • assign2
src/DOMAPI/Window.res
  • setTimeout2
  • setInterval2
  • createImageBitmap18
  • alert2
  • postMessage2
  • scroll2
  • scrollTo2
  • scrollBy2
src/DOMAPI/CharacterData.res
  • after2
  • before2
  • replaceWith2
src/DOMAPI/ImageData.res
  • make2
src/DOMAPI/DocumentFragment.res
  • append2
  • prepend2
  • replaceChildren2
src/DOMAPI/StylePropertyMap.res
  • set2
  • append2
src/DOMAPI/HTMLSelectElement.res
  • removeH2
src/CSSFontLoadingAPI/FontFace.res
  • make3
src/WebSocketsAPI/WebSocket.res
  • make2
  • send4
src/WebLocksAPI/LockManager.res
  • request2
src/EncryptedMediaExtensionsAPI/MediaKeys.res
  • setServerCertificate2
src/EncryptedMediaExtensionsAPI/MediaKeySession.res
  • generateRequest2
  • update2
src/EncryptedMediaExtensionsAPI/MediaKeyStatusMap.res
  • has2
src/ChannelMessagingAPI/MessagePort.res
  • postMessage2
src/FetchAPI/FormData.res
  • append2
  • get2
  • set2
src/FetchAPI/Headers.res
  • make2
src/FetchAPI/Request.res
  • make2
src/FetchAPI/Response.res
  • make7
src/FetchAPI/URLSearchParams.res
  • make3
src/PerformanceAPI/Performance.res
  • measure2
src/ServiceWorkerAPI/Cache.res
  • match2
  • matchAll2
  • add2
  • put2
  • delete2
  • keys2
src/ServiceWorkerAPI/ServiceWorker.res
  • postMessage2
src/ServiceWorkerAPI/CacheStorage.res
  • match2
src/FileAPI/ReadableStream.res
  • make3
src/FileAPI/FileSystemWritableFileStream.res
  • write5
src/MediaCaptureAndStreamsAPI/MediaStream.res
  • make3
src/WebAudioAPI/OfflineAudioContext.res
  • make2
src/WebCryptoAPI/SubtleCrypto.res
  • generateKey2
  • deriveBits2
  • wrapKey2
src/UIEventsAPI/DataTransferItemList.res
  • add2

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit den aufgeführten generierten Dateien unter src/, wobei Global.res und DOMAPI/Element.res als erste Beispiele dienen. Vergleiche die API-Referenzen von addEventListener und setTimeout und überprüfe anschließend jeden abgehakten Overload auf ein geeignetes Suffix oder seine Entfernung; abgeschlossen bedeutet, dass die Checklist-Entscheidungen konsistent auf die betroffenen Bindings angewendet sind.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
javascript
Bereich
web-dev
Issue-Typ
Refactoring
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.