@rescript/webapi 0.1.0-alpha-b1d58f9

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 (341) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +35 -0
  3. package/package.json +61 -0
  4. package/rescript.json +557 -0
  5. package/src/animation/Animation.res +149 -0
  6. package/src/animation/AnimationEffect.res +71 -0
  7. package/src/animation/DocumentTimeline.res +8 -0
  8. package/src/canvas/Canvas.res +179 -0
  9. package/src/canvas/CanvasGradient.res +11 -0
  10. package/src/canvas/CanvasPattern.res +11 -0
  11. package/src/canvas/CanvasRenderingContext2D.res +868 -0
  12. package/src/canvas/CanvasTypes.res +452 -0
  13. package/src/canvas/FillStyle.res +25 -0
  14. package/src/canvas/HTMLCanvasElement.res +101 -0
  15. package/src/canvas/ImageBitmap.res +6 -0
  16. package/src/canvas/ImageBitmapRenderingContext.res +9 -0
  17. package/src/canvas/ImageData.res +17 -0
  18. package/src/canvas/OffscreenCanvas.res +87 -0
  19. package/src/canvas/Path2D.res +186 -0
  20. package/src/canvas/VideoColorSpace.res +11 -0
  21. package/src/canvas/VideoFrame.res +217 -0
  22. package/src/core/ArrayBufferTypedArrayOrDataView.res +4 -0
  23. package/src/core/DOM.res +1026 -0
  24. package/src/core/EventType.res +108 -0
  25. package/src/crypto/Crypto.res +11 -0
  26. package/src/crypto/SubtleCrypto.res +173 -0
  27. package/src/crypto/WebCryptoTypes.res +71 -0
  28. package/src/css-font-loading/BaseCSSFontLoading.res +24 -0
  29. package/src/css-font-loading/CssFontLoadingTypes.res +92 -0
  30. package/src/css-font-loading/FontFace.res +62 -0
  31. package/src/css-font-loading/FontFaceSet.res +38 -0
  32. package/src/cssom/CSSRuleList.res +5 -0
  33. package/src/cssom/CSSStyleDeclaration.res +1734 -0
  34. package/src/cssom/CSSStyleValue.res +17 -0
  35. package/src/cssom/MediaList.res +29 -0
  36. package/src/cssom/MediaQueryList.res +18 -0
  37. package/src/cssom/StylePropertyMap.res +56 -0
  38. package/src/cssom/StylePropertyMapReadOnly.res +22 -0
  39. package/src/cssom/StyleSheet.res +152 -0
  40. package/src/cssom/StyleSheetList.res +17 -0
  41. package/src/device/GamepadHapticActuator.res +16 -0
  42. package/src/device/GamepadTypes.res +86 -0
  43. package/src/device/Geolocation.res +31 -0
  44. package/src/device/GeolocationCoordinates.res +5 -0
  45. package/src/device/GeolocationPosition.res +5 -0
  46. package/src/device/GeolocationTypes.res +81 -0
  47. package/src/device/LockManager.res +26 -0
  48. package/src/device/ScreenOrientation.res +7 -0
  49. package/src/device/ScreenWakeLockTypes.res +26 -0
  50. package/src/device/WakeLock.res +8 -0
  51. package/src/device/WakeLockSentinel.res +7 -0
  52. package/src/device/WebLocksTypes.res +45 -0
  53. package/src/device/WebMIDI.res +7 -0
  54. package/src/device/WebMidiTypes.res +36 -0
  55. package/src/dom-nodes/AbstractRange.res +30 -0
  56. package/src/dom-nodes/Attr.res +101 -0
  57. package/src/dom-nodes/CDATASection.res +7 -0
  58. package/src/dom-nodes/CaretPosition.res +2 -0
  59. package/src/dom-nodes/CharacterData.res +199 -0
  60. package/src/dom-nodes/Comment.res +15 -0
  61. package/src/dom-nodes/DOMImplementation.res +131 -0
  62. package/src/dom-nodes/DOMTree.res +1653 -0
  63. package/src/dom-nodes/DocumentFragment.res +96 -0
  64. package/src/dom-nodes/Element.res +509 -0
  65. package/src/dom-nodes/ElementInternals.res +39 -0
  66. package/src/dom-nodes/HTML.res +11 -0
  67. package/src/dom-nodes/HTMLCollection.res +25 -0
  68. package/src/dom-nodes/NamedNodeMap.res +46 -0
  69. package/src/dom-nodes/Node.res +114 -0
  70. package/src/dom-nodes/NodeFilter.res +4 -0
  71. package/src/dom-nodes/NodeIterator.res +38 -0
  72. package/src/dom-nodes/NodeList.res +6 -0
  73. package/src/dom-nodes/ProcessingInstruction.res +15 -0
  74. package/src/dom-nodes/Range.res +156 -0
  75. package/src/dom-nodes/Selection.res +137 -0
  76. package/src/dom-nodes/ShadowRoot.res +23 -0
  77. package/src/dom-nodes/StaticRange.res +6 -0
  78. package/src/dom-nodes/Text.res +31 -0
  79. package/src/dom-nodes/TreeWalker.res +65 -0
  80. package/src/dom-platform/DOMException.res +7 -0
  81. package/src/dom-platform/DOMStringList.res +15 -0
  82. package/src/dom-platform/DOMStringMap.res +5 -0
  83. package/src/dom-platform/DOMTokenList.res +70 -0
  84. package/src/event/AbortController.res +9 -0
  85. package/src/event/AbortSignal.res +25 -0
  86. package/src/event/Event.res +76 -0
  87. package/src/event/EventTarget.res +91 -0
  88. package/src/event/ExtendableEvent.res +14 -0
  89. package/src/fetch/BodyInit.res +46 -0
  90. package/src/fetch/Fetch.res +12 -0
  91. package/src/fetch/FetchTypes.res +282 -0
  92. package/src/fetch/FormData.res +71 -0
  93. package/src/fetch/FormDataEntryValue.res +2 -0
  94. package/src/fetch/Headers.res +59 -0
  95. package/src/fetch/HeadersInit.res +16 -0
  96. package/src/fetch/Request.res +61 -0
  97. package/src/fetch/Response.res +127 -0
  98. package/src/file/BaseFileAndDirectoryEntries.res +72 -0
  99. package/src/file/Blob.res +48 -0
  100. package/src/file/File.res +15 -0
  101. package/src/file/FileAndDirectoryEntriesTypes.res +35 -0
  102. package/src/file/FileList.res +16 -0
  103. package/src/file/FileSystemDirectoryEntry.res +42 -0
  104. package/src/file/FileSystemDirectoryHandle.res +49 -0
  105. package/src/file/FileSystemDirectoryReader.res +9 -0
  106. package/src/file/FileSystemEntry.res +9 -0
  107. package/src/file/FileSystemFileHandle.res +25 -0
  108. package/src/file/FileSystemHandle.res +6 -0
  109. package/src/file/FileSystemWritableFileStream.res +65 -0
  110. package/src/file/FileTypes.res +225 -0
  111. package/src/file/ReadableStream.res +79 -0
  112. package/src/file/WritableStream.res +27 -0
  113. package/src/file/WritableStreamDefaultController.res +5 -0
  114. package/src/geometry/DOMMatrix.res +206 -0
  115. package/src/geometry/DOMMatrixReadOnly.res +140 -0
  116. package/src/geometry/DOMPoint.res +28 -0
  117. package/src/geometry/DOMPointReadOnly.res +22 -0
  118. package/src/geometry/DOMRect.res +22 -0
  119. package/src/geometry/DOMRectList.res +2 -0
  120. package/src/geometry/DOMRectReadOnly.res +19 -0
  121. package/src/html/HTMLAnchorElement.res +373 -0
  122. package/src/html/HTMLAreaElement.res +353 -0
  123. package/src/html/HTMLBRElement.res +9 -0
  124. package/src/html/HTMLBaseElement.res +20 -0
  125. package/src/html/HTMLBodyElement.res +9 -0
  126. package/src/html/HTMLButtonElement.res +98 -0
  127. package/src/html/HTMLDListElement.res +9 -0
  128. package/src/html/HTMLDataElement.res +14 -0
  129. package/src/html/HTMLDataListElement.res +14 -0
  130. package/src/html/HTMLDialogElement.res +40 -0
  131. package/src/html/HTMLDivElement.res +9 -0
  132. package/src/html/HTMLElement.res +108 -0
  133. package/src/html/HTMLEmbedElement.res +275 -0
  134. package/src/html/HTMLFieldSetElement.res +70 -0
  135. package/src/html/HTMLFormControlsCollection.res +21 -0
  136. package/src/html/HTMLFormElement.res +39 -0
  137. package/src/html/HTMLFrameSetElement.res +9 -0
  138. package/src/html/HTMLHRElement.res +9 -0
  139. package/src/html/HTMLHeadElement.res +256 -0
  140. package/src/html/HTMLHeadingElement.res +9 -0
  141. package/src/html/HTMLHtmlElement.res +9 -0
  142. package/src/html/HTMLIFrameElement.res +69 -0
  143. package/src/html/HTMLImageElement.res +349 -0
  144. package/src/html/HTMLInputElement.res +310 -0
  145. package/src/html/HTMLLIElement.res +9 -0
  146. package/src/html/HTMLLabelElement.res +25 -0
  147. package/src/html/HTMLLegendElement.res +14 -0
  148. package/src/html/HTMLLinkElement.res +69 -0
  149. package/src/html/HTMLMapElement.res +20 -0
  150. package/src/html/HTMLMenuElement.res +8 -0
  151. package/src/html/HTMLMetaElement.res +29 -0
  152. package/src/html/HTMLMeterElement.res +38 -0
  153. package/src/html/HTMLModElement.res +9 -0
  154. package/src/html/HTMLOListElement.res +24 -0
  155. package/src/html/HTMLObjectElement.res +89 -0
  156. package/src/html/HTMLOptGroupElement.res +19 -0
  157. package/src/html/HTMLOptionElement.res +49 -0
  158. package/src/html/HTMLOptionsCollection.res +35 -0
  159. package/src/html/HTMLOutputElement.res +73 -0
  160. package/src/html/HTMLParagraphElement.res +9 -0
  161. package/src/html/HTMLPictureElement.res +9 -0
  162. package/src/html/HTMLPreElement.res +9 -0
  163. package/src/html/HTMLProgressElement.res +29 -0
  164. package/src/html/HTMLQuoteElement.res +9 -0
  165. package/src/html/HTMLScriptElement.res +310 -0
  166. package/src/html/HTMLSelectElement.res +157 -0
  167. package/src/html/HTMLSlotElement.res +34 -0
  168. package/src/html/HTMLSourceElement.res +18 -0
  169. package/src/html/HTMLSpanElement.res +9 -0
  170. package/src/html/HTMLStyleElement.res +24 -0
  171. package/src/html/HTMLTableCaptionElement.res +9 -0
  172. package/src/html/HTMLTableCellElement.res +40 -0
  173. package/src/html/HTMLTableElement.res +100 -0
  174. package/src/html/HTMLTableRowElement.res +40 -0
  175. package/src/html/HTMLTableSectionElement.res +30 -0
  176. package/src/html/HTMLTemplateElement.res +31 -0
  177. package/src/html/HTMLTextAreaElement.res +177 -0
  178. package/src/html/HTMLTimeElement.res +14 -0
  179. package/src/html/HTMLTitleElement.res +15 -0
  180. package/src/html/HTMLUListElement.res +9 -0
  181. package/src/html/HTMLUnknownElement.res +9 -0
  182. package/src/media/BaseEncryptedMediaExtensions.res +97 -0
  183. package/src/media/DomHTMLMediaElement.res +206 -0
  184. package/src/media/EncryptedMediaExtensionsHTMLMediaElement.res +15 -0
  185. package/src/media/EncryptedMediaExtensionsTypes.res +43 -0
  186. package/src/media/HTMLAudioElement.res +9 -0
  187. package/src/media/HTMLTrackElement.res +14 -0
  188. package/src/media/HTMLVideoElement.res +78 -0
  189. package/src/media/MediaCapabilities.res +19 -0
  190. package/src/media/MediaCapabilitiesTypes.res +83 -0
  191. package/src/media/MediaCaptureAndStreamsTypes.res +197 -0
  192. package/src/media/MediaDeviceInfo.res +9 -0
  193. package/src/media/MediaDevices.res +40 -0
  194. package/src/media/MediaError.res +14 -0
  195. package/src/media/MediaKeySession.res +53 -0
  196. package/src/media/MediaKeyStatusMap.res +11 -0
  197. package/src/media/MediaKeySystemAccess.res +14 -0
  198. package/src/media/MediaKeys.res +35 -0
  199. package/src/media/MediaMetadata.res +10 -0
  200. package/src/media/MediaSession.res +25 -0
  201. package/src/media/MediaSessionTypes.res +85 -0
  202. package/src/media/MediaStream.res +89 -0
  203. package/src/media/MediaStreamTrack.res +51 -0
  204. package/src/media/PictureInPicture.res +7 -0
  205. package/src/media/PictureInPictureTypes.res +17 -0
  206. package/src/media/RemotePlayback.res +25 -0
  207. package/src/media/RemotePlaybackTypes.res +20 -0
  208. package/src/media/SpeechSynthesis.res +33 -0
  209. package/src/media/SpeechSynthesisUtterance.res +8 -0
  210. package/src/media/TextTrack.res +15 -0
  211. package/src/media/TextTrackCueList.res +9 -0
  212. package/src/media/TextTrackList.res +17 -0
  213. package/src/media/TimeRanges.res +29 -0
  214. package/src/media/VideoPlaybackQuality.res +18 -0
  215. package/src/media/WebSpeechTypes.res +83 -0
  216. package/src/media/WebVttTypes.res +123 -0
  217. package/src/messaging/ApplicationServerKey.res +2 -0
  218. package/src/messaging/ChannelMessagingTypes.res +12 -0
  219. package/src/messaging/CloseEvent.res +10 -0
  220. package/src/messaging/MessageEvent.res +43 -0
  221. package/src/messaging/MessagePort.res +38 -0
  222. package/src/messaging/Notification.res +46 -0
  223. package/src/messaging/NotificationTypes.res +107 -0
  224. package/src/messaging/PushEvent.res +3 -0
  225. package/src/messaging/PushManager.res +24 -0
  226. package/src/messaging/PushMessageData.res +15 -0
  227. package/src/messaging/PushSubscription.res +20 -0
  228. package/src/messaging/PushTypes.res +88 -0
  229. package/src/messaging/WebSocket.res +74 -0
  230. package/src/messaging/WebSocketsTypes.res +124 -0
  231. package/src/navigator/Clipboard.res +29 -0
  232. package/src/navigator/ClipboardItem.res +20 -0
  233. package/src/navigator/ClipboardTypes.res +31 -0
  234. package/src/navigator/CredentialManagementTypes.res +138 -0
  235. package/src/navigator/CredentialsContainer.res +33 -0
  236. package/src/navigator/Navigator.res +166 -0
  237. package/src/navigator/Permissions.res +10 -0
  238. package/src/navigator/PermissionsTypes.res +38 -0
  239. package/src/observers/IntersectionObserver.res +36 -0
  240. package/src/observers/IntersectionObserverRoot.res +23 -0
  241. package/src/observers/IntersectionObserverTypes.res +67 -0
  242. package/src/observers/MutationObserver.res +94 -0
  243. package/src/observers/ResizeObserver.res +30 -0
  244. package/src/observers/ResizeObserverTypes.res +56 -0
  245. package/src/performance/Performance.res +101 -0
  246. package/src/performance/PerformanceEntry.res +5 -0
  247. package/src/performance/PerformanceMark.res +16 -0
  248. package/src/performance/PerformanceTypes.res +86 -0
  249. package/src/storage/Cache.res +117 -0
  250. package/src/storage/CacheStorage.res +43 -0
  251. package/src/storage/CacheTypes.res +24 -0
  252. package/src/storage/IDBDatabase.res +54 -0
  253. package/src/storage/IDBFactory.res +34 -0
  254. package/src/storage/IDBIndex.res +83 -0
  255. package/src/storage/IDBObjectStore.res +183 -0
  256. package/src/storage/IDBTransaction.res +22 -0
  257. package/src/storage/IndexedDbTypes.res +213 -0
  258. package/src/storage/Storage.res +42 -0
  259. package/src/storage/StorageEvent.res +10 -0
  260. package/src/storage/StorageManager.res +24 -0
  261. package/src/storage/StorageTypes.res +11 -0
  262. package/src/storage/WebStorageTypes.res +57 -0
  263. package/src/svg/SVGElement.res +115 -0
  264. package/src/svg/SVGGraphicsElement.res +16 -0
  265. package/src/svg/SVGLength.res +9 -0
  266. package/src/ui-events/CompositionEvent.res +10 -0
  267. package/src/ui-events/DataTransfer.res +38 -0
  268. package/src/ui-events/DataTransferItem.res +21 -0
  269. package/src/ui-events/DataTransferItemList.res +34 -0
  270. package/src/ui-events/FocusEvent.res +10 -0
  271. package/src/ui-events/InputEvent.res +16 -0
  272. package/src/ui-events/KeyboardEvent.res +16 -0
  273. package/src/ui-events/MouseEvent.res +26 -0
  274. package/src/ui-events/PointerEvent.res +24 -0
  275. package/src/ui-events/Touch.res +5 -0
  276. package/src/ui-events/TouchEvent.res +10 -0
  277. package/src/ui-events/TouchList.res +5 -0
  278. package/src/ui-events/UIEvent.res +20 -0
  279. package/src/ui-events/UiEventsTypes.res +590 -0
  280. package/src/ui-events/WheelEvent.res +10 -0
  281. package/src/url/URL.res +38 -0
  282. package/src/url/URLSearchParams.res +104 -0
  283. package/src/url/UrlTypes.res +69 -0
  284. package/src/view-transitions/ViewTransition.res +5 -0
  285. package/src/view-transitions/ViewTransitionsTypes.res +22 -0
  286. package/src/web-audio/AnalyserNode.res +38 -0
  287. package/src/web-audio/AudioBuffer.res +33 -0
  288. package/src/web-audio/AudioBufferSourceNode.res +21 -0
  289. package/src/web-audio/AudioContext.res +59 -0
  290. package/src/web-audio/AudioDestinationNode.res +1 -0
  291. package/src/web-audio/AudioNode.res +76 -0
  292. package/src/web-audio/AudioParam.res +65 -0
  293. package/src/web-audio/AudioProcessingEvent.res +10 -0
  294. package/src/web-audio/AudioScheduledSourceNode.res +23 -0
  295. package/src/web-audio/AudioWorkletNode.res +11 -0
  296. package/src/web-audio/BaseAudioContext.res +141 -0
  297. package/src/web-audio/BiquadFilterNode.res +21 -0
  298. package/src/web-audio/ChannelMergerNode.res +10 -0
  299. package/src/web-audio/ChannelSplitterNode.res +10 -0
  300. package/src/web-audio/ConstantSourceNode.res +10 -0
  301. package/src/web-audio/ConvolverNode.res +10 -0
  302. package/src/web-audio/DelayNode.res +10 -0
  303. package/src/web-audio/DynamicsCompressorNode.res +10 -0
  304. package/src/web-audio/GainNode.res +10 -0
  305. package/src/web-audio/IIRFilterNode.res +21 -0
  306. package/src/web-audio/MediaElementAudioSourceNode.res +10 -0
  307. package/src/web-audio/MediaStreamAudioDestinationNode.res +10 -0
  308. package/src/web-audio/MediaStreamAudioSourceNode.res +10 -0
  309. package/src/web-audio/OfflineAudioCompletionEvent.res +10 -0
  310. package/src/web-audio/OfflineAudioContext.res +58 -0
  311. package/src/web-audio/OscillatorNode.res +17 -0
  312. package/src/web-audio/PannerNode.res +10 -0
  313. package/src/web-audio/PeriodicWave.res +8 -0
  314. package/src/web-audio/StereoPannerNode.res +10 -0
  315. package/src/web-audio/WaveShaperNode.res +10 -0
  316. package/src/web-audio/WebAudioTypes.res +1309 -0
  317. package/src/web-audio/Worklet.res +14 -0
  318. package/src/window/CustomElementRegistry.res +30 -0
  319. package/src/window/Document.res +470 -0
  320. package/src/window/DomGlobal.res +459 -0
  321. package/src/window/History.res +37 -0
  322. package/src/window/HistoryTypes.res +26 -0
  323. package/src/window/IdleDeadline.res +5 -0
  324. package/src/window/Location.res +108 -0
  325. package/src/window/VisualViewport.res +5 -0
  326. package/src/window/VisualViewportTypes.res +37 -0
  327. package/src/window/Window.res +556 -0
  328. package/src/window/XPathExpression.res +16 -0
  329. package/src/window/XPathResult.res +46 -0
  330. package/src/workers/Clients.res +39 -0
  331. package/src/workers/NavigationPreloadManager.res +26 -0
  332. package/src/workers/ServiceWorker.res +38 -0
  333. package/src/workers/ServiceWorkerContainer.res +34 -0
  334. package/src/workers/ServiceWorkerRegistration.res +32 -0
  335. package/src/workers/ServiceWorkerScope.res +12 -0
  336. package/src/workers/ServiceWorkerTypes.res +153 -0
  337. package/src/workers/SharedWorker.res +68 -0
  338. package/src/workers/SharedWorkerScope.res +29 -0
  339. package/src/workers/WebWorkersTypes.res +46 -0
  340. package/src/workers/Worker.res +48 -0
  341. package/src/workers/WorkerLocation.res +18 -0
@@ -0,0 +1,108 @@
1
+ @unboxed
2
+ type t =
3
+ | @as("abort") Abort
4
+ | @as("activate") Activate
5
+ | @as("auxclick") Auxclick
6
+ | @as("beforeinput") Beforeinput
7
+ | @as("beforetoggle") Beforetoggle
8
+ | @as("blur") Blur
9
+ | @as("cancel") Cancel
10
+ | @as("canplay") Canplay
11
+ | @as("canplaythrough") Canplaythrough
12
+ | @as("change") Change
13
+ | @as("click") Click
14
+ | @as("close") Close
15
+ | @as("contextlost") Contextlost
16
+ | @as("contextmenu") Contextmenu
17
+ | @as("contextrestored") Contextrestored
18
+ | @as("copy") Copy
19
+ | @as("cuechange") Cuechange
20
+ | @as("cut") Cut
21
+ | @as("dblclick") Dblclick
22
+ | @as("DOMContentLoaded") DOMContentLoaded
23
+ | @as("drag") Drag
24
+ | @as("dragend") Dragend
25
+ | @as("dragenter") Dragenter
26
+ | @as("dragleave") Dragleave
27
+ | @as("dragover") Dragover
28
+ | @as("dragstart") Dragstart
29
+ | @as("drop") Drop
30
+ | @as("durationchange") Durationchange
31
+ | @as("emptied") Emptied
32
+ | @as("ended") Ended
33
+ | @as("error") Error
34
+ | @as("focus") Focus
35
+ | @as("formdata") Formdata
36
+ | @as("input") Input
37
+ | @as("install") Install
38
+ | @as("invalid") Invalid
39
+ | @as("keydown") Keydown
40
+ | @as("keypress") Keypress
41
+ | @as("keyup") Keyup
42
+ | @as("load") Load
43
+ | @as("loadeddata") Loadeddata
44
+ | @as("loadedmetadata") Loadedmetadata
45
+ | @as("loadstart") Loadstart
46
+ | @as("message") Message
47
+ | @as("messageerror") MessageError
48
+ | @as("mousedown") Mousedown
49
+ | @as("mouseenter") Mouseenter
50
+ | @as("mouseleave") Mouseleave
51
+ | @as("mousemove") Mousemove
52
+ | @as("mouseout") Mouseout
53
+ | @as("mouseover") Mouseover
54
+ | @as("mouseup") Mouseup
55
+ | @as("notificationclick") NotificationClick
56
+ | @as("paste") Paste
57
+ | @as("pause") Pause
58
+ | @as("play") Play
59
+ | @as("playing") Playing
60
+ | @as("progress") Progress
61
+ | @as("ratechange") Ratechange
62
+ | @as("reset") Reset
63
+ | @as("resize") Resize
64
+ | @as("scroll") Scroll
65
+ | @as("scrollend") Scrollend
66
+ | @as("securitypolicyviolation") Securitypolicyviolation
67
+ | @as("seeked") Seeked
68
+ | @as("seeking") Seeking
69
+ | @as("select") Select
70
+ | @as("slotchange") Slotchange
71
+ | @as("stalled") Stalled
72
+ | @as("submit") Submit
73
+ | @as("suspend") Suspend
74
+ | @as("timeupdate") Timeupdate
75
+ | @as("toggle") Toggle
76
+ | @as("volumechange") Volumechange
77
+ | @as("waiting") Waiting
78
+ | @as("webkitanimationend") Webkitanimationend
79
+ | @as("webkitanimationiteration") Webkitanimationiteration
80
+ | @as("webkitanimationstart") Webkitanimationstart
81
+ | @as("webkittransitionend") Webkittransitionend
82
+ | @as("wheel") Wheel
83
+ | @as("animationstart") Animationstart
84
+ | @as("animationiteration") Animationiteration
85
+ | @as("animationend") Animationend
86
+ | @as("animationcancel") Animationcancel
87
+ | @as("transitionrun") Transitionrun
88
+ | @as("transitionstart") Transitionstart
89
+ | @as("transitionend") Transitionend
90
+ | @as("transitioncancel") Transitioncancel
91
+ | @as("pointerover") Pointerover
92
+ | @as("pointerenter") Pointerenter
93
+ | @as("pointerdown") Pointerdown
94
+ | @as("pointermove") Pointermove
95
+ | @as("pointerup") Pointerup
96
+ | @as("pointercancel") Pointercancel
97
+ | @as("pointerout") Pointerout
98
+ | @as("pointerleave") Pointerleave
99
+ | @as("push") Push
100
+ | @as("gotpointercapture") Gotpointercapture
101
+ | @as("lostpointercapture") Lostpointercapture
102
+ | @as("selectstart") Selectstart
103
+ | @as("selectionchange") Selectionchange
104
+ | @as("touchstart") Touchstart
105
+ | @as("touchend") Touchend
106
+ | @as("touchmove") Touchmove
107
+ | @as("touchcancel") Touchcancel
108
+ | Custom(string)
@@ -0,0 +1,11 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Crypto/getRandomValues)
3
+ */
4
+ @throws(JsExn) @send
5
+ external getRandomValues: (WebCryptoTypes.crypto, 't) => 't = "getRandomValues"
6
+
7
+ /**
8
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Crypto/randomUUID)
9
+ */
10
+ @send
11
+ external randomUUID: WebCryptoTypes.crypto => string = "randomUUID"
@@ -0,0 +1,173 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/encrypt)
3
+ */
4
+ @send
5
+ external encrypt: (
6
+ WebCryptoTypes.subtleCrypto,
7
+ ~algorithm: WebCryptoTypes.algorithmIdentifier,
8
+ ~key: WebCryptoTypes.cryptoKey,
9
+ ~data: ArrayBufferTypedArrayOrDataView.t,
10
+ ) => promise<ArrayBuffer.t> = "encrypt"
11
+
12
+ /**
13
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/decrypt)
14
+ */
15
+ @send
16
+ external decrypt: (
17
+ WebCryptoTypes.subtleCrypto,
18
+ ~algorithm: WebCryptoTypes.algorithmIdentifier,
19
+ ~key: WebCryptoTypes.cryptoKey,
20
+ ~data: ArrayBufferTypedArrayOrDataView.t,
21
+ ) => promise<ArrayBuffer.t> = "decrypt"
22
+
23
+ /**
24
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/sign)
25
+ */
26
+ @send
27
+ external sign: (
28
+ WebCryptoTypes.subtleCrypto,
29
+ ~algorithm: WebCryptoTypes.algorithmIdentifier,
30
+ ~key: WebCryptoTypes.cryptoKey,
31
+ ~data: ArrayBufferTypedArrayOrDataView.t,
32
+ ) => promise<JSON.t> = "sign"
33
+
34
+ /**
35
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/verify)
36
+ */
37
+ @send
38
+ external verify: (
39
+ WebCryptoTypes.subtleCrypto,
40
+ ~algorithm: WebCryptoTypes.algorithmIdentifier,
41
+ ~key: WebCryptoTypes.cryptoKey,
42
+ ~signature: ArrayBufferTypedArrayOrDataView.t,
43
+ ~data: ArrayBufferTypedArrayOrDataView.t,
44
+ ) => promise<JSON.t> = "verify"
45
+
46
+ /**
47
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/digest)
48
+ */
49
+ @send
50
+ external digest: (
51
+ WebCryptoTypes.subtleCrypto,
52
+ ~algorithm: WebCryptoTypes.algorithmIdentifier,
53
+ ~data: ArrayBufferTypedArrayOrDataView.t,
54
+ ) => promise<JSON.t> = "digest"
55
+
56
+ /**
57
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey)
58
+ */
59
+ @send
60
+ external generateKey: (
61
+ WebCryptoTypes.subtleCrypto,
62
+ ~algorithm: WebCryptoTypes.algorithm,
63
+ ~extractable: bool,
64
+ ~keyUsages: array<WebCryptoTypes.keyUsage>,
65
+ ) => promise<JSON.t> = "generateKey"
66
+
67
+ /**
68
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey)
69
+ */
70
+ @send
71
+ external generateKey2: (
72
+ WebCryptoTypes.subtleCrypto,
73
+ ~algorithm: string,
74
+ ~extractable: bool,
75
+ ~keyUsages: array<WebCryptoTypes.keyUsage>,
76
+ ) => promise<JSON.t> = "generateKey"
77
+
78
+ /**
79
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveKey)
80
+ */
81
+ @send
82
+ external deriveKey: (
83
+ WebCryptoTypes.subtleCrypto,
84
+ ~algorithm: WebCryptoTypes.algorithmIdentifier,
85
+ ~baseKey: WebCryptoTypes.cryptoKey,
86
+ ~derivedKeyType: WebCryptoTypes.algorithmIdentifier,
87
+ ~extractable: bool,
88
+ ~keyUsages: array<WebCryptoTypes.keyUsage>,
89
+ ) => promise<JSON.t> = "deriveKey"
90
+
91
+ /**
92
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveBits)
93
+ */
94
+ @send
95
+ external deriveBits: (
96
+ WebCryptoTypes.subtleCrypto,
97
+ ~algorithm: WebCryptoTypes.algorithm,
98
+ ~baseKey: WebCryptoTypes.cryptoKey,
99
+ ~length: int=?,
100
+ ) => promise<ArrayBuffer.t> = "deriveBits"
101
+
102
+ /**
103
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveBits)
104
+ */
105
+ @send
106
+ external deriveBits2: (
107
+ WebCryptoTypes.subtleCrypto,
108
+ ~algorithm: string,
109
+ ~baseKey: WebCryptoTypes.cryptoKey,
110
+ ~length: int=?,
111
+ ) => promise<ArrayBuffer.t> = "deriveBits"
112
+
113
+ /**
114
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/importKey)
115
+ */
116
+ @send
117
+ external importKey: (
118
+ WebCryptoTypes.subtleCrypto,
119
+ ~format: unknown,
120
+ ~keyData: ArrayBufferTypedArrayOrDataView.t,
121
+ ~algorithm: WebCryptoTypes.algorithmIdentifier,
122
+ ~extractable: bool,
123
+ ~keyUsages: array<WebCryptoTypes.keyUsage>,
124
+ ) => promise<WebCryptoTypes.cryptoKey> = "importKey"
125
+
126
+ /**
127
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/exportKey)
128
+ */
129
+ @send
130
+ external exportKey: (
131
+ WebCryptoTypes.subtleCrypto,
132
+ ~format: WebCryptoTypes.keyFormat,
133
+ ~key: WebCryptoTypes.cryptoKey,
134
+ ) => promise<JSON.t> = "exportKey"
135
+
136
+ /**
137
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/wrapKey)
138
+ */
139
+ @send
140
+ external wrapKey: (
141
+ WebCryptoTypes.subtleCrypto,
142
+ ~format: WebCryptoTypes.keyFormat,
143
+ ~key: WebCryptoTypes.cryptoKey,
144
+ ~wrappingKey: WebCryptoTypes.cryptoKey,
145
+ ~wrapAlgorithm: WebCryptoTypes.algorithm,
146
+ ) => promise<JSON.t> = "wrapKey"
147
+
148
+ /**
149
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/wrapKey)
150
+ */
151
+ @send
152
+ external wrapKey2: (
153
+ WebCryptoTypes.subtleCrypto,
154
+ ~format: WebCryptoTypes.keyFormat,
155
+ ~key: WebCryptoTypes.cryptoKey,
156
+ ~wrappingKey: WebCryptoTypes.cryptoKey,
157
+ ~wrapAlgorithm: string,
158
+ ) => promise<JSON.t> = "wrapKey"
159
+
160
+ /**
161
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/unwrapKey)
162
+ */
163
+ @send
164
+ external unwrapKey: (
165
+ WebCryptoTypes.subtleCrypto,
166
+ ~format: WebCryptoTypes.keyFormat,
167
+ ~wrappedKey: ArrayBufferTypedArrayOrDataView.t,
168
+ ~unwrappingKey: WebCryptoTypes.cryptoKey,
169
+ ~unwrapAlgorithm: WebCryptoTypes.algorithmIdentifier,
170
+ ~unwrappedKeyAlgorithm: WebCryptoTypes.algorithmIdentifier,
171
+ ~extractable: bool,
172
+ ~keyUsages: array<WebCryptoTypes.keyUsage>,
173
+ ) => promise<WebCryptoTypes.cryptoKey> = "unwrapKey"
@@ -0,0 +1,71 @@
1
+ @@warning("-30")
2
+
3
+ type keyType =
4
+ | @as("private") Private
5
+ | @as("public") Public
6
+ | @as("secret") Secret
7
+
8
+ type keyUsage =
9
+ | @as("decrypt") Decrypt
10
+ | @as("deriveBits") DeriveBits
11
+ | @as("deriveKey") DeriveKey
12
+ | @as("encrypt") Encrypt
13
+ | @as("sign") Sign
14
+ | @as("unwrapKey") UnwrapKey
15
+ | @as("verify") Verify
16
+ | @as("wrapKey") WrapKey
17
+
18
+ type keyFormat =
19
+ | @as("jwk") Jwk
20
+ | @as("pkcs8") Pkcs8
21
+ | @as("raw") Raw
22
+ | @as("spki") Spki
23
+
24
+ type keyAlgorithm = {mutable name: string}
25
+
26
+ /**
27
+ This Web Crypto API interface provides a number of low-level cryptographic functions. It is accessed via the Crypto.subtle properties available in a window context (via Window.crypto).
28
+ [See SubtleCrypto on MDN](https://developer.mozilla.org/docs/Web/API/SubtleCrypto)
29
+ */
30
+ @editor.completeFrom(SubtleCrypto)
31
+ type subtleCrypto = private {}
32
+
33
+ /**
34
+ Basic cryptography features available in the current context. It allows access to a cryptographically strong random number generator and to cryptographic primitives.
35
+ [See Crypto on MDN](https://developer.mozilla.org/docs/Web/API/Crypto)
36
+ */
37
+ @editor.completeFrom(Crypto)
38
+ type crypto = private {
39
+ /**
40
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Crypto/subtle)
41
+ */
42
+ subtle: subtleCrypto,
43
+ }
44
+
45
+ /**
46
+ The CryptoKey dictionary of the Web Crypto API represents a cryptographic key.
47
+ [See CryptoKey on MDN](https://developer.mozilla.org/docs/Web/API/CryptoKey)
48
+ */
49
+ type cryptoKey = {
50
+ /**
51
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CryptoKey/type)
52
+ */
53
+ @as("type")
54
+ type_: keyType,
55
+ /**
56
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CryptoKey/extractable)
57
+ */
58
+ extractable: bool,
59
+ /**
60
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CryptoKey/algorithm)
61
+ */
62
+ algorithm: keyAlgorithm,
63
+ /**
64
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CryptoKey/usages)
65
+ */
66
+ usages: array<keyUsage>,
67
+ }
68
+
69
+ type algorithmIdentifier = unknown
70
+
71
+ type algorithm = {mutable name: string}
@@ -0,0 +1,24 @@
1
+ type fontFaceLoadStatus =
2
+ | @as("error") Error
3
+ | @as("loaded") Loaded
4
+ | @as("loading") Loading
5
+ | @as("unloaded") Unloaded
6
+
7
+ type fontFaceSetLoadStatus =
8
+ | @as("loaded") Loaded
9
+ | @as("loading") Loading
10
+
11
+ /**
12
+ [See FontFaceSet on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet)
13
+ */
14
+ @editor.completeFrom(BaseCSSFontLoading.FontFaceSet)
15
+ type rec fontFaceSet = private {
16
+ /**
17
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/ready)
18
+ */
19
+ ready: promise<fontFaceSet>,
20
+ /**
21
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/status)
22
+ */
23
+ status: fontFaceSetLoadStatus,
24
+ }
@@ -0,0 +1,92 @@
1
+ @@warning("-30")
2
+
3
+ type fontDisplay =
4
+ | @as("auto") Auto
5
+ | @as("block") Block
6
+ | @as("fallback") Fallback
7
+ | @as("optional") Optional
8
+ | @as("swap") Swap
9
+
10
+ type fontFaceLoadStatus = BaseCSSFontLoading.fontFaceLoadStatus =
11
+ | @as("error") Error
12
+ | @as("loaded") Loaded
13
+ | @as("loading") Loading
14
+ | @as("unloaded") Unloaded
15
+
16
+ type fontFaceSetLoadStatus = BaseCSSFontLoading.fontFaceSetLoadStatus =
17
+ | @as("loaded") Loaded
18
+ | @as("loading") Loading
19
+
20
+ /**
21
+ [See FontFace on MDN](https://developer.mozilla.org/docs/Web/API/FontFace)
22
+ TODO: mark as private once mutating fields of private records is allowed
23
+ */
24
+ @editor.completeFrom(FontFace)
25
+ type rec fontFace = {
26
+ /**
27
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/family)
28
+ */
29
+ mutable family: string,
30
+ /**
31
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/style)
32
+ */
33
+ mutable style: string,
34
+ /**
35
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/weight)
36
+ */
37
+ mutable weight: string,
38
+ /**
39
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/stretch)
40
+ */
41
+ mutable stretch: string,
42
+ /**
43
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/unicodeRange)
44
+ */
45
+ mutable unicodeRange: string,
46
+ /**
47
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/featureSettings)
48
+ */
49
+ mutable featureSettings: string,
50
+ /**
51
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/display)
52
+ */
53
+ mutable display: fontDisplay,
54
+ /**
55
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/ascentOverride)
56
+ */
57
+ mutable ascentOverride: string,
58
+ /**
59
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/descentOverride)
60
+ */
61
+ mutable descentOverride: string,
62
+ /**
63
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/lineGapOverride)
64
+ */
65
+ mutable lineGapOverride: string,
66
+ /**
67
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/status)
68
+ */
69
+ status: fontFaceLoadStatus,
70
+ /**
71
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/loaded)
72
+ */
73
+ loaded: promise<fontFace>,
74
+ }
75
+
76
+ /**
77
+ [See FontFaceSet on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet)
78
+ */
79
+ @editor.completeFrom(FontFaceSet)
80
+ type fontFaceSet = BaseCSSFontLoading.fontFaceSet
81
+
82
+ type fontFaceDescriptors = {
83
+ mutable style?: string,
84
+ mutable weight?: string,
85
+ mutable stretch?: string,
86
+ mutable unicodeRange?: string,
87
+ mutable featureSettings?: string,
88
+ mutable display?: fontDisplay,
89
+ mutable ascentOverride?: string,
90
+ mutable descentOverride?: string,
91
+ mutable lineGapOverride?: string,
92
+ }
@@ -0,0 +1,62 @@
1
+ /**
2
+ `fromString(~family: string, ~source: string, ~descriptors: fontFaceDescriptors=?)`
3
+
4
+ Creates a new `FontFace` from CSS source text.
5
+
6
+ ```res
7
+ let fontFace =
8
+ FontFace.fromString(~family="Inter", ~source="url(/fonts/inter.woff2)")
9
+ ```
10
+
11
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace)
12
+ */
13
+ @throws(JsExn) @new
14
+ external fromString: (
15
+ ~family: string,
16
+ ~source: string,
17
+ ~descriptors: CssFontLoadingTypes.fontFaceDescriptors=?,
18
+ ) => CssFontLoadingTypes.fontFace = "FontFace"
19
+
20
+ /**
21
+ `fromDataView(~family: string, ~source: DataView.t, ~descriptors: fontFaceDescriptors=?)`
22
+
23
+ Creates a new `FontFace` from `DataView`-backed font data.
24
+
25
+ ```res
26
+ let fontFace =
27
+ FontFace.fromDataView(~family="Inter", ~source=myDataView)
28
+ ```
29
+
30
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace)
31
+ */
32
+ @throws(JsExn) @new
33
+ external fromDataView: (
34
+ ~family: string,
35
+ ~source: DataView.t,
36
+ ~descriptors: CssFontLoadingTypes.fontFaceDescriptors=?,
37
+ ) => CssFontLoadingTypes.fontFace = "FontFace"
38
+
39
+ /**
40
+ `fromArrayBuffer(~family: string, ~source: ArrayBuffer.t, ~descriptors: fontFaceDescriptors=?)`
41
+
42
+ Creates a new `FontFace` from `ArrayBuffer`-backed font data.
43
+
44
+ ```res
45
+ let fontFace =
46
+ FontFace.fromArrayBuffer(~family="Inter", ~source=myArrayBuffer)
47
+ ```
48
+
49
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace)
50
+ */
51
+ @throws(JsExn) @new
52
+ external fromArrayBuffer: (
53
+ ~family: string,
54
+ ~source: ArrayBuffer.t,
55
+ ~descriptors: CssFontLoadingTypes.fontFaceDescriptors=?,
56
+ ) => CssFontLoadingTypes.fontFace = "FontFace"
57
+
58
+ /**
59
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFace/load)
60
+ */
61
+ @send
62
+ external load: CssFontLoadingTypes.fontFace => promise<CssFontLoadingTypes.fontFace> = "load"
@@ -0,0 +1,38 @@
1
+ include EventTarget.Impl({type t = CssFontLoadingTypes.fontFaceSet})
2
+
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/add)
5
+ */
6
+ @throws(JsExn) @send
7
+ external add: (
8
+ CssFontLoadingTypes.fontFaceSet,
9
+ CssFontLoadingTypes.fontFace,
10
+ ) => CssFontLoadingTypes.fontFaceSet = "add"
11
+
12
+ /**
13
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/delete)
14
+ */
15
+ @send
16
+ external delete: (CssFontLoadingTypes.fontFaceSet, CssFontLoadingTypes.fontFace) => bool = "delete"
17
+
18
+ /**
19
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/clear)
20
+ */
21
+ @send
22
+ external clear: CssFontLoadingTypes.fontFaceSet => unit = "clear"
23
+
24
+ /**
25
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/load)
26
+ */
27
+ @send
28
+ external load: (
29
+ CssFontLoadingTypes.fontFaceSet,
30
+ ~font: string,
31
+ ~text: string=?,
32
+ ) => promise<array<CssFontLoadingTypes.fontFace>> = "load"
33
+
34
+ /**
35
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FontFaceSet/check)
36
+ */
37
+ @send
38
+ external check: (CssFontLoadingTypes.fontFaceSet, ~font: string, ~text: string=?) => bool = "check"
@@ -0,0 +1,5 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CSSRuleList/item)
3
+ */
4
+ @send
5
+ external item: (StyleSheet.cssRuleList, int) => Null.t<StyleSheet.cssRule> = "item"