@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
@@ -1,12 +1,10 @@
1
1
  @@warning("-30")
2
2
 
3
- open EventAPI
4
-
5
3
  /**
6
- [See VisualViewport on MDN](https://developer.mozilla.org/docs/Web/API/VisualViewport)
4
+ [See WebApiVisualViewport on MDN](https://developer.mozilla.org/docs/Web/API/VisualViewport)
7
5
  */
8
6
  type visualViewport = {
9
- ...eventTarget,
7
+ ...EventTypes.eventTarget,
10
8
  /**
11
9
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VisualViewport/offsetLeft)
12
10
  */
@@ -0,0 +1,38 @@
1
+ include AudioNode.Impl({type t = WebAudioTypes.analyserNode})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnalyserNode)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~options: WebAudioTypes.analyserOptions=?,
10
+ ) => WebAudioTypes.analyserNode = "AnalyserNode"
11
+
12
+ /**
13
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getFloatFrequencyData)
14
+ */
15
+ @send
16
+ external getFloatFrequencyData: (WebAudioTypes.analyserNode, array<float>) => unit =
17
+ "getFloatFrequencyData"
18
+
19
+ /**
20
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getByteFrequencyData)
21
+ */
22
+ @send
23
+ external getByteFrequencyData: (WebAudioTypes.analyserNode, array<int>) => unit =
24
+ "getByteFrequencyData"
25
+
26
+ /**
27
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getFloatTimeDomainData)
28
+ */
29
+ @send
30
+ external getFloatTimeDomainData: (WebAudioTypes.analyserNode, array<float>) => unit =
31
+ "getFloatTimeDomainData"
32
+
33
+ /**
34
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getByteTimeDomainData)
35
+ */
36
+ @send
37
+ external getByteTimeDomainData: (WebAudioTypes.analyserNode, array<int>) => unit =
38
+ "getByteTimeDomainData"
@@ -1,23 +1,21 @@
1
- open WebAudioAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioBuffer)
5
3
  */
6
4
  @new
7
- external make: audioBufferOptions => audioBuffer = "AudioBuffer"
5
+ external make: WebAudioTypes.audioBufferOptions => WebAudioTypes.audioBuffer = "AudioBuffer"
8
6
 
9
7
  /**
10
8
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioBuffer/getChannelData)
11
9
  */
12
10
  @send
13
- external getChannelData: (audioBuffer, int) => array<float> = "getChannelData"
11
+ external getChannelData: (WebAudioTypes.audioBuffer, int) => array<float> = "getChannelData"
14
12
 
15
13
  /**
16
14
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioBuffer/copyFromChannel)
17
15
  */
18
16
  @send
19
17
  external copyFromChannel: (
20
- audioBuffer,
18
+ WebAudioTypes.audioBuffer,
21
19
  ~destination: array<float>,
22
20
  ~channelNumber: int,
23
21
  ~bufferOffset: int=?,
@@ -28,7 +26,7 @@ external copyFromChannel: (
28
26
  */
29
27
  @send
30
28
  external copyToChannel: (
31
- audioBuffer,
29
+ WebAudioTypes.audioBuffer,
32
30
  ~source: array<float>,
33
31
  ~channelNumber: int,
34
32
  ~bufferOffset: int=?,
@@ -1,22 +1,20 @@
1
- open WebAudioAPI
2
-
3
- include AudioScheduledSourceNode.Impl({type t = audioBufferSourceNode})
1
+ include AudioScheduledSourceNode.Impl({type t = WebAudioTypes.audioBufferSourceNode})
4
2
 
5
3
  /**
6
4
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode)
7
5
  */
8
6
  @new
9
7
  external make: (
10
- ~context: baseAudioContext,
11
- ~options: audioBufferSourceOptions=?,
12
- ) => audioBufferSourceNode = "AudioBufferSourceNode"
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~options: WebAudioTypes.audioBufferSourceOptions=?,
10
+ ) => WebAudioTypes.audioBufferSourceNode = "AudioBufferSourceNode"
13
11
 
14
12
  /**
15
13
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/start)
16
14
  */
17
15
  @send
18
16
  external startA: (
19
- audioBufferSourceNode,
17
+ WebAudioTypes.audioBufferSourceNode,
20
18
  ~when_: float=?,
21
19
  ~offset: float=?,
22
20
  ~duration: float=?,
@@ -0,0 +1,59 @@
1
+ include BaseAudioContext.Impl({type t = WebAudioTypes.audioContext})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioContext)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~contextOptions: WebAudioTypes.audioContextOptions=?,
9
+ ) => WebAudioTypes.audioContext = "AudioContext"
10
+
11
+ /**
12
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioContext/getOutputTimestamp)
13
+ */
14
+ @send
15
+ external getOutputTimestamp: WebAudioTypes.audioContext => WebAudioTypes.audioTimestamp =
16
+ "getOutputTimestamp"
17
+
18
+ /**
19
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioContext/resume)
20
+ */
21
+ @send
22
+ external resume: WebAudioTypes.audioContext => promise<unit> = "resume"
23
+
24
+ /**
25
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioContext/suspend)
26
+ */
27
+ @send
28
+ external suspend: WebAudioTypes.audioContext => promise<unit> = "suspend"
29
+
30
+ /**
31
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioContext/close)
32
+ */
33
+ @send
34
+ external close: WebAudioTypes.audioContext => promise<unit> = "close"
35
+
36
+ /**
37
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioContext/createMediaElementSource)
38
+ */
39
+ @send
40
+ external createMediaElementSource: (
41
+ WebAudioTypes.audioContext,
42
+ DomTypes.htmlMediaElement,
43
+ ) => WebAudioTypes.mediaElementAudioSourceNode = "createMediaElementSource"
44
+
45
+ /**
46
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioContext/createMediaStreamSource)
47
+ */
48
+ @send
49
+ external createMediaStreamSource: (
50
+ WebAudioTypes.audioContext,
51
+ MediaCaptureAndStreamsTypes.mediaStream,
52
+ ) => WebAudioTypes.mediaStreamAudioSourceNode = "createMediaStreamSource"
53
+
54
+ /**
55
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioContext/createMediaStreamDestination)
56
+ */
57
+ @send
58
+ external createMediaStreamDestination: WebAudioTypes.audioContext => WebAudioTypes.mediaStreamAudioDestinationNode =
59
+ "createMediaStreamDestination"
@@ -0,0 +1 @@
1
+ include AudioNode.Impl({type t = WebAudioTypes.audioDestinationNode})
@@ -1,5 +1,3 @@
1
- open WebAudioAPI
2
-
3
1
  module Impl = (
4
2
  T: {
5
3
  type t
@@ -7,20 +5,25 @@ module Impl = (
7
5
  ) => {
8
6
  include EventTarget.Impl({type t = T.t})
9
7
 
10
- external asAudioNode: T.t => audioNode = "%identity"
8
+ external asAudioNode: T.t => WebAudioTypes.audioNode = "%identity"
11
9
 
12
10
  /**
13
11
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioNode/connect)
14
12
  */
15
13
  @send
16
- external connect: (T.t, ~destinationNode: audioNode, ~output: int=?, ~input: int=?) => audioNode =
17
- "connect"
14
+ external connect: (
15
+ T.t,
16
+ ~destinationNode: WebAudioTypes.audioNode,
17
+ ~output: int=?,
18
+ ~input: int=?,
19
+ ) => WebAudioTypes.audioNode = "connect"
18
20
 
19
21
  /**
20
22
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioNode/connect)
21
23
  */
22
24
  @send
23
- external connect2: (T.t, ~destinationParam: audioParam, ~output: int=?) => unit = "connect"
25
+ external connect2: (T.t, ~destinationParam: WebAudioTypes.audioParam, ~output: int=?) => unit =
26
+ "connect"
24
27
 
25
28
  /**
26
29
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioNode/disconnect)
@@ -38,30 +41,36 @@ module Impl = (
38
41
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioNode/disconnect)
39
42
  */
40
43
  @send
41
- external disconnect3: (T.t, audioNode) => unit = "disconnect"
44
+ external disconnect3: (T.t, WebAudioTypes.audioNode) => unit = "disconnect"
42
45
 
43
46
  /**
44
47
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioNode/disconnect)
45
48
  */
46
49
  @send
47
- external disconnect4: (T.t, ~destinationNode: audioNode, ~output: int) => unit = "disconnect"
50
+ external disconnect4: (T.t, ~destinationNode: WebAudioTypes.audioNode, ~output: int) => unit =
51
+ "disconnect"
48
52
 
49
53
  /**
50
54
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioNode/disconnect)
51
55
  */
52
56
  @send
53
- external disconnect5: (T.t, ~destinationNode: audioNode, ~output: int, ~input: int) => unit =
54
- "disconnect"
57
+ external disconnect5: (
58
+ T.t,
59
+ ~destinationNode: WebAudioTypes.audioNode,
60
+ ~output: int,
61
+ ~input: int,
62
+ ) => unit = "disconnect"
55
63
 
56
64
  /**
57
65
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioNode/disconnect)
58
66
  */
59
67
  @send
60
- external disconnect6: (T.t, audioParam) => unit = "disconnect"
68
+ external disconnect6: (T.t, WebAudioTypes.audioParam) => unit = "disconnect"
61
69
 
62
70
  /**
63
71
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioNode/disconnect)
64
72
  */
65
73
  @send
66
- external disconnect7: (T.t, ~destinationParam: audioParam, ~output: int) => unit = "disconnect"
74
+ external disconnect7: (T.t, ~destinationParam: WebAudioTypes.audioParam, ~output: int) => unit =
75
+ "disconnect"
67
76
  }
@@ -1,56 +1,65 @@
1
- open WebAudioAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioParam/setValueAtTime)
5
3
  */
6
4
  @send
7
- external setValueAtTime: (audioParam, ~value: float, ~startTime: float) => audioParam =
8
- "setValueAtTime"
5
+ external setValueAtTime: (
6
+ WebAudioTypes.audioParam,
7
+ ~value: float,
8
+ ~startTime: float,
9
+ ) => WebAudioTypes.audioParam = "setValueAtTime"
9
10
 
10
11
  /**
11
12
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioParam/linearRampToValueAtTime)
12
13
  */
13
14
  @send
14
- external linearRampToValueAtTime: (audioParam, ~value: float, ~endTime: float) => audioParam =
15
- "linearRampToValueAtTime"
15
+ external linearRampToValueAtTime: (
16
+ WebAudioTypes.audioParam,
17
+ ~value: float,
18
+ ~endTime: float,
19
+ ) => WebAudioTypes.audioParam = "linearRampToValueAtTime"
16
20
 
17
21
  /**
18
22
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioParam/exponentialRampToValueAtTime)
19
23
  */
20
24
  @send
21
- external exponentialRampToValueAtTime: (audioParam, ~value: float, ~endTime: float) => audioParam =
22
- "exponentialRampToValueAtTime"
25
+ external exponentialRampToValueAtTime: (
26
+ WebAudioTypes.audioParam,
27
+ ~value: float,
28
+ ~endTime: float,
29
+ ) => WebAudioTypes.audioParam = "exponentialRampToValueAtTime"
23
30
 
24
31
  /**
25
32
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioParam/setTargetAtTime)
26
33
  */
27
34
  @send
28
35
  external setTargetAtTime: (
29
- audioParam,
36
+ WebAudioTypes.audioParam,
30
37
  ~target: float,
31
38
  ~startTime: float,
32
39
  ~timeConstant: float,
33
- ) => audioParam = "setTargetAtTime"
40
+ ) => WebAudioTypes.audioParam = "setTargetAtTime"
34
41
 
35
42
  /**
36
43
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioParam/setValueCurveAtTime)
37
44
  */
38
45
  @send
39
46
  external setValueCurveAtTime: (
40
- audioParam,
47
+ WebAudioTypes.audioParam,
41
48
  ~values: array<float>,
42
49
  ~startTime: float,
43
50
  ~duration: float,
44
- ) => audioParam = "setValueCurveAtTime"
51
+ ) => WebAudioTypes.audioParam = "setValueCurveAtTime"
45
52
 
46
53
  /**
47
54
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioParam/cancelScheduledValues)
48
55
  */
49
56
  @send
50
- external cancelScheduledValues: (audioParam, float) => audioParam = "cancelScheduledValues"
57
+ external cancelScheduledValues: (WebAudioTypes.audioParam, float) => WebAudioTypes.audioParam =
58
+ "cancelScheduledValues"
51
59
 
52
60
  /**
53
61
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioParam/cancelAndHoldAtTime)
54
62
  */
55
63
  @send
56
- external cancelAndHoldAtTime: (audioParam, float) => audioParam = "cancelAndHoldAtTime"
64
+ external cancelAndHoldAtTime: (WebAudioTypes.audioParam, float) => WebAudioTypes.audioParam =
65
+ "cancelAndHoldAtTime"
@@ -0,0 +1,10 @@
1
+ include Event.Impl({type t = WebAudioTypes.audioProcessingEvent})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioProcessingEvent)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~type_: string,
9
+ ~eventInitDict: WebAudioTypes.audioProcessingEventInit,
10
+ ) => WebAudioTypes.audioProcessingEvent = "AudioProcessingEvent"
@@ -1,5 +1,3 @@
1
- open WebAudioAPI
2
-
3
1
  module Impl = (
4
2
  T: {
5
3
  type t
@@ -7,7 +5,7 @@ module Impl = (
7
5
  ) => {
8
6
  include AudioNode.Impl({type t = T.t})
9
7
 
10
- external asAudioScheduledSourceNode: T.t => audioScheduledSourceNode = "%identity"
8
+ external asAudioScheduledSourceNode: T.t => WebAudioTypes.audioScheduledSourceNode = "%identity"
11
9
 
12
10
  /**
13
11
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioScheduledSourceNode/start)
@@ -22,4 +20,4 @@ module Impl = (
22
20
  external stop: (T.t, ~when_: float=?) => unit = "stop"
23
21
  }
24
22
 
25
- include Impl({type t = audioScheduledSourceNode})
23
+ include Impl({type t = WebAudioTypes.audioScheduledSourceNode})
@@ -0,0 +1,11 @@
1
+ include AudioNode.Impl({type t = WebAudioTypes.audioWorkletNode})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AudioWorkletNode)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~name: string,
10
+ ~options: WebAudioTypes.audioWorkletNodeOptions=?,
11
+ ) => WebAudioTypes.audioWorkletNode = "AudioWorkletNode"
@@ -1,5 +1,3 @@
1
- open WebAudioAPI
2
-
3
1
  module Impl = (
4
2
  T: {
5
3
  type t
@@ -7,19 +5,19 @@ module Impl = (
7
5
  ) => {
8
6
  include EventTarget.Impl({type t = T.t})
9
7
 
10
- external asBaseAudioContext: T.t => baseAudioContext = "%identity"
8
+ external asBaseAudioContext: T.t => WebAudioTypes.baseAudioContext = "%identity"
11
9
 
12
10
  /**
13
11
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createAnalyser)
14
12
  */
15
13
  @send
16
- external createAnalyser: T.t => analyserNode = "createAnalyser"
14
+ external createAnalyser: T.t => WebAudioTypes.analyserNode = "createAnalyser"
17
15
 
18
16
  /**
19
17
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createBiquadFilter)
20
18
  */
21
19
  @send
22
- external createBiquadFilter: T.t => biquadFilterNode = "createBiquadFilter"
20
+ external createBiquadFilter: T.t => WebAudioTypes.biquadFilterNode = "createBiquadFilter"
23
21
 
24
22
  /**
25
23
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createBuffer)
@@ -30,57 +28,60 @@ module Impl = (
30
28
  ~numberOfChannels: int,
31
29
  ~length: int,
32
30
  ~sampleRate: float,
33
- ) => audioBuffer = "createBuffer"
31
+ ) => WebAudioTypes.audioBuffer = "createBuffer"
34
32
 
35
33
  /**
36
34
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createBufferSource)
37
35
  */
38
36
  @send
39
- external createBufferSource: T.t => audioBufferSourceNode = "createBufferSource"
37
+ external createBufferSource: T.t => WebAudioTypes.audioBufferSourceNode = "createBufferSource"
40
38
 
41
39
  /**
42
40
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createChannelMerger)
43
41
  */
44
42
  @send
45
- external createChannelMerger: (T.t, ~numberOfInputs: int=?) => channelMergerNode =
43
+ external createChannelMerger: (T.t, ~numberOfInputs: int=?) => WebAudioTypes.channelMergerNode =
46
44
  "createChannelMerger"
47
45
 
48
46
  /**
49
47
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createChannelSplitter)
50
48
  */
51
49
  @send
52
- external createChannelSplitter: (T.t, ~numberOfOutputs: int=?) => channelSplitterNode =
53
- "createChannelSplitter"
50
+ external createChannelSplitter: (
51
+ T.t,
52
+ ~numberOfOutputs: int=?,
53
+ ) => WebAudioTypes.channelSplitterNode = "createChannelSplitter"
54
54
 
55
55
  /**
56
56
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createConstantSource)
57
57
  */
58
58
  @send
59
- external createConstantSource: T.t => constantSourceNode = "createConstantSource"
59
+ external createConstantSource: T.t => WebAudioTypes.constantSourceNode = "createConstantSource"
60
60
 
61
61
  /**
62
62
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createConvolver)
63
63
  */
64
64
  @send
65
- external createConvolver: T.t => convolverNode = "createConvolver"
65
+ external createConvolver: T.t => WebAudioTypes.convolverNode = "createConvolver"
66
66
 
67
67
  /**
68
68
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createDelay)
69
69
  */
70
70
  @send
71
- external createDelay: (T.t, ~maxDelayTime: float=?) => delayNode = "createDelay"
71
+ external createDelay: (T.t, ~maxDelayTime: float=?) => WebAudioTypes.delayNode = "createDelay"
72
72
 
73
73
  /**
74
74
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createDynamicsCompressor)
75
75
  */
76
76
  @send
77
- external createDynamicsCompressor: T.t => dynamicsCompressorNode = "createDynamicsCompressor"
77
+ external createDynamicsCompressor: T.t => WebAudioTypes.dynamicsCompressorNode =
78
+ "createDynamicsCompressor"
78
79
 
79
80
  /**
80
81
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createGain)
81
82
  */
82
83
  @send
83
- external createGain: T.t => gainNode = "createGain"
84
+ external createGain: T.t => WebAudioTypes.gainNode = "createGain"
84
85
 
85
86
  /**
86
87
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createIIRFilter)
@@ -90,19 +91,19 @@ module Impl = (
90
91
  T.t,
91
92
  ~feedforward: array<float>,
92
93
  ~feedback: array<float>,
93
- ) => iirFilterNode = "createIIRFilter"
94
+ ) => WebAudioTypes.iirFilterNode = "createIIRFilter"
94
95
 
95
96
  /**
96
97
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createOscillator)
97
98
  */
98
99
  @send
99
- external createOscillator: T.t => oscillatorNode = "createOscillator"
100
+ external createOscillator: T.t => WebAudioTypes.oscillatorNode = "createOscillator"
100
101
 
101
102
  /**
102
103
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createPanner)
103
104
  */
104
105
  @send
105
- external createPanner: T.t => pannerNode = "createPanner"
106
+ external createPanner: T.t => WebAudioTypes.pannerNode = "createPanner"
106
107
 
107
108
  /**
108
109
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createPeriodicWave)
@@ -112,20 +113,20 @@ module Impl = (
112
113
  T.t,
113
114
  ~real: array<float>,
114
115
  ~imag: array<float>,
115
- ~constraints: periodicWaveConstraints=?,
116
- ) => periodicWave = "createPeriodicWave"
116
+ ~constraints: WebAudioTypes.periodicWaveConstraints=?,
117
+ ) => WebAudioTypes.periodicWave = "createPeriodicWave"
117
118
 
118
119
  /**
119
120
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createStereoPanner)
120
121
  */
121
122
  @send
122
- external createStereoPanner: T.t => stereoPannerNode = "createStereoPanner"
123
+ external createStereoPanner: T.t => WebAudioTypes.stereoPannerNode = "createStereoPanner"
123
124
 
124
125
  /**
125
126
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createWaveShaper)
126
127
  */
127
128
  @send
128
- external createWaveShaper: T.t => waveShaperNode = "createWaveShaper"
129
+ external createWaveShaper: T.t => WebAudioTypes.waveShaperNode = "createWaveShaper"
129
130
 
130
131
  /**
131
132
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/decodeAudioData)
@@ -134,7 +135,7 @@ module Impl = (
134
135
  external decodeAudioData: (
135
136
  T.t,
136
137
  ~audioData: ArrayBuffer.t,
137
- ~successCallback: decodeSuccessCallback=?,
138
- ~errorCallback: decodeErrorCallback=?,
139
- ) => promise<audioBuffer> = "decodeAudioData"
138
+ ~successCallback: WebAudioTypes.decodeSuccessCallback=?,
139
+ ~errorCallback: WebAudioTypes.decodeErrorCallback=?,
140
+ ) => promise<WebAudioTypes.audioBuffer> = "decodeAudioData"
140
141
  }
@@ -1,20 +1,20 @@
1
- open WebAudioAPI
2
-
3
- include AudioNode.Impl({type t = biquadFilterNode})
1
+ include AudioNode.Impl({type t = WebAudioTypes.biquadFilterNode})
4
2
 
5
3
  /**
6
4
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode)
7
5
  */
8
6
  @new
9
- external make: (~context: baseAudioContext, ~options: biquadFilterOptions=?) => biquadFilterNode =
10
- "BiquadFilterNode"
7
+ external make: (
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~options: WebAudioTypes.biquadFilterOptions=?,
10
+ ) => WebAudioTypes.biquadFilterNode = "BiquadFilterNode"
11
11
 
12
12
  /**
13
13
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/getFrequencyResponse)
14
14
  */
15
15
  @send
16
16
  external getFrequencyResponse: (
17
- biquadFilterNode,
17
+ WebAudioTypes.biquadFilterNode,
18
18
  ~frequencyHz: array<float>,
19
19
  ~magResponse: array<float>,
20
20
  ~phaseResponse: array<float>,
@@ -0,0 +1,10 @@
1
+ include AudioNode.Impl({type t = WebAudioTypes.channelMergerNode})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ChannelMergerNode)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~options: WebAudioTypes.channelMergerOptions=?,
10
+ ) => WebAudioTypes.channelMergerNode = "ChannelMergerNode"
@@ -0,0 +1,10 @@
1
+ include AudioNode.Impl({type t = WebAudioTypes.channelSplitterNode})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ChannelSplitterNode)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~options: WebAudioTypes.channelSplitterOptions=?,
10
+ ) => WebAudioTypes.channelSplitterNode = "ChannelSplitterNode"
@@ -0,0 +1,10 @@
1
+ include AudioScheduledSourceNode.Impl({type t = WebAudioTypes.constantSourceNode})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ConstantSourceNode)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~options: WebAudioTypes.constantSourceOptions=?,
10
+ ) => WebAudioTypes.constantSourceNode = "ConstantSourceNode"
@@ -0,0 +1,10 @@
1
+ include AudioNode.Impl({type t = WebAudioTypes.convolverNode})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ConvolverNode)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~options: WebAudioTypes.convolverOptions=?,
10
+ ) => WebAudioTypes.convolverNode = "ConvolverNode"
@@ -0,0 +1,10 @@
1
+ include AudioNode.Impl({type t = WebAudioTypes.delayNode})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DelayNode)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~options: WebAudioTypes.delayOptions=?,
10
+ ) => WebAudioTypes.delayNode = "DelayNode"
@@ -0,0 +1,10 @@
1
+ include AudioNode.Impl({type t = WebAudioTypes.dynamicsCompressorNode})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~options: WebAudioTypes.dynamicsCompressorOptions=?,
10
+ ) => WebAudioTypes.dynamicsCompressorNode = "DynamicsCompressorNode"
@@ -0,0 +1,10 @@
1
+ include AudioNode.Impl({type t = WebAudioTypes.gainNode})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/GainNode)
5
+ */
6
+ @new
7
+ external make: (
8
+ ~context: WebAudioTypes.baseAudioContext,
9
+ ~options: WebAudioTypes.gainOptions=?,
10
+ ) => WebAudioTypes.gainNode = "GainNode"