@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,18 +1,16 @@
1
1
  @@warning("-30")
2
2
 
3
- open EventAPI
4
-
5
3
  type remotePlaybackState =
6
4
  | @as("connected") Connected
7
5
  | @as("connecting") Connecting
8
6
  | @as("disconnected") Disconnected
9
7
 
10
8
  /**
11
- [See RemotePlayback on MDN](https://developer.mozilla.org/docs/Web/API/RemotePlayback)
9
+ [See WebApiRemotePlayback on MDN](https://developer.mozilla.org/docs/Web/API/RemotePlayback)
12
10
  */
13
- @editor.completeFrom(RemotePlayback)
14
- type remotePlayback = {
15
- ...eventTarget,
11
+ @editor.completeFrom(WebApiRemotePlayback)
12
+ type remotePlayback = private {
13
+ ...EventTypes.eventTarget,
16
14
  /**
17
15
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/RemotePlayback/state)
18
16
  */
@@ -0,0 +1,30 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ResizeObserver)
3
+ */
4
+ @new
5
+ external make: ResizeObserverTypes.resizeObserverCallback => ResizeObserverTypes.resizeObserver =
6
+ "ResizeObserver"
7
+
8
+ /**
9
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ResizeObserver/observe)
10
+ */
11
+ @send
12
+ external observe: (
13
+ ResizeObserverTypes.resizeObserver,
14
+ ~target: DomTypes.element,
15
+ ~options: ResizeObserverTypes.resizeObserverOptions=?,
16
+ ) => unit = "observe"
17
+
18
+ /**
19
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ResizeObserver/unobserve)
20
+ */
21
+ @send
22
+ external unobserve: (ResizeObserverTypes.resizeObserver, DomTypes.element) => unit = "unobserve"
23
+
24
+ /**
25
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ResizeObserver/disconnect)
26
+ */
27
+ @send
28
+ external disconnect: ResizeObserverTypes.resizeObserver => unit = "disconnect"
29
+
30
+ module Types = ResizeObserverTypes
@@ -1,7 +1,5 @@
1
1
  @@warning("-30")
2
2
 
3
- open DOMAPI
4
-
5
3
  type resizeObserverBoxOptions =
6
4
  | @as("border-box") BorderBox
7
5
  | @as("content-box") ContentBox
@@ -28,11 +26,11 @@ type resizeObserverEntry = {
28
26
  /**
29
27
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/target)
30
28
  */
31
- target: element,
29
+ target: DomTypes.element,
32
30
  /**
33
31
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/contentRect)
34
32
  */
35
- contentRect: domRectReadOnly,
33
+ contentRect: DomTypes.domRectReadOnly,
36
34
  /**
37
35
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/borderBoxSize)
38
36
  */
@@ -48,10 +46,10 @@ type resizeObserverEntry = {
48
46
  }
49
47
 
50
48
  /**
51
- [See ResizeObserver on MDN](https://developer.mozilla.org/docs/Web/API/ResizeObserver)
49
+ [See WebApiResizeObserver on MDN](https://developer.mozilla.org/docs/Web/API/ResizeObserver)
52
50
  */
53
- @editor.completeFrom(ResizeObserver)
54
- type resizeObserver = {}
51
+ @editor.completeFrom(WebApiResizeObserver)
52
+ type resizeObserver = private {}
55
53
 
56
54
  type resizeObserverOptions = {mutable box?: resizeObserverBoxOptions}
57
55
 
@@ -1,21 +1,19 @@
1
1
  @@warning("-30")
2
2
 
3
- open EventAPI
4
-
5
3
  type wakeLockType = | @as("screen") Screen
6
4
 
7
5
  /**
8
6
  [See WakeLock on MDN](https://developer.mozilla.org/docs/Web/API/WakeLock)
9
7
  */
10
8
  @editor.completeFrom(WakeLock)
11
- type wakeLock = {}
9
+ type wakeLock = private {}
12
10
 
13
11
  /**
14
12
  [See WakeLockSentinel on MDN](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel)
15
13
  */
16
14
  @editor.completeFrom(WakeLockSentinel)
17
- type wakeLockSentinel = {
18
- ...eventTarget,
15
+ type wakeLockSentinel = private {
16
+ ...EventTypes.eventTarget,
19
17
  /**
20
18
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel/released)
21
19
  */
@@ -0,0 +1,8 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WakeLock/request)
3
+ */
4
+ @send
5
+ external request: (
6
+ ScreenWakeLockTypes.wakeLock,
7
+ ~type_: ScreenWakeLockTypes.wakeLockType=?,
8
+ ) => promise<ScreenWakeLockTypes.wakeLockSentinel> = "request"
@@ -0,0 +1,7 @@
1
+ include EventTarget.Impl({type t = ScreenWakeLockTypes.wakeLockSentinel})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel/release)
5
+ */
6
+ @send
7
+ external release: ScreenWakeLockTypes.wakeLockSentinel => promise<unit> = "release"
@@ -0,0 +1,117 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/match)
3
+ */
4
+ @send
5
+ external match: (
6
+ WebWorkersTypes.cache,
7
+ ~request: FetchTypes.request,
8
+ ~options: WebWorkersTypes.cacheQueryOptions=?,
9
+ ) => Nullable.t<FetchTypes.response> = "match"
10
+
11
+ /**
12
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/match)
13
+ */
14
+ @send
15
+ external match2: (
16
+ WebWorkersTypes.cache,
17
+ ~request: string,
18
+ ~options: WebWorkersTypes.cacheQueryOptions=?,
19
+ ) => Nullable.t<FetchTypes.response> = "match"
20
+
21
+ /**
22
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/matchAll)
23
+ */
24
+ @send
25
+ external matchAll: (
26
+ WebWorkersTypes.cache,
27
+ ~request: FetchTypes.request=?,
28
+ ~options: WebWorkersTypes.cacheQueryOptions=?,
29
+ ) => promise<array<FetchTypes.response>> = "matchAll"
30
+
31
+ /**
32
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/matchAll)
33
+ */
34
+ @send
35
+ external matchAll2: (
36
+ WebWorkersTypes.cache,
37
+ ~request: string=?,
38
+ ~options: WebWorkersTypes.cacheQueryOptions=?,
39
+ ) => promise<array<FetchTypes.response>> = "matchAll"
40
+
41
+ /**
42
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/add)
43
+ */
44
+ @send
45
+ external add: (WebWorkersTypes.cache, FetchTypes.request) => promise<unit> = "add"
46
+
47
+ /**
48
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/add)
49
+ */
50
+ @send
51
+ external add2: (WebWorkersTypes.cache, string) => promise<unit> = "add"
52
+
53
+ /**
54
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/addAll)
55
+ */
56
+ @send
57
+ external addAll: (WebWorkersTypes.cache, array<FetchTypes.requestInfo>) => promise<unit> = "addAll"
58
+
59
+ /**
60
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/put)
61
+ */
62
+ @send
63
+ external put: (
64
+ WebWorkersTypes.cache,
65
+ ~request: FetchTypes.request,
66
+ ~response: FetchTypes.response,
67
+ ) => promise<unit> = "put"
68
+
69
+ /**
70
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/put)
71
+ */
72
+ @send
73
+ external put2: (
74
+ WebWorkersTypes.cache,
75
+ ~request: string,
76
+ ~response: FetchTypes.response,
77
+ ) => promise<unit> = "put"
78
+
79
+ /**
80
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/delete)
81
+ */
82
+ @send
83
+ external delete: (
84
+ WebWorkersTypes.cache,
85
+ ~request: FetchTypes.request,
86
+ ~options: WebWorkersTypes.cacheQueryOptions=?,
87
+ ) => promise<bool> = "delete"
88
+
89
+ /**
90
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/delete)
91
+ */
92
+ @send
93
+ external delete2: (
94
+ WebWorkersTypes.cache,
95
+ ~request: string,
96
+ ~options: WebWorkersTypes.cacheQueryOptions=?,
97
+ ) => promise<bool> = "delete"
98
+
99
+ /**
100
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/keys)
101
+ */
102
+ @send
103
+ external keys: (
104
+ WebWorkersTypes.cache,
105
+ ~request: FetchTypes.request=?,
106
+ ~options: WebWorkersTypes.cacheQueryOptions=?,
107
+ ) => promise<array<FetchTypes.request>> = "keys"
108
+
109
+ /**
110
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Cache/keys)
111
+ */
112
+ @send
113
+ external keys2: (
114
+ WebWorkersTypes.cache,
115
+ ~request: string=?,
116
+ ~options: WebWorkersTypes.cacheQueryOptions=?,
117
+ ) => promise<array<FetchTypes.request>> = "keys"
@@ -1,5 +1,3 @@
1
- open ServiceWorkerAPI
2
-
3
1
  type clientQueryOptions = {
4
2
  mutable includeUncontrolled?: bool,
5
3
  @as("type") mutable type_?: string,
@@ -10,25 +8,34 @@ Returns a `Promise` for a `Client` matching a given id.
10
8
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clients/get)
11
9
  */
12
10
  @send
13
- external get: (clients, string) => promise<Nullable.t<client>> = "get"
11
+ external get: (
12
+ ServiceWorkerTypes.clients,
13
+ string,
14
+ ) => promise<Nullable.t<ServiceWorkerTypes.client>> = "get"
14
15
 
15
16
  /**
16
17
  Returns a `Promise` for an array of `Client` objects matching the given options.
17
18
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clients/matchAll)
18
19
  */
19
20
  @send
20
- external matchAll: (clients, ~options: clientQueryOptions=?) => promise<array<client>> = "matchAll"
21
+ external matchAll: (
22
+ ServiceWorkerTypes.clients,
23
+ ~options: clientQueryOptions=?,
24
+ ) => promise<array<ServiceWorkerTypes.client>> = "matchAll"
21
25
 
22
26
  /**
23
- Opens a new browser window for a given URL and returns a `Promise` for the new `WindowClient`.
27
+ Opens a new browser window for a given WebApiURL and returns a `Promise` for the new `WindowClient`.
24
28
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clients/openWindow)
25
29
  */
26
30
  @send
27
- external openWindow: (clients, string) => promise<windowClient> = "openWindow"
31
+ external openWindow: (
32
+ ServiceWorkerTypes.clients,
33
+ string,
34
+ ) => promise<ServiceWorkerTypes.windowClient> = "openWindow"
28
35
 
29
36
  /**
30
37
  Allows an active service worker to set itself as the controller for all clients within its scope.
31
38
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Clients/claim)
32
39
  */
33
40
  @send
34
- external claim: clients => promise<unit> = "claim"
41
+ external claim: ServiceWorkerTypes.clients => promise<unit> = "claim"
@@ -1,25 +1,26 @@
1
- open ServiceWorkerAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/enable)
5
3
  */
6
4
  @send
7
- external enable: navigationPreloadManager => promise<unit> = "enable"
5
+ external enable: ServiceWorkerTypes.navigationPreloadManager => promise<unit> = "enable"
8
6
 
9
7
  /**
10
8
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/disable)
11
9
  */
12
10
  @send
13
- external disable: navigationPreloadManager => promise<unit> = "disable"
11
+ external disable: ServiceWorkerTypes.navigationPreloadManager => promise<unit> = "disable"
14
12
 
15
13
  /**
16
14
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/setHeaderValue)
17
15
  */
18
16
  @send
19
- external setHeaderValue: (navigationPreloadManager, string) => promise<unit> = "setHeaderValue"
17
+ external setHeaderValue: (ServiceWorkerTypes.navigationPreloadManager, string) => promise<unit> =
18
+ "setHeaderValue"
20
19
 
21
20
  /**
22
21
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/getState)
23
22
  */
24
23
  @send
25
- external getState: navigationPreloadManager => promise<navigationPreloadState> = "getState"
24
+ external getState: ServiceWorkerTypes.navigationPreloadManager => promise<
25
+ ServiceWorkerTypes.navigationPreloadState,
26
+ > = "getState"
@@ -0,0 +1,38 @@
1
+ type t = ServiceWorkerTypes.serviceWorker = private {...ServiceWorkerTypes.serviceWorker}
2
+
3
+ include EventTarget.Impl({type t = t})
4
+
5
+ /**
6
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorker/postMessage)
7
+ */
8
+ @send
9
+ external postMessage: (t, ~message: JSON.t, ~transfer: array<Dict.t<string>>) => unit =
10
+ "postMessage"
11
+
12
+ /**
13
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorker/postMessage)
14
+ */
15
+ @send
16
+ external postMessage2: (
17
+ t,
18
+ ~message: JSON.t,
19
+ ~options: MessagePort.structuredSerializeOptions=?,
20
+ ) => unit = "postMessage"
21
+
22
+ /**
23
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorker/postMessage)
24
+ */
25
+ @send
26
+ external postMessageWithOptions: (
27
+ t,
28
+ ~message: JSON.t,
29
+ ~options: MessagePort.structuredSerializeOptions=?,
30
+ ) => unit = "postMessage"
31
+
32
+ module Cache = Cache
33
+ module Clients = Clients
34
+ module NavigationPreloadManager = NavigationPreloadManager
35
+ module ServiceWorkerContainer = ServiceWorkerContainer
36
+ module ServiceWorkerScope = ServiceWorkerScope
37
+ module ServiceWorkerRegistration = ServiceWorkerRegistration
38
+ module Types = ServiceWorkerTypes
@@ -0,0 +1,34 @@
1
+ include EventTarget.Impl({type t = ServiceWorkerTypes.serviceWorkerContainer})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/register)
5
+ */
6
+ @send
7
+ external register: (
8
+ ServiceWorkerTypes.serviceWorkerContainer,
9
+ string,
10
+ ~options: ServiceWorkerTypes.registrationOptions=?,
11
+ ) => promise<ServiceWorkerTypes.serviceWorkerRegistration> = "register"
12
+
13
+ /**
14
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/getRegistration)
15
+ */
16
+ @send
17
+ external getRegistration: (
18
+ ServiceWorkerTypes.serviceWorkerContainer,
19
+ ~clientURL: string=?,
20
+ ) => Nullable.t<ServiceWorkerTypes.serviceWorkerRegistration> = "getRegistration"
21
+
22
+ /**
23
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/getRegistrations)
24
+ */
25
+ @send
26
+ external getRegistrations: ServiceWorkerTypes.serviceWorkerContainer => promise<
27
+ array<ServiceWorkerTypes.serviceWorkerRegistration>,
28
+ > = "getRegistrations"
29
+
30
+ /**
31
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/startMessages)
32
+ */
33
+ @send
34
+ external startMessages: ServiceWorkerTypes.serviceWorkerContainer => unit = "startMessages"
@@ -1,28 +1,25 @@
1
- open ServiceWorkerAPI
2
- open NotificationAPI
3
-
4
- include EventTarget.Impl({type t = serviceWorkerRegistration})
1
+ include EventTarget.Impl({type t = ServiceWorkerTypes.serviceWorkerRegistration})
5
2
 
6
3
  /**
7
4
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/update)
8
5
  */
9
6
  @send
10
- external update: serviceWorkerRegistration => promise<unit> = "update"
7
+ external update: ServiceWorkerTypes.serviceWorkerRegistration => promise<unit> = "update"
11
8
 
12
9
  /**
13
10
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/unregister)
14
11
  */
15
12
  @send
16
- external unregister: serviceWorkerRegistration => promise<bool> = "unregister"
13
+ external unregister: ServiceWorkerTypes.serviceWorkerRegistration => promise<bool> = "unregister"
17
14
 
18
15
  /**
19
16
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/showNotification)
20
17
  */
21
18
  @send
22
19
  external showNotification: (
23
- serviceWorkerRegistration,
20
+ ServiceWorkerTypes.serviceWorkerRegistration,
24
21
  ~title: string,
25
- ~options: notificationOptions=?,
22
+ ~options: NotificationTypes.notificationOptions=?,
26
23
  ) => promise<unit> = "showNotification"
27
24
 
28
25
  /**
@@ -30,6 +27,6 @@ external showNotification: (
30
27
  */
31
28
  @send
32
29
  external getNotifications: (
33
- serviceWorkerRegistration,
34
- ~filter: getNotificationOptions=?,
35
- ) => promise<array<notification>> = "getNotifications"
30
+ ServiceWorkerTypes.serviceWorkerRegistration,
31
+ ~filter: NotificationTypes.getNotificationOptions=?,
32
+ ) => promise<array<NotificationTypes.notification>> = "getNotifications"
@@ -0,0 +1,12 @@
1
+ type t = ServiceWorkerTypes.serviceWorkerGlobalScope = private {
2
+ ...ServiceWorkerTypes.serviceWorkerGlobalScope,
3
+ }
4
+
5
+ include Worker.Impl({type t = t})
6
+
7
+ /**
8
+ Forces the waiting service worker to become the active service worker.
9
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/skipWaiting)
10
+ */
11
+ @send
12
+ external skipWaiting: t => promise<unit> = "skipWaiting"
@@ -1,10 +1,5 @@
1
1
  @@warning("-30")
2
2
 
3
- open Prelude
4
- open EventAPI
5
- open PushAPI
6
- open WebWorkersAPI
7
-
8
3
  type serviceWorkerState =
9
4
  | @as("activated") Activated
10
5
  | @as("activating") Activating
@@ -23,12 +18,12 @@ type workerType =
23
18
  | @as("module") Module
24
19
 
25
20
  /**
26
- This ServiceWorker API interface provides a reference to a service worker. Multiple browsing contexts (e.g. pages, workers, etc.) can be associated with the same service worker, each through a unique ServiceWorker object.
27
- [See ServiceWorker on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorker)
21
+ This WebApiServiceWorker API interface provides a reference to a service worker. Multiple browsing contexts (e.g. pages, workers, etc.) can be associated with the same service worker, each through a unique WebApiServiceWorker object.
22
+ [See WebApiServiceWorker on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorker)
28
23
  */
29
- @editor.completeFrom(ServiceWorker)
30
- type serviceWorker = {
31
- ...eventTarget,
24
+ @editor.completeFrom(WebApiServiceWorker)
25
+ type serviceWorker = private {
26
+ ...EventTypes.eventTarget,
32
27
  /**
33
28
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorker/scriptURL)
34
29
  */
@@ -43,15 +38,15 @@ type serviceWorker = {
43
38
  [See NavigationPreloadManager on MDN](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager)
44
39
  */
45
40
  @editor.completeFrom(NavigationPreloadManager)
46
- type navigationPreloadManager = {}
41
+ type navigationPreloadManager = private {}
47
42
 
48
43
  /**
49
- This ServiceWorker API interface represents the service worker registration. You register a service worker to control one or more pages that share the same origin.
44
+ This WebApiServiceWorker API interface represents the service worker registration. You register a service worker to control one or more pages that share the same origin.
50
45
  [See ServiceWorkerRegistration on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration)
51
46
  */
52
47
  @editor.completeFrom(ServiceWorkerRegistration)
53
- type serviceWorkerRegistration = {
54
- ...eventTarget,
48
+ type serviceWorkerRegistration = private {
49
+ ...EventTypes.eventTarget,
55
50
  /**
56
51
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/installing)
57
52
  */
@@ -79,16 +74,16 @@ type serviceWorkerRegistration = {
79
74
  /**
80
75
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/pushManager)
81
76
  */
82
- pushManager: pushManager,
77
+ pushManager: PushTypes.pushManager,
83
78
  }
84
79
 
85
80
  /**
86
- The ServiceWorkerContainer interface of the ServiceWorker API provides an object representing the service worker as an overall unit in the network ecosystem, including facilities to register, unregister and update service workers, and access the state of service workers and their registrations.
81
+ The ServiceWorkerContainer interface of the WebApiServiceWorker API provides an object representing the service worker as an overall unit in the network ecosystem, including facilities to register, unregister and update service workers, and access the state of service workers and their registrations.
87
82
  [See ServiceWorkerContainer on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer)
88
83
  */
89
84
  @editor.completeFrom(ServiceWorkerContainer)
90
- type serviceWorkerContainer = {
91
- ...eventTarget,
85
+ type serviceWorkerContainer = private {
86
+ ...EventTypes.eventTarget,
92
87
  /**
93
88
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/controller)
94
89
  */
@@ -106,11 +101,11 @@ type navigationPreloadState = {
106
101
 
107
102
  type registrationOptions = {
108
103
  mutable scope?: string,
109
- @as("type") mutable type_?: workerType,
104
+ @as("type") mutable type_?: WebWorkersTypes.workerType,
110
105
  mutable updateViaCache?: serviceWorkerUpdateViaCache,
111
106
  }
112
107
 
113
- type requestInfo = any
108
+ type requestInfo = unknown
114
109
 
115
110
  /**
116
111
  The Clients interface provides access to Client objects. Access it via self.clients within a service worker.
@@ -124,8 +119,8 @@ The ServiceWorkerGlobalScope interface of the Service Worker API represents the
124
119
  [See ServiceWorkerGlobalScope on MDN](https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope)
125
120
  */
126
121
  @editor.completeFrom(ServiceWorkerGlobalScope)
127
- type serviceWorkerGlobalScope = {
128
- ...workerGlobalScope,
122
+ type serviceWorkerGlobalScope = private {
123
+ ...WebWorkersTypes.workerGlobalScope,
129
124
  /**
130
125
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/clients)
131
126
  */
@@ -150,7 +145,7 @@ type client = {
150
145
  }
151
146
 
152
147
  /**
153
- The WindowClient interface of the ServiceWorker API represents the scope of a service worker client that is a document in a browsing context, controlled by an active worker.
148
+ The WindowClient interface of the WebApiServiceWorker API represents the scope of a service worker client that is a document in a browsing context, controlled by an active worker.
154
149
  [See WindowClient on MDN](https://developer.mozilla.org/en-US/docs/Web/API/WindowClient)
155
150
  */
156
151
  type windowClient = {
@@ -1,26 +1,24 @@
1
- open StorageAPI
2
- open FileAPI
3
-
4
1
  /**
5
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/StorageManager/persisted)
6
3
  */
7
4
  @send
8
- external persisted: storageManager => promise<bool> = "persisted"
5
+ external persisted: StorageTypes.storageManager => promise<bool> = "persisted"
9
6
 
10
7
  /**
11
8
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/StorageManager/persist)
12
9
  */
13
10
  @send
14
- external persist: storageManager => promise<bool> = "persist"
11
+ external persist: StorageTypes.storageManager => promise<bool> = "persist"
15
12
 
16
13
  /**
17
14
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/StorageManager/estimate)
18
15
  */
19
16
  @send
20
- external estimate: storageManager => promise<storageEstimate> = "estimate"
17
+ external estimate: StorageTypes.storageManager => promise<StorageTypes.storageEstimate> = "estimate"
21
18
 
22
19
  /**
23
20
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/StorageManager/getDirectory)
24
21
  */
25
22
  @send
26
- external getDirectory: storageManager => promise<fileSystemDirectoryHandle> = "getDirectory"
23
+ external getDirectory: StorageTypes.storageManager => promise<FileTypes.fileSystemDirectoryHandle> =
24
+ "getDirectory"
@@ -3,7 +3,7 @@
3
3
  [See StorageManager on MDN](https://developer.mozilla.org/docs/Web/API/StorageManager)
4
4
  */
5
5
  @editor.completeFrom(StorageManager)
6
- type storageManager = {}
6
+ type storageManager = private {}
7
7
 
8
8
  type storageEstimate = {
9
9
  mutable usage?: int,
@@ -0,0 +1,10 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CompositionEvent)
3
+ */
4
+ @new
5
+ external make: (
6
+ ~type_: string,
7
+ ~eventInitDict: UiEventsTypes.compositionEventInit=?,
8
+ ) => UiEventsTypes.compositionEvent = "CompositionEvent"
9
+
10
+ include UIEvent.Impl({type t = UiEventsTypes.compositionEvent})
@@ -1,36 +1,38 @@
1
- open UIEventsAPI
2
- open DOMAPI
3
-
4
1
  /**
5
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DataTransfer)
6
3
  */
7
4
  @new
8
- external make: unit => dataTransfer = "DataTransfer"
5
+ external make: unit => UiEventsTypes.dataTransfer = "DataTransfer"
9
6
 
10
7
  /**
11
8
  Uses the given element to update the drag feedback, replacing any previously specified feedback.
12
9
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DataTransfer/setDragImage)
13
10
  */
14
11
  @send
15
- external setDragImage: (dataTransfer, ~image: element, ~x: int, ~y: int) => unit = "setDragImage"
12
+ external setDragImage: (
13
+ UiEventsTypes.dataTransfer,
14
+ ~image: DomTypes.element,
15
+ ~x: int,
16
+ ~y: int,
17
+ ) => unit = "setDragImage"
16
18
 
17
19
  /**
18
20
  Returns the specified data. If there is no such data, returns the empty string.
19
21
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DataTransfer/getData)
20
22
  */
21
23
  @send
22
- external getData: (dataTransfer, string) => string = "getData"
24
+ external getData: (UiEventsTypes.dataTransfer, string) => string = "getData"
23
25
 
24
26
  /**
25
27
  Adds the specified data.
26
28
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DataTransfer/setData)
27
29
  */
28
30
  @send
29
- external setData: (dataTransfer, ~format: string, ~data: string) => unit = "setData"
31
+ external setData: (UiEventsTypes.dataTransfer, ~format: string, ~data: string) => unit = "setData"
30
32
 
31
33
  /**
32
34
  Removes the data of the specified formats. Removes all data if the argument is omitted.
33
35
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DataTransfer/clearData)
34
36
  */
35
37
  @send
36
- external clearData: (dataTransfer, ~format: string=?) => unit = "clearData"
38
+ external clearData: (UiEventsTypes.dataTransfer, ~format: string=?) => unit = "clearData"