@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
@@ -0,0 +1,79 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ReadableStream)
3
+ */
4
+ type t<'r> = FileTypes.readableStream<'r>
5
+
6
+ /**
7
+ `make()`
8
+
9
+ Creates a new empty `ReadableStream`.
10
+
11
+ ```res
12
+ let stream: ReadableStream.t<string> = ReadableStream.make()
13
+ ```
14
+
15
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ReadableStream)
16
+ */
17
+ @new
18
+ external make: unit => t<'t> = "ReadableStream"
19
+
20
+ /**
21
+ `fromUnderlyingSource(underlyingSource<'t>, ~strategy: queuingStrategy<'t>=?)`
22
+
23
+ Creates a new `ReadableStream` from an `underlyingSource`, with an optional queuing strategy.
24
+
25
+ ```res
26
+ let stream = ReadableStream.fromUnderlyingSource(myUnderlyingSource)
27
+
28
+ let streamWithStrategy =
29
+ ReadableStream.fromUnderlyingSource(myUnderlyingSource, ~strategy=myQueuingStrategy)
30
+ ```
31
+
32
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ReadableStream)
33
+ */
34
+ @new
35
+ external fromUnderlyingSource: (
36
+ FileTypes.underlyingSource<'t>,
37
+ ~strategy: FileTypes.queuingStrategy<'t>=?,
38
+ ) => t<'t> = "ReadableStream"
39
+
40
+ /**
41
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ReadableStream/cancel)
42
+ */
43
+ @send
44
+ external cancel: (t<'r>, ~reason: JSON.t=?) => promise<unit> = "cancel"
45
+
46
+ /**
47
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ReadableStream/getReader)
48
+ */
49
+ @send
50
+ external getReader: (
51
+ t<'r>,
52
+ ~options: FileTypes.readableStreamGetReaderOptions=?,
53
+ ) => FileTypes.readableStreamReader<'r> = "getReader"
54
+
55
+ /**
56
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeThrough)
57
+ */
58
+ @send
59
+ external pipeThrough: (
60
+ t<'r>,
61
+ ~transform: FileTypes.readableWritablePair<'t, 'r>,
62
+ ~options: FileTypes.streamPipeOptions=?,
63
+ ) => t<'t> = "pipeThrough"
64
+
65
+ /**
66
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeTo)
67
+ */
68
+ @send
69
+ external pipeTo: (
70
+ t<'r>,
71
+ ~destination: FileTypes.writableStream<'r>,
72
+ ~options: FileTypes.streamPipeOptions=?,
73
+ ) => promise<unit> = "pipeTo"
74
+
75
+ /**
76
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ReadableStream/tee)
77
+ */
78
+ @send
79
+ external tee: t<'r> => array<t<unit>> = "tee"
@@ -0,0 +1,27 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WritableStream)
3
+ */
4
+ @new
5
+ external make: (
6
+ ~underlyingSink: FileTypes.underlyingSink<'w>=?,
7
+ ~strategy: FileTypes.queuingStrategy<'w>=?,
8
+ ) => FileTypes.writableStream<'w> = "WritableStream"
9
+
10
+ /**
11
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WritableStream/abort)
12
+ */
13
+ @send
14
+ external abort: (FileTypes.writableStream<'w>, ~reason: JSON.t=?) => promise<unit> = "abort"
15
+
16
+ /**
17
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WritableStream/close)
18
+ */
19
+ @send
20
+ external close: FileTypes.writableStream<'w> => promise<unit> = "close"
21
+
22
+ /**
23
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WritableStream/getWriter)
24
+ */
25
+ @send
26
+ external getWriter: FileTypes.writableStream<'w> => FileTypes.writableStreamDefaultWriter<'w> =
27
+ "getWriter"
@@ -1,7 +1,5 @@
1
- open FileAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/error)
5
3
  */
6
4
  @send
7
- external error: (writableStreamDefaultController, ~e: JSON.t=?) => unit = "error"
5
+ external error: (FileTypes.writableStreamDefaultController, ~e: JSON.t=?) => unit = "error"
@@ -0,0 +1,35 @@
1
+ @@warning("-30")
2
+
3
+ /**
4
+ [See FileSystemEntry on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemEntry)
5
+ */
6
+ @editor.completeFrom(FileSystemEntry)
7
+ type fileSystemEntry = BaseFileAndDirectoryEntries.fileSystemEntry
8
+
9
+ /**
10
+ [See FileSystemDirectoryEntry on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry)
11
+ */
12
+ @editor.completeFrom(FileSystemDirectoryEntry)
13
+ type fileSystemDirectoryEntry = BaseFileAndDirectoryEntries.fileSystemDirectoryEntry
14
+
15
+ /**
16
+ [See FileSystem on MDN](https://developer.mozilla.org/docs/Web/API/FileSystem)
17
+ */
18
+ type fileSystem = BaseFileAndDirectoryEntries.fileSystem
19
+
20
+ /**
21
+ [See FileSystemDirectoryReader on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryReader)
22
+ */
23
+ @editor.completeFrom(FileSystemDirectoryReader)
24
+ type fileSystemDirectoryReader = private {}
25
+
26
+ type fileSystemFlags = {
27
+ mutable create?: bool,
28
+ mutable exclusive?: bool,
29
+ }
30
+
31
+ type fileSystemEntryCallback = fileSystemEntry => unit
32
+
33
+ type errorCallback = DOM.domException => unit
34
+
35
+ type fileSystemEntriesCallback = array<fileSystemEntry> => unit
@@ -0,0 +1,42 @@
1
+ external asFileSystemEntry: FileAndDirectoryEntriesTypes.fileSystemDirectoryEntry => FileAndDirectoryEntriesTypes.fileSystemEntry =
2
+ "%identity"
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/getParent)
5
+ */
6
+ @send
7
+ external getParent: (
8
+ FileAndDirectoryEntriesTypes.fileSystemDirectoryEntry,
9
+ ~successCallback: FileAndDirectoryEntriesTypes.fileSystemEntryCallback=?,
10
+ ~errorCallback: FileAndDirectoryEntriesTypes.errorCallback=?,
11
+ ) => unit = "getParent"
12
+
13
+ /**
14
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/createReader)
15
+ */
16
+ @send
17
+ external createReader: FileAndDirectoryEntriesTypes.fileSystemDirectoryEntry => FileAndDirectoryEntriesTypes.fileSystemDirectoryReader =
18
+ "createReader"
19
+
20
+ /**
21
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/getFile)
22
+ */
23
+ @send
24
+ external getFile: (
25
+ FileAndDirectoryEntriesTypes.fileSystemDirectoryEntry,
26
+ ~path: string=?,
27
+ ~options: FileAndDirectoryEntriesTypes.fileSystemFlags=?,
28
+ ~successCallback: FileAndDirectoryEntriesTypes.fileSystemEntryCallback=?,
29
+ ~errorCallback: FileAndDirectoryEntriesTypes.errorCallback=?,
30
+ ) => unit = "getFile"
31
+
32
+ /**
33
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/getDirectory)
34
+ */
35
+ @send
36
+ external getDirectory: (
37
+ FileAndDirectoryEntriesTypes.fileSystemDirectoryEntry,
38
+ ~path: string=?,
39
+ ~options: FileAndDirectoryEntriesTypes.fileSystemFlags=?,
40
+ ~successCallback: FileAndDirectoryEntriesTypes.fileSystemEntryCallback=?,
41
+ ~errorCallback: FileAndDirectoryEntriesTypes.errorCallback=?,
42
+ ) => unit = "getDirectory"
@@ -0,0 +1,9 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryReader/readEntries)
3
+ */
4
+ @send
5
+ external readEntries: (
6
+ FileAndDirectoryEntriesTypes.fileSystemDirectoryReader,
7
+ ~successCallback: FileAndDirectoryEntriesTypes.fileSystemEntriesCallback,
8
+ ~errorCallback: FileAndDirectoryEntriesTypes.errorCallback=?,
9
+ ) => unit = "readEntries"
@@ -0,0 +1,9 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/getParent)
3
+ */
4
+ @send
5
+ external getParent: (
6
+ FileAndDirectoryEntriesTypes.fileSystemEntry,
7
+ ~successCallback: FileAndDirectoryEntriesTypes.fileSystemEntryCallback=?,
8
+ ~errorCallback: FileAndDirectoryEntriesTypes.errorCallback=?,
9
+ ) => unit = "getParent"
@@ -0,0 +1,16 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/GamepadHapticActuator/playEffect)
3
+ */
4
+ @send
5
+ external playEffect: (
6
+ GamepadTypes.gamepadHapticActuator,
7
+ ~type_: GamepadTypes.gamepadHapticEffectType,
8
+ ~params: GamepadTypes.gamepadEffectParameters=?,
9
+ ) => promise<GamepadTypes.gamepadHapticsResult> = "playEffect"
10
+
11
+ /**
12
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/GamepadHapticActuator/reset)
13
+ */
14
+ @send
15
+ external reset: GamepadTypes.gamepadHapticActuator => promise<GamepadTypes.gamepadHapticsResult> =
16
+ "reset"
@@ -31,15 +31,15 @@ type gamepadButton = {
31
31
  }
32
32
 
33
33
  /**
34
- This Gamepad API interface represents hardware in the controller designed to provide haptic feedback to the user (if available), most commonly vibration hardware.
34
+ This WebApiGamepad API interface represents hardware in the controller designed to provide haptic feedback to the user (if available), most commonly vibration hardware.
35
35
  [See GamepadHapticActuator on MDN](https://developer.mozilla.org/docs/Web/API/GamepadHapticActuator)
36
36
  */
37
37
  @editor.completeFrom(GamepadHapticActuator)
38
- type gamepadHapticActuator = {}
38
+ type gamepadHapticActuator = private {}
39
39
 
40
40
  /**
41
- This Gamepad API interface defines an individual gamepad or other controller, allowing access to information such as button presses, axis positions, and id.
42
- [See Gamepad on MDN](https://developer.mozilla.org/docs/Web/API/Gamepad)
41
+ This WebApiGamepad API interface defines an individual gamepad or other controller, allowing access to information such as button presses, axis positions, and id.
42
+ [See WebApiGamepad on MDN](https://developer.mozilla.org/docs/Web/API/Gamepad)
43
43
  */
44
44
  type gamepad = {
45
45
  /**
@@ -0,0 +1,31 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Geolocation/getCurrentPosition)
3
+ */
4
+ @send
5
+ external getCurrentPosition: (
6
+ GeolocationTypes.geolocation,
7
+ ~successCallback: GeolocationTypes.positionCallback,
8
+ ~errorCallback: GeolocationTypes.positionErrorCallback=?,
9
+ ~options: GeolocationTypes.positionOptions=?,
10
+ ) => unit = "getCurrentPosition"
11
+
12
+ /**
13
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Geolocation/watchPosition)
14
+ */
15
+ @send
16
+ external watchPosition: (
17
+ GeolocationTypes.geolocation,
18
+ ~successCallback: GeolocationTypes.positionCallback,
19
+ ~errorCallback: GeolocationTypes.positionErrorCallback=?,
20
+ ~options: GeolocationTypes.positionOptions=?,
21
+ ) => int = "watchPosition"
22
+
23
+ /**
24
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Geolocation/clearWatch)
25
+ */
26
+ @send
27
+ external clearWatch: (GeolocationTypes.geolocation, int) => unit = "clearWatch"
28
+
29
+ module GeolocationCoordinates = GeolocationCoordinates
30
+ module GeolocationPosition = GeolocationPosition
31
+ module Types = GeolocationTypes
@@ -1,7 +1,5 @@
1
- open GeolocationAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/toJSON)
5
3
  */
6
4
  @send
7
- external toJSON: geolocationCoordinates => Dict.t<string> = "toJSON"
5
+ external toJSON: GeolocationTypes.geolocationCoordinates => Dict.t<string> = "toJSON"
@@ -1,7 +1,5 @@
1
- open GeolocationAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/GeolocationPosition/toJSON)
5
3
  */
6
4
  @send
7
- external toJSON: geolocationPosition => Dict.t<string> = "toJSON"
5
+ external toJSON: GeolocationTypes.geolocationPosition => Dict.t<string> = "toJSON"
@@ -1,16 +1,16 @@
1
1
  @@warning("-30")
2
2
  /**
3
3
  An object able to programmatically obtain the position of the device. It gives Web content access to the location of the device. This allows a Web site or app to offer customized results based on the user's location.
4
- [See Geolocation on MDN](https://developer.mozilla.org/docs/Web/API/Geolocation)
4
+ [See WebApiGeolocation on MDN](https://developer.mozilla.org/docs/Web/API/Geolocation)
5
5
  */
6
- @editor.completeFrom(Geolocation)
7
- type geolocation = {}
6
+ @editor.completeFrom(WebApiGeolocation)
7
+ type geolocation = private {}
8
8
 
9
9
  /**
10
10
  [See GeolocationCoordinates on MDN](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates)
11
11
  */
12
12
  @editor.completeFrom(GeolocationCoordinates)
13
- type geolocationCoordinates = {
13
+ type geolocationCoordinates = private {
14
14
  /**
15
15
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/accuracy)
16
16
  */
@@ -45,7 +45,7 @@ type geolocationCoordinates = {
45
45
  [See GeolocationPosition on MDN](https://developer.mozilla.org/docs/Web/API/GeolocationPosition)
46
46
  */
47
47
  @editor.completeFrom(GeolocationPosition)
48
- type geolocationPosition = {
48
+ type geolocationPosition = private {
49
49
  /**
50
50
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/GeolocationPosition/coords)
51
51
  */
@@ -1,32 +1,37 @@
1
- open HistoryAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/History/go)
5
3
  */
6
4
  @send
7
- external go: (history, ~delta: int=?) => unit = "go"
5
+ external go: (HistoryTypes.history, ~delta: int=?) => unit = "go"
8
6
 
9
7
  /**
10
8
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/History/back)
11
9
  */
12
10
  @send
13
- external back: history => unit = "back"
11
+ external back: HistoryTypes.history => unit = "back"
14
12
 
15
13
  /**
16
14
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/History/forward)
17
15
  */
18
16
  @send
19
- external forward: history => unit = "forward"
17
+ external forward: HistoryTypes.history => unit = "forward"
20
18
 
21
19
  /**
22
20
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/History/pushState)
23
21
  */
24
22
  @send
25
- external pushState: (history, ~data: JSON.t, ~unused: string, ~url: string=?) => unit = "pushState"
23
+ external pushState: (HistoryTypes.history, ~data: JSON.t, ~unused: string, ~url: string=?) => unit =
24
+ "pushState"
26
25
 
27
26
  /**
28
27
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/History/replaceState)
29
28
  */
30
29
  @send
31
- external replaceState: (history, ~data: JSON.t, ~unused: string, ~url: string=?) => unit =
32
- "replaceState"
30
+ external replaceState: (
31
+ HistoryTypes.history,
32
+ ~data: JSON.t,
33
+ ~unused: string,
34
+ ~url: string=?,
35
+ ) => unit = "replaceState"
36
+
37
+ module Types = HistoryTypes
@@ -6,9 +6,10 @@ type scrollRestoration =
6
6
 
7
7
  /**
8
8
  Allows manipulation of the browser session history, that is the pages visited in the tab or frame that the current page is loaded in.
9
- [See History on MDN](https://developer.mozilla.org/docs/Web/API/History)
9
+ [See WebApiHistory on MDN](https://developer.mozilla.org/docs/Web/API/History)
10
+ TODO: mark as private once mutating fields of private records is allowed
10
11
  */
11
- @editor.completeFrom(History)
12
+ @editor.completeFrom(WebApiHistory)
12
13
  type history = {
13
14
  /**
14
15
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/History/length)
@@ -1,6 +1,4 @@
1
- open IndexedDBAPI
2
-
3
- include EventTarget.Impl({type t = idbDatabase})
1
+ include EventTarget.Impl({type t = IndexedDbTypes.idbDatabase})
4
2
 
5
3
  /**
6
4
  Returns a new transaction with the given mode ("readonly" or "readwrite") and scope which can be a single object store name or an array of names.
@@ -8,11 +6,11 @@ Returns a new transaction with the given mode ("readonly" or "readwrite") and sc
8
6
  */
9
7
  @send
10
8
  external transaction: (
11
- idbDatabase,
9
+ IndexedDbTypes.idbDatabase,
12
10
  ~storeNames: string,
13
- ~mode: idbTransactionMode=?,
14
- ~options: idbTransactionOptions=?,
15
- ) => idbTransaction = "transaction"
11
+ ~mode: IndexedDbTypes.idbTransactionMode=?,
12
+ ~options: IndexedDbTypes.idbTransactionOptions=?,
13
+ ) => IndexedDbTypes.idbTransaction = "transaction"
16
14
 
17
15
  /**
18
16
  Returns a new transaction with the given mode ("readonly" or "readwrite") and scope which can be a single object store name or an array of names.
@@ -20,18 +18,18 @@ Returns a new transaction with the given mode ("readonly" or "readwrite") and sc
20
18
  */
21
19
  @send
22
20
  external transaction2: (
23
- idbDatabase,
21
+ IndexedDbTypes.idbDatabase,
24
22
  ~storeNames: array<string>,
25
- ~mode: idbTransactionMode=?,
26
- ~options: idbTransactionOptions=?,
27
- ) => idbTransaction = "transaction"
23
+ ~mode: IndexedDbTypes.idbTransactionMode=?,
24
+ ~options: IndexedDbTypes.idbTransactionOptions=?,
25
+ ) => IndexedDbTypes.idbTransaction = "transaction"
28
26
 
29
27
  /**
30
28
  Closes the connection once all running transactions have finished.
31
29
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBDatabase/close)
32
30
  */
33
31
  @send
34
- external close: idbDatabase => unit = "close"
32
+ external close: IndexedDbTypes.idbDatabase => unit = "close"
35
33
 
36
34
  /**
37
35
  Creates a new object store with the given name and options and returns a new IDBObjectStore.
@@ -41,10 +39,10 @@ Throws a "InvalidStateError" DOMException if not called within an upgrade transa
41
39
  */
42
40
  @send
43
41
  external createObjectStore: (
44
- idbDatabase,
42
+ IndexedDbTypes.idbDatabase,
45
43
  ~name: string,
46
- ~options: idbObjectStoreParameters=?,
47
- ) => idbObjectStore = "createObjectStore"
44
+ ~options: IndexedDbTypes.idbObjectStoreParameters=?,
45
+ ) => IndexedDbTypes.idbObjectStore = "createObjectStore"
48
46
 
49
47
  /**
50
48
  Deletes the object store with the given name.
@@ -53,4 +51,4 @@ Throws a "InvalidStateError" DOMException if not called within an upgrade transa
53
51
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBDatabase/deleteObjectStore)
54
52
  */
55
53
  @send
56
- external deleteObjectStore: (idbDatabase, string) => unit = "deleteObjectStore"
54
+ external deleteObjectStore: (IndexedDbTypes.idbDatabase, string) => unit = "deleteObjectStore"
@@ -1,24 +1,28 @@
1
- open IndexedDBAPI
2
-
3
1
  /**
4
2
  Attempts to open a connection to the named database with the current version, or 1 if it does not already exist. If the request is successful request's result will be the connection.
5
3
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBFactory/open)
6
4
  */
7
5
  @send
8
- external open_: (idbFactory, ~name: string, ~version: int=?) => idbOpenDBRequest = "open"
6
+ external open_: (
7
+ IndexedDbTypes.idbFactory,
8
+ ~name: string,
9
+ ~version: int=?,
10
+ ) => IndexedDbTypes.idbOpenDBRequest = "open"
9
11
 
10
12
  /**
11
13
  Attempts to delete the named database. If the database already exists and there are open connections that don't close in response to a versionchange event, the request will be blocked until all they close. If the request is successful request's result will be null.
12
14
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBFactory/deleteDatabase)
13
15
  */
14
16
  @send
15
- external deleteDatabase: (idbFactory, string) => idbOpenDBRequest = "deleteDatabase"
17
+ external deleteDatabase: (IndexedDbTypes.idbFactory, string) => IndexedDbTypes.idbOpenDBRequest =
18
+ "deleteDatabase"
16
19
 
17
20
  /**
18
21
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBFactory/databases)
19
22
  */
20
23
  @send
21
- external databases: idbFactory => promise<array<idbDatabaseInfo>> = "databases"
24
+ external databases: IndexedDbTypes.idbFactory => promise<array<IndexedDbTypes.idbDatabaseInfo>> =
25
+ "databases"
22
26
 
23
27
  /**
24
28
  Compares two values as keys. Returns -1 if key1 precedes key2, 1 if key2 precedes key1, and 0 if the keys are equal.
@@ -27,4 +31,4 @@ Throws a "DataError" DOMException if either input is not a valid key.
27
31
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBFactory/cmp)
28
32
  */
29
33
  @send
30
- external cmp: (idbFactory, ~first: JSON.t, ~second: JSON.t) => int = "cmp"
34
+ external cmp: (IndexedDbTypes.idbFactory, ~first: JSON.t, ~second: JSON.t) => int = "cmp"
@@ -1,6 +1,3 @@
1
- open IndexedDBAPI
2
- open Prelude
3
-
4
1
  /**
5
2
  Retrieves the value of the first record matching the given key or key range in query.
6
3
 
@@ -8,7 +5,7 @@ If successful, request's result will be the value, or undefined if there was no
8
5
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBIndex/get)
9
6
  */
10
7
  @send
11
- external get: (idbIndex, any) => idbRequest<JSON.t> = "get"
8
+ external get: (IndexedDbTypes.idbIndex, unknown) => IndexedDbTypes.idbRequest<JSON.t> = "get"
12
9
 
13
10
  /**
14
11
  Retrieves the key of the first record matching the given key or key range in query.
@@ -17,7 +14,7 @@ If successful, request's result will be the key, or undefined if there was no ma
17
14
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBIndex/getKey)
18
15
  */
19
16
  @send
20
- external getKey: (idbIndex, any) => idbRequest<any> = "getKey"
17
+ external getKey: (IndexedDbTypes.idbIndex, unknown) => IndexedDbTypes.idbRequest<unknown> = "getKey"
21
18
 
22
19
  /**
23
20
  Retrieves the values of the records matching the given key or key range in query (up to count if given).
@@ -26,7 +23,11 @@ If successful, request's result will be an Array of the values.
26
23
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBIndex/getAll)
27
24
  */
28
25
  @send
29
- external getAll: (idbIndex, ~query: any=?, ~count: int=?) => idbRequest<array<JSON.t>> = "getAll"
26
+ external getAll: (
27
+ IndexedDbTypes.idbIndex,
28
+ ~query: unknown=?,
29
+ ~count: int=?,
30
+ ) => IndexedDbTypes.idbRequest<array<JSON.t>> = "getAll"
30
31
 
31
32
  /**
32
33
  Retrieves the keys of records matching the given key or key range in query (up to count if given).
@@ -35,8 +36,11 @@ If successful, request's result will be an Array of the keys.
35
36
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBIndex/getAllKeys)
36
37
  */
37
38
  @send
38
- external getAllKeys: (idbIndex, ~query: any=?, ~count: int=?) => idbRequest<array<idbValidKey>> =
39
- "getAllKeys"
39
+ external getAllKeys: (
40
+ IndexedDbTypes.idbIndex,
41
+ ~query: unknown=?,
42
+ ~count: int=?,
43
+ ) => IndexedDbTypes.idbRequest<array<IndexedDbTypes.idbValidKey>> = "getAllKeys"
40
44
 
41
45
  /**
42
46
  Retrieves the number of records matching the given key or key range in query.
@@ -45,7 +49,8 @@ If successful, request's result will be the count.
45
49
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/IDBIndex/count)
46
50
  */
47
51
  @send
48
- external count: (idbIndex, ~query: any=?) => idbRequest<int> = "count"
52
+ external count: (IndexedDbTypes.idbIndex, ~query: unknown=?) => IndexedDbTypes.idbRequest<int> =
53
+ "count"
49
54
 
50
55
  /**
51
56
  Opens a cursor over the records matching query, ordered by direction. If query is null, all records in index are matched.
@@ -55,10 +60,10 @@ If successful, request's result will be an IDBCursorWithValue, or null if there
55
60
  */
56
61
  @send
57
62
  external openCursor: (
58
- idbIndex,
59
- ~query: any=?,
60
- ~direction: idbCursorDirection=?,
61
- ) => idbRequest<any> = "openCursor"
63
+ IndexedDbTypes.idbIndex,
64
+ ~query: unknown=?,
65
+ ~direction: IndexedDbTypes.idbCursorDirection=?,
66
+ ) => IndexedDbTypes.idbRequest<unknown> = "openCursor"
62
67
 
63
68
  /**
64
69
  Opens a cursor with key only flag set over the records matching query, ordered by direction. If query is null, all records in index are matched.
@@ -68,7 +73,7 @@ If successful, request's result will be an IDBCursor, or null if there were no m
68
73
  */
69
74
  @send
70
75
  external openKeyCursor: (
71
- idbIndex,
72
- ~query: any=?,
73
- ~direction: idbCursorDirection=?,
74
- ) => idbRequest<any> = "openKeyCursor"
76
+ IndexedDbTypes.idbIndex,
77
+ ~query: unknown=?,
78
+ ~direction: IndexedDbTypes.idbCursorDirection=?,
79
+ ) => IndexedDbTypes.idbRequest<unknown> = "openKeyCursor"