@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,353 @@
1
+ /**
2
+ Provides special properties and methods (beyond those of the regular object HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <area> elements.
3
+ [See HTMLAreaElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement)
4
+ TODO: mark as private once mutating fields of private records is allowed
5
+ */
6
+ type t = {
7
+ // Base properties from HTMLElement
8
+ /**
9
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/title)
10
+ */
11
+ mutable title: string,
12
+ /**
13
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/lang)
14
+ */
15
+ mutable lang: string,
16
+ /**
17
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/translate)
18
+ */
19
+ mutable translate: bool,
20
+ /**
21
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/dir)
22
+ */
23
+ mutable dir: string,
24
+ /**
25
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/inert)
26
+ */
27
+ mutable inert: bool,
28
+ /**
29
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/accessKey)
30
+ */
31
+ mutable accessKey: string,
32
+ /**
33
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/accessKeyLabel)
34
+ */
35
+ accessKeyLabel: string,
36
+ /**
37
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/draggable)
38
+ */
39
+ mutable draggable: bool,
40
+ /**
41
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/spellcheck)
42
+ */
43
+ mutable spellcheck: bool,
44
+ /**
45
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/autocapitalize)
46
+ */
47
+ mutable autocapitalize: string,
48
+ /**
49
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/innerText)
50
+ */
51
+ mutable innerText: string,
52
+ /**
53
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/outerText)
54
+ */
55
+ mutable outerText: string,
56
+ /**
57
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/popover)
58
+ */
59
+ mutable popover: Null.t<string>,
60
+ /**
61
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetParent)
62
+ */
63
+ offsetParent: Null.t<DOMTree.element>,
64
+ /**
65
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetTop)
66
+ */
67
+ offsetTop: int,
68
+ /**
69
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetLeft)
70
+ */
71
+ offsetLeft: int,
72
+ /**
73
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetWidth)
74
+ */
75
+ offsetWidth: int,
76
+ /**
77
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetHeight)
78
+ */
79
+ offsetHeight: int,
80
+ // End base properties from HTMLElement
81
+
82
+ // Base properties from Element
83
+ /**
84
+ Returns the namespace.
85
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/namespaceURI)
86
+ */
87
+ namespaceURI: Null.t<string>,
88
+ /**
89
+ Returns the namespace prefix.
90
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/prefix)
91
+ */
92
+ prefix: Null.t<string>,
93
+ /**
94
+ Returns the local name.
95
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/localName)
96
+ */
97
+ localName: string,
98
+ /**
99
+ Returns the HTML-uppercased qualified name.
100
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/tagName)
101
+ */
102
+ tagName: string,
103
+ /**
104
+ Returns the value of element's id content attribute. Can be set to change it.
105
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/id)
106
+ */
107
+ mutable id: string,
108
+ /**
109
+ Returns the value of element's class content attribute. Can be set to change it.
110
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/className)
111
+ */
112
+ mutable className: string,
113
+ /**
114
+ Allows for manipulation of element's class content attribute as a set of whitespace-separated tokens through a DOMTokenList object.
115
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/classList)
116
+ */
117
+ classList: DOM.domTokenList,
118
+ /**
119
+ Returns the value of element's slot content attribute. Can be set to change it.
120
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/slot)
121
+ */
122
+ mutable slot: string,
123
+ /**
124
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/attributes)
125
+ */
126
+ attributes: DOM.namedNodeMap,
127
+ /**
128
+ Returns element's shadow root, if any, and if shadow root's mode is "open", and null otherwise.
129
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/shadowRoot)
130
+ */
131
+ shadowRoot: Null.t<DOMTree.shadowRoot>,
132
+ /**
133
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/part)
134
+ */
135
+ part: DOM.domTokenList,
136
+ /**
137
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/scrollTop)
138
+ */
139
+ mutable scrollTop: float,
140
+ /**
141
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/scrollLeft)
142
+ */
143
+ mutable scrollLeft: float,
144
+ /**
145
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/scrollWidth)
146
+ */
147
+ scrollWidth: int,
148
+ /**
149
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/scrollHeight)
150
+ */
151
+ scrollHeight: int,
152
+ /**
153
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/clientTop)
154
+ */
155
+ clientTop: int,
156
+ /**
157
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/clientLeft)
158
+ */
159
+ clientLeft: int,
160
+ /**
161
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/clientWidth)
162
+ */
163
+ clientWidth: int,
164
+ /**
165
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/clientHeight)
166
+ */
167
+ clientHeight: int,
168
+ /**
169
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/currentCSSZoom)
170
+ */
171
+ currentCSSZoom: float,
172
+ /**
173
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/innerHTML)
174
+ */
175
+ @throws(JsExn)
176
+ mutable innerHTML: string,
177
+ /**
178
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Element/outerHTML)
179
+ */
180
+ @throws(JsExn)
181
+ mutable outerHTML: string,
182
+ // End base properties from Element
183
+
184
+ // Base properties from Node
185
+ /**
186
+ Returns the type of node.
187
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/nodeType)
188
+ */
189
+ nodeType: int,
190
+ /**
191
+ Returns a string appropriate for the type of node.
192
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/nodeName)
193
+ */
194
+ nodeName: string,
195
+ /**
196
+ Returns node's node document's document base URL.
197
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/baseURI)
198
+ */
199
+ baseURI: string,
200
+ /**
201
+ Returns true if node is connected and false otherwise.
202
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/isConnected)
203
+ */
204
+ isConnected: bool,
205
+ /**
206
+ Returns the node document. Returns null for documents.
207
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/ownerDocument)
208
+ */
209
+ ownerDocument: Null.t<DOM.document>,
210
+ /**
211
+ Returns the parent.
212
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/parentNode)
213
+ */
214
+ parentNode: Null.t<DOMTree.node>,
215
+ /**
216
+ Returns the parent element.
217
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/parentElement)
218
+ */
219
+ parentElement: Null.t<DOMTree.htmlElement>,
220
+ /**
221
+ Returns the children.
222
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/childNodes)
223
+ */
224
+ childNodes: DOM.nodeList<DOMTree.node>,
225
+ /**
226
+ Returns the first child.
227
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/firstChild)
228
+ */
229
+ firstChild: Null.t<DOMTree.node>,
230
+ /**
231
+ Returns the last child.
232
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/lastChild)
233
+ */
234
+ lastChild: Null.t<DOMTree.node>,
235
+ /**
236
+ Returns the previous sibling.
237
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/previousSibling)
238
+ */
239
+ previousSibling: Null.t<DOMTree.node>,
240
+ /**
241
+ Returns the next sibling.
242
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/nextSibling)
243
+ */
244
+ nextSibling: Null.t<DOMTree.node>,
245
+ /**
246
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/nodeValue)
247
+ */
248
+ mutable nodeValue: Null.t<string>,
249
+ /**
250
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Node/textContent)
251
+ */
252
+ mutable textContent: Null.t<string>,
253
+ // End base properties from Node
254
+
255
+ /**
256
+ Sets or retrieves the window or frame at which to target content.
257
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/target)
258
+ */
259
+ mutable target: string,
260
+ /**
261
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/ping)
262
+ */
263
+ mutable ping: string,
264
+ /**
265
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/rel)
266
+ */
267
+ mutable rel: string,
268
+ /**
269
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/relList)
270
+ */
271
+ relList: DOM.domTokenList,
272
+ /**
273
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/referrerPolicy)
274
+ */
275
+ mutable referrerPolicy: string,
276
+ /**
277
+ Returns the hyperlink's URL.
278
+
279
+ Can be set, to change the URL.
280
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/href)
281
+ */
282
+ mutable href: string,
283
+ /**
284
+ Returns the hyperlink's WebApiURL's origin.
285
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/origin)
286
+ */
287
+ origin: string,
288
+ /**
289
+ Returns the hyperlink's WebApiURL's scheme.
290
+
291
+ Can be set, to change the WebApiURL's scheme.
292
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/protocol)
293
+ */
294
+ mutable protocol: string,
295
+ /**
296
+ Returns the hyperlink's WebApiURL's username.
297
+
298
+ Can be set, to change the WebApiURL's username.
299
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/username)
300
+ */
301
+ mutable username: string,
302
+ /**
303
+ Returns the hyperlink's WebApiURL's password.
304
+
305
+ Can be set, to change the WebApiURL's password.
306
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/password)
307
+ */
308
+ mutable password: string,
309
+ /**
310
+ Returns the hyperlink's WebApiURL's host and port (if different from the default port for the scheme).
311
+
312
+ Can be set, to change the WebApiURL's host and port.
313
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/host)
314
+ */
315
+ mutable host: string,
316
+ /**
317
+ Returns the hyperlink's WebApiURL's host.
318
+
319
+ Can be set, to change the WebApiURL's host.
320
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hostname)
321
+ */
322
+ mutable hostname: string,
323
+ /**
324
+ Returns the hyperlink's WebApiURL's port.
325
+
326
+ Can be set, to change the WebApiURL's port.
327
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/port)
328
+ */
329
+ mutable port: string,
330
+ /**
331
+ Returns the hyperlink's WebApiURL's path.
332
+
333
+ Can be set, to change the WebApiURL's path.
334
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/pathname)
335
+ */
336
+ mutable pathname: string,
337
+ /**
338
+ Returns the hyperlink's WebApiURL's query (includes leading "?" if non-empty).
339
+
340
+ Can be set, to change the WebApiURL's query (ignores leading "?").
341
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/search)
342
+ */
343
+ mutable search: string,
344
+ /**
345
+ Returns the hyperlink's WebApiURL's fragment (includes leading "#" if non-empty).
346
+
347
+ Can be set, to change the WebApiURL's fragment (ignores leading "#").
348
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hash)
349
+ */
350
+ mutable hash: string,
351
+ }
352
+
353
+ include HTMLElement.Impl({type t = t})
@@ -0,0 +1,9 @@
1
+ /**
2
+ A HTML line break element (<br>). It inherits from HTMLElement.
3
+ [See HTMLBRElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLBRElement)
4
+ */
5
+ type t = private {
6
+ ...DOMTree.htmlElement,
7
+ }
8
+
9
+ include HTMLElement.Impl({type t = t})
@@ -0,0 +1,20 @@
1
+ /**
2
+ Contains the base URI for a document. This object inherits all of the properties and methods as described in the HTMLElement interface.
3
+ [See HTMLBaseElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement)
4
+ TODO: mark as private once mutating fields of private records is allowed
5
+ */
6
+ type t = {
7
+ ...DOMTree.htmlElement,
8
+ /**
9
+ Gets or sets the baseline WebApiURL on which relative links are based.
10
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement/href)
11
+ */
12
+ mutable href: string,
13
+ /**
14
+ Sets or retrieves the window or frame at which to target content.
15
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement/target)
16
+ */
17
+ mutable target: string,
18
+ }
19
+
20
+ include HTMLElement.Impl({type t = t})
@@ -0,0 +1,9 @@
1
+ /**
2
+ Provides special properties (beyond those inherited from the regular HTMLElement interface) for manipulating <body> elements.
3
+ [See HTMLBodyElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement)
4
+ */
5
+ type t = private {
6
+ ...DOMTree.htmlElement,
7
+ }
8
+
9
+ include HTMLElement.Impl({type t = t})
@@ -0,0 +1,98 @@
1
+ /**
2
+ Provides properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <button> elements.
3
+ [See HTMLButtonElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement)
4
+ TODO: mark as private once mutating fields of private records is allowed
5
+ */
6
+ type rec t = {
7
+ ...DOMTree.htmlElement,
8
+ /**
9
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/disabled)
10
+ */
11
+ mutable disabled: bool,
12
+ /**
13
+ Retrieves a reference to the form that the object is embedded in.
14
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/form)
15
+ */
16
+ form: Null.t<DOMTree.htmlFormElement>,
17
+ /**
18
+ Overrides the action attribute (where the data on a form is sent) on the parent form element.
19
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formAction)
20
+ */
21
+ mutable formAction: string,
22
+ /**
23
+ Used to override the encoding (formEnctype attribute) specified on the form element.
24
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formEnctype)
25
+ */
26
+ mutable formEnctype: string,
27
+ /**
28
+ Overrides the submit method attribute previously specified on a form element.
29
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formMethod)
30
+ */
31
+ mutable formMethod: string,
32
+ /**
33
+ Sets or retrieves the name of the object.
34
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/name)
35
+ */
36
+ mutable name: string,
37
+ /**
38
+ Gets the classification and default behavior of the button.
39
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/type)
40
+ */
41
+ @as("type")
42
+ mutable type_: string,
43
+ /**
44
+ Sets or retrieves the default or selected value of the control.
45
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/value)
46
+ */
47
+ mutable value: string,
48
+ /**
49
+ Returns whether an element will successfully validate based on forms validation rules and constraints.
50
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/willValidate)
51
+ */
52
+ willValidate: bool,
53
+ /**
54
+ Returns a ValidityState object that represents the validity states of an element.
55
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/validity)
56
+ */
57
+ validity: DOM.validityState,
58
+ /**
59
+ Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
60
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/validationMessage)
61
+ */
62
+ validationMessage: string,
63
+ /**
64
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/labels)
65
+ */
66
+ labels: DOM.nodeList<HTMLLabelElement.t>,
67
+ /**
68
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/popoverTargetElement)
69
+ */
70
+ mutable popoverTargetElement: Null.t<DOMTree.element>,
71
+ /**
72
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/popoverTargetAction)
73
+ */
74
+ mutable popoverTargetAction: string,
75
+ }
76
+
77
+ include HTMLElement.Impl({type t = t})
78
+
79
+ /**
80
+ Returns whether a form will validate when it is submitted, without having to submit it.
81
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/checkValidity)
82
+ */
83
+ @send
84
+ external checkValidity: t => bool = "checkValidity"
85
+
86
+ /**
87
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/reportValidity)
88
+ */
89
+ @send
90
+ external reportValidity: t => bool = "reportValidity"
91
+
92
+ /**
93
+ Sets a custom error message that is displayed when a form is submitted.
94
+ @param error Sets a custom error message that is displayed when a form is submitted.
95
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/setCustomValidity)
96
+ */
97
+ @send
98
+ external setCustomValidity: (t, string) => unit = "setCustomValidity"
@@ -0,0 +1,9 @@
1
+ /**
2
+ Provides special properties (beyond those of the regular HTMLElement interface it also has available to it by inheritance) for manipulating definition list (<dl>) elements.
3
+ [See HTMLDListElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDListElement)
4
+ */
5
+ type t = private {
6
+ ...DOMTree.htmlElement,
7
+ }
8
+
9
+ include HTMLElement.Impl({type t = t})
@@ -0,0 +1,14 @@
1
+ /**
2
+ Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <data> elements.
3
+ [See HTMLDataElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDataElement)
4
+ TODO: mark as private once mutating fields of private records is allowed
5
+ */
6
+ type t = {
7
+ ...DOMTree.htmlElement,
8
+ /**
9
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDataElement/value)
10
+ */
11
+ mutable value: string,
12
+ }
13
+
14
+ include HTMLElement.Impl({type t = t})
@@ -0,0 +1,14 @@
1
+ /**
2
+ Provides special properties (beyond the HTMLElement object interface it also has available to it by inheritance) to manipulate <datalist> elements and their content.
3
+ [See HTMLDataListElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDataListElement)
4
+ */
5
+ type t = private {
6
+ ...DOMTree.htmlElement,
7
+ /**
8
+ Returns an HTMLCollection of the option elements of the datalist element.
9
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDataListElement/options)
10
+ */
11
+ options: HTMLCollection.t<HTMLOptionElement.t>,
12
+ }
13
+
14
+ include HTMLElement.Impl({type t = t})
@@ -0,0 +1,40 @@
1
+ /**
2
+ [See HTMLDialogElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement)
3
+ TODO: mark as private once mutating fields of private records is allowed
4
+ */
5
+ type t = {
6
+ ...DOMTree.htmlElement,
7
+ /**
8
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/open)
9
+ */
10
+ @as("open")
11
+ mutable open_: bool,
12
+ /**
13
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/returnValue)
14
+ */
15
+ mutable returnValue: string,
16
+ }
17
+
18
+ include HTMLElement.Impl({type t = t})
19
+
20
+ /**
21
+ Displays the dialog element.
22
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/show)
23
+ */
24
+ @throws(JsExn) @send
25
+ external show: t => unit = "show"
26
+
27
+ /**
28
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/showModal)
29
+ */
30
+ @throws(JsExn) @send
31
+ external showModal: t => unit = "showModal"
32
+
33
+ /**
34
+ Closes the dialog element.
35
+
36
+ The argument, if provided, provides a return value.
37
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/close)
38
+ */
39
+ @send
40
+ external close: (t, ~returnValue: string=?) => unit = "close"
@@ -0,0 +1,9 @@
1
+ /**
2
+ Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <div> elements.
3
+ [See HTMLDivElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDivElement)
4
+ */
5
+ type t = private {
6
+ ...DOMTree.htmlElement,
7
+ }
8
+
9
+ include HTMLElement.Impl({type t = t})