@rescript/webapi 0.1.0-experimental-61b1074 → 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,223 @@
1
+ /**
2
+ `fromHTMLImageElement(~image: HTMLImageElement.t, ~init: videoFrameInit=?)`
3
+
4
+ Creates a new `VideoFrame` from an `HTMLImageElement`.
5
+
6
+ ```res
7
+ let frame = VideoFrame.fromHTMLImageElement(~image=myImageElement)
8
+ ```
9
+
10
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
11
+ */
12
+ @new
13
+ external fromHTMLImageElement: (
14
+ ~image: DomTypes.htmlImageElement,
15
+ ~init: DomTypes.videoFrameInit=?,
16
+ ) => DomTypes.videoFrame = "VideoFrame"
17
+
18
+ /**
19
+ `fromSVGImageElement(~image: SVGImageElement.t, ~init: videoFrameInit=?)`
20
+
21
+ Creates a new `VideoFrame` from an `SVGImageElement`.
22
+
23
+ ```res
24
+ let frame = VideoFrame.fromSVGImageElement(~image=mySvgImageElement)
25
+ ```
26
+
27
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
28
+ */
29
+ @new
30
+ external fromSVGImageElement: (
31
+ ~image: DomTypes.svgImageElement,
32
+ ~init: DomTypes.videoFrameInit=?,
33
+ ) => DomTypes.videoFrame = "VideoFrame"
34
+
35
+ /**
36
+ `fromHTMLVideoElement(~image: HTMLVideoElement.t, ~init: videoFrameInit=?)`
37
+
38
+ Creates a new `VideoFrame` from an `HTMLVideoElement`.
39
+
40
+ ```res
41
+ let frame = VideoFrame.fromHTMLVideoElement(~image=myVideoElement)
42
+ ```
43
+
44
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
45
+ */
46
+ @new
47
+ external fromHTMLVideoElement: (
48
+ ~image: DomTypes.htmlVideoElement,
49
+ ~init: DomTypes.videoFrameInit=?,
50
+ ) => DomTypes.videoFrame = "VideoFrame"
51
+
52
+ /**
53
+ `fromHTMLCanvasElement(~image: HTMLCanvasElement.t, ~init: videoFrameInit=?)`
54
+
55
+ Creates a new `VideoFrame` from an `HTMLCanvasElement`.
56
+
57
+ ```res
58
+ let frame = VideoFrame.fromHTMLCanvasElement(~image=myCanvasElement)
59
+ ```
60
+
61
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
62
+ */
63
+ @new
64
+ external fromHTMLCanvasElement: (
65
+ ~image: DomTypes.htmlCanvasElement,
66
+ ~init: DomTypes.videoFrameInit=?,
67
+ ) => DomTypes.videoFrame = "VideoFrame"
68
+
69
+ /**
70
+ `fromImageBitmap(~image: ImageBitmap.t, ~init: videoFrameInit=?)`
71
+
72
+ Creates a new `VideoFrame` from an `ImageBitmap`.
73
+
74
+ ```res
75
+ let frame = VideoFrame.fromImageBitmap(~image=myImageBitmap)
76
+ ```
77
+
78
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
79
+ */
80
+ @new
81
+ external fromImageBitmap: (
82
+ ~image: CanvasTypes.imageBitmap,
83
+ ~init: DomTypes.videoFrameInit=?,
84
+ ) => DomTypes.videoFrame = "VideoFrame"
85
+
86
+ /**
87
+ `fromOffscreenCanvas(~image: OffscreenCanvas.t, ~init: videoFrameInit=?)`
88
+
89
+ Creates a new `VideoFrame` from an `OffscreenCanvas`.
90
+
91
+ ```res
92
+ let frame = VideoFrame.fromOffscreenCanvas(~image=myOffscreenCanvas)
93
+ ```
94
+
95
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
96
+ */
97
+ @new
98
+ external fromOffscreenCanvas: (
99
+ ~image: CanvasTypes.offscreenCanvas,
100
+ ~init: DomTypes.videoFrameInit=?,
101
+ ) => DomTypes.videoFrame = "VideoFrame"
102
+
103
+ /**
104
+ `fromVideoFrame(~image: VideoFrame.t, ~init: videoFrameInit=?)`
105
+
106
+ Creates a new `VideoFrame` from another `VideoFrame`.
107
+
108
+ ```res
109
+ let frame = VideoFrame.fromVideoFrame(~image=otherFrame)
110
+ ```
111
+
112
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
113
+ */
114
+ @new
115
+ external fromVideoFrame: (
116
+ ~image: DomTypes.videoFrame,
117
+ ~init: DomTypes.videoFrameInit=?,
118
+ ) => DomTypes.videoFrame = "VideoFrame"
119
+
120
+ /**
121
+ `fromArrayBuffer(~data: ArrayBuffer.t, ~init: videoFrameBufferInit)`
122
+
123
+ Creates a new `VideoFrame` from `ArrayBuffer`-backed pixel data.
124
+
125
+ ```res
126
+ let frame =
127
+ VideoFrame.fromArrayBuffer(~data=myArrayBuffer, ~init=myVideoFrameBufferInit)
128
+ ```
129
+
130
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
131
+ */
132
+ @new
133
+ external fromArrayBuffer: (
134
+ ~data: ArrayBuffer.t,
135
+ ~init: DomTypes.videoFrameBufferInit,
136
+ ) => DomTypes.videoFrame = "VideoFrame"
137
+
138
+ /**
139
+ `fromTypedArray(~data: TypedArray.t<'t>, ~init: videoFrameBufferInit)`
140
+
141
+ Creates a new `VideoFrame` from typed-array-backed pixel data.
142
+
143
+ ```res
144
+ let frame =
145
+ VideoFrame.fromTypedArray(~data=myTypedArray, ~init=myVideoFrameBufferInit)
146
+ ```
147
+
148
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
149
+ */
150
+ @new
151
+ external fromTypedArray: (
152
+ ~data: TypedArray.t<'t>,
153
+ ~init: DomTypes.videoFrameBufferInit,
154
+ ) => DomTypes.videoFrame = "VideoFrame"
155
+
156
+ /**
157
+ `fromDataView(~data: DataView.t, ~init: videoFrameBufferInit)`
158
+
159
+ Creates a new `VideoFrame` from `DataView`-backed pixel data.
160
+
161
+ ```res
162
+ let frame =
163
+ VideoFrame.fromDataView(~data=myDataView, ~init=myVideoFrameBufferInit)
164
+ ```
165
+
166
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
167
+ */
168
+ @new
169
+ external fromDataView: (
170
+ ~data: DataView.t,
171
+ ~init: DomTypes.videoFrameBufferInit,
172
+ ) => DomTypes.videoFrame = "VideoFrame"
173
+
174
+ /**
175
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/allocationSize)
176
+ */
177
+ @send
178
+ external allocationSize: (
179
+ DomTypes.videoFrame,
180
+ ~options: DomTypes.videoFrameCopyToOptions=?,
181
+ ) => int = "allocationSize"
182
+
183
+ /**
184
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/copyTo)
185
+ */
186
+ @send
187
+ external copyTo: (
188
+ DomTypes.videoFrame,
189
+ ~destination: ArrayBuffer.t,
190
+ ~options: DomTypes.videoFrameCopyToOptions=?,
191
+ ) => promise<array<DomTypes.planeLayout>> = "copyTo"
192
+
193
+ /**
194
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/copyTo)
195
+ */
196
+ @send
197
+ external copyTo2: (
198
+ DomTypes.videoFrame,
199
+ ~destination: ArrayBufferTypedArrayOrDataView.t,
200
+ ~options: DomTypes.videoFrameCopyToOptions=?,
201
+ ) => promise<array<DomTypes.planeLayout>> = "copyTo"
202
+
203
+ /**
204
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/copyTo)
205
+ */
206
+ @send
207
+ external copyTo3: (
208
+ DomTypes.videoFrame,
209
+ ~destination: DataView.t,
210
+ ~options: DomTypes.videoFrameCopyToOptions=?,
211
+ ) => promise<array<DomTypes.planeLayout>> = "copyTo"
212
+
213
+ /**
214
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/clone)
215
+ */
216
+ @send
217
+ external clone: DomTypes.videoFrame => DomTypes.videoFrame = "clone"
218
+
219
+ /**
220
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/close)
221
+ */
222
+ @send
223
+ external close: DomTypes.videoFrame => unit = "close"
@@ -1,14 +1,12 @@
1
1
  @@warning("-30")
2
2
 
3
- open EventAPI
4
-
5
3
  /**
6
4
  This Channel Messaging API interface represents one of the two ports of a MessageChannel, allowing messages to be sent from one port and listening out for them arriving at the other.
7
5
  [See MessagePort on MDN](https://developer.mozilla.org/docs/Web/API/MessagePort)
8
6
  */
9
7
  @editor.completeFrom(MessagePort)
10
- type messagePort = {
11
- ...eventTarget,
8
+ type messagePort = private {
9
+ ...EventTypes.eventTarget,
12
10
  }
13
11
 
14
12
  type structuredSerializeOptions = {mutable transfer?: array<Dict.t<string>>}
@@ -1,6 +1,7 @@
1
- open ChannelMessagingAPI
1
+ type t = ChannelMessagingTypes.messagePort = private {...ChannelMessagingTypes.messagePort}
2
+ type structuredSerializeOptions = ChannelMessagingTypes.structuredSerializeOptions
2
3
 
3
- include EventTarget.Impl({type t = messagePort})
4
+ include EventTarget.Impl({type t = t})
4
5
 
5
6
  /**
6
7
  Posts a message through the channel. Objects listed in transfer are transferred, not just cloned, meaning that they are no longer usable on the sending side.
@@ -9,7 +10,7 @@ Throws a "DataCloneError" DOMException if transfer contains duplicate objects or
9
10
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MessagePort/postMessage)
10
11
  */
11
12
  @send
12
- external postMessage: (messagePort, ~message: JSON.t, ~transfer: array<Dict.t<string>>) => unit =
13
+ external postMessage: (t, ~message: JSON.t, ~transfer: array<Dict.t<string>>) => unit =
13
14
  "postMessage"
14
15
 
15
16
  /**
@@ -19,22 +20,19 @@ Throws a "DataCloneError" DOMException if transfer contains duplicate objects or
19
20
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MessagePort/postMessage)
20
21
  */
21
22
  @send
22
- external postMessage2: (
23
- messagePort,
24
- ~message: JSON.t,
25
- ~options: structuredSerializeOptions=?,
26
- ) => unit = "postMessage"
23
+ external postMessage2: (t, ~message: JSON.t, ~options: structuredSerializeOptions=?) => unit =
24
+ "postMessage"
27
25
 
28
26
  /**
29
27
  Begins dispatching messages received on the port.
30
28
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MessagePort/start)
31
29
  */
32
30
  @send
33
- external start: messagePort => unit = "start"
31
+ external start: t => unit = "start"
34
32
 
35
33
  /**
36
34
  Disconnects the port, so that it is no longer active.
37
35
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MessagePort/close)
38
36
  */
39
37
  @send
40
- external close: messagePort => unit = "close"
38
+ external close: t => unit = "close"
@@ -0,0 +1,29 @@
1
+ include EventTarget.Impl({type t = ClipboardTypes.clipboard})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clipboard/read)
5
+ */
6
+ @send
7
+ external read: ClipboardTypes.clipboard => promise<array<ClipboardTypes.clipboardItem>> = "read"
8
+
9
+ /**
10
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clipboard/readText)
11
+ */
12
+ @send
13
+ external readText: ClipboardTypes.clipboard => promise<string> = "readText"
14
+
15
+ /**
16
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clipboard/write)
17
+ */
18
+ @send
19
+ external write: (ClipboardTypes.clipboard, array<ClipboardTypes.clipboardItem>) => promise<unit> =
20
+ "write"
21
+
22
+ /**
23
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clipboard/writeText)
24
+ */
25
+ @send
26
+ external writeText: (ClipboardTypes.clipboard, string) => promise<unit> = "writeText"
27
+
28
+ module ClipboardItem = ClipboardItem
29
+ module Types = ClipboardTypes
@@ -1,18 +1,17 @@
1
- open FileAPI
2
- open ClipboardAPI
3
- open Prelude
4
-
5
1
  /**
6
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ClipboardItem)
7
3
  */
8
4
  @new
9
- external make: (~items: any, ~options: clipboardItemOptions=?) => clipboardItem = "ClipboardItem"
5
+ external make: (
6
+ ~items: unknown,
7
+ ~options: ClipboardTypes.clipboardItemOptions=?,
8
+ ) => ClipboardTypes.clipboardItem = "ClipboardItem"
10
9
 
11
10
  /**
12
11
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ClipboardItem/getType)
13
12
  */
14
13
  @send
15
- external getType: (clipboardItem, string) => promise<blob> = "getType"
14
+ external getType: (ClipboardTypes.clipboardItem, string) => promise<FileTypes.blob> = "getType"
16
15
 
17
16
  /**
18
17
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ClipboardItem/supports_static)
@@ -1,7 +1,5 @@
1
1
  @@warning("-30")
2
2
 
3
- open EventAPI
4
-
5
3
  type presentationStyle =
6
4
  | @as("attachment") Attachment
7
5
  | @as("inline") Inline
@@ -11,7 +9,7 @@ type presentationStyle =
11
9
  [See ClipboardItem on MDN](https://developer.mozilla.org/docs/Web/API/ClipboardItem)
12
10
  */
13
11
  @editor.completeFrom(ClipboardItem)
14
- type clipboardItem = {
12
+ type clipboardItem = private {
15
13
  /**
16
14
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ClipboardItem/presentationStyle)
17
15
  */
@@ -23,11 +21,11 @@ type clipboardItem = {
23
21
  }
24
22
 
25
23
  /**
26
- [See Clipboard on MDN](https://developer.mozilla.org/docs/Web/API/Clipboard)
24
+ [See WebApiClipboard on MDN](https://developer.mozilla.org/docs/Web/API/Clipboard)
27
25
  */
28
- @editor.completeFrom(Clipboard)
29
- type clipboard = {
30
- ...eventTarget,
26
+ @editor.completeFrom(WebApiClipboard)
27
+ type clipboard = private {
28
+ ...EventTypes.eventTarget,
31
29
  }
32
30
 
33
31
  type clipboardItemOptions = {mutable presentationStyle?: presentationStyle}
@@ -1,8 +1,5 @@
1
1
  @@warning("-30")
2
2
 
3
- open Prelude
4
- open EventAPI
5
-
6
3
  type authenticatorTransport =
7
4
  | @as("ble") Ble
8
5
  | @as("hybrid") Hybrid
@@ -42,7 +39,7 @@ type attestationConveyancePreference =
42
39
  [See CredentialsContainer on MDN](https://developer.mozilla.org/docs/Web/API/CredentialsContainer)
43
40
  */
44
41
  @editor.completeFrom(CredentialsContainer)
45
- type credentialsContainer = {}
42
+ type credentialsContainer = private {}
46
43
 
47
44
  /**
48
45
  [See Credential on MDN](https://developer.mozilla.org/docs/Web/API/Credential)
@@ -61,18 +58,18 @@ type credential = {
61
58
 
62
59
  type publicKeyCredentialDescriptor = {
63
60
  @as("type") mutable type_: publicKeyCredentialType,
64
- mutable id: bufferSource,
61
+ mutable id: ArrayBufferTypedArrayOrDataView.t,
65
62
  mutable transports?: array<authenticatorTransport>,
66
63
  }
67
64
 
68
65
  type authenticationExtensionsPRFValues = {
69
- mutable first: bufferSource,
70
- mutable second?: bufferSource,
66
+ mutable first: ArrayBufferTypedArrayOrDataView.t,
67
+ mutable second?: ArrayBufferTypedArrayOrDataView.t,
71
68
  }
72
69
 
73
70
  type authenticationExtensionsPRFInputs = {
74
71
  mutable eval?: authenticationExtensionsPRFValues,
75
- mutable evalByCredential?: any,
72
+ mutable evalByCredential?: unknown,
76
73
  }
77
74
 
78
75
  type authenticationExtensionsClientInputs = {
@@ -84,7 +81,7 @@ type authenticationExtensionsClientInputs = {
84
81
  }
85
82
 
86
83
  type publicKeyCredentialRequestOptions = {
87
- mutable challenge: bufferSource,
84
+ mutable challenge: ArrayBufferTypedArrayOrDataView.t,
88
85
  mutable timeout?: int,
89
86
  mutable rpId?: string,
90
87
  mutable allowCredentials?: array<publicKeyCredentialDescriptor>,
@@ -94,7 +91,7 @@ type publicKeyCredentialRequestOptions = {
94
91
 
95
92
  type credentialRequestOptions = {
96
93
  mutable mediation?: credentialMediationRequirement,
97
- mutable signal?: abortSignal,
94
+ mutable signal?: EventTypes.abortSignal,
98
95
  mutable publicKey?: publicKeyCredentialRequestOptions,
99
96
  }
100
97
 
@@ -107,7 +104,7 @@ type publicKeyCredentialRpEntity = {
107
104
 
108
105
  type publicKeyCredentialUserEntity = {
109
106
  ...publicKeyCredentialEntity,
110
- mutable id: bufferSource,
107
+ mutable id: ArrayBufferTypedArrayOrDataView.t,
111
108
  mutable displayName: string,
112
109
  }
113
110
 
@@ -126,7 +123,7 @@ type authenticatorSelectionCriteria = {
126
123
  type publicKeyCredentialCreationOptions = {
127
124
  mutable rp: publicKeyCredentialRpEntity,
128
125
  mutable user: publicKeyCredentialUserEntity,
129
- mutable challenge: bufferSource,
126
+ mutable challenge: ArrayBufferTypedArrayOrDataView.t,
130
127
  mutable pubKeyCredParams: array<publicKeyCredentialParameters>,
131
128
  mutable timeout?: int,
132
129
  mutable excludeCredentials?: array<publicKeyCredentialDescriptor>,
@@ -136,6 +133,6 @@ type publicKeyCredentialCreationOptions = {
136
133
  }
137
134
 
138
135
  type credentialCreationOptions = {
139
- mutable signal?: abortSignal,
136
+ mutable signal?: EventTypes.abortSignal,
140
137
  mutable publicKey?: publicKeyCredentialCreationOptions,
141
138
  }
@@ -0,0 +1,33 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/get)
3
+ */
4
+ @send
5
+ external get: (
6
+ CredentialManagementTypes.credentialsContainer,
7
+ ~options: CredentialManagementTypes.credentialRequestOptions=?,
8
+ ) => promise<CredentialManagementTypes.credential> = "get"
9
+
10
+ /**
11
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/store)
12
+ */
13
+ @send
14
+ external store: (
15
+ CredentialManagementTypes.credentialsContainer,
16
+ CredentialManagementTypes.credential,
17
+ ) => promise<unit> = "store"
18
+
19
+ /**
20
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/create)
21
+ */
22
+ @send
23
+ external create: (
24
+ CredentialManagementTypes.credentialsContainer,
25
+ ~options: CredentialManagementTypes.credentialCreationOptions=?,
26
+ ) => promise<CredentialManagementTypes.credential> = "create"
27
+
28
+ /**
29
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/preventSilentAccess)
30
+ */
31
+ @send
32
+ external preventSilentAccess: CredentialManagementTypes.credentialsContainer => promise<unit> =
33
+ "preventSilentAccess"
@@ -1,58 +1,58 @@
1
- open DOMAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation)
5
3
  */
6
4
  @new
7
- external make: (~effect: animationEffect=?, ~timeline: animationTimeline=?) => animation =
8
- "Animation"
5
+ external make: (
6
+ ~effect: DomTypes.animationEffect=?,
7
+ ~timeline: DomTypes.animationTimeline=?,
8
+ ) => DomTypes.animation = "Animation"
9
9
 
10
- include EventTarget.Impl({type t = animation})
10
+ include EventTarget.Impl({type t = DomTypes.animation})
11
11
 
12
12
  /**
13
13
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/cancel)
14
14
  */
15
15
  @send
16
- external cancel: animation => unit = "cancel"
16
+ external cancel: DomTypes.animation => unit = "cancel"
17
17
 
18
18
  /**
19
19
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/finish)
20
20
  */
21
21
  @send
22
- external finish: animation => unit = "finish"
22
+ external finish: DomTypes.animation => unit = "finish"
23
23
 
24
24
  /**
25
25
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/play)
26
26
  */
27
27
  @send
28
- external play: animation => unit = "play"
28
+ external play: DomTypes.animation => unit = "play"
29
29
 
30
30
  /**
31
31
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/pause)
32
32
  */
33
33
  @send
34
- external pause: animation => unit = "pause"
34
+ external pause: DomTypes.animation => unit = "pause"
35
35
 
36
36
  /**
37
37
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/updatePlaybackRate)
38
38
  */
39
39
  @send
40
- external updatePlaybackRate: (animation, float) => unit = "updatePlaybackRate"
40
+ external updatePlaybackRate: (DomTypes.animation, float) => unit = "updatePlaybackRate"
41
41
 
42
42
  /**
43
43
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/reverse)
44
44
  */
45
45
  @send
46
- external reverse: animation => unit = "reverse"
46
+ external reverse: DomTypes.animation => unit = "reverse"
47
47
 
48
48
  /**
49
49
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/persist)
50
50
  */
51
51
  @send
52
- external persist: animation => unit = "persist"
52
+ external persist: DomTypes.animation => unit = "persist"
53
53
 
54
54
  /**
55
55
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/commitStyles)
56
56
  */
57
57
  @send
58
- external commitStyles: animation => unit = "commitStyles"
58
+ external commitStyles: DomTypes.animation => unit = "commitStyles"
@@ -1,19 +1,21 @@
1
- open DOMAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnimationEffect/getTiming)
5
3
  */
6
4
  @send
7
- external getTiming: animationEffect => effectTiming = "getTiming"
5
+ external getTiming: DomTypes.animationEffect => DomTypes.effectTiming = "getTiming"
8
6
 
9
7
  /**
10
8
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnimationEffect/getComputedTiming)
11
9
  */
12
10
  @send
13
- external getComputedTiming: animationEffect => computedEffectTiming = "getComputedTiming"
11
+ external getComputedTiming: DomTypes.animationEffect => DomTypes.computedEffectTiming =
12
+ "getComputedTiming"
14
13
 
15
14
  /**
16
15
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnimationEffect/updateTiming)
17
16
  */
18
17
  @send
19
- external updateTiming: (animationEffect, ~timing: optionalEffectTiming=?) => unit = "updateTiming"
18
+ external updateTiming: (
19
+ DomTypes.animationEffect,
20
+ ~timing: DomTypes.optionalEffectTiming=?,
21
+ ) => unit = "updateTiming"
@@ -1,7 +1,5 @@
1
- open DOMAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSRuleList/item)
5
3
  */
6
4
  @send
7
- external item: (cssRuleList, int) => cssRule = "item"
5
+ external item: (DomTypes.cssRuleList, int) => DomTypes.cssRule = "item"
@@ -1,29 +1,28 @@
1
- open DOMAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/item)
5
3
  */
6
4
  @send
7
- external item: (cssStyleDeclaration, int) => string = "item"
5
+ external item: (DomTypes.cssStyleDeclaration, int) => string = "item"
8
6
 
9
7
  /**
10
8
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/getPropertyValue)
11
9
  */
12
10
  @send
13
- external getPropertyValue: (cssStyleDeclaration, string) => string = "getPropertyValue"
11
+ external getPropertyValue: (DomTypes.cssStyleDeclaration, string) => string = "getPropertyValue"
14
12
 
15
13
  /**
16
14
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/getPropertyPriority)
17
15
  */
18
16
  @send
19
- external getPropertyPriority: (cssStyleDeclaration, string) => string = "getPropertyPriority"
17
+ external getPropertyPriority: (DomTypes.cssStyleDeclaration, string) => string =
18
+ "getPropertyPriority"
20
19
 
21
20
  /**
22
21
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/setProperty)
23
22
  */
24
23
  @send
25
24
  external setProperty: (
26
- cssStyleDeclaration,
25
+ DomTypes.cssStyleDeclaration,
27
26
  ~property: string,
28
27
  ~value: string,
29
28
  ~priority: string=?,
@@ -33,4 +32,4 @@ external setProperty: (
33
32
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/removeProperty)
34
33
  */
35
34
  @send
36
- external removeProperty: (cssStyleDeclaration, string) => string = "removeProperty"
35
+ external removeProperty: (DomTypes.cssStyleDeclaration, string) => string = "removeProperty"
@@ -0,0 +1,30 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet)
3
+ */
4
+ @new
5
+ external make: (~options: DomTypes.cssStyleSheetInit=?) => DomTypes.cssStyleSheet = "CSSStyleSheet"
6
+
7
+ external asStyleSheet: DomTypes.cssStyleSheet => DomTypes.styleSheet = "%identity"
8
+ /**
9
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/insertRule)
10
+ */
11
+ @send
12
+ external insertRule: (DomTypes.cssStyleSheet, ~rule: string, ~index: int=?) => int = "insertRule"
13
+
14
+ /**
15
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/deleteRule)
16
+ */
17
+ @send
18
+ external deleteRule: (DomTypes.cssStyleSheet, int) => unit = "deleteRule"
19
+
20
+ /**
21
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/replace)
22
+ */
23
+ @send
24
+ external replace: (DomTypes.cssStyleSheet, string) => promise<DomTypes.cssStyleSheet> = "replace"
25
+
26
+ /**
27
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/replaceSync)
28
+ */
29
+ @send
30
+ external replaceSync: (DomTypes.cssStyleSheet, string) => unit = "replaceSync"