0 | module Web.Raw.UIEvents
   1 |
   2 | import JS
   3 | import Web.Internal.UIEventsPrim
   4 | import Web.Internal.Types
   5 |
   6 | %default total
   7 |
   8 |
   9 | --------------------------------------------------------------------------------
  10 | --          Interfaces
  11 | --------------------------------------------------------------------------------
  12 |
  13 | namespace CompositionEvent
  14 |
  15 |   export
  16 |   data_ : (obj : CompositionEvent) -> JSIO String
  17 |   data_ a = primJS $ CompositionEvent.prim__data a
  18 |
  19 |
  20 |
  21 | namespace FocusEvent
  22 |
  23 |   export
  24 |   relatedTarget : (obj : FocusEvent) -> JSIO (Maybe EventTarget)
  25 |   relatedTarget a = tryJS "FocusEvent.relatedTarget" $
  26 |     FocusEvent.prim__relatedTarget a
  27 |
  28 |
  29 |
  30 | namespace InputEvent
  31 |
  32 |   export
  33 |   data_ : (obj : InputEvent) -> JSIO (Maybe String)
  34 |   data_ a = tryJS "InputEvent.data_" $ InputEvent.prim__data a
  35 |
  36 |
  37 |   export
  38 |   inputType : (obj : InputEvent) -> JSIO String
  39 |   inputType a = primJS $ InputEvent.prim__inputType a
  40 |
  41 |
  42 |   export
  43 |   isComposing : (obj : InputEvent) -> JSIO Bool
  44 |   isComposing a = tryJS "InputEvent.isComposing" $
  45 |     InputEvent.prim__isComposing a
  46 |
  47 |
  48 |
  49 | namespace KeyboardEvent
  50 |
  51 |   public export
  52 |   DOM_KEY_LOCATION_LEFT : Bits32
  53 |   DOM_KEY_LOCATION_LEFT = 0x1
  54 |
  55 |
  56 |   public export
  57 |   DOM_KEY_LOCATION_NUMPAD : Bits32
  58 |   DOM_KEY_LOCATION_NUMPAD = 0x3
  59 |
  60 |
  61 |   public export
  62 |   DOM_KEY_LOCATION_RIGHT : Bits32
  63 |   DOM_KEY_LOCATION_RIGHT = 0x2
  64 |
  65 |
  66 |   public export
  67 |   DOM_KEY_LOCATION_STANDARD : Bits32
  68 |   DOM_KEY_LOCATION_STANDARD = 0x0
  69 |
  70 |
  71 |   export
  72 |   altKey : (obj : KeyboardEvent) -> JSIO Bool
  73 |   altKey a = tryJS "KeyboardEvent.altKey" $ KeyboardEvent.prim__altKey a
  74 |
  75 |
  76 |   export
  77 |   charCode : (obj : KeyboardEvent) -> JSIO Bits32
  78 |   charCode a = primJS $ KeyboardEvent.prim__charCode a
  79 |
  80 |
  81 |   export
  82 |   code : (obj : KeyboardEvent) -> JSIO String
  83 |   code a = primJS $ KeyboardEvent.prim__code a
  84 |
  85 |
  86 |   export
  87 |   ctrlKey : (obj : KeyboardEvent) -> JSIO Bool
  88 |   ctrlKey a = tryJS "KeyboardEvent.ctrlKey" $ KeyboardEvent.prim__ctrlKey a
  89 |
  90 |
  91 |   export
  92 |   isComposing : (obj : KeyboardEvent) -> JSIO Bool
  93 |   isComposing a = tryJS "KeyboardEvent.isComposing" $
  94 |     KeyboardEvent.prim__isComposing a
  95 |
  96 |
  97 |   export
  98 |   key : (obj : KeyboardEvent) -> JSIO String
  99 |   key a = primJS $ KeyboardEvent.prim__key a
 100 |
 101 |
 102 |   export
 103 |   keyCode : (obj : KeyboardEvent) -> JSIO Bits32
 104 |   keyCode a = primJS $ KeyboardEvent.prim__keyCode a
 105 |
 106 |
 107 |   export
 108 |   location : (obj : KeyboardEvent) -> JSIO Bits32
 109 |   location a = primJS $ KeyboardEvent.prim__location a
 110 |
 111 |
 112 |   export
 113 |   metaKey : (obj : KeyboardEvent) -> JSIO Bool
 114 |   metaKey a = tryJS "KeyboardEvent.metaKey" $ KeyboardEvent.prim__metaKey a
 115 |
 116 |
 117 |   export
 118 |   repeat : (obj : KeyboardEvent) -> JSIO Bool
 119 |   repeat a = tryJS "KeyboardEvent.repeat" $ KeyboardEvent.prim__repeat a
 120 |
 121 |
 122 |   export
 123 |   shiftKey : (obj : KeyboardEvent) -> JSIO Bool
 124 |   shiftKey a = tryJS "KeyboardEvent.shiftKey" $ KeyboardEvent.prim__shiftKey a
 125 |
 126 |
 127 |   export
 128 |   getModifierState : (obj : KeyboardEvent) -> (keyArg : String) -> JSIO Bool
 129 |   getModifierState a b = tryJS "KeyboardEvent.getModifierState" $
 130 |     KeyboardEvent.prim__getModifierState a b
 131 |
 132 |
 133 |
 134 | namespace MouseEvent
 135 |
 136 |   export
 137 |   altKey :
 138 |        {auto 0 _ : JSType t1}
 139 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 140 |     -> (obj : t1)
 141 |     -> JSIO Bool
 142 |   altKey a = tryJS "MouseEvent.altKey" $ MouseEvent.prim__altKey (up a)
 143 |
 144 |
 145 |   export
 146 |   button :
 147 |        {auto 0 _ : JSType t1}
 148 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 149 |     -> (obj : t1)
 150 |     -> JSIO Int16
 151 |   button a = primJS $ MouseEvent.prim__button (up a)
 152 |
 153 |
 154 |   export
 155 |   buttons :
 156 |        {auto 0 _ : JSType t1}
 157 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 158 |     -> (obj : t1)
 159 |     -> JSIO Bits16
 160 |   buttons a = primJS $ MouseEvent.prim__buttons (up a)
 161 |
 162 |
 163 |   export
 164 |   clientX :
 165 |        {auto 0 _ : JSType t1}
 166 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 167 |     -> (obj : t1)
 168 |     -> JSIO Double
 169 |   clientX a = primJS $ MouseEvent.prim__clientX (up a)
 170 |
 171 |
 172 |   export
 173 |   clientY :
 174 |        {auto 0 _ : JSType t1}
 175 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 176 |     -> (obj : t1)
 177 |     -> JSIO Double
 178 |   clientY a = primJS $ MouseEvent.prim__clientY (up a)
 179 |
 180 |
 181 |   export
 182 |   ctrlKey :
 183 |        {auto 0 _ : JSType t1}
 184 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 185 |     -> (obj : t1)
 186 |     -> JSIO Bool
 187 |   ctrlKey a = tryJS "MouseEvent.ctrlKey" $ MouseEvent.prim__ctrlKey (up a)
 188 |
 189 |
 190 |   export
 191 |   metaKey :
 192 |        {auto 0 _ : JSType t1}
 193 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 194 |     -> (obj : t1)
 195 |     -> JSIO Bool
 196 |   metaKey a = tryJS "MouseEvent.metaKey" $ MouseEvent.prim__metaKey (up a)
 197 |
 198 |
 199 |   export
 200 |   offsetX :
 201 |        {auto 0 _ : JSType t1}
 202 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 203 |     -> (obj : t1)
 204 |     -> JSIO Double
 205 |   offsetX a = primJS $ MouseEvent.prim__offsetX (up a)
 206 |
 207 |
 208 |   export
 209 |   offsetY :
 210 |        {auto 0 _ : JSType t1}
 211 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 212 |     -> (obj : t1)
 213 |     -> JSIO Double
 214 |   offsetY a = primJS $ MouseEvent.prim__offsetY (up a)
 215 |
 216 |
 217 |   export
 218 |   pageX :
 219 |        {auto 0 _ : JSType t1}
 220 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 221 |     -> (obj : t1)
 222 |     -> JSIO Double
 223 |   pageX a = primJS $ MouseEvent.prim__pageX (up a)
 224 |
 225 |
 226 |   export
 227 |   pageY :
 228 |        {auto 0 _ : JSType t1}
 229 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 230 |     -> (obj : t1)
 231 |     -> JSIO Double
 232 |   pageY a = primJS $ MouseEvent.prim__pageY (up a)
 233 |
 234 |
 235 |   export
 236 |   relatedTarget :
 237 |        {auto 0 _ : JSType t1}
 238 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 239 |     -> (obj : t1)
 240 |     -> JSIO (Maybe EventTarget)
 241 |   relatedTarget a = tryJS "MouseEvent.relatedTarget" $
 242 |     MouseEvent.prim__relatedTarget (up a)
 243 |
 244 |
 245 |   export
 246 |   screenX :
 247 |        {auto 0 _ : JSType t1}
 248 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 249 |     -> (obj : t1)
 250 |     -> JSIO Double
 251 |   screenX a = primJS $ MouseEvent.prim__screenX (up a)
 252 |
 253 |
 254 |   export
 255 |   screenY :
 256 |        {auto 0 _ : JSType t1}
 257 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 258 |     -> (obj : t1)
 259 |     -> JSIO Double
 260 |   screenY a = primJS $ MouseEvent.prim__screenY (up a)
 261 |
 262 |
 263 |   export
 264 |   shiftKey :
 265 |        {auto 0 _ : JSType t1}
 266 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 267 |     -> (obj : t1)
 268 |     -> JSIO Bool
 269 |   shiftKey a = tryJS "MouseEvent.shiftKey" $ MouseEvent.prim__shiftKey (up a)
 270 |
 271 |
 272 |   export
 273 |   x :
 274 |        {auto 0 _ : JSType t1}
 275 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 276 |     -> (obj : t1)
 277 |     -> JSIO Double
 278 |   x a = primJS $ MouseEvent.prim__x (up a)
 279 |
 280 |
 281 |   export
 282 |   y :
 283 |        {auto 0 _ : JSType t1}
 284 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 285 |     -> (obj : t1)
 286 |     -> JSIO Double
 287 |   y a = primJS $ MouseEvent.prim__y (up a)
 288 |
 289 |
 290 |   export
 291 |   getModifierState :
 292 |        {auto 0 _ : JSType t1}
 293 |     -> {auto 0 _ : Elem MouseEvent (Types t1)}
 294 |     -> (obj : t1)
 295 |     -> (keyArg : String)
 296 |     -> JSIO Bool
 297 |   getModifierState a b = tryJS "MouseEvent.getModifierState" $
 298 |     MouseEvent.prim__getModifierState (up a) b
 299 |
 300 |
 301 |
 302 | namespace UIEvent
 303 |
 304 |   export
 305 |   detail :
 306 |        {auto 0 _ : JSType t1}
 307 |     -> {auto 0 _ : Elem UIEvent (Types t1)}
 308 |     -> (obj : t1)
 309 |     -> JSIO Int32
 310 |   detail a = primJS $ UIEvent.prim__detail (up a)
 311 |
 312 |
 313 |   export
 314 |   view :
 315 |        {auto 0 _ : JSType t1}
 316 |     -> {auto 0 _ : Elem UIEvent (Types t1)}
 317 |     -> (obj : t1)
 318 |     -> JSIO (Maybe Window)
 319 |   view a = tryJS "UIEvent.view" $ UIEvent.prim__view (up a)
 320 |
 321 |
 322 |   export
 323 |   which :
 324 |        {auto 0 _ : JSType t1}
 325 |     -> {auto 0 _ : Elem UIEvent (Types t1)}
 326 |     -> (obj : t1)
 327 |     -> JSIO Bits32
 328 |   which a = primJS $ UIEvent.prim__which (up a)
 329 |
 330 |
 331 |
 332 | namespace WheelEvent
 333 |
 334 |   public export
 335 |   DOM_DELTA_LINE : Bits32
 336 |   DOM_DELTA_LINE = 0x1
 337 |
 338 |
 339 |   public export
 340 |   DOM_DELTA_PAGE : Bits32
 341 |   DOM_DELTA_PAGE = 0x2
 342 |
 343 |
 344 |   public export
 345 |   DOM_DELTA_PIXEL : Bits32
 346 |   DOM_DELTA_PIXEL = 0x0
 347 |
 348 |
 349 |   export
 350 |   deltaMode : (obj : WheelEvent) -> JSIO Bits32
 351 |   deltaMode a = primJS $ WheelEvent.prim__deltaMode a
 352 |
 353 |
 354 |   export
 355 |   deltaX : (obj : WheelEvent) -> JSIO Double
 356 |   deltaX a = primJS $ WheelEvent.prim__deltaX a
 357 |
 358 |
 359 |   export
 360 |   deltaY : (obj : WheelEvent) -> JSIO Double
 361 |   deltaY a = primJS $ WheelEvent.prim__deltaY a
 362 |
 363 |
 364 |   export
 365 |   deltaZ : (obj : WheelEvent) -> JSIO Double
 366 |   deltaZ a = primJS $ WheelEvent.prim__deltaZ a
 367 |
 368 |
 369 |
 370 |
 371 |
 372 | --------------------------------------------------------------------------------
 373 | --          Dictionaries
 374 | --------------------------------------------------------------------------------
 375 |
 376 | namespace CompositionEventInit
 377 |
 378 |   export
 379 |   new' : (data_ : Optional String) -> JSIO CompositionEventInit
 380 |   new' a = primJS $ CompositionEventInit.prim__new (toFFI a)
 381 |
 382 |   export
 383 |   new : JSIO CompositionEventInit
 384 |   new = primJS $ CompositionEventInit.prim__new undef
 385 |
 386 |
 387 |   export
 388 |   data_ :
 389 |        {auto 0 _ : JSType t}
 390 |     -> {auto 0 _ : Elem CompositionEventInit (Types t)}
 391 |     -> t
 392 |     -> Attribute True Optional String
 393 |   data_ v = fromUndefOrPrim
 394 |               "CompositionEventInit.getdata"
 395 |               prim__data
 396 |               prim__setData
 397 |               ""
 398 |               (v :> CompositionEventInit)
 399 |
 400 |
 401 |
 402 | namespace EventModifierInit
 403 |
 404 |   export
 405 |   new' :
 406 |        (ctrlKey : Optional Bool)
 407 |     -> (shiftKey : Optional Bool)
 408 |     -> (altKey : Optional Bool)
 409 |     -> (metaKey : Optional Bool)
 410 |     -> (modifierAltGraph : Optional Bool)
 411 |     -> (modifierCapsLock : Optional Bool)
 412 |     -> (modifierFn : Optional Bool)
 413 |     -> (modifierFnLock : Optional Bool)
 414 |     -> (modifierHyper : Optional Bool)
 415 |     -> (modifierNumLock : Optional Bool)
 416 |     -> (modifierScrollLock : Optional Bool)
 417 |     -> (modifierSuper : Optional Bool)
 418 |     -> (modifierSymbol : Optional Bool)
 419 |     -> (modifierSymbolLock : Optional Bool)
 420 |     -> JSIO EventModifierInit
 421 |   new' a b c d e f g h i j k l m n = primJS $
 422 |     EventModifierInit.prim__new
 423 |       (toFFI a)
 424 |       (toFFI b)
 425 |       (toFFI c)
 426 |       (toFFI d)
 427 |       (toFFI e)
 428 |       (toFFI f)
 429 |       (toFFI g)
 430 |       (toFFI h)
 431 |       (toFFI i)
 432 |       (toFFI j)
 433 |       (toFFI k)
 434 |       (toFFI l)
 435 |       (toFFI m)
 436 |       (toFFI n)
 437 |
 438 |   export
 439 |   new : JSIO EventModifierInit
 440 |   new = primJS $
 441 |     EventModifierInit.prim__new
 442 |       undef
 443 |       undef
 444 |       undef
 445 |       undef
 446 |       undef
 447 |       undef
 448 |       undef
 449 |       undef
 450 |       undef
 451 |       undef
 452 |       undef
 453 |       undef
 454 |       undef
 455 |       undef
 456 |
 457 |
 458 |   export
 459 |   altKey :
 460 |        {auto 0 _ : JSType t}
 461 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 462 |     -> t
 463 |     -> Attribute True Optional Bool
 464 |   altKey v = fromUndefOrPrim
 465 |                "EventModifierInit.getaltKey"
 466 |                prim__altKey
 467 |                prim__setAltKey
 468 |                False
 469 |                (v :> EventModifierInit)
 470 |
 471 |
 472 |   export
 473 |   ctrlKey :
 474 |        {auto 0 _ : JSType t}
 475 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 476 |     -> t
 477 |     -> Attribute True Optional Bool
 478 |   ctrlKey v = fromUndefOrPrim
 479 |                 "EventModifierInit.getctrlKey"
 480 |                 prim__ctrlKey
 481 |                 prim__setCtrlKey
 482 |                 False
 483 |                 (v :> EventModifierInit)
 484 |
 485 |
 486 |   export
 487 |   metaKey :
 488 |        {auto 0 _ : JSType t}
 489 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 490 |     -> t
 491 |     -> Attribute True Optional Bool
 492 |   metaKey v = fromUndefOrPrim
 493 |                 "EventModifierInit.getmetaKey"
 494 |                 prim__metaKey
 495 |                 prim__setMetaKey
 496 |                 False
 497 |                 (v :> EventModifierInit)
 498 |
 499 |
 500 |   export
 501 |   modifierAltGraph :
 502 |        {auto 0 _ : JSType t}
 503 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 504 |     -> t
 505 |     -> Attribute True Optional Bool
 506 |   modifierAltGraph v = fromUndefOrPrim
 507 |                          "EventModifierInit.getmodifierAltGraph"
 508 |                          prim__modifierAltGraph
 509 |                          prim__setModifierAltGraph
 510 |                          False
 511 |                          (v :> EventModifierInit)
 512 |
 513 |
 514 |   export
 515 |   modifierCapsLock :
 516 |        {auto 0 _ : JSType t}
 517 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 518 |     -> t
 519 |     -> Attribute True Optional Bool
 520 |   modifierCapsLock v = fromUndefOrPrim
 521 |                          "EventModifierInit.getmodifierCapsLock"
 522 |                          prim__modifierCapsLock
 523 |                          prim__setModifierCapsLock
 524 |                          False
 525 |                          (v :> EventModifierInit)
 526 |
 527 |
 528 |   export
 529 |   modifierFn :
 530 |        {auto 0 _ : JSType t}
 531 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 532 |     -> t
 533 |     -> Attribute True Optional Bool
 534 |   modifierFn v = fromUndefOrPrim
 535 |                    "EventModifierInit.getmodifierFn"
 536 |                    prim__modifierFn
 537 |                    prim__setModifierFn
 538 |                    False
 539 |                    (v :> EventModifierInit)
 540 |
 541 |
 542 |   export
 543 |   modifierFnLock :
 544 |        {auto 0 _ : JSType t}
 545 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 546 |     -> t
 547 |     -> Attribute True Optional Bool
 548 |   modifierFnLock v = fromUndefOrPrim
 549 |                        "EventModifierInit.getmodifierFnLock"
 550 |                        prim__modifierFnLock
 551 |                        prim__setModifierFnLock
 552 |                        False
 553 |                        (v :> EventModifierInit)
 554 |
 555 |
 556 |   export
 557 |   modifierHyper :
 558 |        {auto 0 _ : JSType t}
 559 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 560 |     -> t
 561 |     -> Attribute True Optional Bool
 562 |   modifierHyper v = fromUndefOrPrim
 563 |                       "EventModifierInit.getmodifierHyper"
 564 |                       prim__modifierHyper
 565 |                       prim__setModifierHyper
 566 |                       False
 567 |                       (v :> EventModifierInit)
 568 |
 569 |
 570 |   export
 571 |   modifierNumLock :
 572 |        {auto 0 _ : JSType t}
 573 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 574 |     -> t
 575 |     -> Attribute True Optional Bool
 576 |   modifierNumLock v = fromUndefOrPrim
 577 |                         "EventModifierInit.getmodifierNumLock"
 578 |                         prim__modifierNumLock
 579 |                         prim__setModifierNumLock
 580 |                         False
 581 |                         (v :> EventModifierInit)
 582 |
 583 |
 584 |   export
 585 |   modifierScrollLock :
 586 |        {auto 0 _ : JSType t}
 587 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 588 |     -> t
 589 |     -> Attribute True Optional Bool
 590 |   modifierScrollLock v = fromUndefOrPrim
 591 |                            "EventModifierInit.getmodifierScrollLock"
 592 |                            prim__modifierScrollLock
 593 |                            prim__setModifierScrollLock
 594 |                            False
 595 |                            (v :> EventModifierInit)
 596 |
 597 |
 598 |   export
 599 |   modifierSuper :
 600 |        {auto 0 _ : JSType t}
 601 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 602 |     -> t
 603 |     -> Attribute True Optional Bool
 604 |   modifierSuper v = fromUndefOrPrim
 605 |                       "EventModifierInit.getmodifierSuper"
 606 |                       prim__modifierSuper
 607 |                       prim__setModifierSuper
 608 |                       False
 609 |                       (v :> EventModifierInit)
 610 |
 611 |
 612 |   export
 613 |   modifierSymbol :
 614 |        {auto 0 _ : JSType t}
 615 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 616 |     -> t
 617 |     -> Attribute True Optional Bool
 618 |   modifierSymbol v = fromUndefOrPrim
 619 |                        "EventModifierInit.getmodifierSymbol"
 620 |                        prim__modifierSymbol
 621 |                        prim__setModifierSymbol
 622 |                        False
 623 |                        (v :> EventModifierInit)
 624 |
 625 |
 626 |   export
 627 |   modifierSymbolLock :
 628 |        {auto 0 _ : JSType t}
 629 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 630 |     -> t
 631 |     -> Attribute True Optional Bool
 632 |   modifierSymbolLock v = fromUndefOrPrim
 633 |                            "EventModifierInit.getmodifierSymbolLock"
 634 |                            prim__modifierSymbolLock
 635 |                            prim__setModifierSymbolLock
 636 |                            False
 637 |                            (v :> EventModifierInit)
 638 |
 639 |
 640 |   export
 641 |   shiftKey :
 642 |        {auto 0 _ : JSType t}
 643 |     -> {auto 0 _ : Elem EventModifierInit (Types t)}
 644 |     -> t
 645 |     -> Attribute True Optional Bool
 646 |   shiftKey v = fromUndefOrPrim
 647 |                  "EventModifierInit.getshiftKey"
 648 |                  prim__shiftKey
 649 |                  prim__setShiftKey
 650 |                  False
 651 |                  (v :> EventModifierInit)
 652 |
 653 |
 654 |
 655 | namespace FocusEventInit
 656 |
 657 |   export
 658 |   new' :
 659 |        {auto 0 _ : JSType t1}
 660 |     -> {auto 0 _ : Elem EventTarget (Types t1)}
 661 |     -> (relatedTarget : Optional (Maybe t1))
 662 |     -> JSIO FocusEventInit
 663 |   new' a = primJS $ FocusEventInit.prim__new (omyUp a)
 664 |
 665 |   export
 666 |   new : JSIO FocusEventInit
 667 |   new = primJS $ FocusEventInit.prim__new undef
 668 |
 669 |
 670 |   export
 671 |   relatedTarget :
 672 |        {auto 0 _ : JSType t}
 673 |     -> {auto 0 _ : Elem FocusEventInit (Types t)}
 674 |     -> t
 675 |     -> Attribute True Optional (Maybe EventTarget)
 676 |   relatedTarget v = fromUndefOrPrim
 677 |                       "FocusEventInit.getrelatedTarget"
 678 |                       prim__relatedTarget
 679 |                       prim__setRelatedTarget
 680 |                       Nothing
 681 |                       (v :> FocusEventInit)
 682 |
 683 |
 684 |
 685 | namespace InputEventInit
 686 |
 687 |   export
 688 |   new' :
 689 |        (data_ : Optional (Maybe String))
 690 |     -> (isComposing : Optional Bool)
 691 |     -> (inputType : Optional String)
 692 |     -> JSIO InputEventInit
 693 |   new' a b c = primJS $ InputEventInit.prim__new (toFFI a) (toFFI b) (toFFI c)
 694 |
 695 |   export
 696 |   new : JSIO InputEventInit
 697 |   new = primJS $ InputEventInit.prim__new undef undef undef
 698 |
 699 |
 700 |   export
 701 |   data_ :
 702 |        {auto 0 _ : JSType t}
 703 |     -> {auto 0 _ : Elem InputEventInit (Types t)}
 704 |     -> t
 705 |     -> Attribute True Optional (Maybe String)
 706 |   data_ v = fromUndefOrPrim
 707 |               "InputEventInit.getdata"
 708 |               prim__data
 709 |               prim__setData
 710 |               (Just "")
 711 |               (v :> InputEventInit)
 712 |
 713 |
 714 |   export
 715 |   inputType :
 716 |        {auto 0 _ : JSType t}
 717 |     -> {auto 0 _ : Elem InputEventInit (Types t)}
 718 |     -> t
 719 |     -> Attribute True Optional String
 720 |   inputType v = fromUndefOrPrim
 721 |                   "InputEventInit.getinputType"
 722 |                   prim__inputType
 723 |                   prim__setInputType
 724 |                   ""
 725 |                   (v :> InputEventInit)
 726 |
 727 |
 728 |   export
 729 |   isComposing :
 730 |        {auto 0 _ : JSType t}
 731 |     -> {auto 0 _ : Elem InputEventInit (Types t)}
 732 |     -> t
 733 |     -> Attribute True Optional Bool
 734 |   isComposing v = fromUndefOrPrim
 735 |                     "InputEventInit.getisComposing"
 736 |                     prim__isComposing
 737 |                     prim__setIsComposing
 738 |                     False
 739 |                     (v :> InputEventInit)
 740 |
 741 |
 742 |
 743 | namespace KeyboardEventInit
 744 |
 745 |   export
 746 |   new' :
 747 |        (key : Optional String)
 748 |     -> (code : Optional String)
 749 |     -> (location : Optional Bits32)
 750 |     -> (repeat : Optional Bool)
 751 |     -> (isComposing : Optional Bool)
 752 |     -> JSIO KeyboardEventInit
 753 |   new' a b c d e = primJS $
 754 |     KeyboardEventInit.prim__new
 755 |       (toFFI a)
 756 |       (toFFI b)
 757 |       (toFFI c)
 758 |       (toFFI d)
 759 |       (toFFI e)
 760 |
 761 |   export
 762 |   new : JSIO KeyboardEventInit
 763 |   new = primJS $ KeyboardEventInit.prim__new undef undef undef undef undef
 764 |
 765 |
 766 |   export
 767 |   code :
 768 |        {auto 0 _ : JSType t}
 769 |     -> {auto 0 _ : Elem KeyboardEventInit (Types t)}
 770 |     -> t
 771 |     -> Attribute True Optional String
 772 |   code v = fromUndefOrPrim
 773 |              "KeyboardEventInit.getcode"
 774 |              prim__code
 775 |              prim__setCode
 776 |              ""
 777 |              (v :> KeyboardEventInit)
 778 |
 779 |
 780 |   export
 781 |   isComposing :
 782 |        {auto 0 _ : JSType t}
 783 |     -> {auto 0 _ : Elem KeyboardEventInit (Types t)}
 784 |     -> t
 785 |     -> Attribute True Optional Bool
 786 |   isComposing v = fromUndefOrPrim
 787 |                     "KeyboardEventInit.getisComposing"
 788 |                     prim__isComposing
 789 |                     prim__setIsComposing
 790 |                     False
 791 |                     (v :> KeyboardEventInit)
 792 |
 793 |
 794 |   export
 795 |   key :
 796 |        {auto 0 _ : JSType t}
 797 |     -> {auto 0 _ : Elem KeyboardEventInit (Types t)}
 798 |     -> t
 799 |     -> Attribute True Optional String
 800 |   key v = fromUndefOrPrim
 801 |             "KeyboardEventInit.getkey"
 802 |             prim__key
 803 |             prim__setKey
 804 |             ""
 805 |             (v :> KeyboardEventInit)
 806 |
 807 |
 808 |   export
 809 |   location :
 810 |        {auto 0 _ : JSType t}
 811 |     -> {auto 0 _ : Elem KeyboardEventInit (Types t)}
 812 |     -> t
 813 |     -> Attribute True Optional Bits32
 814 |   location v = fromUndefOrPrim
 815 |                  "KeyboardEventInit.getlocation"
 816 |                  prim__location
 817 |                  prim__setLocation
 818 |                  0
 819 |                  (v :> KeyboardEventInit)
 820 |
 821 |
 822 |   export
 823 |   repeat :
 824 |        {auto 0 _ : JSType t}
 825 |     -> {auto 0 _ : Elem KeyboardEventInit (Types t)}
 826 |     -> t
 827 |     -> Attribute True Optional Bool
 828 |   repeat v = fromUndefOrPrim
 829 |                "KeyboardEventInit.getrepeat"
 830 |                prim__repeat
 831 |                prim__setRepeat
 832 |                False
 833 |                (v :> KeyboardEventInit)
 834 |
 835 |
 836 |
 837 | namespace MouseEventInit
 838 |
 839 |   export
 840 |   new' :
 841 |        {auto 0 _ : JSType t3}
 842 |     -> {auto 0 _ : Elem EventTarget (Types t3)}
 843 |     -> (button : Optional Int16)
 844 |     -> (buttons : Optional Bits16)
 845 |     -> (relatedTarget : Optional (Maybe t3))
 846 |     -> (screenX : Optional Double)
 847 |     -> (screenY : Optional Double)
 848 |     -> (clientX : Optional Double)
 849 |     -> (clientY : Optional Double)
 850 |     -> JSIO MouseEventInit
 851 |   new' a b c d e f g = primJS $
 852 |     MouseEventInit.prim__new
 853 |       (toFFI a)
 854 |       (toFFI b)
 855 |       (omyUp c)
 856 |       (toFFI d)
 857 |       (toFFI e)
 858 |       (toFFI f)
 859 |       (toFFI g)
 860 |
 861 |   export
 862 |   new : JSIO MouseEventInit
 863 |   new = primJS $
 864 |     MouseEventInit.prim__new undef undef undef undef undef undef undef
 865 |
 866 |
 867 |   export
 868 |   button :
 869 |        {auto 0 _ : JSType t}
 870 |     -> {auto 0 _ : Elem MouseEventInit (Types t)}
 871 |     -> t
 872 |     -> Attribute True Optional Int16
 873 |   button v = fromUndefOrPrim
 874 |                "MouseEventInit.getbutton"
 875 |                prim__button
 876 |                prim__setButton
 877 |                0
 878 |                (v :> MouseEventInit)
 879 |
 880 |
 881 |   export
 882 |   buttons :
 883 |        {auto 0 _ : JSType t}
 884 |     -> {auto 0 _ : Elem MouseEventInit (Types t)}
 885 |     -> t
 886 |     -> Attribute True Optional Bits16
 887 |   buttons v = fromUndefOrPrim
 888 |                 "MouseEventInit.getbuttons"
 889 |                 prim__buttons
 890 |                 prim__setButtons
 891 |                 0
 892 |                 (v :> MouseEventInit)
 893 |
 894 |
 895 |   export
 896 |   clientX :
 897 |        {auto 0 _ : JSType t}
 898 |     -> {auto 0 _ : Elem MouseEventInit (Types t)}
 899 |     -> t
 900 |     -> Attribute True Optional Double
 901 |   clientX v = fromUndefOrPrim
 902 |                 "MouseEventInit.getclientX"
 903 |                 prim__clientX
 904 |                 prim__setClientX
 905 |                 0.0
 906 |                 (v :> MouseEventInit)
 907 |
 908 |
 909 |   export
 910 |   clientY :
 911 |        {auto 0 _ : JSType t}
 912 |     -> {auto 0 _ : Elem MouseEventInit (Types t)}
 913 |     -> t
 914 |     -> Attribute True Optional Double
 915 |   clientY v = fromUndefOrPrim
 916 |                 "MouseEventInit.getclientY"
 917 |                 prim__clientY
 918 |                 prim__setClientY
 919 |                 0.0
 920 |                 (v :> MouseEventInit)
 921 |
 922 |
 923 |   export
 924 |   relatedTarget :
 925 |        {auto 0 _ : JSType t}
 926 |     -> {auto 0 _ : Elem MouseEventInit (Types t)}
 927 |     -> t
 928 |     -> Attribute True Optional (Maybe EventTarget)
 929 |   relatedTarget v = fromUndefOrPrim
 930 |                       "MouseEventInit.getrelatedTarget"
 931 |                       prim__relatedTarget
 932 |                       prim__setRelatedTarget
 933 |                       Nothing
 934 |                       (v :> MouseEventInit)
 935 |
 936 |
 937 |   export
 938 |   screenX :
 939 |        {auto 0 _ : JSType t}
 940 |     -> {auto 0 _ : Elem MouseEventInit (Types t)}
 941 |     -> t
 942 |     -> Attribute True Optional Double
 943 |   screenX v = fromUndefOrPrim
 944 |                 "MouseEventInit.getscreenX"
 945 |                 prim__screenX
 946 |                 prim__setScreenX
 947 |                 0.0
 948 |                 (v :> MouseEventInit)
 949 |
 950 |
 951 |   export
 952 |   screenY :
 953 |        {auto 0 _ : JSType t}
 954 |     -> {auto 0 _ : Elem MouseEventInit (Types t)}
 955 |     -> t
 956 |     -> Attribute True Optional Double
 957 |   screenY v = fromUndefOrPrim
 958 |                 "MouseEventInit.getscreenY"
 959 |                 prim__screenY
 960 |                 prim__setScreenY
 961 |                 0.0
 962 |                 (v :> MouseEventInit)
 963 |
 964 |
 965 |
 966 | namespace UIEventInit
 967 |
 968 |   export
 969 |   new' :
 970 |        (view : Optional (Maybe Window))
 971 |     -> (detail : Optional Int32)
 972 |     -> JSIO UIEventInit
 973 |   new' a b = primJS $ UIEventInit.prim__new (toFFI a) (toFFI b)
 974 |
 975 |   export
 976 |   new : JSIO UIEventInit
 977 |   new = primJS $ UIEventInit.prim__new undef undef
 978 |
 979 |
 980 |   export
 981 |   detail :
 982 |        {auto 0 _ : JSType t}
 983 |     -> {auto 0 _ : Elem UIEventInit (Types t)}
 984 |     -> t
 985 |     -> Attribute True Optional Int32
 986 |   detail v = fromUndefOrPrim
 987 |                "UIEventInit.getdetail"
 988 |                prim__detail
 989 |                prim__setDetail
 990 |                0
 991 |                (v :> UIEventInit)
 992 |
 993 |
 994 |   export
 995 |   view :
 996 |        {auto 0 _ : JSType t}
 997 |     -> {auto 0 _ : Elem UIEventInit (Types t)}
 998 |     -> t
 999 |     -> Attribute True Optional (Maybe Window)
1000 |   view v = fromUndefOrPrim
1001 |              "UIEventInit.getview"
1002 |              prim__view
1003 |              prim__setView
1004 |              Nothing
1005 |              (v :> UIEventInit)
1006 |
1007 |
1008 |
1009 | namespace WheelEventInit
1010 |
1011 |   export
1012 |   new' :
1013 |        (deltaX : Optional Double)
1014 |     -> (deltaY : Optional Double)
1015 |     -> (deltaZ : Optional Double)
1016 |     -> (deltaMode : Optional Bits32)
1017 |     -> JSIO WheelEventInit
1018 |   new' a b c d = primJS $
1019 |     WheelEventInit.prim__new (toFFI a) (toFFI b) (toFFI c) (toFFI d)
1020 |
1021 |   export
1022 |   new : JSIO WheelEventInit
1023 |   new = primJS $ WheelEventInit.prim__new undef undef undef undef
1024 |
1025 |
1026 |   export
1027 |   deltaMode :
1028 |        {auto 0 _ : JSType t}
1029 |     -> {auto 0 _ : Elem WheelEventInit (Types t)}
1030 |     -> t
1031 |     -> Attribute True Optional Bits32
1032 |   deltaMode v = fromUndefOrPrim
1033 |                   "WheelEventInit.getdeltaMode"
1034 |                   prim__deltaMode
1035 |                   prim__setDeltaMode
1036 |                   0
1037 |                   (v :> WheelEventInit)
1038 |
1039 |
1040 |   export
1041 |   deltaX :
1042 |        {auto 0 _ : JSType t}
1043 |     -> {auto 0 _ : Elem WheelEventInit (Types t)}
1044 |     -> t
1045 |     -> Attribute True Optional Double
1046 |   deltaX v = fromUndefOrPrim
1047 |                "WheelEventInit.getdeltaX"
1048 |                prim__deltaX
1049 |                prim__setDeltaX
1050 |                0.0
1051 |                (v :> WheelEventInit)
1052 |
1053 |
1054 |   export
1055 |   deltaY :
1056 |        {auto 0 _ : JSType t}
1057 |     -> {auto 0 _ : Elem WheelEventInit (Types t)}
1058 |     -> t
1059 |     -> Attribute True Optional Double
1060 |   deltaY v = fromUndefOrPrim
1061 |                "WheelEventInit.getdeltaY"
1062 |                prim__deltaY
1063 |                prim__setDeltaY
1064 |                0.0
1065 |                (v :> WheelEventInit)
1066 |
1067 |
1068 |   export
1069 |   deltaZ :
1070 |        {auto 0 _ : JSType t}
1071 |     -> {auto 0 _ : Elem WheelEventInit (Types t)}
1072 |     -> t
1073 |     -> Attribute True Optional Double
1074 |   deltaZ v = fromUndefOrPrim
1075 |                "WheelEventInit.getdeltaZ"
1076 |                prim__deltaZ
1077 |                prim__setDeltaZ
1078 |                0.0
1079 |                (v :> WheelEventInit)
1080 |