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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (480) hide show
  1. package/README.md +10 -5
  2. package/package.json +6 -4
  3. package/rescript.json +591 -4
  4. package/src/Base/ArrayBufferTypedArrayOrDataView.res +4 -0
  5. package/src/Base/BaseCSSFontLoading.res +25 -0
  6. package/src/{EncryptedMediaExtensionsAPI.res → Base/BaseEncryptedMediaExtensions.res} +12 -18
  7. package/src/Base/BaseEvent.res +6 -0
  8. package/src/Base/BaseFile.res +37 -0
  9. package/src/{FileAndDirectoryEntriesAPI.res → Base/BaseFileAndDirectoryEntries.res} +5 -22
  10. package/src/{DOMAPI.res → Base/DOM.res} +225 -2237
  11. package/src/{CSSFontLoadingAPI.res → CSSFontLoading/CssFontLoadingTypes.res} +4 -15
  12. package/src/CSSFontLoading/FontFace.res +62 -0
  13. package/src/CSSFontLoading/FontFaceSet.res +38 -0
  14. package/src/Canvas/Canvas.res +179 -0
  15. package/src/{CanvasAPI → Canvas}/CanvasGradient.res +2 -3
  16. package/src/{CanvasAPI → Canvas}/CanvasPattern.res +3 -3
  17. package/src/{DOMAPI → Canvas}/CanvasRenderingContext2D.res +178 -140
  18. package/src/{CanvasAPI.res → Canvas/CanvasTypes.res} +9 -11
  19. package/src/Canvas/FillStyle.res +25 -0
  20. package/src/{DOMAPI → Canvas}/HTMLCanvasElement.res +21 -23
  21. package/src/{CanvasAPI → Canvas}/ImageBitmap.res +1 -3
  22. package/src/{CanvasAPI → Canvas}/ImageBitmapRenderingContext.res +4 -4
  23. package/src/{CanvasAPI → Canvas}/OffscreenCanvas.res +19 -19
  24. package/src/{CanvasAPI → Canvas}/Path2D.res +63 -19
  25. package/src/Canvas/VideoFrame.res +223 -0
  26. package/src/{ChannelMessagingAPI.res → ChannelMessaging/ChannelMessagingTypes.res} +2 -4
  27. package/src/{ChannelMessagingAPI → ChannelMessaging}/MessagePort.res +8 -10
  28. package/src/Clipboard/Clipboard.res +29 -0
  29. package/src/{ClipboardAPI → Clipboard}/ClipboardItem.res +5 -6
  30. package/src/{ClipboardAPI.res → Clipboard/ClipboardTypes.res} +5 -7
  31. package/src/{CredentialManagementAPI.res → CredentialManagement/CredentialManagementTypes.res} +10 -13
  32. package/src/CredentialManagement/CredentialsContainer.res +33 -0
  33. package/src/{DOMAPI → DOM}/Animation.res +13 -13
  34. package/src/{DOMAPI → DOM}/AnimationEffect.res +7 -5
  35. package/src/{DOMAPI → DOM}/CSSRuleList.res +1 -3
  36. package/src/{DOMAPI → DOM}/CSSStyleDeclaration.res +6 -7
  37. package/src/DOM/CSSStyleSheet.res +30 -0
  38. package/src/{DOMAPI → DOM}/CSSStyleValue.res +3 -4
  39. package/src/DOM/CaretPosition.res +2 -0
  40. package/src/{DOMAPI → DOM}/CharacterData.res +5 -7
  41. package/src/DOM/Comment.res +7 -0
  42. package/src/{DOMAPI → DOM}/CustomElementRegistry.res +10 -9
  43. package/src/DOM/DOMException.res +7 -0
  44. package/src/{DOMAPI → DOM}/DOMImplementation.res +6 -8
  45. package/src/DOM/DOMMatrix.res +228 -0
  46. package/src/DOM/DOMMatrixReadOnly.res +147 -0
  47. package/src/DOM/DOMPoint.res +31 -0
  48. package/src/{DOMAPI → DOM}/DOMPointReadOnly.res +7 -7
  49. package/src/{DOMAPI → DOM}/DOMRect.res +6 -7
  50. package/src/DOM/DOMRectList.res +2 -0
  51. package/src/DOM/DOMRectReadOnly.res +19 -0
  52. package/src/{Prelude → DOM}/DOMStringList.res +3 -3
  53. package/src/{DOMAPI → DOM}/DOMTokenList.res +7 -9
  54. package/src/{DOMAPI → DOM}/Document.res +94 -80
  55. package/src/{DOMAPI → DOM}/DocumentFragment.res +10 -11
  56. package/src/DOM/DocumentTimeline.res +8 -0
  57. package/src/{Global.res → DOM/DomGlobal.res} +62 -285
  58. package/src/{DOMAPI/HTMLMediaElement.res → DOM/DomHTMLMediaElement.res} +6 -16
  59. package/src/DOM/DomTypes.res +2105 -0
  60. package/src/{DOMAPI → DOM}/Element.res +53 -44
  61. package/src/{DOMAPI → DOM}/ElementInternals.res +6 -8
  62. package/src/{DOMAPI → DOM}/FileList.res +2 -5
  63. package/src/DOM/HTMLAnchorElement.res +1 -0
  64. package/src/DOM/HTMLAreaElement.res +1 -0
  65. package/src/DOM/HTMLAudioElement.res +1 -0
  66. package/src/DOM/HTMLBRElement.res +1 -0
  67. package/src/DOM/HTMLBaseElement.res +1 -0
  68. package/src/DOM/HTMLBodyElement.res +1 -0
  69. package/src/{DOMAPI → DOM}/HTMLButtonElement.res +4 -6
  70. package/src/{DOMAPI → DOM}/HTMLCollection.res +2 -4
  71. package/src/DOM/HTMLDListElement.res +1 -0
  72. package/src/DOM/HTMLDataElement.res +1 -0
  73. package/src/DOM/HTMLDataListElement.res +1 -0
  74. package/src/{DOMAPI → DOM}/HTMLDialogElement.res +4 -6
  75. package/src/DOM/HTMLDivElement.res +1 -0
  76. package/src/{DOMAPI → DOM}/HTMLElement.res +5 -5
  77. package/src/DOM/HTMLEmbedElement.res +4 -0
  78. package/src/{DOMAPI → DOM}/HTMLFieldSetElement.res +4 -6
  79. package/src/DOM/HTMLFormControlsCollection.res +16 -0
  80. package/src/{DOMAPI → DOM}/HTMLFormElement.res +7 -7
  81. package/src/DOM/HTMLFrameSetElement.res +1 -0
  82. package/src/DOM/HTMLHRElement.res +1 -0
  83. package/src/DOM/HTMLHeadElement.res +1 -0
  84. package/src/DOM/HTMLHeadingElement.res +1 -0
  85. package/src/DOM/HTMLHtmlElement.res +1 -0
  86. package/src/DOM/HTMLIFrameElement.res +4 -0
  87. package/src/DOM/HTMLImageElement.res +7 -0
  88. package/src/{DOMAPI → DOM}/HTMLInputElement.res +12 -14
  89. package/src/DOM/HTMLLIElement.res +1 -0
  90. package/src/DOM/HTMLLabelElement.res +1 -0
  91. package/src/DOM/HTMLLegendElement.res +1 -0
  92. package/src/DOM/HTMLLinkElement.res +1 -0
  93. package/src/DOM/HTMLMapElement.res +1 -0
  94. package/src/DOM/HTMLMenuElement.res +1 -0
  95. package/src/DOM/HTMLMetaElement.res +1 -0
  96. package/src/DOM/HTMLMeterElement.res +1 -0
  97. package/src/DOM/HTMLModElement.res +1 -0
  98. package/src/DOM/HTMLOListElement.res +1 -0
  99. package/src/{DOMAPI → DOM}/HTMLObjectElement.res +5 -7
  100. package/src/DOM/HTMLOptGroupElement.res +1 -0
  101. package/src/DOM/HTMLOptionElement.res +1 -0
  102. package/src/{DOMAPI → DOM}/HTMLOptionsCollection.res +4 -5
  103. package/src/{DOMAPI → DOM}/HTMLOutputElement.res +4 -6
  104. package/src/DOM/HTMLParagraphElement.res +1 -0
  105. package/src/DOM/HTMLPictureElement.res +1 -0
  106. package/src/DOM/HTMLPreElement.res +1 -0
  107. package/src/DOM/HTMLProgressElement.res +1 -0
  108. package/src/DOM/HTMLQuoteElement.res +1 -0
  109. package/src/{DOMAPI → DOM}/HTMLScriptElement.res +1 -3
  110. package/src/{DOMAPI → DOM}/HTMLSelectElement.res +10 -12
  111. package/src/DOM/HTMLSlotElement.res +31 -0
  112. package/src/DOM/HTMLSourceElement.res +1 -0
  113. package/src/DOM/HTMLSpanElement.res +1 -0
  114. package/src/DOM/HTMLStyleElement.res +1 -0
  115. package/src/DOM/HTMLTableCaptionElement.res +1 -0
  116. package/src/DOM/HTMLTableCellElement.res +1 -0
  117. package/src/{DOMAPI → DOM}/HTMLTableElement.res +12 -12
  118. package/src/{DOMAPI → DOM}/HTMLTableRowElement.res +6 -5
  119. package/src/{DOMAPI → DOM}/HTMLTableSectionElement.res +6 -5
  120. package/src/DOM/HTMLTemplateElement.res +1 -0
  121. package/src/{DOMAPI → DOM}/HTMLTextAreaElement.res +9 -11
  122. package/src/DOM/HTMLTimeElement.res +1 -0
  123. package/src/DOM/HTMLTitleElement.res +1 -0
  124. package/src/DOM/HTMLTrackElement.res +1 -0
  125. package/src/DOM/HTMLUListElement.res +1 -0
  126. package/src/DOM/HTMLVideoElement.res +32 -0
  127. package/src/{DOMAPI → DOM}/IdleDeadline.res +1 -3
  128. package/src/{DOMAPI → DOM}/ImageData.res +4 -5
  129. package/src/{DOMAPI → DOM}/Location.res +3 -5
  130. package/src/{DOMAPI → DOM}/MediaList.res +3 -5
  131. package/src/DOM/MediaQueryList.res +1 -0
  132. package/src/{DOMAPI → DOM}/NamedNodeMap.res +15 -11
  133. package/src/DOM/Navigator.res +166 -0
  134. package/src/{DOMAPI → DOM}/Node.res +10 -11
  135. package/src/DOM/NodeFilter.res +2 -0
  136. package/src/{DOMAPI → DOM}/NodeIterator.res +2 -4
  137. package/src/{DOMAPI → DOM}/NodeList.res +1 -3
  138. package/src/{DOMAPI → DOM}/Range.res +27 -27
  139. package/src/DOM/SVGGraphicsElement.res +18 -0
  140. package/src/{DOMAPI → DOM}/SVGLength.res +2 -4
  141. package/src/DOM/ScreenOrientation.res +7 -0
  142. package/src/{DOMAPI → DOM}/Selection.res +22 -20
  143. package/src/DOM/ShadowRoot.res +19 -0
  144. package/src/DOM/StylePropertyMap.res +57 -0
  145. package/src/{DOMAPI → DOM}/StylePropertyMapReadOnly.res +3 -4
  146. package/src/{DOMAPI → DOM}/StyleSheetList.res +1 -3
  147. package/src/{DOMAPI → DOM}/Text.res +3 -5
  148. package/src/DOM/TextTrackList.res +7 -0
  149. package/src/{DOMAPI → DOM}/TimeRanges.res +2 -4
  150. package/src/{DOMAPI → DOM}/TreeWalker.res +7 -9
  151. package/src/{DOMAPI → DOM}/VideoColorSpace.res +3 -4
  152. package/src/DOM/Window.res +557 -0
  153. package/src/{DOMAPI → DOM}/XPathExpression.res +4 -6
  154. package/src/{DOMAPI → DOM}/XPathResult.res +2 -4
  155. package/src/EncryptedMediaExtensions/EncryptedMediaExtensionsHTMLMediaElement.res +15 -0
  156. package/src/EncryptedMediaExtensions/EncryptedMediaExtensionsTypes.res +43 -0
  157. package/src/{EncryptedMediaExtensionsAPI → EncryptedMediaExtensions}/MediaKeySession.res +10 -10
  158. package/src/{EncryptedMediaExtensionsAPI → EncryptedMediaExtensions}/MediaKeyStatusMap.res +2 -4
  159. package/src/EncryptedMediaExtensions/MediaKeySystemAccess.res +14 -0
  160. package/src/EncryptedMediaExtensions/MediaKeys.res +35 -0
  161. package/src/{EventAPI → Event}/AbortController.res +2 -4
  162. package/src/{EventAPI → Event}/AbortSignal.res +5 -7
  163. package/src/{EventAPI → Event}/Event.res +5 -6
  164. package/src/{EventAPI → Event}/EventTarget.res +14 -16
  165. package/src/{EventAPI.res → Event/EventTypes.res} +10 -10
  166. package/src/{EventAPI → Event}/ExtendableEvent.res +2 -4
  167. package/src/{FetchAPI → Fetch}/BodyInit.res +10 -12
  168. package/src/Fetch/Fetch.res +12 -0
  169. package/src/{FetchAPI.res → Fetch/FetchTypes.res} +19 -21
  170. package/src/{FetchAPI → Fetch}/FormData.res +16 -15
  171. package/src/Fetch/FormDataEntryValue.res +2 -0
  172. package/src/{FetchAPI → Fetch}/Headers.res +10 -12
  173. package/src/{FetchAPI → Fetch}/HeadersInit.res +4 -4
  174. package/src/{FetchAPI → Fetch}/Request.res +16 -11
  175. package/src/{FetchAPI → Fetch}/Response.res +27 -23
  176. package/src/{FileAPI → File}/Blob.res +9 -7
  177. package/src/{FileAPI → File}/File.res +5 -5
  178. package/src/File/FileSystemDirectoryHandle.res +49 -0
  179. package/src/File/FileSystemFileHandle.res +25 -0
  180. package/src/File/FileSystemHandle.res +6 -0
  181. package/src/File/FileSystemWritableFileStream.res +65 -0
  182. package/src/{FileAPI.res → File/FileTypes.res} +22 -23
  183. package/src/File/ReadableStream.res +79 -0
  184. package/src/File/WritableStream.res +27 -0
  185. package/src/{FileAPI → File}/WritableStreamDefaultController.res +1 -3
  186. package/src/FileAndDirectoryEntries/FileAndDirectoryEntriesTypes.res +35 -0
  187. package/src/FileAndDirectoryEntries/FileSystemDirectoryEntry.res +42 -0
  188. package/src/FileAndDirectoryEntries/FileSystemDirectoryReader.res +9 -0
  189. package/src/FileAndDirectoryEntries/FileSystemEntry.res +9 -0
  190. package/src/Gamepad/GamepadHapticActuator.res +16 -0
  191. package/src/{GamepadAPI.res → Gamepad/GamepadTypes.res} +4 -4
  192. package/src/Geolocation/Geolocation.res +31 -0
  193. package/src/{GeolocationAPI → Geolocation}/GeolocationCoordinates.res +1 -3
  194. package/src/{GeolocationAPI → Geolocation}/GeolocationPosition.res +1 -3
  195. package/src/{GeolocationAPI.res → Geolocation/GeolocationTypes.res} +5 -5
  196. package/src/{HistoryAPI → History}/History.res +13 -8
  197. package/src/{HistoryAPI.res → History/HistoryTypes.res} +3 -2
  198. package/src/{IndexedDBAPI → IndexedDB}/IDBDatabase.res +14 -16
  199. package/src/{IndexedDBAPI → IndexedDB}/IDBFactory.res +10 -6
  200. package/src/{IndexedDBAPI → IndexedDB}/IDBIndex.res +22 -17
  201. package/src/{IndexedDBAPI → IndexedDB}/IDBObjectStore.res +44 -33
  202. package/src/{IndexedDBAPI → IndexedDB}/IDBTransaction.res +5 -6
  203. package/src/{IndexedDBAPI.res → IndexedDB/IndexedDbTypes.res} +16 -17
  204. package/src/IntersectionObserver/IntersectionObserver.res +39 -0
  205. package/src/IntersectionObserver/IntersectionObserverRoot.res +21 -0
  206. package/src/{IntersectionObserverAPI.res → IntersectionObserver/IntersectionObserverTypes.res} +7 -9
  207. package/src/MediaCapabilities/MediaCapabilities.res +19 -0
  208. package/src/{MediaCapabilitiesAPI.res → MediaCapabilities/MediaCapabilitiesTypes.res} +3 -3
  209. package/src/{MediaCaptureAndStreamsAPI.res → MediaCaptureAndStreams/MediaCaptureAndStreamsTypes.res} +7 -8
  210. package/src/MediaCaptureAndStreams/MediaDeviceInfo.res +9 -0
  211. package/src/MediaCaptureAndStreams/MediaDevices.res +40 -0
  212. package/src/MediaCaptureAndStreams/MediaStream.res +89 -0
  213. package/src/MediaCaptureAndStreams/MediaStreamTrack.res +51 -0
  214. package/src/MediaSession/MediaMetadata.res +10 -0
  215. package/src/MediaSession/MediaSession.res +25 -0
  216. package/src/{MediaSessionAPI.res → MediaSession/MediaSessionTypes.res} +4 -2
  217. package/src/MutationObserver/MutationObserver.res +31 -0
  218. package/src/{MutationObserverAPI.res → MutationObserver/MutationObserverTypes.res} +3 -5
  219. package/src/Notification/Notification.res +46 -0
  220. package/src/{NotificationAPI.res → Notification/NotificationTypes.res} +5 -7
  221. package/src/Performance/Performance.res +101 -0
  222. package/src/{PerformanceAPI → Performance}/PerformanceEntry.res +1 -3
  223. package/src/Performance/PerformanceMark.res +16 -0
  224. package/src/{PerformanceAPI.res → Performance/PerformanceTypes.res} +9 -12
  225. package/src/Permissions/Permissions.res +10 -0
  226. package/src/{PermissionsAPI.res → Permissions/PermissionsTypes.res} +4 -6
  227. package/src/PictureInPicture/PictureInPicture.res +7 -0
  228. package/src/{PictureInPictureAPI.res → PictureInPicture/PictureInPictureTypes.res} +1 -3
  229. package/src/Push/ApplicationServerKey.res +2 -0
  230. package/src/Push/PushEvent.res +3 -0
  231. package/src/Push/PushManager.res +24 -0
  232. package/src/{PushAPI → Push}/PushMessageData.res +3 -3
  233. package/src/{PushAPI → Push}/PushSubscription.res +4 -5
  234. package/src/{PushAPI.res → Push/PushTypes.res} +6 -8
  235. package/src/RemotePlayback/RemotePlayback.res +25 -0
  236. package/src/{RemotePlaybackAPI.res → RemotePlayback/RemotePlaybackTypes.res} +4 -6
  237. package/src/ResizeObserver/ResizeObserver.res +30 -0
  238. package/src/{ResizeObserverAPI.res → ResizeObserver/ResizeObserverTypes.res} +5 -7
  239. package/src/{ScreenWakeLockAPI.res → ScreenWakeLock/ScreenWakeLockTypes.res} +3 -5
  240. package/src/ScreenWakeLock/WakeLock.res +8 -0
  241. package/src/ScreenWakeLock/WakeLockSentinel.res +7 -0
  242. package/src/ServiceWorker/Cache.res +117 -0
  243. package/src/{ServiceWorkerAPI → ServiceWorker}/Clients.res +14 -7
  244. package/src/{ServiceWorkerAPI → ServiceWorker}/NavigationPreloadManager.res +7 -6
  245. package/src/ServiceWorker/ServiceWorker.res +38 -0
  246. package/src/ServiceWorker/ServiceWorkerContainer.res +34 -0
  247. package/src/{ServiceWorkerAPI → ServiceWorker}/ServiceWorkerRegistration.res +8 -11
  248. package/src/ServiceWorker/ServiceWorkerScope.res +12 -0
  249. package/src/{ServiceWorkerAPI.res → ServiceWorker/ServiceWorkerTypes.res} +18 -23
  250. package/src/{StorageAPI → Storage}/StorageManager.res +5 -7
  251. package/src/{StorageAPI.res → Storage/StorageTypes.res} +1 -1
  252. package/src/UIEvents/CompositionEvent.res +10 -0
  253. package/src/{UIEventsAPI → UIEvents}/DataTransfer.res +10 -8
  254. package/src/{UIEventsAPI → UIEvents}/DataTransferItem.res +5 -8
  255. package/src/{UIEventsAPI → UIEvents}/DataTransferItemList.res +11 -7
  256. package/src/UIEvents/FocusEvent.res +10 -0
  257. package/src/UIEvents/InputEvent.res +16 -0
  258. package/src/UIEvents/KeyboardEvent.res +16 -0
  259. package/src/{UIEventsAPI → UIEvents}/MouseEvent.res +6 -5
  260. package/src/UIEvents/PointerEvent.res +24 -0
  261. package/src/{UIEventsAPI → UIEvents}/Touch.res +1 -3
  262. package/src/UIEvents/TouchEvent.res +10 -0
  263. package/src/{UIEventsAPI → UIEvents}/TouchList.res +1 -3
  264. package/src/UIEvents/UIEvent.res +20 -0
  265. package/src/{UIEventsAPI.res → UIEvents/UiEventsTypes.res} +28 -30
  266. package/src/UIEvents/WheelEvent.res +10 -0
  267. package/src/{URLAPI → URL}/URL.res +6 -5
  268. package/src/{URLAPI → URL}/URLSearchParams.res +20 -17
  269. package/src/{URLAPI.res → URL/UrlTypes.res} +5 -4
  270. package/src/{ViewTransitionsAPI → ViewTransitions}/ViewTransition.res +1 -3
  271. package/src/{ViewTransitionsAPI.res → ViewTransitions/ViewTransitionsTypes.res} +1 -1
  272. package/src/VisualViewport/VisualViewport.res +5 -0
  273. package/src/{VisualViewportAPI.res → VisualViewport/VisualViewportTypes.res} +2 -4
  274. package/src/WebAudio/AnalyserNode.res +38 -0
  275. package/src/{WebAudioAPI → WebAudio}/AudioBuffer.res +4 -6
  276. package/src/{WebAudioAPI → WebAudio}/AudioBufferSourceNode.res +5 -7
  277. package/src/WebAudio/AudioContext.res +59 -0
  278. package/src/WebAudio/AudioDestinationNode.res +1 -0
  279. package/src/{WebAudioAPI → WebAudio}/AudioNode.res +21 -12
  280. package/src/{WebAudioAPI → WebAudio}/AudioParam.res +23 -14
  281. package/src/WebAudio/AudioProcessingEvent.res +10 -0
  282. package/src/{WebAudioAPI → WebAudio}/AudioScheduledSourceNode.res +2 -4
  283. package/src/WebAudio/AudioWorkletNode.res +11 -0
  284. package/src/{WebAudioAPI → WebAudio}/BaseAudioContext.res +26 -25
  285. package/src/{WebAudioAPI → WebAudio}/BiquadFilterNode.res +6 -6
  286. package/src/WebAudio/ChannelMergerNode.res +10 -0
  287. package/src/WebAudio/ChannelSplitterNode.res +10 -0
  288. package/src/WebAudio/ConstantSourceNode.res +10 -0
  289. package/src/WebAudio/ConvolverNode.res +10 -0
  290. package/src/WebAudio/DelayNode.res +10 -0
  291. package/src/WebAudio/DynamicsCompressorNode.res +10 -0
  292. package/src/WebAudio/GainNode.res +10 -0
  293. package/src/{WebAudioAPI → WebAudio}/IIRFilterNode.res +6 -6
  294. package/src/WebAudio/MediaElementAudioSourceNode.res +10 -0
  295. package/src/WebAudio/MediaStreamAudioDestinationNode.res +10 -0
  296. package/src/WebAudio/MediaStreamAudioSourceNode.res +10 -0
  297. package/src/WebAudio/OfflineAudioCompletionEvent.res +10 -0
  298. package/src/WebAudio/OfflineAudioContext.res +58 -0
  299. package/src/WebAudio/OscillatorNode.res +17 -0
  300. package/src/WebAudio/PannerNode.res +10 -0
  301. package/src/WebAudio/PeriodicWave.res +8 -0
  302. package/src/WebAudio/StereoPannerNode.res +10 -0
  303. package/src/WebAudio/WaveShaperNode.res +10 -0
  304. package/src/{WebAudioAPI.res → WebAudio/WebAudioTypes.res} +55 -42
  305. package/src/{WebAudioAPI → WebAudio}/Worklet.res +5 -4
  306. package/src/{WebCryptoAPI → WebCrypto}/Crypto.res +2 -4
  307. package/src/WebCrypto/SubtleCrypto.res +173 -0
  308. package/src/{WebCryptoAPI.res → WebCrypto/WebCryptoTypes.res} +3 -5
  309. package/src/WebLocks/LockManager.res +26 -0
  310. package/src/{WebLocksAPI.res → WebLocks/WebLocksTypes.res} +2 -4
  311. package/src/WebMIDI/WebMIDI.res +7 -0
  312. package/src/{WebMIDIAPI.res → WebMIDI/WebMidiTypes.res} +1 -3
  313. package/src/WebSockets/CloseEvent.res +10 -0
  314. package/src/{WebSocketsAPI → WebSockets}/MessageEvent.res +14 -9
  315. package/src/WebSockets/WebSocket.res +71 -0
  316. package/src/{WebSocketsAPI.res → WebSockets/WebSocketsTypes.res} +12 -15
  317. package/src/{WebSpeechAPI → WebSpeech}/SpeechSynthesis.res +8 -8
  318. package/src/WebSpeech/SpeechSynthesisUtterance.res +8 -0
  319. package/src/{WebSpeechAPI.res → WebSpeech/WebSpeechTypes.res} +4 -5
  320. package/src/{WebStorageAPI → WebStorage}/Storage.res +8 -10
  321. package/src/WebStorage/StorageEvent.res +10 -0
  322. package/src/{WebStorageAPI.res → WebStorage/WebStorageTypes.res} +9 -11
  323. package/src/{WebVTTAPI → WebVTT}/TextTrack.res +3 -5
  324. package/src/{WebVTTAPI → WebVTT}/TextTrackCueList.res +2 -3
  325. package/src/{WebVTTAPI.res → WebVTT/WebVttTypes.res} +5 -5
  326. package/src/WebWorkers/CacheStorage.res +43 -0
  327. package/src/{WebWorkersAPI → WebWorkers}/SharedWorker.res +13 -12
  328. package/src/{WebWorkersAPI/SharedWorkerGlobalScope.res → WebWorkers/SharedWorkerScope.res} +6 -4
  329. package/src/{WebWorkersAPI.res → WebWorkers/WebWorkersTypes.res} +7 -10
  330. package/src/{WebWorkersAPI/WorkerGlobalScope.res → WebWorkers/Worker.res} +8 -8
  331. package/src/CSSFontLoadingAPI/FontFace.res +0 -34
  332. package/src/CSSFontLoadingAPI/FontFaceSet.res +0 -33
  333. package/src/CanvasAPI/FillStyle.res +0 -24
  334. package/src/ClipboardAPI/Clipboard.res +0 -27
  335. package/src/CredentialManagementAPI/CredentialsContainer.res +0 -29
  336. package/src/DOMAPI/CSSStyleSheet.res +0 -32
  337. package/src/DOMAPI/CaretPosition.res +0 -4
  338. package/src/DOMAPI/Comment.res +0 -9
  339. package/src/DOMAPI/DOMMatrix.res +0 -169
  340. package/src/DOMAPI/DOMMatrixReadOnly.res +0 -103
  341. package/src/DOMAPI/DOMPoint.res +0 -29
  342. package/src/DOMAPI/DOMRectList.res +0 -4
  343. package/src/DOMAPI/DOMRectReadOnly.res +0 -17
  344. package/src/DOMAPI/DocumentTimeline.res +0 -9
  345. package/src/DOMAPI/HTMLAnchorElement.res +0 -3
  346. package/src/DOMAPI/HTMLAreaElement.res +0 -3
  347. package/src/DOMAPI/HTMLAudioElement.res +0 -3
  348. package/src/DOMAPI/HTMLBRElement.res +0 -3
  349. package/src/DOMAPI/HTMLBaseElement.res +0 -3
  350. package/src/DOMAPI/HTMLBodyElement.res +0 -3
  351. package/src/DOMAPI/HTMLDListElement.res +0 -3
  352. package/src/DOMAPI/HTMLDataElement.res +0 -3
  353. package/src/DOMAPI/HTMLDataListElement.res +0 -3
  354. package/src/DOMAPI/HTMLDivElement.res +0 -3
  355. package/src/DOMAPI/HTMLEmbedElement.res +0 -6
  356. package/src/DOMAPI/HTMLFormControlsCollection.res +0 -16
  357. package/src/DOMAPI/HTMLFrameSetElement.res +0 -3
  358. package/src/DOMAPI/HTMLHRElement.res +0 -3
  359. package/src/DOMAPI/HTMLHeadElement.res +0 -3
  360. package/src/DOMAPI/HTMLHeadingElement.res +0 -3
  361. package/src/DOMAPI/HTMLHtmlElement.res +0 -3
  362. package/src/DOMAPI/HTMLIFrameElement.res +0 -6
  363. package/src/DOMAPI/HTMLImageElement.res +0 -9
  364. package/src/DOMAPI/HTMLLIElement.res +0 -3
  365. package/src/DOMAPI/HTMLLabelElement.res +0 -3
  366. package/src/DOMAPI/HTMLLegendElement.res +0 -3
  367. package/src/DOMAPI/HTMLLinkElement.res +0 -3
  368. package/src/DOMAPI/HTMLMapElement.res +0 -3
  369. package/src/DOMAPI/HTMLMenuElement.res +0 -3
  370. package/src/DOMAPI/HTMLMetaElement.res +0 -3
  371. package/src/DOMAPI/HTMLMeterElement.res +0 -3
  372. package/src/DOMAPI/HTMLModElement.res +0 -3
  373. package/src/DOMAPI/HTMLOListElement.res +0 -3
  374. package/src/DOMAPI/HTMLOptGroupElement.res +0 -3
  375. package/src/DOMAPI/HTMLOptionElement.res +0 -3
  376. package/src/DOMAPI/HTMLParagraphElement.res +0 -3
  377. package/src/DOMAPI/HTMLPictureElement.res +0 -3
  378. package/src/DOMAPI/HTMLPreElement.res +0 -3
  379. package/src/DOMAPI/HTMLProgressElement.res +0 -3
  380. package/src/DOMAPI/HTMLQuoteElement.res +0 -3
  381. package/src/DOMAPI/HTMLSlotElement.res +0 -29
  382. package/src/DOMAPI/HTMLSourceElement.res +0 -3
  383. package/src/DOMAPI/HTMLSpanElement.res +0 -3
  384. package/src/DOMAPI/HTMLStyleElement.res +0 -3
  385. package/src/DOMAPI/HTMLTableCaptionElement.res +0 -3
  386. package/src/DOMAPI/HTMLTableCellElement.res +0 -3
  387. package/src/DOMAPI/HTMLTemplateElement.res +0 -3
  388. package/src/DOMAPI/HTMLTimeElement.res +0 -3
  389. package/src/DOMAPI/HTMLTitleElement.res +0 -3
  390. package/src/DOMAPI/HTMLTrackElement.res +0 -3
  391. package/src/DOMAPI/HTMLUListElement.res +0 -3
  392. package/src/DOMAPI/HTMLVideoElement.res +0 -31
  393. package/src/DOMAPI/MediaQueryList.res +0 -3
  394. package/src/DOMAPI/Navigator.res +0 -115
  395. package/src/DOMAPI/NodeFilter.res +0 -4
  396. package/src/DOMAPI/SVGGraphicsElement.res +0 -17
  397. package/src/DOMAPI/ScreenOrientation.res +0 -9
  398. package/src/DOMAPI/ShadowRoot.res +0 -21
  399. package/src/DOMAPI/StylePropertyMap.res +0 -50
  400. package/src/DOMAPI/TextTrackList.res +0 -10
  401. package/src/DOMAPI/VideoFrame.res +0 -111
  402. package/src/DOMAPI/Window.res +0 -517
  403. package/src/EncryptedMediaExtensionsAPI/MediaKeySystemAccess.res +0 -13
  404. package/src/EncryptedMediaExtensionsAPI/MediaKeys.res +0 -27
  405. package/src/FetchAPI/FormDataEntryValue.res +0 -22
  406. package/src/FileAPI/FileSystemDirectoryHandle.res +0 -45
  407. package/src/FileAPI/FileSystemFileHandle.res +0 -23
  408. package/src/FileAPI/FileSystemHandle.res +0 -7
  409. package/src/FileAPI/FileSystemWritableFileStream.res +0 -62
  410. package/src/FileAPI/ReadableStream.res +0 -60
  411. package/src/FileAPI/WritableStream.res +0 -28
  412. package/src/FileAndDirectoryEntriesAPI/FileSystemDirectoryEntry.res +0 -42
  413. package/src/FileAndDirectoryEntriesAPI/FileSystemDirectoryReader.res +0 -11
  414. package/src/FileAndDirectoryEntriesAPI/FileSystemEntry.res +0 -11
  415. package/src/GamepadAPI/GamepadHapticActuator.res +0 -17
  416. package/src/GeolocationAPI/Geolocation.res +0 -29
  417. package/src/IntersectionObserverAPI/IntersectionObserver.res +0 -35
  418. package/src/IntersectionObserverAPI/IntersectionObserverRoot.res +0 -22
  419. package/src/MediaCapabilitiesAPI/MediaCapabilities.res +0 -19
  420. package/src/MediaCaptureAndStreamsAPI/MediaDeviceInfo.res +0 -7
  421. package/src/MediaCaptureAndStreamsAPI/MediaDevices.res +0 -34
  422. package/src/MediaCaptureAndStreamsAPI/MediaStream.res +0 -63
  423. package/src/MediaCaptureAndStreamsAPI/MediaStreamTrack.res +0 -42
  424. package/src/MediaSessionAPI/MediaMetadata.res +0 -7
  425. package/src/MediaSessionAPI/MediaSession.res +0 -17
  426. package/src/MutationObserverAPI/MutationObserver.res +0 -27
  427. package/src/NotificationAPI/Notification.res +0 -29
  428. package/src/PerformanceAPI/Performance.res +0 -90
  429. package/src/PerformanceAPI/PerformanceMark.res +0 -15
  430. package/src/PermissionsAPI/Permissions.res +0 -7
  431. package/src/Prelude/DOMException.res +0 -7
  432. package/src/Prelude.res +0 -37
  433. package/src/PushAPI/ApplicationServerKey.res +0 -4
  434. package/src/PushAPI/PushEvent.res +0 -3
  435. package/src/PushAPI/PushManager.res +0 -25
  436. package/src/RemotePlaybackAPI/RemotePlayback.res +0 -23
  437. package/src/ResizeObserverAPI/ResizeObserver.res +0 -27
  438. package/src/ScreenWakeLockAPI/WakeLock.res +0 -7
  439. package/src/ScreenWakeLockAPI/WakeLockSentinel.res +0 -9
  440. package/src/ServiceWorkerAPI/Cache.res +0 -100
  441. package/src/ServiceWorkerAPI/ServiceWorker.res +0 -21
  442. package/src/ServiceWorkerAPI/ServiceWorkerContainer.res +0 -35
  443. package/src/ServiceWorkerAPI/ServiceWorkerGlobalScope.res +0 -10
  444. package/src/UIEventsAPI/CompositionEvent.res +0 -10
  445. package/src/UIEventsAPI/FocusEvent.res +0 -9
  446. package/src/UIEventsAPI/InputEvent.res +0 -16
  447. package/src/UIEventsAPI/KeyboardEvent.res +0 -16
  448. package/src/UIEventsAPI/PointerEvent.res +0 -21
  449. package/src/UIEventsAPI/TouchEvent.res +0 -9
  450. package/src/UIEventsAPI/UIEvent.res +0 -19
  451. package/src/UIEventsAPI/WheelEvent.res +0 -9
  452. package/src/WebAudioAPI/AnalyserNode.res +0 -34
  453. package/src/WebAudioAPI/AudioContext.res +0 -56
  454. package/src/WebAudioAPI/AudioDestinationNode.res +0 -3
  455. package/src/WebAudioAPI/AudioProcessingEvent.res +0 -10
  456. package/src/WebAudioAPI/AudioWorkletNode.res +0 -13
  457. package/src/WebAudioAPI/ChannelMergerNode.res +0 -10
  458. package/src/WebAudioAPI/ChannelSplitterNode.res +0 -12
  459. package/src/WebAudioAPI/ConstantSourceNode.res +0 -12
  460. package/src/WebAudioAPI/ConvolverNode.res +0 -10
  461. package/src/WebAudioAPI/DelayNode.res +0 -9
  462. package/src/WebAudioAPI/DynamicsCompressorNode.res +0 -12
  463. package/src/WebAudioAPI/GainNode.res +0 -9
  464. package/src/WebAudioAPI/MediaElementAudioSourceNode.res +0 -12
  465. package/src/WebAudioAPI/MediaStreamAudioDestinationNode.res +0 -12
  466. package/src/WebAudioAPI/MediaStreamAudioSourceNode.res +0 -12
  467. package/src/WebAudioAPI/OfflineAudioCompletionEvent.res +0 -12
  468. package/src/WebAudioAPI/OfflineAudioContext.res +0 -34
  469. package/src/WebAudioAPI/OscillatorNode.res +0 -16
  470. package/src/WebAudioAPI/PannerNode.res +0 -9
  471. package/src/WebAudioAPI/PeriodicWave.res +0 -8
  472. package/src/WebAudioAPI/StereoPannerNode.res +0 -10
  473. package/src/WebAudioAPI/WaveShaperNode.res +0 -10
  474. package/src/WebCryptoAPI/SubtleCrypto.res +0 -173
  475. package/src/WebLocksAPI/LockManager.res +0 -25
  476. package/src/WebSocketsAPI/CloseEvent.res +0 -9
  477. package/src/WebSocketsAPI/WebSocket.res +0 -51
  478. package/src/WebSpeechAPI/SpeechSynthesisUtterance.res +0 -9
  479. package/src/WebStorageAPI/StorageEvent.res +0 -9
  480. package/src/WebWorkersAPI/CacheStorage.res +0 -46
@@ -1,13 +1,11 @@
1
1
  @@warning("-30")
2
2
 
3
- open EventAPI
4
-
5
3
  /**
6
- This Web Storage API interface provides access to a particular domain's session or local storage. It allows, for example, the addition, modification, or deletion of stored data items.
7
- [See Storage on MDN](https://developer.mozilla.org/docs/Web/API/Storage)
4
+ This Web WebApiStorage API interface provides access to a particular domain's session or local storage. It allows, for example, the addition, modification, or deletion of stored data items.
5
+ [See WebApiStorage on MDN](https://developer.mozilla.org/docs/Web/API/Storage)
8
6
  */
9
- @editor.completeFrom(Storage)
10
- type storage = {
7
+ @editor.completeFrom(WebApiStorage)
8
+ type storage = private {
11
9
  /**
12
10
  Returns the number of key/value pairs.
13
11
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Storage/length)
@@ -20,8 +18,8 @@ A StorageEvent is sent to a window when a storage area it has access to is chang
20
18
  [See StorageEvent on MDN](https://developer.mozilla.org/docs/Web/API/StorageEvent)
21
19
  */
22
20
  @editor.completeFrom(StorageEvent)
23
- type storageEvent = {
24
- ...event,
21
+ type storageEvent = private {
22
+ ...EventTypes.event,
25
23
  /**
26
24
  Returns the key of the storage item being changed.
27
25
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/StorageEvent/key)
@@ -38,19 +36,19 @@ type storageEvent = {
38
36
  */
39
37
  newValue: Null.t<string>,
40
38
  /**
41
- Returns the URL of the document whose storage item changed.
39
+ Returns the WebApiURL of the document whose storage item changed.
42
40
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/StorageEvent/url)
43
41
  */
44
42
  url: string,
45
43
  /**
46
- Returns the Storage object that was affected.
44
+ Returns the WebApiStorage object that was affected.
47
45
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/StorageEvent/storageArea)
48
46
  */
49
47
  storageArea: Null.t<storage>,
50
48
  }
51
49
 
52
50
  type storageEventInit = {
53
- ...eventInit,
51
+ ...EventTypes.eventInit,
54
52
  mutable key?: Null.t<string>,
55
53
  mutable oldValue?: Null.t<string>,
56
54
  mutable newValue?: Null.t<string>,
@@ -1,17 +1,15 @@
1
- open WebVTTAPI
2
-
3
- include EventTarget.Impl({type t = textTrack})
1
+ include EventTarget.Impl({type t = WebVttTypes.textTrack})
4
2
 
5
3
  /**
6
4
  Adds the given cue to textTrack's text track list of cues.
7
5
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/TextTrack/addCue)
8
6
  */
9
7
  @send
10
- external addCue: (textTrack, textTrackCue) => unit = "addCue"
8
+ external addCue: (WebVttTypes.textTrack, WebVttTypes.textTrackCue) => unit = "addCue"
11
9
 
12
10
  /**
13
11
  Removes the given cue from textTrack's text track list of cues.
14
12
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/TextTrack/removeCue)
15
13
  */
16
14
  @send
17
- external removeCue: (textTrack, textTrackCue) => unit = "removeCue"
15
+ external removeCue: (WebVttTypes.textTrack, WebVttTypes.textTrackCue) => unit = "removeCue"
@@ -1,5 +1,3 @@
1
- open WebVTTAPI
2
-
3
1
  /**
4
2
  Returns the first text track cue (in text track cue order) with text track cue identifier id.
5
3
 
@@ -7,4 +5,5 @@ Returns null if none of the cues have the given identifier or if the argument is
7
5
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/TextTrackCueList/getCueById)
8
6
  */
9
7
  @send
10
- external getCueById: (textTrackCueList, string) => textTrackCue = "getCueById"
8
+ external getCueById: (WebVttTypes.textTrackCueList, string) => WebVttTypes.textTrackCue =
9
+ "getCueById"
@@ -1,7 +1,5 @@
1
1
  @@warning("-30")
2
2
 
3
- open EventAPI
4
-
5
3
  type textTrackKind =
6
4
  | @as("captions") Captions
7
5
  | @as("chapters") Chapters
@@ -18,7 +16,7 @@ type textTrackMode =
18
16
  [See TextTrackCueList on MDN](https://developer.mozilla.org/docs/Web/API/TextTrackCueList)
19
17
  */
20
18
  @editor.completeFrom(TextTrackCueList)
21
- type textTrackCueList = {
19
+ type textTrackCueList = private {
22
20
  /**
23
21
  Returns the number of cues in the list.
24
22
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/TextTrackCueList/length)
@@ -29,10 +27,11 @@ type textTrackCueList = {
29
27
  /**
30
28
  TextTrackCues represent a string of text that will be displayed for some duration of time on a TextTrack. This includes the start and end times that the cue will be displayed. A TextTrackCue cannot be used directly, instead one of the derived types (e.g. VTTCue) must be used.
31
29
  [See TextTrackCue on MDN](https://developer.mozilla.org/docs/Web/API/TextTrackCue)
30
+ TODO: mark as private once mutating fields of private records is allowed
32
31
  */
33
32
  @editor.completeFrom(TextTrack)
34
33
  type rec textTrackCue = {
35
- ...eventTarget,
34
+ ...EventTypes.eventTarget,
36
35
  /**
37
36
  Returns the TextTrack object to which this text track cue belongs, if any, or null otherwise.
38
37
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/TextTrackCue/track)
@@ -71,9 +70,10 @@ Can be set.
71
70
  /**
72
71
  This interface also inherits properties from EventTarget.
73
72
  [See TextTrack on MDN](https://developer.mozilla.org/docs/Web/API/TextTrack)
73
+ TODO: mark as private once mutating fields of private records is allowed
74
74
  */
75
75
  @editor.completeFrom(TextTrack) and textTrack = {
76
- ...eventTarget,
76
+ ...EventTypes.eventTarget,
77
77
  /**
78
78
  Returns the text track kind string.
79
79
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/TextTrack/kind)
@@ -0,0 +1,43 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CacheStorage/match)
3
+ */
4
+ @send
5
+ external match: (
6
+ WebWorkersTypes.cacheStorage,
7
+ ~request: FetchTypes.request,
8
+ ~options: WebWorkersTypes.multiCacheQueryOptions=?,
9
+ ) => Nullable.t<FetchTypes.response> = "match"
10
+
11
+ /**
12
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CacheStorage/match)
13
+ */
14
+ @send
15
+ external match2: (
16
+ WebWorkersTypes.cacheStorage,
17
+ ~request: string,
18
+ ~options: WebWorkersTypes.multiCacheQueryOptions=?,
19
+ ) => Nullable.t<FetchTypes.response> = "match"
20
+
21
+ /**
22
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CacheStorage/has)
23
+ */
24
+ @send
25
+ external has: (WebWorkersTypes.cacheStorage, string) => promise<bool> = "has"
26
+
27
+ /**
28
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CacheStorage/open)
29
+ */
30
+ @send
31
+ external open_: (WebWorkersTypes.cacheStorage, string) => promise<WebWorkersTypes.cache> = "open"
32
+
33
+ /**
34
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CacheStorage/delete)
35
+ */
36
+ @send
37
+ external delete: (WebWorkersTypes.cacheStorage, string) => promise<bool> = "delete"
38
+
39
+ /**
40
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CacheStorage/keys)
41
+ */
42
+ @send
43
+ external keys: WebWorkersTypes.cacheStorage => promise<array<string>> = "keys"
@@ -1,7 +1,8 @@
1
- open ChannelMessagingAPI
2
- open WebWorkersAPI
1
+ type t = WebWorkersTypes.sharedWorker
2
+ type workerType = WebWorkersTypes.workerType
3
+ type workerOptions = WebWorkersTypes.workerOptions = {...WebWorkersTypes.workerOptions}
3
4
 
4
- include EventTarget.Impl({type t = sharedWorker})
5
+ include EventTarget.Impl({type t = t})
5
6
 
6
7
  /**
7
8
  `make(string)`
@@ -10,13 +11,13 @@ The SharedWorker() constructor creates a SharedWorker object that executes the
10
11
  script at the specified URL. This script must obey the same-origin policy.
11
12
 
12
13
  ```res
13
- let shared: sharedWorker = SharedWorker.make("sharedworker.js")
14
+ let shared: SharedWorker.t = SharedWorker.make("sharedworker.js")
14
15
  ```
15
16
 
16
17
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/SharedWorker/)
17
18
  */
18
19
  @new
19
- external make: string => sharedWorker = "SharedWorker"
20
+ external make: string => t = "SharedWorker"
20
21
 
21
22
  /**
22
23
  `makeWithName(string, string)`
@@ -25,13 +26,13 @@ The SharedWorker() constructor creates a SharedWorker object that executes the
25
26
  script at the specified URL. This script must obey the same-origin policy.
26
27
 
27
28
  ```res
28
- let shared: sharedWorker = SharedWorker.make("sharedworker.js", "name")
29
+ let shared: SharedWorker.t = SharedWorker.makeWithName("sharedworker.js", "name")
29
30
  ```
30
31
 
31
32
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/SharedWorker/)
32
33
  */
33
34
  @new
34
- external makeWithName: (string, string) => sharedWorker = "SharedWorker"
35
+ external makeWithName: (string, string) => t = "SharedWorker"
35
36
 
36
37
  /**
37
38
  `makeWithOptions(string, workerOptions)`
@@ -40,16 +41,16 @@ The SharedWorker() constructor creates a SharedWorker object that executes the
40
41
  script at the specified URL. This script must obey the same-origin policy.
41
42
 
42
43
  ```res
43
- let shared: sharedWorker = SharedWorker.makeWithOptions("sharedworker.js", {
44
+ let shared: SharedWorker.t = SharedWorker.makeWithOptions("sharedworker.js", {
44
45
  name: "workerName",
45
- type_: Module
46
+ type_: Module,
46
47
  })
47
48
  ```
48
49
 
49
50
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/SharedWorker/)
50
51
  */
51
52
  @new
52
- external makeWithOptions: (string, workerOptions) => sharedWorker = "SharedWorker"
53
+ external makeWithOptions: (string, workerOptions) => t = "SharedWorker"
53
54
 
54
55
  /**
55
56
  `port(sharedWorker)`
@@ -58,10 +59,10 @@ The port property of the SharedWorker interface returns a MessagePort object
58
59
  used to communicate and control the shared worker.
59
60
 
60
61
  ```res
61
- let port: WebAPI.ChannelMessagingAPI.messagePort = SharedWorker.port(myWorker)
62
+ let port: MessagePort.t = SharedWorker.port(myWorker)
62
63
  ```
63
64
 
64
65
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/SharedWorker/port)
65
66
  */
66
67
  @get
67
- external port: sharedWorker => messagePort = "port"
68
+ external port: t => MessagePort.t = "port"
@@ -1,11 +1,13 @@
1
- open WebWorkersAPI
1
+ type t = WebWorkersTypes.sharedWorkerGlobalScope = private {
2
+ ...WebWorkersTypes.sharedWorkerGlobalScope,
3
+ }
2
4
 
3
5
  module Impl = (
4
6
  T: {
5
7
  type t
6
8
  },
7
9
  ) => {
8
- include WorkerGlobalScope.Impl({type t = T.t})
10
+ include Worker.Impl({type t = T.t})
9
11
 
10
12
  /**
11
13
  `close(sharedWorkerGlobalScope)`
@@ -15,7 +17,7 @@ queued in the SharedWorkerGlobalScope's event loop, effectively closing this
15
17
  particular scope.
16
18
 
17
19
  ```res
18
- self -> SharedWorkerGlobalScope.close
20
+ self -> SharedWorkerScope.close
19
21
  ```
20
22
 
21
23
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/SharedWorkerGlobalScope/close)
@@ -24,4 +26,4 @@ self -> SharedWorkerGlobalScope.close
24
26
  external close: T.t => unit = "close"
25
27
  }
26
28
 
27
- include Impl({type t = sharedWorkerGlobalScope})
29
+ include Impl({type t = t})
@@ -1,19 +1,16 @@
1
- open EventAPI
2
- open FetchAPI
3
-
4
1
  /**
5
- Provides a storage mechanism for Request / Response object pairs that are cached, for example as part of the ServiceWorker life cycle. Note that the Cache interface is exposed to windowed scopes as well as workers. You don't have to use it in conjunction with service workers, even though it is defined in the service worker spec.
2
+ Provides a storage mechanism for Request / Response object pairs that are cached, for example as part of the WebApiServiceWorker life cycle. Note that the Cache interface is exposed to windowed scopes as well as workers. You don't have to use it in conjunction with service workers, even though it is defined in the service worker spec.
6
3
  [See Cache on MDN](https://developer.mozilla.org/docs/Web/API/Cache)
7
4
  */
8
5
  @editor.completeFrom(Cache)
9
- type cache = {}
6
+ type cache = private {}
10
7
 
11
8
  /**
12
9
  The storage for Cache objects.
13
10
  [See CacheStorage on MDN](https://developer.mozilla.org/docs/Web/API/CacheStorage)
14
11
  */
15
12
  @editor.completeFrom(CacheStorage)
16
- type cacheStorage = {}
13
+ type cacheStorage = private {}
17
14
 
18
15
  type cacheQueryOptions = {
19
16
  mutable ignoreSearch?: bool,
@@ -36,8 +33,8 @@ Each WorkerGlobalScope has its own event loop.
36
33
  [See WorkerGlobalScope on MDN](https://developer.mozilla.org/en-US/docs/Web/API/WorkerGlobalScope)
37
34
  */
38
35
  @editor.completeFrom(WorkerGlobalScope)
39
- type workerGlobalScope = {
40
- ...eventTarget,
36
+ type workerGlobalScope = private {
37
+ ...EventTypes.eventTarget,
41
38
  /**
42
39
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/WorkerGlobalScope/caches)
43
40
  */
@@ -56,7 +53,7 @@ type workerType =
56
53
  object instance. */
57
54
  type workerOptions = {
58
55
  @as("type") mutable type_?: workerType,
59
- mutable credentials?: requestCredentials,
56
+ mutable credentials?: FetchTypes.requestCredentials,
60
57
  mutable name?: string,
61
58
  }
62
59
 
@@ -68,7 +65,7 @@ global scope, but available on it, are listed in the JavaScript Reference. See
68
65
  the complete list of functions available to workers.
69
66
  */
70
67
  @editor.completeFrom(SharedWorkerGlobalScope)
71
- type sharedWorkerGlobalScope = {
68
+ type sharedWorkerGlobalScope = private {
72
69
  ...workerGlobalScope,
73
70
  name: option<string>,
74
71
  }
@@ -1,6 +1,3 @@
1
- open WebWorkersAPI
2
- open FetchAPI
3
-
4
1
  module Impl = (
5
2
  T: {
6
3
  type t
@@ -8,6 +5,8 @@ module Impl = (
8
5
  ) => {
9
6
  include EventTarget.Impl({type t = T.t})
10
7
 
8
+ external current: T.t = "self"
9
+
11
10
  /**
12
11
  `fetch(workerGlobalScope, string, init)`
13
12
 
@@ -15,13 +14,13 @@ The fetch() method of the WorkerGlobalScope interface starts the process of fetc
15
14
  returning a promise that is fulfilled once the response is available.
16
15
 
17
16
  ```res
18
- let response = await self->WorkerGlobalScope.fetch("https://rescript-lang.org")
17
+ let response = await self->Worker.fetch("https://rescript-lang.org")
19
18
  ```
20
19
 
21
20
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/WorkerGlobalScope/fetch)
22
21
  */
23
22
  @send
24
- external fetch: (T.t, string, ~init: requestInit=?) => promise<response> = "fetch"
23
+ external fetch: (T.t, string, ~init: Request.requestInit=?) => promise<Response.t> = "fetch"
25
24
 
26
25
  /**
27
26
  `fetchWithRequest(workerGlobalScope, request, init)`
@@ -30,12 +29,13 @@ The fetch() method of the WorkerGlobalScope interface starts the process of fetc
30
29
  returning a promise that is fulfilled once the response is available.
31
30
 
32
31
  ```res
33
- let response = await self->WorkerGlobalScope.fetch(myRequest)
32
+ let response = await self->Worker.fetch(myRequest)
34
33
  ```
35
34
 
36
35
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/WorkerGlobalScope/fetch)
37
36
  */
38
- external fetchWithRequest: (T.t, request, ~init: requestInit=?) => promise<response> = "fetch"
37
+ external fetchWithRequest: (T.t, Request.t, ~init: Request.requestInit=?) => promise<Response.t> =
38
+ "fetch"
39
39
  }
40
40
 
41
- include Impl({type t = workerGlobalScope})
41
+ include Impl({type t = WebWorkersTypes.workerGlobalScope})
@@ -1,34 +0,0 @@
1
- open CSSFontLoadingAPI
2
-
3
- /**
4
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace)
5
- */
6
- @new
7
- external make: (~family: string, ~source: string, ~descriptors: fontFaceDescriptors=?) => fontFace =
8
- "FontFace"
9
-
10
- /**
11
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace)
12
- */
13
- @new
14
- external make2: (
15
- ~family: string,
16
- ~source: DataView.t,
17
- ~descriptors: fontFaceDescriptors=?,
18
- ) => fontFace = "FontFace"
19
-
20
- /**
21
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace)
22
- */
23
- @new
24
- external make3: (
25
- ~family: string,
26
- ~source: ArrayBuffer.t,
27
- ~descriptors: fontFaceDescriptors=?,
28
- ) => fontFace = "FontFace"
29
-
30
- /**
31
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/load)
32
- */
33
- @send
34
- external load: fontFace => promise<fontFace> = "load"
@@ -1,33 +0,0 @@
1
- open CSSFontLoadingAPI
2
-
3
- include EventTarget.Impl({type t = fontFaceSet})
4
-
5
- /**
6
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/add)
7
- */
8
- @send
9
- external add: (fontFaceSet, fontFace) => fontFaceSet = "add"
10
-
11
- /**
12
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/delete)
13
- */
14
- @send
15
- external delete: (fontFaceSet, fontFace) => bool = "delete"
16
-
17
- /**
18
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/clear)
19
- */
20
- @send
21
- external clear: fontFaceSet => unit = "clear"
22
-
23
- /**
24
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/load)
25
- */
26
- @send
27
- external load: (fontFaceSet, ~font: string, ~text: string=?) => promise<array<fontFace>> = "load"
28
-
29
- /**
30
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/check)
31
- */
32
- @send
33
- external check: (fontFaceSet, ~font: string, ~text: string=?) => bool = "check"
@@ -1,24 +0,0 @@
1
- open Prelude
2
- open CanvasAPI
3
-
4
- external fromString: string => fillStyle = "%identity"
5
- external fromCanvasGradient: canvasGradient => fillStyle = "%identity"
6
- external fromCanvasPattern: canvasGradient => fillStyle = "%identity"
7
-
8
- /**
9
- Represents a decoded version of the abstract `fillStyle` type, used in Context2D.
10
- */
11
- type decoded =
12
- | String(string)
13
- | CanvasGradient(canvasGradient)
14
- | CanvasPattern(canvasPattern)
15
-
16
- let decode = (t: fillStyle): decoded => {
17
- if CanvasGradient.isInstanceOf(t) {
18
- CanvasGradient(unsafeConversation(t))
19
- } else if CanvasPattern.isInstanceOf(t) {
20
- CanvasPattern(unsafeConversation(t))
21
- } else {
22
- String(unsafeConversation(t))
23
- }
24
- }
@@ -1,27 +0,0 @@
1
- open ClipboardAPI
2
-
3
- include EventTarget.Impl({type t = clipboard})
4
-
5
- /**
6
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clipboard/read)
7
- */
8
- @send
9
- external read: clipboard => promise<array<clipboardItem>> = "read"
10
-
11
- /**
12
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clipboard/readText)
13
- */
14
- @send
15
- external readText: clipboard => promise<string> = "readText"
16
-
17
- /**
18
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clipboard/write)
19
- */
20
- @send
21
- external write: (clipboard, array<clipboardItem>) => promise<unit> = "write"
22
-
23
- /**
24
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clipboard/writeText)
25
- */
26
- @send
27
- external writeText: (clipboard, string) => promise<unit> = "writeText"
@@ -1,29 +0,0 @@
1
- open CredentialManagementAPI
2
-
3
- /**
4
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/get)
5
- */
6
- @send
7
- external get: (credentialsContainer, ~options: credentialRequestOptions=?) => promise<credential> =
8
- "get"
9
-
10
- /**
11
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/store)
12
- */
13
- @send
14
- external store: (credentialsContainer, credential) => promise<unit> = "store"
15
-
16
- /**
17
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/create)
18
- */
19
- @send
20
- external create: (
21
- credentialsContainer,
22
- ~options: credentialCreationOptions=?,
23
- ) => promise<credential> = "create"
24
-
25
- /**
26
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/preventSilentAccess)
27
- */
28
- @send
29
- external preventSilentAccess: credentialsContainer => promise<unit> = "preventSilentAccess"
@@ -1,32 +0,0 @@
1
- open DOMAPI
2
-
3
- /**
4
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet)
5
- */
6
- @new
7
- external make: (~options: cssStyleSheetInit=?) => cssStyleSheet = "CSSStyleSheet"
8
-
9
- external asStyleSheet: cssStyleSheet => styleSheet = "%identity"
10
- /**
11
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/insertRule)
12
- */
13
- @send
14
- external insertRule: (cssStyleSheet, ~rule: string, ~index: int=?) => int = "insertRule"
15
-
16
- /**
17
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/deleteRule)
18
- */
19
- @send
20
- external deleteRule: (cssStyleSheet, int) => unit = "deleteRule"
21
-
22
- /**
23
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/replace)
24
- */
25
- @send
26
- external replace: (cssStyleSheet, string) => promise<cssStyleSheet> = "replace"
27
-
28
- /**
29
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/replaceSync)
30
- */
31
- @send
32
- external replaceSync: (cssStyleSheet, string) => unit = "replaceSync"
@@ -1,4 +0,0 @@
1
- open DOMAPI
2
-
3
- @send
4
- external getClientRect: caretPosition => domRect = "getClientRect"
@@ -1,9 +0,0 @@
1
- open DOMAPI
2
-
3
- include CharacterData.Impl({type t = comment})
4
-
5
- /**
6
- [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Comment)
7
- */
8
- @new
9
- external make: (~data: string=?) => comment = "Comment"