@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,149 @@
1
+ type animationPlayState =
2
+ | @as("finished") Finished
3
+ | @as("idle") Idle
4
+ | @as("paused") Paused
5
+ | @as("running") Running
6
+
7
+ type animationReplaceState =
8
+ | @as("active") Active
9
+ | @as("persisted") Persisted
10
+ | @as("removed") Removed
11
+
12
+ /**
13
+ [See AnimationTimeline on MDN](https://developer.mozilla.org/docs/Web/API/AnimationTimeline)
14
+ */
15
+ type animationTimeline = private {
16
+ /**
17
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnimationTimeline/currentTime)
18
+ */
19
+ currentTime: Null.t<float>,
20
+ }
21
+
22
+ /**
23
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation)
24
+ */
25
+ type rec t = {
26
+ ...DOM.eventTarget,
27
+ /**
28
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/id)
29
+ */
30
+ mutable id: string,
31
+ /**
32
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/effect)
33
+ */
34
+ mutable effect: Null.t<AnimationEffect.t>,
35
+ /**
36
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/timeline)
37
+ */
38
+ mutable timeline: Null.t<animationTimeline>,
39
+ /**
40
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/playbackRate)
41
+ */
42
+ mutable playbackRate: float,
43
+ /**
44
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/playState)
45
+ */
46
+ playState: animationPlayState,
47
+ /**
48
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/replaceState)
49
+ */
50
+ replaceState: animationReplaceState,
51
+ /**
52
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/pending)
53
+ */
54
+ pending: bool,
55
+ /**
56
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/ready)
57
+ */
58
+ ready: promise<t>,
59
+ /**
60
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/finished)
61
+ */
62
+ finished: promise<t>,
63
+ /**
64
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/startTime)
65
+ */
66
+ mutable startTime: Null.t<float>,
67
+ /**
68
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/currentTime)
69
+ */
70
+ mutable currentTime: Null.t<float>,
71
+ }
72
+
73
+ /**
74
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation)
75
+ */
76
+ @new
77
+ external make: (~effect: AnimationEffect.t=?, ~timeline: animationTimeline=?) => t = "Animation"
78
+
79
+ include EventTarget.Impl({type t = t})
80
+
81
+ /**
82
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/cancel)
83
+ */
84
+ @send
85
+ external cancel: t => unit = "cancel"
86
+
87
+ /**
88
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/finish)
89
+ */
90
+ @throws(JsExn) @send
91
+ external finish: t => unit = "finish"
92
+
93
+ /**
94
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/play)
95
+ */
96
+ @send
97
+ external play: t => unit = "play"
98
+
99
+ /**
100
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/pause)
101
+ */
102
+ @throws(JsExn) @send
103
+ external pause: t => unit = "pause"
104
+
105
+ /**
106
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/updatePlaybackRate)
107
+ */
108
+ @send
109
+ external updatePlaybackRate: (t, float) => unit = "updatePlaybackRate"
110
+
111
+ /**
112
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/reverse)
113
+ */
114
+ @send
115
+ external reverse: t => unit = "reverse"
116
+
117
+ /**
118
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/persist)
119
+ */
120
+ @send
121
+ external persist: t => unit = "persist"
122
+
123
+ /**
124
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/commitStyles)
125
+ */
126
+ @send
127
+ external commitStyles: t => unit = "commitStyles"
128
+
129
+ type compositeOperation =
130
+ | @as("accumulate") Accumulate
131
+ | @as("add") Add
132
+ | @as("replace") Replace
133
+
134
+ type iterationCompositeOperation =
135
+ | @as("accumulate") Accumulate
136
+ | @as("replace") Replace
137
+
138
+ type keyframeEffectOptions = {
139
+ ...AnimationEffect.effectTiming,
140
+ mutable composite?: compositeOperation,
141
+ mutable pseudoElement?: Nullable.t<string>,
142
+ mutable iterationComposite?: iterationCompositeOperation,
143
+ }
144
+
145
+ type keyframeAnimationOptions = {
146
+ ...keyframeEffectOptions,
147
+ mutable id?: string,
148
+ mutable timeline?: Nullable.t<animationTimeline>,
149
+ }
@@ -0,0 +1,71 @@
1
+ /**
2
+ [See AnimationEffect on MDN](https://developer.mozilla.org/docs/Web/API/AnimationEffect)
3
+ */
4
+ type t = private {}
5
+
6
+ type fillMode =
7
+ | @as("auto") Auto
8
+ | @as("backwards") Backwards
9
+ | @as("both") Both
10
+ | @as("forwards") Forwards
11
+ | @as("none") None
12
+
13
+ type playbackDirection =
14
+ | @as("alternate") Alternate
15
+ | @as("alternate-reverse") AlternateReverse
16
+ | @as("normal") Normal
17
+ | @as("reverse") Reverse
18
+
19
+ type effectTiming = {
20
+ mutable fill?: fillMode,
21
+ mutable iterationStart?: float,
22
+ mutable iterations?: float,
23
+ mutable direction?: playbackDirection,
24
+ mutable easing?: string,
25
+ mutable delay?: float,
26
+ mutable endDelay?: float,
27
+ mutable playbackRate?: float,
28
+ mutable duration?: unknown,
29
+ }
30
+
31
+ type getAnimationsOptions = {mutable subtree?: bool}
32
+
33
+ type computedEffectTiming = {
34
+ ...effectTiming,
35
+ mutable progress?: Nullable.t<float>,
36
+ mutable currentIteration?: Nullable.t<float>,
37
+ mutable startTime?: float,
38
+ mutable endTime?: float,
39
+ mutable activeDuration?: float,
40
+ mutable localTime?: Nullable.t<float>,
41
+ }
42
+
43
+ type optionalEffectTiming = {
44
+ mutable delay?: float,
45
+ mutable endDelay?: float,
46
+ mutable fill?: fillMode,
47
+ mutable iterationStart?: float,
48
+ mutable iterations?: float,
49
+ mutable duration?: unknown,
50
+ mutable direction?: playbackDirection,
51
+ mutable easing?: string,
52
+ mutable playbackRate?: float,
53
+ }
54
+
55
+ /**
56
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnimationEffect/getTiming)
57
+ */
58
+ @send
59
+ external getTiming: t => effectTiming = "getTiming"
60
+
61
+ /**
62
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnimationEffect/getComputedTiming)
63
+ */
64
+ @send
65
+ external getComputedTiming: t => computedEffectTiming = "getComputedTiming"
66
+
67
+ /**
68
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnimationEffect/updateTiming)
69
+ */
70
+ @throws(JsExn) @send
71
+ external updateTiming: (t, ~timing: optionalEffectTiming=?) => unit = "updateTiming"
@@ -0,0 +1,8 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DocumentTimeline)
3
+ */
4
+ @new
5
+ external make: (~options: DOM.documentTimelineOptions=?) => DOM.documentTimeline =
6
+ "DocumentTimeline"
7
+
8
+ external asAnimationTimeline: DOM.documentTimeline => Animation.animationTimeline = "%identity"
@@ -0,0 +1,179 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
3
+ */
4
+ external createImageBitmap: (
5
+ ~image: HTMLImageElement.t,
6
+ ~options: DOM.imageBitmapOptions=?,
7
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
8
+
9
+ /**
10
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
11
+ */
12
+ external createImageBitmap2: (
13
+ ~image: SVGElement.svgImageElement,
14
+ ~options: DOM.imageBitmapOptions=?,
15
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
16
+
17
+ /**
18
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
19
+ */
20
+ external createImageBitmap3: (
21
+ ~image: HTMLVideoElement.t,
22
+ ~options: DOM.imageBitmapOptions=?,
23
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
24
+
25
+ /**
26
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
27
+ */
28
+ external createImageBitmap4: (
29
+ ~image: HTMLCanvasElement.t,
30
+ ~options: DOM.imageBitmapOptions=?,
31
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
32
+
33
+ /**
34
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
35
+ */
36
+ external createImageBitmap5: (
37
+ ~image: CanvasTypes.imageBitmap,
38
+ ~options: DOM.imageBitmapOptions=?,
39
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
40
+
41
+ /**
42
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
43
+ */
44
+ external createImageBitmap6: (
45
+ ~image: CanvasTypes.offscreenCanvas,
46
+ ~options: DOM.imageBitmapOptions=?,
47
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
48
+
49
+ /**
50
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
51
+ */
52
+ external createImageBitmap7: (
53
+ ~image: DOM.videoFrame,
54
+ ~options: DOM.imageBitmapOptions=?,
55
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
56
+
57
+ /**
58
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
59
+ */
60
+ external createImageBitmap8: (
61
+ ~image: FileTypes.blob,
62
+ ~options: DOM.imageBitmapOptions=?,
63
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
64
+
65
+ /**
66
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
67
+ */
68
+ external createImageBitmap9: (
69
+ ~image: DOM.imageData,
70
+ ~options: DOM.imageBitmapOptions=?,
71
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
72
+
73
+ /**
74
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
75
+ */
76
+ external createImageBitmap10: (
77
+ ~image: HTMLImageElement.t,
78
+ ~sx: int,
79
+ ~sy: int,
80
+ ~sw: int,
81
+ ~sh: int,
82
+ ~options: DOM.imageBitmapOptions=?,
83
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
84
+
85
+ /**
86
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
87
+ */
88
+ external createImageBitmap11: (
89
+ ~image: SVGElement.svgImageElement,
90
+ ~sx: int,
91
+ ~sy: int,
92
+ ~sw: int,
93
+ ~sh: int,
94
+ ~options: DOM.imageBitmapOptions=?,
95
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
96
+
97
+ /**
98
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
99
+ */
100
+ external createImageBitmap12: (
101
+ ~image: HTMLVideoElement.t,
102
+ ~sx: int,
103
+ ~sy: int,
104
+ ~sw: int,
105
+ ~sh: int,
106
+ ~options: DOM.imageBitmapOptions=?,
107
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
108
+
109
+ /**
110
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
111
+ */
112
+ external createImageBitmap13: (
113
+ ~image: HTMLCanvasElement.t,
114
+ ~sx: int,
115
+ ~sy: int,
116
+ ~sw: int,
117
+ ~sh: int,
118
+ ~options: DOM.imageBitmapOptions=?,
119
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
120
+
121
+ /**
122
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
123
+ */
124
+ external createImageBitmap14: (
125
+ ~image: CanvasTypes.imageBitmap,
126
+ ~sx: int,
127
+ ~sy: int,
128
+ ~sw: int,
129
+ ~sh: int,
130
+ ~options: DOM.imageBitmapOptions=?,
131
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
132
+
133
+ /**
134
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
135
+ */
136
+ external createImageBitmap15: (
137
+ ~image: CanvasTypes.offscreenCanvas,
138
+ ~sx: int,
139
+ ~sy: int,
140
+ ~sw: int,
141
+ ~sh: int,
142
+ ~options: DOM.imageBitmapOptions=?,
143
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
144
+
145
+ /**
146
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
147
+ */
148
+ external createImageBitmap16: (
149
+ ~image: DOM.videoFrame,
150
+ ~sx: int,
151
+ ~sy: int,
152
+ ~sw: int,
153
+ ~sh: int,
154
+ ~options: DOM.imageBitmapOptions=?,
155
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
156
+
157
+ /**
158
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
159
+ */
160
+ external createImageBitmap17: (
161
+ ~image: FileTypes.blob,
162
+ ~sx: int,
163
+ ~sy: int,
164
+ ~sw: int,
165
+ ~sh: int,
166
+ ~options: DOM.imageBitmapOptions=?,
167
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
168
+
169
+ /**
170
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Window/createImageBitmap)
171
+ */
172
+ external createImageBitmap18: (
173
+ ~image: DOM.imageData,
174
+ ~sx: int,
175
+ ~sy: int,
176
+ ~sw: int,
177
+ ~sh: int,
178
+ ~options: DOM.imageBitmapOptions=?,
179
+ ) => promise<CanvasTypes.imageBitmap> = "createImageBitmap"
@@ -0,0 +1,11 @@
1
+ /**
2
+ Adds a color stop with the given color to the gradient at the given offset. 0.0 is the offset at one end of the gradient, 1.0 is the offset at the other end.
3
+
4
+ Throws an "IndexSizeError" DOMException if the offset is out of range. Throws a "SyntaxError" DOMException if the color cannot be parsed.
5
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CanvasGradient/addColorStop)
6
+ */
7
+ @throws(JsExn) @send
8
+ external addColorStop: (CanvasTypes.canvasGradient, ~offset: float, ~color: string) => unit =
9
+ "addColorStop"
10
+
11
+ let isInstanceOf = (_: 't): bool => %raw(`param instanceof CanvasGradient`)
@@ -0,0 +1,11 @@
1
+ type domMatrix2DInit = DOM.domMatrix2DInit
2
+
3
+ /**
4
+ Sets the transformation matrix that will be used when rendering the pattern during a fill or stroke painting operation.
5
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/CanvasPattern/setTransform)
6
+ */
7
+ @send
8
+ external setTransform: (CanvasTypes.canvasPattern, ~transform: domMatrix2DInit=?) => unit =
9
+ "setTransform"
10
+
11
+ let isInstanceOf = (_: 't): bool => %raw(`param instanceof CanvasPattern`)