@rescript/webapi 0.1.0-experimental-2d6efc2 → 0.1.0-experimental-0781ac8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (480) hide show
  1. package/README.md +10 -5
  2. package/package.json +6 -4
  3. package/rescript.json +591 -4
  4. package/src/Base/ArrayBufferTypedArrayOrDataView.res +4 -0
  5. package/src/Base/BaseCSSFontLoading.res +25 -0
  6. package/src/{EncryptedMediaExtensionsAPI.res → Base/BaseEncryptedMediaExtensions.res} +12 -18
  7. package/src/Base/BaseEvent.res +6 -0
  8. package/src/Base/BaseFile.res +37 -0
  9. package/src/{FileAndDirectoryEntriesAPI.res → Base/BaseFileAndDirectoryEntries.res} +5 -22
  10. package/src/{DOMAPI.res → Base/DOM.res} +225 -2237
  11. package/src/{CSSFontLoadingAPI.res → CSSFontLoading/CssFontLoadingTypes.res} +4 -15
  12. package/src/CSSFontLoading/FontFace.res +62 -0
  13. package/src/CSSFontLoading/FontFaceSet.res +38 -0
  14. package/src/Canvas/Canvas.res +179 -0
  15. package/src/{CanvasAPI → Canvas}/CanvasGradient.res +2 -3
  16. package/src/{CanvasAPI → Canvas}/CanvasPattern.res +3 -3
  17. package/src/{DOMAPI → Canvas}/CanvasRenderingContext2D.res +178 -140
  18. package/src/{CanvasAPI.res → Canvas/CanvasTypes.res} +9 -11
  19. package/src/Canvas/FillStyle.res +25 -0
  20. package/src/{DOMAPI → Canvas}/HTMLCanvasElement.res +21 -23
  21. package/src/{CanvasAPI → Canvas}/ImageBitmap.res +1 -3
  22. package/src/{CanvasAPI → Canvas}/ImageBitmapRenderingContext.res +4 -4
  23. package/src/{CanvasAPI → Canvas}/OffscreenCanvas.res +19 -19
  24. package/src/{CanvasAPI → Canvas}/Path2D.res +63 -19
  25. package/src/Canvas/VideoFrame.res +223 -0
  26. package/src/{ChannelMessagingAPI.res → ChannelMessaging/ChannelMessagingTypes.res} +2 -4
  27. package/src/{ChannelMessagingAPI → ChannelMessaging}/MessagePort.res +8 -10
  28. package/src/Clipboard/Clipboard.res +29 -0
  29. package/src/{ClipboardAPI → Clipboard}/ClipboardItem.res +5 -6
  30. package/src/{ClipboardAPI.res → Clipboard/ClipboardTypes.res} +5 -7
  31. package/src/{CredentialManagementAPI.res → CredentialManagement/CredentialManagementTypes.res} +10 -13
  32. package/src/CredentialManagement/CredentialsContainer.res +33 -0
  33. package/src/{DOMAPI → DOM}/Animation.res +13 -13
  34. package/src/{DOMAPI → DOM}/AnimationEffect.res +7 -5
  35. package/src/{DOMAPI → DOM}/CSSRuleList.res +1 -3
  36. package/src/{DOMAPI → DOM}/CSSStyleDeclaration.res +6 -7
  37. package/src/DOM/CSSStyleSheet.res +30 -0
  38. package/src/{DOMAPI → DOM}/CSSStyleValue.res +3 -4
  39. package/src/DOM/CaretPosition.res +2 -0
  40. package/src/{DOMAPI → DOM}/CharacterData.res +5 -7
  41. package/src/DOM/Comment.res +7 -0
  42. package/src/{DOMAPI → DOM}/CustomElementRegistry.res +10 -9
  43. package/src/DOM/DOMException.res +7 -0
  44. package/src/{DOMAPI → DOM}/DOMImplementation.res +6 -8
  45. package/src/DOM/DOMMatrix.res +228 -0
  46. package/src/DOM/DOMMatrixReadOnly.res +147 -0
  47. package/src/DOM/DOMPoint.res +31 -0
  48. package/src/{DOMAPI → DOM}/DOMPointReadOnly.res +7 -7
  49. package/src/{DOMAPI → DOM}/DOMRect.res +6 -7
  50. package/src/DOM/DOMRectList.res +2 -0
  51. package/src/DOM/DOMRectReadOnly.res +19 -0
  52. package/src/{Prelude → DOM}/DOMStringList.res +3 -3
  53. package/src/{DOMAPI → DOM}/DOMTokenList.res +7 -9
  54. package/src/{DOMAPI → DOM}/Document.res +94 -80
  55. package/src/{DOMAPI → DOM}/DocumentFragment.res +10 -11
  56. package/src/DOM/DocumentTimeline.res +8 -0
  57. package/src/{Global.res → DOM/DomGlobal.res} +62 -285
  58. package/src/{DOMAPI/HTMLMediaElement.res → DOM/DomHTMLMediaElement.res} +6 -16
  59. package/src/DOM/DomTypes.res +2105 -0
  60. package/src/{DOMAPI → DOM}/Element.res +53 -44
  61. package/src/{DOMAPI → DOM}/ElementInternals.res +6 -8
  62. package/src/{DOMAPI → DOM}/FileList.res +2 -5
  63. package/src/DOM/HTMLAnchorElement.res +1 -0
  64. package/src/DOM/HTMLAreaElement.res +1 -0
  65. package/src/DOM/HTMLAudioElement.res +1 -0
  66. package/src/DOM/HTMLBRElement.res +1 -0
  67. package/src/DOM/HTMLBaseElement.res +1 -0
  68. package/src/DOM/HTMLBodyElement.res +1 -0
  69. package/src/{DOMAPI → DOM}/HTMLButtonElement.res +4 -6
  70. package/src/{DOMAPI → DOM}/HTMLCollection.res +2 -4
  71. package/src/DOM/HTMLDListElement.res +1 -0
  72. package/src/DOM/HTMLDataElement.res +1 -0
  73. package/src/DOM/HTMLDataListElement.res +1 -0
  74. package/src/{DOMAPI → DOM}/HTMLDialogElement.res +4 -6
  75. package/src/DOM/HTMLDivElement.res +1 -0
  76. package/src/{DOMAPI → DOM}/HTMLElement.res +5 -5
  77. package/src/DOM/HTMLEmbedElement.res +4 -0
  78. package/src/{DOMAPI → DOM}/HTMLFieldSetElement.res +4 -6
  79. package/src/DOM/HTMLFormControlsCollection.res +16 -0
  80. package/src/{DOMAPI → DOM}/HTMLFormElement.res +7 -7
  81. package/src/DOM/HTMLFrameSetElement.res +1 -0
  82. package/src/DOM/HTMLHRElement.res +1 -0
  83. package/src/DOM/HTMLHeadElement.res +1 -0
  84. package/src/DOM/HTMLHeadingElement.res +1 -0
  85. package/src/DOM/HTMLHtmlElement.res +1 -0
  86. package/src/DOM/HTMLIFrameElement.res +4 -0
  87. package/src/DOM/HTMLImageElement.res +7 -0
  88. package/src/{DOMAPI → DOM}/HTMLInputElement.res +12 -14
  89. package/src/DOM/HTMLLIElement.res +1 -0
  90. package/src/DOM/HTMLLabelElement.res +1 -0
  91. package/src/DOM/HTMLLegendElement.res +1 -0
  92. package/src/DOM/HTMLLinkElement.res +1 -0
  93. package/src/DOM/HTMLMapElement.res +1 -0
  94. package/src/DOM/HTMLMenuElement.res +1 -0
  95. package/src/DOM/HTMLMetaElement.res +1 -0
  96. package/src/DOM/HTMLMeterElement.res +1 -0
  97. package/src/DOM/HTMLModElement.res +1 -0
  98. package/src/DOM/HTMLOListElement.res +1 -0
  99. package/src/{DOMAPI → DOM}/HTMLObjectElement.res +5 -7
  100. package/src/DOM/HTMLOptGroupElement.res +1 -0
  101. package/src/DOM/HTMLOptionElement.res +1 -0
  102. package/src/{DOMAPI → DOM}/HTMLOptionsCollection.res +4 -5
  103. package/src/{DOMAPI → DOM}/HTMLOutputElement.res +4 -6
  104. package/src/DOM/HTMLParagraphElement.res +1 -0
  105. package/src/DOM/HTMLPictureElement.res +1 -0
  106. package/src/DOM/HTMLPreElement.res +1 -0
  107. package/src/DOM/HTMLProgressElement.res +1 -0
  108. package/src/DOM/HTMLQuoteElement.res +1 -0
  109. package/src/{DOMAPI → DOM}/HTMLScriptElement.res +1 -3
  110. package/src/{DOMAPI → DOM}/HTMLSelectElement.res +10 -12
  111. package/src/DOM/HTMLSlotElement.res +31 -0
  112. package/src/DOM/HTMLSourceElement.res +1 -0
  113. package/src/DOM/HTMLSpanElement.res +1 -0
  114. package/src/DOM/HTMLStyleElement.res +1 -0
  115. package/src/DOM/HTMLTableCaptionElement.res +1 -0
  116. package/src/DOM/HTMLTableCellElement.res +1 -0
  117. package/src/{DOMAPI → DOM}/HTMLTableElement.res +12 -12
  118. package/src/{DOMAPI → DOM}/HTMLTableRowElement.res +6 -5
  119. package/src/{DOMAPI → DOM}/HTMLTableSectionElement.res +6 -5
  120. package/src/DOM/HTMLTemplateElement.res +1 -0
  121. package/src/{DOMAPI → DOM}/HTMLTextAreaElement.res +9 -11
  122. package/src/DOM/HTMLTimeElement.res +1 -0
  123. package/src/DOM/HTMLTitleElement.res +1 -0
  124. package/src/DOM/HTMLTrackElement.res +1 -0
  125. package/src/DOM/HTMLUListElement.res +1 -0
  126. package/src/DOM/HTMLVideoElement.res +32 -0
  127. package/src/{DOMAPI → DOM}/IdleDeadline.res +1 -3
  128. package/src/{DOMAPI → DOM}/ImageData.res +4 -5
  129. package/src/{DOMAPI → DOM}/Location.res +3 -5
  130. package/src/{DOMAPI → DOM}/MediaList.res +3 -5
  131. package/src/DOM/MediaQueryList.res +1 -0
  132. package/src/{DOMAPI → DOM}/NamedNodeMap.res +15 -11
  133. package/src/DOM/Navigator.res +166 -0
  134. package/src/{DOMAPI → DOM}/Node.res +10 -11
  135. package/src/DOM/NodeFilter.res +2 -0
  136. package/src/{DOMAPI → DOM}/NodeIterator.res +2 -4
  137. package/src/{DOMAPI → DOM}/NodeList.res +1 -3
  138. package/src/{DOMAPI → DOM}/Range.res +27 -27
  139. package/src/DOM/SVGGraphicsElement.res +18 -0
  140. package/src/{DOMAPI → DOM}/SVGLength.res +2 -4
  141. package/src/DOM/ScreenOrientation.res +7 -0
  142. package/src/{DOMAPI → DOM}/Selection.res +22 -20
  143. package/src/DOM/ShadowRoot.res +19 -0
  144. package/src/DOM/StylePropertyMap.res +57 -0
  145. package/src/{DOMAPI → DOM}/StylePropertyMapReadOnly.res +3 -4
  146. package/src/{DOMAPI → DOM}/StyleSheetList.res +1 -3
  147. package/src/{DOMAPI → DOM}/Text.res +3 -5
  148. package/src/DOM/TextTrackList.res +7 -0
  149. package/src/{DOMAPI → DOM}/TimeRanges.res +2 -4
  150. package/src/{DOMAPI → DOM}/TreeWalker.res +7 -9
  151. package/src/{DOMAPI → DOM}/VideoColorSpace.res +3 -4
  152. package/src/DOM/Window.res +557 -0
  153. package/src/{DOMAPI → DOM}/XPathExpression.res +4 -6
  154. package/src/{DOMAPI → DOM}/XPathResult.res +2 -4
  155. package/src/EncryptedMediaExtensions/EncryptedMediaExtensionsHTMLMediaElement.res +15 -0
  156. package/src/EncryptedMediaExtensions/EncryptedMediaExtensionsTypes.res +43 -0
  157. package/src/{EncryptedMediaExtensionsAPI → EncryptedMediaExtensions}/MediaKeySession.res +10 -10
  158. package/src/{EncryptedMediaExtensionsAPI → EncryptedMediaExtensions}/MediaKeyStatusMap.res +2 -4
  159. package/src/EncryptedMediaExtensions/MediaKeySystemAccess.res +14 -0
  160. package/src/EncryptedMediaExtensions/MediaKeys.res +35 -0
  161. package/src/{EventAPI → Event}/AbortController.res +2 -4
  162. package/src/{EventAPI → Event}/AbortSignal.res +5 -7
  163. package/src/{EventAPI → Event}/Event.res +5 -6
  164. package/src/{EventAPI → Event}/EventTarget.res +14 -16
  165. package/src/{EventAPI.res → Event/EventTypes.res} +10 -10
  166. package/src/{EventAPI → Event}/ExtendableEvent.res +2 -4
  167. package/src/{FetchAPI → Fetch}/BodyInit.res +10 -12
  168. package/src/Fetch/Fetch.res +12 -0
  169. package/src/{FetchAPI.res → Fetch/FetchTypes.res} +19 -21
  170. package/src/{FetchAPI → Fetch}/FormData.res +16 -15
  171. package/src/Fetch/FormDataEntryValue.res +2 -0
  172. package/src/{FetchAPI → Fetch}/Headers.res +10 -12
  173. package/src/{FetchAPI → Fetch}/HeadersInit.res +4 -4
  174. package/src/{FetchAPI → Fetch}/Request.res +16 -11
  175. package/src/{FetchAPI → Fetch}/Response.res +27 -23
  176. package/src/{FileAPI → File}/Blob.res +9 -7
  177. package/src/{FileAPI → File}/File.res +5 -5
  178. package/src/File/FileSystemDirectoryHandle.res +49 -0
  179. package/src/File/FileSystemFileHandle.res +25 -0
  180. package/src/File/FileSystemHandle.res +6 -0
  181. package/src/File/FileSystemWritableFileStream.res +65 -0
  182. package/src/{FileAPI.res → File/FileTypes.res} +22 -23
  183. package/src/File/ReadableStream.res +79 -0
  184. package/src/File/WritableStream.res +27 -0
  185. package/src/{FileAPI → File}/WritableStreamDefaultController.res +1 -3
  186. package/src/FileAndDirectoryEntries/FileAndDirectoryEntriesTypes.res +35 -0
  187. package/src/FileAndDirectoryEntries/FileSystemDirectoryEntry.res +42 -0
  188. package/src/FileAndDirectoryEntries/FileSystemDirectoryReader.res +9 -0
  189. package/src/FileAndDirectoryEntries/FileSystemEntry.res +9 -0
  190. package/src/Gamepad/GamepadHapticActuator.res +16 -0
  191. package/src/{GamepadAPI.res → Gamepad/GamepadTypes.res} +4 -4
  192. package/src/Geolocation/Geolocation.res +31 -0
  193. package/src/{GeolocationAPI → Geolocation}/GeolocationCoordinates.res +1 -3
  194. package/src/{GeolocationAPI → Geolocation}/GeolocationPosition.res +1 -3
  195. package/src/{GeolocationAPI.res → Geolocation/GeolocationTypes.res} +5 -5
  196. package/src/{HistoryAPI → History}/History.res +13 -8
  197. package/src/{HistoryAPI.res → History/HistoryTypes.res} +3 -2
  198. package/src/{IndexedDBAPI → IndexedDB}/IDBDatabase.res +14 -16
  199. package/src/{IndexedDBAPI → IndexedDB}/IDBFactory.res +10 -6
  200. package/src/{IndexedDBAPI → IndexedDB}/IDBIndex.res +22 -17
  201. package/src/{IndexedDBAPI → IndexedDB}/IDBObjectStore.res +44 -33
  202. package/src/{IndexedDBAPI → IndexedDB}/IDBTransaction.res +5 -6
  203. package/src/{IndexedDBAPI.res → IndexedDB/IndexedDbTypes.res} +16 -17
  204. package/src/IntersectionObserver/IntersectionObserver.res +39 -0
  205. package/src/IntersectionObserver/IntersectionObserverRoot.res +21 -0
  206. package/src/{IntersectionObserverAPI.res → IntersectionObserver/IntersectionObserverTypes.res} +7 -9
  207. package/src/MediaCapabilities/MediaCapabilities.res +19 -0
  208. package/src/{MediaCapabilitiesAPI.res → MediaCapabilities/MediaCapabilitiesTypes.res} +3 -3
  209. package/src/{MediaCaptureAndStreamsAPI.res → MediaCaptureAndStreams/MediaCaptureAndStreamsTypes.res} +7 -8
  210. package/src/MediaCaptureAndStreams/MediaDeviceInfo.res +9 -0
  211. package/src/MediaCaptureAndStreams/MediaDevices.res +40 -0
  212. package/src/MediaCaptureAndStreams/MediaStream.res +89 -0
  213. package/src/MediaCaptureAndStreams/MediaStreamTrack.res +51 -0
  214. package/src/MediaSession/MediaMetadata.res +10 -0
  215. package/src/MediaSession/MediaSession.res +25 -0
  216. package/src/{MediaSessionAPI.res → MediaSession/MediaSessionTypes.res} +4 -2
  217. package/src/MutationObserver/MutationObserver.res +31 -0
  218. package/src/{MutationObserverAPI.res → MutationObserver/MutationObserverTypes.res} +3 -5
  219. package/src/Notification/Notification.res +46 -0
  220. package/src/{NotificationAPI.res → Notification/NotificationTypes.res} +5 -7
  221. package/src/Performance/Performance.res +101 -0
  222. package/src/{PerformanceAPI → Performance}/PerformanceEntry.res +1 -3
  223. package/src/Performance/PerformanceMark.res +16 -0
  224. package/src/{PerformanceAPI.res → Performance/PerformanceTypes.res} +9 -12
  225. package/src/Permissions/Permissions.res +10 -0
  226. package/src/{PermissionsAPI.res → Permissions/PermissionsTypes.res} +4 -6
  227. package/src/PictureInPicture/PictureInPicture.res +7 -0
  228. package/src/{PictureInPictureAPI.res → PictureInPicture/PictureInPictureTypes.res} +1 -3
  229. package/src/Push/ApplicationServerKey.res +2 -0
  230. package/src/Push/PushEvent.res +3 -0
  231. package/src/Push/PushManager.res +24 -0
  232. package/src/{PushAPI → Push}/PushMessageData.res +3 -3
  233. package/src/{PushAPI → Push}/PushSubscription.res +4 -5
  234. package/src/{PushAPI.res → Push/PushTypes.res} +6 -8
  235. package/src/RemotePlayback/RemotePlayback.res +25 -0
  236. package/src/{RemotePlaybackAPI.res → RemotePlayback/RemotePlaybackTypes.res} +4 -6
  237. package/src/ResizeObserver/ResizeObserver.res +30 -0
  238. package/src/{ResizeObserverAPI.res → ResizeObserver/ResizeObserverTypes.res} +5 -7
  239. package/src/{ScreenWakeLockAPI.res → ScreenWakeLock/ScreenWakeLockTypes.res} +3 -5
  240. package/src/ScreenWakeLock/WakeLock.res +8 -0
  241. package/src/ScreenWakeLock/WakeLockSentinel.res +7 -0
  242. package/src/ServiceWorker/Cache.res +117 -0
  243. package/src/{ServiceWorkerAPI → ServiceWorker}/Clients.res +14 -7
  244. package/src/{ServiceWorkerAPI → ServiceWorker}/NavigationPreloadManager.res +7 -6
  245. package/src/ServiceWorker/ServiceWorker.res +38 -0
  246. package/src/ServiceWorker/ServiceWorkerContainer.res +34 -0
  247. package/src/{ServiceWorkerAPI → ServiceWorker}/ServiceWorkerRegistration.res +8 -11
  248. package/src/ServiceWorker/ServiceWorkerScope.res +12 -0
  249. package/src/{ServiceWorkerAPI.res → ServiceWorker/ServiceWorkerTypes.res} +18 -23
  250. package/src/{StorageAPI → Storage}/StorageManager.res +5 -7
  251. package/src/{StorageAPI.res → Storage/StorageTypes.res} +1 -1
  252. package/src/UIEvents/CompositionEvent.res +10 -0
  253. package/src/{UIEventsAPI → UIEvents}/DataTransfer.res +10 -8
  254. package/src/{UIEventsAPI → UIEvents}/DataTransferItem.res +5 -8
  255. package/src/{UIEventsAPI → UIEvents}/DataTransferItemList.res +11 -7
  256. package/src/UIEvents/FocusEvent.res +10 -0
  257. package/src/UIEvents/InputEvent.res +16 -0
  258. package/src/UIEvents/KeyboardEvent.res +16 -0
  259. package/src/{UIEventsAPI → UIEvents}/MouseEvent.res +6 -5
  260. package/src/UIEvents/PointerEvent.res +24 -0
  261. package/src/{UIEventsAPI → UIEvents}/Touch.res +1 -3
  262. package/src/UIEvents/TouchEvent.res +10 -0
  263. package/src/{UIEventsAPI → UIEvents}/TouchList.res +1 -3
  264. package/src/UIEvents/UIEvent.res +20 -0
  265. package/src/{UIEventsAPI.res → UIEvents/UiEventsTypes.res} +28 -30
  266. package/src/UIEvents/WheelEvent.res +10 -0
  267. package/src/{URLAPI → URL}/URL.res +6 -5
  268. package/src/{URLAPI → URL}/URLSearchParams.res +20 -17
  269. package/src/{URLAPI.res → URL/UrlTypes.res} +5 -4
  270. package/src/{ViewTransitionsAPI → ViewTransitions}/ViewTransition.res +1 -3
  271. package/src/{ViewTransitionsAPI.res → ViewTransitions/ViewTransitionsTypes.res} +1 -1
  272. package/src/VisualViewport/VisualViewport.res +5 -0
  273. package/src/{VisualViewportAPI.res → VisualViewport/VisualViewportTypes.res} +2 -4
  274. package/src/WebAudio/AnalyserNode.res +38 -0
  275. package/src/{WebAudioAPI → WebAudio}/AudioBuffer.res +4 -6
  276. package/src/{WebAudioAPI → WebAudio}/AudioBufferSourceNode.res +5 -7
  277. package/src/WebAudio/AudioContext.res +59 -0
  278. package/src/WebAudio/AudioDestinationNode.res +1 -0
  279. package/src/{WebAudioAPI → WebAudio}/AudioNode.res +21 -12
  280. package/src/{WebAudioAPI → WebAudio}/AudioParam.res +23 -14
  281. package/src/WebAudio/AudioProcessingEvent.res +10 -0
  282. package/src/{WebAudioAPI → WebAudio}/AudioScheduledSourceNode.res +2 -4
  283. package/src/WebAudio/AudioWorkletNode.res +11 -0
  284. package/src/{WebAudioAPI → WebAudio}/BaseAudioContext.res +26 -25
  285. package/src/{WebAudioAPI → WebAudio}/BiquadFilterNode.res +6 -6
  286. package/src/WebAudio/ChannelMergerNode.res +10 -0
  287. package/src/WebAudio/ChannelSplitterNode.res +10 -0
  288. package/src/WebAudio/ConstantSourceNode.res +10 -0
  289. package/src/WebAudio/ConvolverNode.res +10 -0
  290. package/src/WebAudio/DelayNode.res +10 -0
  291. package/src/WebAudio/DynamicsCompressorNode.res +10 -0
  292. package/src/WebAudio/GainNode.res +10 -0
  293. package/src/{WebAudioAPI → WebAudio}/IIRFilterNode.res +6 -6
  294. package/src/WebAudio/MediaElementAudioSourceNode.res +10 -0
  295. package/src/WebAudio/MediaStreamAudioDestinationNode.res +10 -0
  296. package/src/WebAudio/MediaStreamAudioSourceNode.res +10 -0
  297. package/src/WebAudio/OfflineAudioCompletionEvent.res +10 -0
  298. package/src/WebAudio/OfflineAudioContext.res +58 -0
  299. package/src/WebAudio/OscillatorNode.res +17 -0
  300. package/src/WebAudio/PannerNode.res +10 -0
  301. package/src/WebAudio/PeriodicWave.res +8 -0
  302. package/src/WebAudio/StereoPannerNode.res +10 -0
  303. package/src/WebAudio/WaveShaperNode.res +10 -0
  304. package/src/{WebAudioAPI.res → WebAudio/WebAudioTypes.res} +55 -42
  305. package/src/{WebAudioAPI → WebAudio}/Worklet.res +5 -4
  306. package/src/{WebCryptoAPI → WebCrypto}/Crypto.res +2 -4
  307. package/src/WebCrypto/SubtleCrypto.res +173 -0
  308. package/src/{WebCryptoAPI.res → WebCrypto/WebCryptoTypes.res} +3 -5
  309. package/src/WebLocks/LockManager.res +26 -0
  310. package/src/{WebLocksAPI.res → WebLocks/WebLocksTypes.res} +2 -4
  311. package/src/WebMIDI/WebMIDI.res +7 -0
  312. package/src/{WebMIDIAPI.res → WebMIDI/WebMidiTypes.res} +1 -3
  313. package/src/WebSockets/CloseEvent.res +10 -0
  314. package/src/{WebSocketsAPI → WebSockets}/MessageEvent.res +14 -9
  315. package/src/WebSockets/WebSocket.res +71 -0
  316. package/src/{WebSocketsAPI.res → WebSockets/WebSocketsTypes.res} +12 -15
  317. package/src/{WebSpeechAPI → WebSpeech}/SpeechSynthesis.res +8 -8
  318. package/src/WebSpeech/SpeechSynthesisUtterance.res +8 -0
  319. package/src/{WebSpeechAPI.res → WebSpeech/WebSpeechTypes.res} +4 -5
  320. package/src/{WebStorageAPI → WebStorage}/Storage.res +8 -10
  321. package/src/WebStorage/StorageEvent.res +10 -0
  322. package/src/{WebStorageAPI.res → WebStorage/WebStorageTypes.res} +9 -11
  323. package/src/{WebVTTAPI → WebVTT}/TextTrack.res +3 -5
  324. package/src/{WebVTTAPI → WebVTT}/TextTrackCueList.res +2 -3
  325. package/src/{WebVTTAPI.res → WebVTT/WebVttTypes.res} +5 -5
  326. package/src/WebWorkers/CacheStorage.res +43 -0
  327. package/src/{WebWorkersAPI → WebWorkers}/SharedWorker.res +13 -12
  328. package/src/{WebWorkersAPI/SharedWorkerGlobalScope.res → WebWorkers/SharedWorkerScope.res} +6 -4
  329. package/src/{WebWorkersAPI.res → WebWorkers/WebWorkersTypes.res} +7 -10
  330. package/src/{WebWorkersAPI/WorkerGlobalScope.res → WebWorkers/Worker.res} +8 -8
  331. package/src/CSSFontLoadingAPI/FontFace.res +0 -34
  332. package/src/CSSFontLoadingAPI/FontFaceSet.res +0 -33
  333. package/src/CanvasAPI/FillStyle.res +0 -24
  334. package/src/ClipboardAPI/Clipboard.res +0 -27
  335. package/src/CredentialManagementAPI/CredentialsContainer.res +0 -29
  336. package/src/DOMAPI/CSSStyleSheet.res +0 -32
  337. package/src/DOMAPI/CaretPosition.res +0 -4
  338. package/src/DOMAPI/Comment.res +0 -9
  339. package/src/DOMAPI/DOMMatrix.res +0 -169
  340. package/src/DOMAPI/DOMMatrixReadOnly.res +0 -103
  341. package/src/DOMAPI/DOMPoint.res +0 -29
  342. package/src/DOMAPI/DOMRectList.res +0 -4
  343. package/src/DOMAPI/DOMRectReadOnly.res +0 -17
  344. package/src/DOMAPI/DocumentTimeline.res +0 -9
  345. package/src/DOMAPI/HTMLAnchorElement.res +0 -3
  346. package/src/DOMAPI/HTMLAreaElement.res +0 -3
  347. package/src/DOMAPI/HTMLAudioElement.res +0 -3
  348. package/src/DOMAPI/HTMLBRElement.res +0 -3
  349. package/src/DOMAPI/HTMLBaseElement.res +0 -3
  350. package/src/DOMAPI/HTMLBodyElement.res +0 -3
  351. package/src/DOMAPI/HTMLDListElement.res +0 -3
  352. package/src/DOMAPI/HTMLDataElement.res +0 -3
  353. package/src/DOMAPI/HTMLDataListElement.res +0 -3
  354. package/src/DOMAPI/HTMLDivElement.res +0 -3
  355. package/src/DOMAPI/HTMLEmbedElement.res +0 -6
  356. package/src/DOMAPI/HTMLFormControlsCollection.res +0 -16
  357. package/src/DOMAPI/HTMLFrameSetElement.res +0 -3
  358. package/src/DOMAPI/HTMLHRElement.res +0 -3
  359. package/src/DOMAPI/HTMLHeadElement.res +0 -3
  360. package/src/DOMAPI/HTMLHeadingElement.res +0 -3
  361. package/src/DOMAPI/HTMLHtmlElement.res +0 -3
  362. package/src/DOMAPI/HTMLIFrameElement.res +0 -6
  363. package/src/DOMAPI/HTMLImageElement.res +0 -9
  364. package/src/DOMAPI/HTMLLIElement.res +0 -3
  365. package/src/DOMAPI/HTMLLabelElement.res +0 -3
  366. package/src/DOMAPI/HTMLLegendElement.res +0 -3
  367. package/src/DOMAPI/HTMLLinkElement.res +0 -3
  368. package/src/DOMAPI/HTMLMapElement.res +0 -3
  369. package/src/DOMAPI/HTMLMenuElement.res +0 -3
  370. package/src/DOMAPI/HTMLMetaElement.res +0 -3
  371. package/src/DOMAPI/HTMLMeterElement.res +0 -3
  372. package/src/DOMAPI/HTMLModElement.res +0 -3
  373. package/src/DOMAPI/HTMLOListElement.res +0 -3
  374. package/src/DOMAPI/HTMLOptGroupElement.res +0 -3
  375. package/src/DOMAPI/HTMLOptionElement.res +0 -3
  376. package/src/DOMAPI/HTMLParagraphElement.res +0 -3
  377. package/src/DOMAPI/HTMLPictureElement.res +0 -3
  378. package/src/DOMAPI/HTMLPreElement.res +0 -3
  379. package/src/DOMAPI/HTMLProgressElement.res +0 -3
  380. package/src/DOMAPI/HTMLQuoteElement.res +0 -3
  381. package/src/DOMAPI/HTMLSlotElement.res +0 -29
  382. package/src/DOMAPI/HTMLSourceElement.res +0 -3
  383. package/src/DOMAPI/HTMLSpanElement.res +0 -3
  384. package/src/DOMAPI/HTMLStyleElement.res +0 -3
  385. package/src/DOMAPI/HTMLTableCaptionElement.res +0 -3
  386. package/src/DOMAPI/HTMLTableCellElement.res +0 -3
  387. package/src/DOMAPI/HTMLTemplateElement.res +0 -3
  388. package/src/DOMAPI/HTMLTimeElement.res +0 -3
  389. package/src/DOMAPI/HTMLTitleElement.res +0 -3
  390. package/src/DOMAPI/HTMLTrackElement.res +0 -3
  391. package/src/DOMAPI/HTMLUListElement.res +0 -3
  392. package/src/DOMAPI/HTMLVideoElement.res +0 -31
  393. package/src/DOMAPI/MediaQueryList.res +0 -3
  394. package/src/DOMAPI/Navigator.res +0 -115
  395. package/src/DOMAPI/NodeFilter.res +0 -4
  396. package/src/DOMAPI/SVGGraphicsElement.res +0 -17
  397. package/src/DOMAPI/ScreenOrientation.res +0 -9
  398. package/src/DOMAPI/ShadowRoot.res +0 -21
  399. package/src/DOMAPI/StylePropertyMap.res +0 -50
  400. package/src/DOMAPI/TextTrackList.res +0 -10
  401. package/src/DOMAPI/VideoFrame.res +0 -111
  402. package/src/DOMAPI/Window.res +0 -517
  403. package/src/EncryptedMediaExtensionsAPI/MediaKeySystemAccess.res +0 -13
  404. package/src/EncryptedMediaExtensionsAPI/MediaKeys.res +0 -27
  405. package/src/FetchAPI/FormDataEntryValue.res +0 -22
  406. package/src/FileAPI/FileSystemDirectoryHandle.res +0 -45
  407. package/src/FileAPI/FileSystemFileHandle.res +0 -23
  408. package/src/FileAPI/FileSystemHandle.res +0 -7
  409. package/src/FileAPI/FileSystemWritableFileStream.res +0 -62
  410. package/src/FileAPI/ReadableStream.res +0 -60
  411. package/src/FileAPI/WritableStream.res +0 -28
  412. package/src/FileAndDirectoryEntriesAPI/FileSystemDirectoryEntry.res +0 -42
  413. package/src/FileAndDirectoryEntriesAPI/FileSystemDirectoryReader.res +0 -11
  414. package/src/FileAndDirectoryEntriesAPI/FileSystemEntry.res +0 -11
  415. package/src/GamepadAPI/GamepadHapticActuator.res +0 -17
  416. package/src/GeolocationAPI/Geolocation.res +0 -29
  417. package/src/IntersectionObserverAPI/IntersectionObserver.res +0 -35
  418. package/src/IntersectionObserverAPI/IntersectionObserverRoot.res +0 -22
  419. package/src/MediaCapabilitiesAPI/MediaCapabilities.res +0 -19
  420. package/src/MediaCaptureAndStreamsAPI/MediaDeviceInfo.res +0 -7
  421. package/src/MediaCaptureAndStreamsAPI/MediaDevices.res +0 -34
  422. package/src/MediaCaptureAndStreamsAPI/MediaStream.res +0 -63
  423. package/src/MediaCaptureAndStreamsAPI/MediaStreamTrack.res +0 -42
  424. package/src/MediaSessionAPI/MediaMetadata.res +0 -7
  425. package/src/MediaSessionAPI/MediaSession.res +0 -17
  426. package/src/MutationObserverAPI/MutationObserver.res +0 -27
  427. package/src/NotificationAPI/Notification.res +0 -29
  428. package/src/PerformanceAPI/Performance.res +0 -90
  429. package/src/PerformanceAPI/PerformanceMark.res +0 -15
  430. package/src/PermissionsAPI/Permissions.res +0 -7
  431. package/src/Prelude/DOMException.res +0 -7
  432. package/src/Prelude.res +0 -37
  433. package/src/PushAPI/ApplicationServerKey.res +0 -4
  434. package/src/PushAPI/PushEvent.res +0 -3
  435. package/src/PushAPI/PushManager.res +0 -25
  436. package/src/RemotePlaybackAPI/RemotePlayback.res +0 -23
  437. package/src/ResizeObserverAPI/ResizeObserver.res +0 -27
  438. package/src/ScreenWakeLockAPI/WakeLock.res +0 -7
  439. package/src/ScreenWakeLockAPI/WakeLockSentinel.res +0 -9
  440. package/src/ServiceWorkerAPI/Cache.res +0 -100
  441. package/src/ServiceWorkerAPI/ServiceWorker.res +0 -21
  442. package/src/ServiceWorkerAPI/ServiceWorkerContainer.res +0 -35
  443. package/src/ServiceWorkerAPI/ServiceWorkerGlobalScope.res +0 -10
  444. package/src/UIEventsAPI/CompositionEvent.res +0 -10
  445. package/src/UIEventsAPI/FocusEvent.res +0 -9
  446. package/src/UIEventsAPI/InputEvent.res +0 -16
  447. package/src/UIEventsAPI/KeyboardEvent.res +0 -16
  448. package/src/UIEventsAPI/PointerEvent.res +0 -21
  449. package/src/UIEventsAPI/TouchEvent.res +0 -9
  450. package/src/UIEventsAPI/UIEvent.res +0 -19
  451. package/src/UIEventsAPI/WheelEvent.res +0 -9
  452. package/src/WebAudioAPI/AnalyserNode.res +0 -34
  453. package/src/WebAudioAPI/AudioContext.res +0 -56
  454. package/src/WebAudioAPI/AudioDestinationNode.res +0 -3
  455. package/src/WebAudioAPI/AudioProcessingEvent.res +0 -10
  456. package/src/WebAudioAPI/AudioWorkletNode.res +0 -13
  457. package/src/WebAudioAPI/ChannelMergerNode.res +0 -10
  458. package/src/WebAudioAPI/ChannelSplitterNode.res +0 -12
  459. package/src/WebAudioAPI/ConstantSourceNode.res +0 -12
  460. package/src/WebAudioAPI/ConvolverNode.res +0 -10
  461. package/src/WebAudioAPI/DelayNode.res +0 -9
  462. package/src/WebAudioAPI/DynamicsCompressorNode.res +0 -12
  463. package/src/WebAudioAPI/GainNode.res +0 -9
  464. package/src/WebAudioAPI/MediaElementAudioSourceNode.res +0 -12
  465. package/src/WebAudioAPI/MediaStreamAudioDestinationNode.res +0 -12
  466. package/src/WebAudioAPI/MediaStreamAudioSourceNode.res +0 -12
  467. package/src/WebAudioAPI/OfflineAudioCompletionEvent.res +0 -12
  468. package/src/WebAudioAPI/OfflineAudioContext.res +0 -34
  469. package/src/WebAudioAPI/OscillatorNode.res +0 -16
  470. package/src/WebAudioAPI/PannerNode.res +0 -9
  471. package/src/WebAudioAPI/PeriodicWave.res +0 -8
  472. package/src/WebAudioAPI/StereoPannerNode.res +0 -10
  473. package/src/WebAudioAPI/WaveShaperNode.res +0 -10
  474. package/src/WebCryptoAPI/SubtleCrypto.res +0 -173
  475. package/src/WebLocksAPI/LockManager.res +0 -25
  476. package/src/WebSocketsAPI/CloseEvent.res +0 -9
  477. package/src/WebSocketsAPI/WebSocket.res +0 -51
  478. package/src/WebSpeechAPI/SpeechSynthesisUtterance.res +0 -9
  479. package/src/WebStorageAPI/StorageEvent.res +0 -9
  480. package/src/WebWorkersAPI/CacheStorage.res +0 -46
@@ -1,13 +1,11 @@
1
- open EncryptedMediaExtensionsAPI
2
-
3
- include EventTarget.Impl({type t = mediaKeySession})
1
+ include EventTarget.Impl({type t = EncryptedMediaExtensionsTypes.mediaKeySession})
4
2
 
5
3
  /**
6
4
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeySession/generateRequest)
7
5
  */
8
6
  @send
9
7
  external generateRequest: (
10
- mediaKeySession,
8
+ EncryptedMediaExtensionsTypes.mediaKeySession,
11
9
  ~initDataType: string,
12
10
  ~initData: DataView.t,
13
11
  ) => promise<unit> = "generateRequest"
@@ -17,7 +15,7 @@ external generateRequest: (
17
15
  */
18
16
  @send
19
17
  external generateRequest2: (
20
- mediaKeySession,
18
+ EncryptedMediaExtensionsTypes.mediaKeySession,
21
19
  ~initDataType: string,
22
20
  ~initData: ArrayBuffer.t,
23
21
  ) => promise<unit> = "generateRequest"
@@ -26,28 +24,30 @@ external generateRequest2: (
26
24
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeySession/load)
27
25
  */
28
26
  @send
29
- external load: (mediaKeySession, string) => promise<bool> = "load"
27
+ external load: (EncryptedMediaExtensionsTypes.mediaKeySession, string) => promise<bool> = "load"
30
28
 
31
29
  /**
32
30
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeySession/update)
33
31
  */
34
32
  @send
35
- external update: (mediaKeySession, DataView.t) => promise<unit> = "update"
33
+ external update: (EncryptedMediaExtensionsTypes.mediaKeySession, DataView.t) => promise<unit> =
34
+ "update"
36
35
 
37
36
  /**
38
37
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeySession/update)
39
38
  */
40
39
  @send
41
- external update2: (mediaKeySession, ArrayBuffer.t) => promise<unit> = "update"
40
+ external update2: (EncryptedMediaExtensionsTypes.mediaKeySession, ArrayBuffer.t) => promise<unit> =
41
+ "update"
42
42
 
43
43
  /**
44
44
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeySession/close)
45
45
  */
46
46
  @send
47
- external close: mediaKeySession => promise<unit> = "close"
47
+ external close: EncryptedMediaExtensionsTypes.mediaKeySession => promise<unit> = "close"
48
48
 
49
49
  /**
50
50
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeySession/remove)
51
51
  */
52
52
  @send
53
- external remove: mediaKeySession => promise<unit> = "remove"
53
+ external remove: EncryptedMediaExtensionsTypes.mediaKeySession => promise<unit> = "remove"
@@ -1,13 +1,11 @@
1
- open EncryptedMediaExtensionsAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeyStatusMap/has)
5
3
  */
6
4
  @send
7
- external has: (mediaKeyStatusMap, DataView.t) => bool = "has"
5
+ external has: (EncryptedMediaExtensionsTypes.mediaKeyStatusMap, DataView.t) => bool = "has"
8
6
 
9
7
  /**
10
8
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeyStatusMap/has)
11
9
  */
12
10
  @send
13
- external has2: (mediaKeyStatusMap, ArrayBuffer.t) => bool = "has"
11
+ external has2: (EncryptedMediaExtensionsTypes.mediaKeyStatusMap, ArrayBuffer.t) => bool = "has"
@@ -0,0 +1,14 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeySystemAccess/getConfiguration)
3
+ */
4
+ @send
5
+ external getConfiguration: EncryptedMediaExtensionsTypes.mediaKeySystemAccess => EncryptedMediaExtensionsTypes.mediaKeySystemConfiguration =
6
+ "getConfiguration"
7
+
8
+ /**
9
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeySystemAccess/createMediaKeys)
10
+ */
11
+ @send
12
+ external createMediaKeys: EncryptedMediaExtensionsTypes.mediaKeySystemAccess => promise<
13
+ EncryptedMediaExtensionsTypes.mediaKeys,
14
+ > = "createMediaKeys"
@@ -0,0 +1,35 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeys/createSession)
3
+ */
4
+ @send
5
+ external createSession: (
6
+ EncryptedMediaExtensionsTypes.mediaKeys,
7
+ ~sessionType: EncryptedMediaExtensionsTypes.mediaKeySessionType=?,
8
+ ) => EncryptedMediaExtensionsTypes.mediaKeySession = "createSession"
9
+
10
+ /**
11
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeys/getStatusForPolicy)
12
+ */
13
+ @send
14
+ external getStatusForPolicy: (
15
+ EncryptedMediaExtensionsTypes.mediaKeys,
16
+ ~policy: EncryptedMediaExtensionsTypes.mediaKeysPolicy=?,
17
+ ) => promise<EncryptedMediaExtensionsTypes.mediaKeyStatus> = "getStatusForPolicy"
18
+
19
+ /**
20
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeys/setServerCertificate)
21
+ */
22
+ @send
23
+ external setServerCertificate: (
24
+ EncryptedMediaExtensionsTypes.mediaKeys,
25
+ DataView.t,
26
+ ) => promise<bool> = "setServerCertificate"
27
+
28
+ /**
29
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaKeys/setServerCertificate)
30
+ */
31
+ @send
32
+ external setServerCertificate2: (
33
+ EncryptedMediaExtensionsTypes.mediaKeys,
34
+ ArrayBuffer.t,
35
+ ) => promise<bool> = "setServerCertificate"
@@ -1,14 +1,12 @@
1
- open EventAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AbortController)
5
3
  */
6
4
  @new
7
- external make: unit => abortController = "AbortController"
5
+ external make: unit => EventTypes.abortController = "AbortController"
8
6
 
9
7
  /**
10
8
  Invoking this method will set this object's AbortSignal's aborted flag and signal to any observers that the associated activity is to be aborted.
11
9
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AbortController/abort)
12
10
  */
13
11
  @send
14
- external abort: (abortController, ~reason: JSON.t=?) => unit = "abort"
12
+ external abort: (EventTypes.abortController, ~reason: JSON.t=?) => unit = "abort"
@@ -1,27 +1,25 @@
1
- open EventAPI
2
-
3
- include EventTarget.Impl({type t = abortSignal})
1
+ include EventTarget.Impl({type t = EventTypes.abortSignal})
4
2
 
5
3
  /**
6
4
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_static)
7
5
  */
8
6
  @scope("AbortSignal")
9
- external abort: (~reason: JSON.t=?) => abortSignal = "abort"
7
+ external abort: (~reason: JSON.t=?) => EventTypes.abortSignal = "abort"
10
8
 
11
9
  /**
12
10
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AbortSignal/timeout_static)
13
11
  */
14
12
  @scope("AbortSignal")
15
- external timeout: int => abortSignal = "timeout"
13
+ external timeout: int => EventTypes.abortSignal = "timeout"
16
14
 
17
15
  /**
18
16
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AbortSignal/any_static)
19
17
  */
20
18
  @scope("AbortSignal")
21
- external any: array<abortSignal> => abortSignal = "any"
19
+ external any: array<EventTypes.abortSignal> => EventTypes.abortSignal = "any"
22
20
 
23
21
  /**
24
22
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AbortSignal/throwIfAborted)
25
23
  */
26
24
  @send
27
- external throwIfAborted: abortSignal => unit = "throwIfAborted"
25
+ external throwIfAborted: EventTypes.abortSignal => unit = "throwIfAborted"
@@ -1,24 +1,23 @@
1
- open EventAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Event)
5
3
  */
6
4
  @new
7
- external make: (~type_: string, ~eventInitDict: eventInit=?) => event = "Event"
5
+ external make: (~type_: string, ~eventInitDict: EventTypes.eventInit=?) => EventTypes.event =
6
+ "Event"
8
7
 
9
8
  module Impl = (
10
9
  T: {
11
10
  type t
12
11
  },
13
12
  ) => {
14
- external asEvent: T.t => event = "%identity"
13
+ external asEvent: T.t => EventTypes.event = "%identity"
15
14
 
16
15
  /**
17
16
  Returns the invocation target objects of event's path (objects on which listeners will be invoked), except for any nodes in shadow trees of which the shadow root's mode is "closed" that are not reachable from event's currentTarget.
18
17
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Event/composedPath)
19
18
  */
20
19
  @send
21
- external composedPath: T.t => array<eventTarget> = "composedPath"
20
+ external composedPath: T.t => array<EventTypes.eventTarget> = "composedPath"
22
21
 
23
22
  /**
24
23
  If invoked when the cancelable attribute value is true, and while executing a listener for the event with passive set to false, signals to the operation that caused event to be dispatched that it needs to be canceled.
@@ -42,4 +41,4 @@ When dispatched in a tree, invoking this method prevents event from reaching any
42
41
  external stopPropagation: T.t => unit = "stopPropagation"
43
42
  }
44
43
 
45
- include Impl({type t = event})
44
+ include Impl({type t = EventTypes.event})
@@ -1,17 +1,15 @@
1
- open EventAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/EventTarget)
5
3
  */
6
4
  @new
7
- external make: unit => eventTarget = "EventTarget"
5
+ external make: unit => EventTypes.eventTarget = "EventTarget"
8
6
 
9
7
  module Impl = (
10
8
  T: {
11
9
  type t
12
10
  },
13
11
  ) => {
14
- external asEventTarget: T.t => eventTarget = "%identity"
12
+ external asEventTarget: T.t => EventTypes.eventTarget = "%identity"
15
13
 
16
14
  /**
17
15
  Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.
@@ -32,9 +30,9 @@ The event listener is appended to target's event listener list and is not append
32
30
  @send
33
31
  external addEventListener: (
34
32
  T.t,
35
- eventType,
36
- eventListener<'event>,
37
- ~options: addEventListenerOptions=?,
33
+ EventTypes.eventType,
34
+ EventTypes.eventListener<'event>,
35
+ ~options: EventTypes.addEventListenerOptions=?,
38
36
  ) => unit = "addEventListener"
39
37
 
40
38
  /**
@@ -56,8 +54,8 @@ The event listener is appended to target's event listener list and is not append
56
54
  @send
57
55
  external addEventListenerWithCapture: (
58
56
  T.t,
59
- eventType,
60
- eventListener<'event>,
57
+ EventTypes.eventType,
58
+ EventTypes.eventListener<'event>,
61
59
  @as(json`true`) _,
62
60
  ) => unit = "addEventListener"
63
61
 
@@ -68,9 +66,9 @@ Removes the event listener in target's event listener list with the same type, c
68
66
  @send
69
67
  external removeEventListener: (
70
68
  T.t,
71
- eventType,
72
- eventListener<'event>,
73
- ~options: eventListenerOptions=?,
69
+ EventTypes.eventType,
70
+ EventTypes.eventListener<'event>,
71
+ ~options: EventTypes.eventListenerOptions=?,
74
72
  ) => unit = "removeEventListener"
75
73
 
76
74
  /**
@@ -80,8 +78,8 @@ Removes the event listener in target's event listener list with the same type, c
80
78
  @send
81
79
  external removeEventListenerUseCapture: (
82
80
  T.t,
83
- eventType,
84
- eventListener<'event>,
81
+ EventTypes.eventType,
82
+ EventTypes.eventListener<'event>,
85
83
  @as(json`true`) _,
86
84
  ) => unit = "removeEventListener"
87
85
 
@@ -90,7 +88,7 @@ Dispatches a synthetic event event to target and returns true if either event's
90
88
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/EventTarget/dispatchEvent)
91
89
  */
92
90
  @send
93
- external dispatchEvent: (T.t, event) => bool = "dispatchEvent"
91
+ external dispatchEvent: (T.t, EventTypes.event) => bool = "dispatchEvent"
94
92
  }
95
93
 
96
- include Impl({type t = eventTarget})
94
+ include Impl({type t = EventTypes.eventTarget})
@@ -112,18 +112,18 @@ type eventType =
112
112
  type eventListener<'event> = 'event => unit
113
113
 
114
114
  /**
115
- EventTarget is a DOM interface implemented by objects that can receive events and may have listeners for them.
115
+ EventTarget is a WebApiDOM interface implemented by objects that can receive events and may have listeners for them.
116
116
  [See EventTarget on MDN](https://developer.mozilla.org/docs/Web/API/EventTarget)
117
117
  */
118
118
  @editor.completeFrom(EventTarget)
119
- type eventTarget = {}
119
+ type eventTarget = BaseEvent.eventTarget = private {...BaseEvent.eventTarget}
120
120
 
121
121
  /**
122
122
  An event which takes place in the DOM.
123
- [See Event on MDN](https://developer.mozilla.org/docs/Web/API/Event)
123
+ [See WebApiEvent on MDN](https://developer.mozilla.org/docs/Web/API/Event)
124
124
  */
125
- @editor.completeFrom(Event)
126
- type event = {
125
+ @editor.completeFrom(WebApiEvent)
126
+ type event = private {
127
127
  /**
128
128
  Returns the type of event, e.g. "click", "hashchange", or "submit".
129
129
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Event/type)
@@ -178,11 +178,11 @@ type event = {
178
178
  }
179
179
 
180
180
  /**
181
- A controller object that allows you to abort one or more DOM requests as and when desired.
181
+ A controller object that allows you to abort one or more WebApiDOM requests as and when desired.
182
182
  [See AbortController on MDN](https://developer.mozilla.org/docs/Web/API/AbortController)
183
183
  */
184
184
  @editor.completeFrom(AbortController)
185
- type rec abortController = {
185
+ type rec abortController = private {
186
186
  /**
187
187
  Returns the AbortSignal object associated with this object.
188
188
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AbortController/signal)
@@ -191,10 +191,10 @@ type rec abortController = {
191
191
  }
192
192
 
193
193
  /**
194
- A signal object that allows you to communicate with a DOM request (such as a Fetch) and abort it if required via an AbortController object.
194
+ A signal object that allows you to communicate with a WebApiDOM request (such as a WebApiFetch) and abort it if required via an AbortController object.
195
195
  [See AbortSignal on MDN](https://developer.mozilla.org/docs/Web/API/AbortSignal)
196
196
  */
197
- @editor.completeFrom(AbortSignal) and abortSignal = {
197
+ @editor.completeFrom(AbortSignal) and abortSignal = private {
198
198
  ...eventTarget,
199
199
  /**
200
200
  Returns true if this AbortSignal's AbortController has signaled to abort, and false otherwise.
@@ -227,6 +227,6 @@ The ExtendableEvent interface extends the lifetime of the install and activate e
227
227
  [See ExtendableEvent on MDN](https://developer.mozilla.org/docs/Web/API/ExtendableEvent)
228
228
  */
229
229
  @editor.completeFrom(ExtendableEvent)
230
- type extendableEvent = {
230
+ type extendableEvent = private {
231
231
  ...event,
232
232
  }
@@ -1,11 +1,9 @@
1
- open EventAPI
2
-
3
1
  module Impl = (
4
2
  T: {
5
3
  type t
6
4
  },
7
5
  ) => {
8
- external asExtendableEvent: T.t => extendableEvent = "%identity"
6
+ external asExtendableEvent: T.t => EventTypes.extendableEvent = "%identity"
9
7
 
10
8
  include Event.Impl({type t = T.t})
11
9
 
@@ -13,4 +11,4 @@ module Impl = (
13
11
  external waitUntil: (T.t, promise<'a>) => unit = "waitUntil"
14
12
  }
15
13
 
16
- include Impl({type t = extendableEvent})
14
+ include Impl({type t = EventTypes.extendableEvent})
@@ -1,48 +1,46 @@
1
- open FileAPI
2
- open FetchAPI
3
- open URLAPI
1
+ type t = FetchTypes.bodyInit
4
2
 
5
3
  /**
6
4
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_a_body)
7
5
  */
8
- external fromString: string => bodyInit = "%identity"
6
+ external fromString: string => t = "%identity"
9
7
 
10
8
  /**
11
9
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_a_body)
12
10
  */
13
- external fromArrayBuffer: ArrayBuffer.t => bodyInit = "%identity"
11
+ external fromArrayBuffer: ArrayBuffer.t => t = "%identity"
14
12
 
15
13
  /**
16
14
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_a_body)
17
15
  */
18
- external fromTypedArray: TypedArray.t<'t> => bodyInit = "%identity"
16
+ external fromTypedArray: TypedArray.t<'t> => t = "%identity"
19
17
 
20
18
  /**
21
19
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_a_body)
22
20
  */
23
- external fromDataView: DataView.t => bodyInit = "%identity"
21
+ external fromDataView: DataView.t => t = "%identity"
24
22
 
25
23
  /**
26
24
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_a_body)
27
25
  */
28
- external fromBlob: blob => bodyInit = "%identity"
26
+ external fromBlob: Blob.t => t = "%identity"
29
27
 
30
28
  /**
31
29
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_a_body)
32
30
  */
33
- external fromFile: file => bodyInit = "%identity"
31
+ external fromFile: File.t => t = "%identity"
34
32
 
35
33
  /**
36
34
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_a_body)
37
35
  */
38
- external fromURLSearchParams: urlSearchParams => bodyInit = "%identity"
36
+ external fromURLSearchParams: URLSearchParams.t => t = "%identity"
39
37
 
40
38
  /**
41
39
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_a_body)
42
40
  */
43
- external fromFormData: formData => bodyInit = "%identity"
41
+ external fromFormData: FormData.t => t = "%identity"
44
42
 
45
43
  /**
46
44
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_a_body)
47
45
  */
48
- external fromReadableStream: readableStream<'t> => bodyInit = "%identity"
46
+ external fromReadableStream: ReadableStream.t<'t> => t = "%identity"
@@ -0,0 +1,12 @@
1
+ /**
2
+ Starts the process of fetching a resource from the network, returning a promise that is fulfilled once the response is available.
3
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/fetch)
4
+ */
5
+ external fetch: (string, ~init: Request.requestInit=?) => promise<Response.t> = "fetch"
6
+
7
+ /**
8
+ Starts the process of fetching a resource from the network, returning a promise that is fulfilled once the response is available.
9
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/fetch)
10
+ */
11
+ external fetchWithRequest: (Request.t, ~init: Request.requestInit=?) => promise<Response.t> =
12
+ "fetch"
@@ -1,9 +1,5 @@
1
1
  @@warning("-30")
2
2
 
3
- open Prelude
4
- open EventAPI
5
- open FileAPI
6
-
7
3
  type responseType =
8
4
  | @as("basic") Basic
9
5
  | @as("cors") Cors
@@ -73,25 +69,25 @@ type requestPriority =
73
69
  | @as("low") Low
74
70
 
75
71
  /**
76
- @editor.completeFrom(Response) This Fetch API interface allows you to perform various actions on HTTP request and response headers. These actions include retrieving, setting, adding to, and removing. A Headers object has an associated header list, which is initially empty and consists of zero or more name and value pairs.  You can add to this using methods like append() (see Examples.) In all methods of this interface, header names are matched by case-insensitive byte sequence.
72
+ @editor.completeFrom(Response) This WebApiFetch API interface allows you to perform various actions on HTTP request and response headers. These actions include retrieving, setting, adding to, and removing. A Headers object has an associated header list, which is initially empty and consists of zero or more name and value pairs.  You can add to this using methods like append() (see Examples.) In all methods of this interface, header names are matched by case-insensitive byte sequence.
77
73
  [See Headers on MDN](https://developer.mozilla.org/docs/Web/API/Headers)
78
74
  */
79
75
  @editor.completeFrom(Headers)
80
- type headers = {}
76
+ type headers = private {}
81
77
 
82
78
  /**
83
- This Fetch API interface represents a resource request.
79
+ This WebApiFetch API interface represents a resource request.
84
80
  [See Request on MDN](https://developer.mozilla.org/docs/Web/API/Request)
85
81
  */
86
82
  @editor.completeFrom(Request)
87
- type request = {
83
+ type request = private {
88
84
  /**
89
85
  Returns request's HTTP method, which is "GET" by default.
90
86
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/method)
91
87
  */
92
88
  method: string,
93
89
  /**
94
- Returns the URL of request as a string.
90
+ Returns the WebApiURL of request as a string.
95
91
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/url)
96
92
  */
97
93
  url: string,
@@ -106,7 +102,7 @@ type request = {
106
102
  */
107
103
  destination: requestDestination,
108
104
  /**
109
- Returns the referrer of request. Its value can be a same-origin URL if explicitly set in init, the empty string to indicate no referrer, and "about:client" when defaulting to the global's default. This is used during fetching to determine the value of the `Referer` header of the request being made.
105
+ Returns the referrer of request. Its value can be a same-origin WebApiURL if explicitly set in init, the empty string to indicate no referrer, and "about:client" when defaulting to the global's default. This is used during fetching to determine the value of the `Referer` header of the request being made.
110
106
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/referrer)
111
107
  */
112
108
  referrer: string,
@@ -149,11 +145,11 @@ type request = {
149
145
  Returns the signal associated with request, which is an AbortSignal object indicating whether or not request has been aborted, and its abort event handler.
150
146
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/signal)
151
147
  */
152
- signal: abortSignal,
148
+ signal: EventTypes.abortSignal,
153
149
  /**
154
150
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/body)
155
151
  */
156
- body: Null.t<readableStream<array<int>>>,
152
+ body: Null.t<FileTypes.readableStream<array<int>>>,
157
153
  /**
158
154
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/bodyUsed)
159
155
  */
@@ -161,11 +157,11 @@ type request = {
161
157
  }
162
158
 
163
159
  /**
164
- This Fetch API interface represents the response to a request.
160
+ This WebApiFetch API interface represents the response to a request.
165
161
  [See Response on MDN](https://developer.mozilla.org/docs/Web/API/Response)
166
162
  */
167
163
  @editor.completeFrom(Response)
168
- type response = {
164
+ type response = private {
169
165
  /**
170
166
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response/type)
171
167
  */
@@ -198,7 +194,7 @@ type response = {
198
194
  /**
199
195
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/body)
200
196
  */
201
- body: Null.t<readableStream<array<int>>>,
197
+ body: Null.t<FileTypes.readableStream<array<int>>>,
202
198
  /**
203
199
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/bodyUsed)
204
200
  */
@@ -210,16 +206,18 @@ Provides a way to easily construct a set of key/value pairs representing form fi
210
206
  [See FormData on MDN](https://developer.mozilla.org/docs/Web/API/FormData)
211
207
  */
212
208
  @editor.completeFrom(FormData)
213
- type formData = {}
209
+ type formData = private {}
214
210
 
215
211
  @editor.completeFrom(HeadersInit) type headersInit
216
212
 
217
213
  @editor.completeFrom(BodyInit) type bodyInit
218
214
 
219
- type requestInfo = any
215
+ type requestInfo = unknown
220
216
 
221
- @editor.completeFrom(FormDataEntryValue)
222
- type formDataEntryValue
217
+ @editor.completeFrom(FormDataEntryValue) @unboxed
218
+ type formDataEntryValue =
219
+ | String(string)
220
+ | File(FileTypes.file)
223
221
 
224
222
  type requestInit = {
225
223
  /**
@@ -235,7 +233,7 @@ type requestInit = {
235
233
  */
236
234
  mutable body?: bodyInit,
237
235
  /**
238
- A string whose value is a same-origin URL, "about:client", or the empty string, to set request's referrer.
236
+ A string whose value is a same-origin WebApiURL, "about:client", or the empty string, to set request's referrer.
239
237
  */
240
238
  mutable referrer?: string,
241
239
  /**
@@ -269,7 +267,7 @@ type requestInit = {
269
267
  /**
270
268
  An AbortSignal to set request's signal.
271
269
  */
272
- mutable signal?: Null.t<abortSignal>,
270
+ mutable signal?: Null.t<EventTypes.abortSignal>,
273
271
  mutable priority?: requestPriority,
274
272
  /**
275
273
  Can only be null. Used to disassociate request from any Window.
@@ -1,70 +1,71 @@
1
- open FetchAPI
2
- open FileAPI
3
- open DOMAPI
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData)
3
+ */
4
+ type t = FetchTypes.formData = private {...FetchTypes.formData}
5
+ type formDataEntryValue = FormDataEntryValue.t
4
6
 
5
7
  /**
6
8
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData)
7
9
  */
8
10
  @new
9
- external make: (~form: htmlFormElement=?, ~submitter: htmlElement=?) => formData = "FormData"
11
+ external make: (~form: 'form=?, ~submitter: 'submitter=?) => t = "FormData"
10
12
 
11
13
  /**
12
14
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/append)
13
15
  */
14
16
  @send
15
- external append: (formData, ~name: string, ~value: string) => unit = "append"
17
+ external append: (t, ~name: string, ~value: string) => unit = "append"
16
18
 
17
19
  /**
18
20
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/append)
19
21
  */
20
22
  @send
21
- external appendBlob: (formData, ~name: string, ~blobValue: blob, ~filename: string=?) => unit =
22
- "append"
23
+ external appendBlob: (t, ~name: string, ~blobValue: Blob.t, ~filename: string=?) => unit = "append"
23
24
 
24
25
  /**
25
26
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/delete)
26
27
  */
27
28
  @send
28
- external delete: (formData, string) => unit = "delete"
29
+ external delete: (t, string) => unit = "delete"
29
30
 
30
31
  /**
31
32
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/get)
32
33
  */
33
34
  @send
34
- external get: (formData, string) => null<formDataEntryValue> = "get"
35
+ external get: (t, string) => null<formDataEntryValue> = "get"
35
36
 
36
37
  /**
37
38
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/getAll)
38
39
  */
39
40
  @send
40
- external getAll: (formData, string) => array<formDataEntryValue> = "getAll"
41
+ external getAll: (t, string) => array<formDataEntryValue> = "getAll"
41
42
 
42
43
  /**
43
44
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/has)
44
45
  */
45
46
  @send
46
- external has: (formData, string) => bool = "has"
47
+ external has: (t, string) => bool = "has"
47
48
 
48
49
  /**
49
50
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/entries)
50
51
  */
51
52
  @send
52
- external entries: formData => Iterator.t<(string, formDataEntryValue)> = "entries"
53
+ external entries: t => Iterator.t<(string, formDataEntryValue)> = "entries"
53
54
 
54
55
  /**
55
56
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/keys)
56
57
  */
57
58
  @send
58
- external keys: formData => Iterator.t<string> = "keys"
59
+ external keys: t => Iterator.t<string> = "keys"
59
60
 
60
61
  /**
61
62
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/set)
62
63
  */
63
64
  @send
64
- external set: (formData, ~name: string, ~value: string) => unit = "set"
65
+ external set: (t, ~name: string, ~value: string) => unit = "set"
65
66
 
66
67
  /**
67
68
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FormData/set)
68
69
  */
69
70
  @send
70
- external setBlob: (formData, ~name: string, ~blobValue: blob, ~filename: string=?) => unit = "set"
71
+ external setBlob: (t, ~name: string, ~blobValue: Blob.t, ~filename: string=?) => unit = "set"
@@ -0,0 +1,2 @@
1
+ @unboxed
2
+ type t = FetchTypes.formDataEntryValue = | ...FetchTypes.formDataEntryValue