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

Improve generated overloads

Abierto
#27 0 comentarios 1 reacción 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

help wanted
Lenguaje dominante
ReScript
Estrellas
40
Forks
11
Merge medio
3 d 12 h
PR fusionados (30 d)
12

Descripción

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

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza con los archivos generados enumerados bajo src/, usando Global.res y DOMAPI/Element.res como ejemplos iniciales. Compara las referencias de API de addEventListener y setTimeout, y luego revisa cada sobrecarga marcada como completada para determinar un sufijo adecuado o su eliminación; se considera terminado cuando las decisiones de la lista de comprobación se aplican de forma coherente en todos los bindings afectados.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
javascript
Área
web-dev
Tipo de issue
Refactorización
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.