github.com/jgarto/itcv@v0.0.0-20180826224514-4eea09c1aa0d/gen_react_coreGen.go (about) 1 // Code generated by coreGen. DO NOT EDIT. 2 3 package react 4 5 import "github.com/gopherjs/gopherjs/js" 6 7 // AElem is the React element definition corresponding to the HTML <a> element 8 type AElem struct { 9 Element 10 } 11 12 func (a *AElem) coreReactElement() {} 13 14 // AProps defines the properties for the <a> element 15 type AProps struct { 16 AriaExpanded bool 17 AriaHasPopup bool 18 AriaLabelledBy string 19 ClassName string 20 DangerouslySetInnerHTML *DangerousInnerHTML 21 DataSet DataSet 22 Href string 23 ID string 24 Key string 25 OnChange OnChange 26 OnClick OnClick 27 Ref Ref 28 Role string 29 Style *CSS 30 Target string 31 Title string 32 } 33 34 // A creates a new instance of a <a> element with the provided props and 35 // children 36 func A(props *AProps, children ...Element) *AElem { 37 type _AProps struct { 38 o *js.Object 39 AriaExpanded bool `js:"aria-expanded"` 40 AriaHasPopup bool `js:"aria-haspopup"` 41 AriaLabelledBy string `js:"aria-labelledby"` 42 ClassName string `js:"className"` 43 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 44 Href string `js:"href"` 45 ID string `js:"id" react:"omitempty"` 46 Key string `js:"key" react:"omitempty"` 47 OnChange OnChange `js:"onChange"` 48 OnClick OnClick `js:"onClick"` 49 Ref Ref `js:"ref"` 50 Role string `js:"role"` 51 Style *CSS `js:"style"` 52 Target string `js:"target"` 53 Title string `js:"title"` 54 } 55 56 rprops := &_AProps{ 57 o: object.New(), 58 } 59 60 if props != nil { 61 rprops.AriaExpanded = props.AriaExpanded 62 63 rprops.AriaHasPopup = props.AriaHasPopup 64 65 rprops.AriaLabelledBy = props.AriaLabelledBy 66 67 rprops.ClassName = props.ClassName 68 69 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 70 71 if props.DataSet != nil { 72 for dk, dv := range props.DataSet { 73 rprops.o.Set("data-"+dk, dv) 74 } 75 } 76 rprops.Href = props.Href 77 78 if props.ID != "" { 79 rprops.ID = props.ID 80 } 81 if props.Key != "" { 82 rprops.Key = props.Key 83 } 84 if props.OnChange != nil { 85 rprops.o.Set("onChange", props.OnChange.OnChange) 86 } 87 if props.OnClick != nil { 88 rprops.o.Set("onClick", props.OnClick.OnClick) 89 } 90 if props.Ref != nil { 91 rprops.o.Set("ref", props.Ref.Ref) 92 } 93 rprops.Role = props.Role 94 95 // TODO: until we have a resolution on 96 // https://github.com/gopherjs/gopherjs/issues/236 97 rprops.Style = props.Style.hack() 98 rprops.Target = props.Target 99 100 rprops.Title = props.Title 101 } 102 103 return &AElem{ 104 Element: createElement("a", rprops, children...), 105 } 106 } 107 108 // AbbrElem is the React element definition corresponding to the HTML <abbr> element 109 type AbbrElem struct { 110 Element 111 } 112 113 func (a *AbbrElem) coreReactElement() {} 114 115 // AbbrProps defines the properties for the <abbr> element 116 type AbbrProps struct { 117 AriaExpanded bool 118 AriaHasPopup bool 119 AriaLabelledBy string 120 ClassName string 121 DangerouslySetInnerHTML *DangerousInnerHTML 122 DataSet DataSet 123 ID string 124 Key string 125 OnChange OnChange 126 OnClick OnClick 127 Ref Ref 128 Role string 129 Style *CSS 130 } 131 132 // Abbr creates a new instance of a <abbr> element with the provided props and 133 // children 134 func Abbr(props *AbbrProps, children ...Element) *AbbrElem { 135 type _AbbrProps struct { 136 o *js.Object 137 AriaExpanded bool `js:"aria-expanded"` 138 AriaHasPopup bool `js:"aria-haspopup"` 139 AriaLabelledBy string `js:"aria-labelledby"` 140 ClassName string `js:"className"` 141 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 142 ID string `js:"id" react:"omitempty"` 143 Key string `js:"key" react:"omitempty"` 144 OnChange OnChange `js:"onChange"` 145 OnClick OnClick `js:"onClick"` 146 Ref Ref `js:"ref"` 147 Role string `js:"role"` 148 Style *CSS `js:"style"` 149 } 150 151 rprops := &_AbbrProps{ 152 o: object.New(), 153 } 154 155 if props != nil { 156 rprops.AriaExpanded = props.AriaExpanded 157 158 rprops.AriaHasPopup = props.AriaHasPopup 159 160 rprops.AriaLabelledBy = props.AriaLabelledBy 161 162 rprops.ClassName = props.ClassName 163 164 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 165 166 if props.DataSet != nil { 167 for dk, dv := range props.DataSet { 168 rprops.o.Set("data-"+dk, dv) 169 } 170 } 171 if props.ID != "" { 172 rprops.ID = props.ID 173 } 174 if props.Key != "" { 175 rprops.Key = props.Key 176 } 177 if props.OnChange != nil { 178 rprops.o.Set("onChange", props.OnChange.OnChange) 179 } 180 if props.OnClick != nil { 181 rprops.o.Set("onClick", props.OnClick.OnClick) 182 } 183 if props.Ref != nil { 184 rprops.o.Set("ref", props.Ref.Ref) 185 } 186 rprops.Role = props.Role 187 188 // TODO: until we have a resolution on 189 // https://github.com/gopherjs/gopherjs/issues/236 190 rprops.Style = props.Style.hack() 191 } 192 193 return &AbbrElem{ 194 Element: createElement("abbr", rprops, children...), 195 } 196 } 197 198 // ArticleElem is the React element definition corresponding to the HTML <article> element 199 type ArticleElem struct { 200 Element 201 } 202 203 func (a *ArticleElem) coreReactElement() {} 204 205 // ArticleProps defines the properties for the <article> element 206 type ArticleProps struct { 207 AriaExpanded bool 208 AriaHasPopup bool 209 AriaLabelledBy string 210 ClassName string 211 DangerouslySetInnerHTML *DangerousInnerHTML 212 DataSet DataSet 213 ID string 214 Key string 215 OnChange OnChange 216 OnClick OnClick 217 Ref Ref 218 Role string 219 Style *CSS 220 } 221 222 // Article creates a new instance of a <article> element with the provided props and 223 // children 224 func Article(props *ArticleProps, children ...Element) *ArticleElem { 225 type _ArticleProps struct { 226 o *js.Object 227 AriaExpanded bool `js:"aria-expanded"` 228 AriaHasPopup bool `js:"aria-haspopup"` 229 AriaLabelledBy string `js:"aria-labelledby"` 230 ClassName string `js:"className"` 231 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 232 ID string `js:"id" react:"omitempty"` 233 Key string `js:"key" react:"omitempty"` 234 OnChange OnChange `js:"onChange"` 235 OnClick OnClick `js:"onClick"` 236 Ref Ref `js:"ref"` 237 Role string `js:"role"` 238 Style *CSS `js:"style"` 239 } 240 241 rprops := &_ArticleProps{ 242 o: object.New(), 243 } 244 245 if props != nil { 246 rprops.AriaExpanded = props.AriaExpanded 247 248 rprops.AriaHasPopup = props.AriaHasPopup 249 250 rprops.AriaLabelledBy = props.AriaLabelledBy 251 252 rprops.ClassName = props.ClassName 253 254 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 255 256 if props.DataSet != nil { 257 for dk, dv := range props.DataSet { 258 rprops.o.Set("data-"+dk, dv) 259 } 260 } 261 if props.ID != "" { 262 rprops.ID = props.ID 263 } 264 if props.Key != "" { 265 rprops.Key = props.Key 266 } 267 if props.OnChange != nil { 268 rprops.o.Set("onChange", props.OnChange.OnChange) 269 } 270 if props.OnClick != nil { 271 rprops.o.Set("onClick", props.OnClick.OnClick) 272 } 273 if props.Ref != nil { 274 rprops.o.Set("ref", props.Ref.Ref) 275 } 276 rprops.Role = props.Role 277 278 // TODO: until we have a resolution on 279 // https://github.com/gopherjs/gopherjs/issues/236 280 rprops.Style = props.Style.hack() 281 } 282 283 return &ArticleElem{ 284 Element: createElement("article", rprops, children...), 285 } 286 } 287 288 // AsideElem is the React element definition corresponding to the HTML <aside> element 289 type AsideElem struct { 290 Element 291 } 292 293 func (a *AsideElem) coreReactElement() {} 294 295 // AsideProps defines the properties for the <aside> element 296 type AsideProps struct { 297 AriaExpanded bool 298 AriaHasPopup bool 299 AriaLabelledBy string 300 ClassName string 301 DangerouslySetInnerHTML *DangerousInnerHTML 302 DataSet DataSet 303 ID string 304 Key string 305 OnChange OnChange 306 OnClick OnClick 307 Ref Ref 308 Role string 309 Style *CSS 310 } 311 312 // Aside creates a new instance of a <aside> element with the provided props and 313 // children 314 func Aside(props *AsideProps, children ...Element) *AsideElem { 315 type _AsideProps struct { 316 o *js.Object 317 AriaExpanded bool `js:"aria-expanded"` 318 AriaHasPopup bool `js:"aria-haspopup"` 319 AriaLabelledBy string `js:"aria-labelledby"` 320 ClassName string `js:"className"` 321 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 322 ID string `js:"id" react:"omitempty"` 323 Key string `js:"key" react:"omitempty"` 324 OnChange OnChange `js:"onChange"` 325 OnClick OnClick `js:"onClick"` 326 Ref Ref `js:"ref"` 327 Role string `js:"role"` 328 Style *CSS `js:"style"` 329 } 330 331 rprops := &_AsideProps{ 332 o: object.New(), 333 } 334 335 if props != nil { 336 rprops.AriaExpanded = props.AriaExpanded 337 338 rprops.AriaHasPopup = props.AriaHasPopup 339 340 rprops.AriaLabelledBy = props.AriaLabelledBy 341 342 rprops.ClassName = props.ClassName 343 344 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 345 346 if props.DataSet != nil { 347 for dk, dv := range props.DataSet { 348 rprops.o.Set("data-"+dk, dv) 349 } 350 } 351 if props.ID != "" { 352 rprops.ID = props.ID 353 } 354 if props.Key != "" { 355 rprops.Key = props.Key 356 } 357 if props.OnChange != nil { 358 rprops.o.Set("onChange", props.OnChange.OnChange) 359 } 360 if props.OnClick != nil { 361 rprops.o.Set("onClick", props.OnClick.OnClick) 362 } 363 if props.Ref != nil { 364 rprops.o.Set("ref", props.Ref.Ref) 365 } 366 rprops.Role = props.Role 367 368 // TODO: until we have a resolution on 369 // https://github.com/gopherjs/gopherjs/issues/236 370 rprops.Style = props.Style.hack() 371 } 372 373 return &AsideElem{ 374 Element: createElement("aside", rprops, children...), 375 } 376 } 377 378 // BElem is the React element definition corresponding to the HTML <b> element 379 type BElem struct { 380 Element 381 } 382 383 func (a *BElem) coreReactElement() {} 384 385 // BProps defines the properties for the <b> element 386 type BProps struct { 387 AriaExpanded bool 388 AriaHasPopup bool 389 AriaLabelledBy string 390 ClassName string 391 DangerouslySetInnerHTML *DangerousInnerHTML 392 DataSet DataSet 393 ID string 394 Key string 395 OnChange OnChange 396 OnClick OnClick 397 Ref Ref 398 Role string 399 Style *CSS 400 } 401 402 // B creates a new instance of a <b> element with the provided props and 403 // children 404 func B(props *BProps, children ...Element) *BElem { 405 type _BProps struct { 406 o *js.Object 407 AriaExpanded bool `js:"aria-expanded"` 408 AriaHasPopup bool `js:"aria-haspopup"` 409 AriaLabelledBy string `js:"aria-labelledby"` 410 ClassName string `js:"className"` 411 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 412 ID string `js:"id" react:"omitempty"` 413 Key string `js:"key" react:"omitempty"` 414 OnChange OnChange `js:"onChange"` 415 OnClick OnClick `js:"onClick"` 416 Ref Ref `js:"ref"` 417 Role string `js:"role"` 418 Style *CSS `js:"style"` 419 } 420 421 rprops := &_BProps{ 422 o: object.New(), 423 } 424 425 if props != nil { 426 rprops.AriaExpanded = props.AriaExpanded 427 428 rprops.AriaHasPopup = props.AriaHasPopup 429 430 rprops.AriaLabelledBy = props.AriaLabelledBy 431 432 rprops.ClassName = props.ClassName 433 434 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 435 436 if props.DataSet != nil { 437 for dk, dv := range props.DataSet { 438 rprops.o.Set("data-"+dk, dv) 439 } 440 } 441 if props.ID != "" { 442 rprops.ID = props.ID 443 } 444 if props.Key != "" { 445 rprops.Key = props.Key 446 } 447 if props.OnChange != nil { 448 rprops.o.Set("onChange", props.OnChange.OnChange) 449 } 450 if props.OnClick != nil { 451 rprops.o.Set("onClick", props.OnClick.OnClick) 452 } 453 if props.Ref != nil { 454 rprops.o.Set("ref", props.Ref.Ref) 455 } 456 rprops.Role = props.Role 457 458 // TODO: until we have a resolution on 459 // https://github.com/gopherjs/gopherjs/issues/236 460 rprops.Style = props.Style.hack() 461 } 462 463 return &BElem{ 464 Element: createElement("b", rprops, children...), 465 } 466 } 467 468 // BrElem is the React element definition corresponding to the HTML <br> element 469 type BrElem struct { 470 Element 471 } 472 473 func (a *BrElem) coreReactElement() {} 474 475 // BrProps defines the properties for the <br> element 476 type BrProps struct { 477 AriaExpanded bool 478 AriaHasPopup bool 479 AriaLabelledBy string 480 ClassName string 481 DangerouslySetInnerHTML *DangerousInnerHTML 482 DataSet DataSet 483 ID string 484 Key string 485 OnChange OnChange 486 OnClick OnClick 487 Ref Ref 488 Role string 489 Style *CSS 490 } 491 492 // Br creates a new instance of a <br> element with the provided props and 493 // children 494 func Br(props *BrProps, children ...Element) *BrElem { 495 type _BrProps struct { 496 o *js.Object 497 AriaExpanded bool `js:"aria-expanded"` 498 AriaHasPopup bool `js:"aria-haspopup"` 499 AriaLabelledBy string `js:"aria-labelledby"` 500 ClassName string `js:"className"` 501 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 502 ID string `js:"id" react:"omitempty"` 503 Key string `js:"key" react:"omitempty"` 504 OnChange OnChange `js:"onChange"` 505 OnClick OnClick `js:"onClick"` 506 Ref Ref `js:"ref"` 507 Role string `js:"role"` 508 Style *CSS `js:"style"` 509 } 510 511 rprops := &_BrProps{ 512 o: object.New(), 513 } 514 515 if props != nil { 516 rprops.AriaExpanded = props.AriaExpanded 517 518 rprops.AriaHasPopup = props.AriaHasPopup 519 520 rprops.AriaLabelledBy = props.AriaLabelledBy 521 522 rprops.ClassName = props.ClassName 523 524 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 525 526 if props.DataSet != nil { 527 for dk, dv := range props.DataSet { 528 rprops.o.Set("data-"+dk, dv) 529 } 530 } 531 if props.ID != "" { 532 rprops.ID = props.ID 533 } 534 if props.Key != "" { 535 rprops.Key = props.Key 536 } 537 if props.OnChange != nil { 538 rprops.o.Set("onChange", props.OnChange.OnChange) 539 } 540 if props.OnClick != nil { 541 rprops.o.Set("onClick", props.OnClick.OnClick) 542 } 543 if props.Ref != nil { 544 rprops.o.Set("ref", props.Ref.Ref) 545 } 546 rprops.Role = props.Role 547 548 // TODO: until we have a resolution on 549 // https://github.com/gopherjs/gopherjs/issues/236 550 rprops.Style = props.Style.hack() 551 } 552 553 return &BrElem{ 554 Element: createElement("br", rprops, children...), 555 } 556 } 557 558 // ButtonElem is the React element definition corresponding to the HTML <button> element 559 type ButtonElem struct { 560 Element 561 } 562 563 func (a *ButtonElem) coreReactElement() {} 564 565 // ButtonProps defines the properties for the <button> element 566 type ButtonProps struct { 567 AriaExpanded bool 568 AriaHasPopup bool 569 AriaLabelledBy string 570 ClassName string 571 DangerouslySetInnerHTML *DangerousInnerHTML 572 DataSet DataSet 573 ID string 574 Key string 575 OnChange OnChange 576 OnClick OnClick 577 Ref Ref 578 Role string 579 Style *CSS 580 Type string 581 } 582 583 // Button creates a new instance of a <button> element with the provided props and 584 // children 585 func Button(props *ButtonProps, children ...Element) *ButtonElem { 586 type _ButtonProps struct { 587 o *js.Object 588 AriaExpanded bool `js:"aria-expanded"` 589 AriaHasPopup bool `js:"aria-haspopup"` 590 AriaLabelledBy string `js:"aria-labelledby"` 591 ClassName string `js:"className"` 592 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 593 ID string `js:"id" react:"omitempty"` 594 Key string `js:"key" react:"omitempty"` 595 OnChange OnChange `js:"onChange"` 596 OnClick OnClick `js:"onClick"` 597 Ref Ref `js:"ref"` 598 Role string `js:"role"` 599 Style *CSS `js:"style"` 600 Type string `js:"type"` 601 } 602 603 rprops := &_ButtonProps{ 604 o: object.New(), 605 } 606 607 if props != nil { 608 rprops.AriaExpanded = props.AriaExpanded 609 610 rprops.AriaHasPopup = props.AriaHasPopup 611 612 rprops.AriaLabelledBy = props.AriaLabelledBy 613 614 rprops.ClassName = props.ClassName 615 616 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 617 618 if props.DataSet != nil { 619 for dk, dv := range props.DataSet { 620 rprops.o.Set("data-"+dk, dv) 621 } 622 } 623 if props.ID != "" { 624 rprops.ID = props.ID 625 } 626 if props.Key != "" { 627 rprops.Key = props.Key 628 } 629 if props.OnChange != nil { 630 rprops.o.Set("onChange", props.OnChange.OnChange) 631 } 632 if props.OnClick != nil { 633 rprops.o.Set("onClick", props.OnClick.OnClick) 634 } 635 if props.Ref != nil { 636 rprops.o.Set("ref", props.Ref.Ref) 637 } 638 rprops.Role = props.Role 639 640 // TODO: until we have a resolution on 641 // https://github.com/gopherjs/gopherjs/issues/236 642 rprops.Style = props.Style.hack() 643 rprops.Type = props.Type 644 } 645 646 return &ButtonElem{ 647 Element: createElement("button", rprops, children...), 648 } 649 } 650 651 // CaptionElem is the React element definition corresponding to the HTML <caption> element 652 type CaptionElem struct { 653 Element 654 } 655 656 func (a *CaptionElem) coreReactElement() {} 657 658 // CaptionProps defines the properties for the <caption> element 659 type CaptionProps struct { 660 AriaExpanded bool 661 AriaHasPopup bool 662 AriaLabelledBy string 663 ClassName string 664 DangerouslySetInnerHTML *DangerousInnerHTML 665 DataSet DataSet 666 ID string 667 Key string 668 OnChange OnChange 669 OnClick OnClick 670 Ref Ref 671 Role string 672 Style *CSS 673 } 674 675 // Caption creates a new instance of a <caption> element with the provided props and 676 // children 677 func Caption(props *CaptionProps, children ...Element) *CaptionElem { 678 type _CaptionProps struct { 679 o *js.Object 680 AriaExpanded bool `js:"aria-expanded"` 681 AriaHasPopup bool `js:"aria-haspopup"` 682 AriaLabelledBy string `js:"aria-labelledby"` 683 ClassName string `js:"className"` 684 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 685 ID string `js:"id" react:"omitempty"` 686 Key string `js:"key" react:"omitempty"` 687 OnChange OnChange `js:"onChange"` 688 OnClick OnClick `js:"onClick"` 689 Ref Ref `js:"ref"` 690 Role string `js:"role"` 691 Style *CSS `js:"style"` 692 } 693 694 rprops := &_CaptionProps{ 695 o: object.New(), 696 } 697 698 if props != nil { 699 rprops.AriaExpanded = props.AriaExpanded 700 701 rprops.AriaHasPopup = props.AriaHasPopup 702 703 rprops.AriaLabelledBy = props.AriaLabelledBy 704 705 rprops.ClassName = props.ClassName 706 707 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 708 709 if props.DataSet != nil { 710 for dk, dv := range props.DataSet { 711 rprops.o.Set("data-"+dk, dv) 712 } 713 } 714 if props.ID != "" { 715 rprops.ID = props.ID 716 } 717 if props.Key != "" { 718 rprops.Key = props.Key 719 } 720 if props.OnChange != nil { 721 rprops.o.Set("onChange", props.OnChange.OnChange) 722 } 723 if props.OnClick != nil { 724 rprops.o.Set("onClick", props.OnClick.OnClick) 725 } 726 if props.Ref != nil { 727 rprops.o.Set("ref", props.Ref.Ref) 728 } 729 rprops.Role = props.Role 730 731 // TODO: until we have a resolution on 732 // https://github.com/gopherjs/gopherjs/issues/236 733 rprops.Style = props.Style.hack() 734 } 735 736 return &CaptionElem{ 737 Element: createElement("caption", rprops, children...), 738 } 739 } 740 741 // CodeElem is the React element definition corresponding to the HTML <code> element 742 type CodeElem struct { 743 Element 744 } 745 746 func (a *CodeElem) coreReactElement() {} 747 748 // CodeProps defines the properties for the <code> element 749 type CodeProps struct { 750 AriaExpanded bool 751 AriaHasPopup bool 752 AriaLabelledBy string 753 ClassName string 754 DangerouslySetInnerHTML *DangerousInnerHTML 755 DataSet DataSet 756 ID string 757 Key string 758 OnChange OnChange 759 OnClick OnClick 760 Ref Ref 761 Role string 762 Style *CSS 763 } 764 765 // Code creates a new instance of a <code> element with the provided props and 766 // children 767 func Code(props *CodeProps, children ...Element) *CodeElem { 768 type _CodeProps struct { 769 o *js.Object 770 AriaExpanded bool `js:"aria-expanded"` 771 AriaHasPopup bool `js:"aria-haspopup"` 772 AriaLabelledBy string `js:"aria-labelledby"` 773 ClassName string `js:"className"` 774 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 775 ID string `js:"id" react:"omitempty"` 776 Key string `js:"key" react:"omitempty"` 777 OnChange OnChange `js:"onChange"` 778 OnClick OnClick `js:"onClick"` 779 Ref Ref `js:"ref"` 780 Role string `js:"role"` 781 Style *CSS `js:"style"` 782 } 783 784 rprops := &_CodeProps{ 785 o: object.New(), 786 } 787 788 if props != nil { 789 rprops.AriaExpanded = props.AriaExpanded 790 791 rprops.AriaHasPopup = props.AriaHasPopup 792 793 rprops.AriaLabelledBy = props.AriaLabelledBy 794 795 rprops.ClassName = props.ClassName 796 797 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 798 799 if props.DataSet != nil { 800 for dk, dv := range props.DataSet { 801 rprops.o.Set("data-"+dk, dv) 802 } 803 } 804 if props.ID != "" { 805 rprops.ID = props.ID 806 } 807 if props.Key != "" { 808 rprops.Key = props.Key 809 } 810 if props.OnChange != nil { 811 rprops.o.Set("onChange", props.OnChange.OnChange) 812 } 813 if props.OnClick != nil { 814 rprops.o.Set("onClick", props.OnClick.OnClick) 815 } 816 if props.Ref != nil { 817 rprops.o.Set("ref", props.Ref.Ref) 818 } 819 rprops.Role = props.Role 820 821 // TODO: until we have a resolution on 822 // https://github.com/gopherjs/gopherjs/issues/236 823 rprops.Style = props.Style.hack() 824 } 825 826 return &CodeElem{ 827 Element: createElement("code", rprops, children...), 828 } 829 } 830 831 // DivElem is the React element definition corresponding to the HTML <div> element 832 type DivElem struct { 833 Element 834 } 835 836 func (a *DivElem) coreReactElement() {} 837 838 // DivProps defines the properties for the <div> element 839 type DivProps struct { 840 AriaExpanded bool 841 AriaHasPopup bool 842 AriaLabelledBy string 843 ClassName string 844 DangerouslySetInnerHTML *DangerousInnerHTML 845 DataSet DataSet 846 ID string 847 Key string 848 OnChange OnChange 849 OnClick OnClick 850 Ref Ref 851 Role string 852 Style *CSS 853 } 854 855 // Div creates a new instance of a <div> element with the provided props and 856 // children 857 func Div(props *DivProps, children ...Element) *DivElem { 858 type _DivProps struct { 859 o *js.Object 860 AriaExpanded bool `js:"aria-expanded"` 861 AriaHasPopup bool `js:"aria-haspopup"` 862 AriaLabelledBy string `js:"aria-labelledby"` 863 ClassName string `js:"className"` 864 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 865 ID string `js:"id" react:"omitempty"` 866 Key string `js:"key" react:"omitempty"` 867 OnChange OnChange `js:"onChange"` 868 OnClick OnClick `js:"onClick"` 869 Ref Ref `js:"ref"` 870 Role string `js:"role"` 871 Style *CSS `js:"style"` 872 } 873 874 rprops := &_DivProps{ 875 o: object.New(), 876 } 877 878 if props != nil { 879 rprops.AriaExpanded = props.AriaExpanded 880 881 rprops.AriaHasPopup = props.AriaHasPopup 882 883 rprops.AriaLabelledBy = props.AriaLabelledBy 884 885 rprops.ClassName = props.ClassName 886 887 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 888 889 if props.DataSet != nil { 890 for dk, dv := range props.DataSet { 891 rprops.o.Set("data-"+dk, dv) 892 } 893 } 894 if props.ID != "" { 895 rprops.ID = props.ID 896 } 897 if props.Key != "" { 898 rprops.Key = props.Key 899 } 900 if props.OnChange != nil { 901 rprops.o.Set("onChange", props.OnChange.OnChange) 902 } 903 if props.OnClick != nil { 904 rprops.o.Set("onClick", props.OnClick.OnClick) 905 } 906 if props.Ref != nil { 907 rprops.o.Set("ref", props.Ref.Ref) 908 } 909 rprops.Role = props.Role 910 911 // TODO: until we have a resolution on 912 // https://github.com/gopherjs/gopherjs/issues/236 913 rprops.Style = props.Style.hack() 914 } 915 916 return &DivElem{ 917 Element: createElement("div", rprops, children...), 918 } 919 } 920 921 // EmElem is the React element definition corresponding to the HTML <em> element 922 type EmElem struct { 923 Element 924 } 925 926 func (a *EmElem) coreReactElement() {} 927 928 // EmProps defines the properties for the <em> element 929 type EmProps struct { 930 AriaExpanded bool 931 AriaHasPopup bool 932 AriaLabelledBy string 933 ClassName string 934 DangerouslySetInnerHTML *DangerousInnerHTML 935 DataSet DataSet 936 ID string 937 Key string 938 OnChange OnChange 939 OnClick OnClick 940 Ref Ref 941 Role string 942 Style *CSS 943 } 944 945 // Em creates a new instance of a <em> element with the provided props and 946 // children 947 func Em(props *EmProps, children ...Element) *EmElem { 948 type _EmProps struct { 949 o *js.Object 950 AriaExpanded bool `js:"aria-expanded"` 951 AriaHasPopup bool `js:"aria-haspopup"` 952 AriaLabelledBy string `js:"aria-labelledby"` 953 ClassName string `js:"className"` 954 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 955 ID string `js:"id" react:"omitempty"` 956 Key string `js:"key" react:"omitempty"` 957 OnChange OnChange `js:"onChange"` 958 OnClick OnClick `js:"onClick"` 959 Ref Ref `js:"ref"` 960 Role string `js:"role"` 961 Style *CSS `js:"style"` 962 } 963 964 rprops := &_EmProps{ 965 o: object.New(), 966 } 967 968 if props != nil { 969 rprops.AriaExpanded = props.AriaExpanded 970 971 rprops.AriaHasPopup = props.AriaHasPopup 972 973 rprops.AriaLabelledBy = props.AriaLabelledBy 974 975 rprops.ClassName = props.ClassName 976 977 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 978 979 if props.DataSet != nil { 980 for dk, dv := range props.DataSet { 981 rprops.o.Set("data-"+dk, dv) 982 } 983 } 984 if props.ID != "" { 985 rprops.ID = props.ID 986 } 987 if props.Key != "" { 988 rprops.Key = props.Key 989 } 990 if props.OnChange != nil { 991 rprops.o.Set("onChange", props.OnChange.OnChange) 992 } 993 if props.OnClick != nil { 994 rprops.o.Set("onClick", props.OnClick.OnClick) 995 } 996 if props.Ref != nil { 997 rprops.o.Set("ref", props.Ref.Ref) 998 } 999 rprops.Role = props.Role 1000 1001 // TODO: until we have a resolution on 1002 // https://github.com/gopherjs/gopherjs/issues/236 1003 rprops.Style = props.Style.hack() 1004 } 1005 1006 return &EmElem{ 1007 Element: createElement("em", rprops, children...), 1008 } 1009 } 1010 1011 // FooterElem is the React element definition corresponding to the HTML <footer> element 1012 type FooterElem struct { 1013 Element 1014 } 1015 1016 func (a *FooterElem) coreReactElement() {} 1017 1018 // FooterProps defines the properties for the <footer> element 1019 type FooterProps struct { 1020 AriaExpanded bool 1021 AriaHasPopup bool 1022 AriaLabelledBy string 1023 ClassName string 1024 DangerouslySetInnerHTML *DangerousInnerHTML 1025 DataSet DataSet 1026 ID string 1027 Key string 1028 OnChange OnChange 1029 OnClick OnClick 1030 Ref Ref 1031 Role string 1032 Style *CSS 1033 } 1034 1035 // Footer creates a new instance of a <footer> element with the provided props and 1036 // children 1037 func Footer(props *FooterProps, children ...Element) *FooterElem { 1038 type _FooterProps struct { 1039 o *js.Object 1040 AriaExpanded bool `js:"aria-expanded"` 1041 AriaHasPopup bool `js:"aria-haspopup"` 1042 AriaLabelledBy string `js:"aria-labelledby"` 1043 ClassName string `js:"className"` 1044 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1045 ID string `js:"id" react:"omitempty"` 1046 Key string `js:"key" react:"omitempty"` 1047 OnChange OnChange `js:"onChange"` 1048 OnClick OnClick `js:"onClick"` 1049 Ref Ref `js:"ref"` 1050 Role string `js:"role"` 1051 Style *CSS `js:"style"` 1052 } 1053 1054 rprops := &_FooterProps{ 1055 o: object.New(), 1056 } 1057 1058 if props != nil { 1059 rprops.AriaExpanded = props.AriaExpanded 1060 1061 rprops.AriaHasPopup = props.AriaHasPopup 1062 1063 rprops.AriaLabelledBy = props.AriaLabelledBy 1064 1065 rprops.ClassName = props.ClassName 1066 1067 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1068 1069 if props.DataSet != nil { 1070 for dk, dv := range props.DataSet { 1071 rprops.o.Set("data-"+dk, dv) 1072 } 1073 } 1074 if props.ID != "" { 1075 rprops.ID = props.ID 1076 } 1077 if props.Key != "" { 1078 rprops.Key = props.Key 1079 } 1080 if props.OnChange != nil { 1081 rprops.o.Set("onChange", props.OnChange.OnChange) 1082 } 1083 if props.OnClick != nil { 1084 rprops.o.Set("onClick", props.OnClick.OnClick) 1085 } 1086 if props.Ref != nil { 1087 rprops.o.Set("ref", props.Ref.Ref) 1088 } 1089 rprops.Role = props.Role 1090 1091 // TODO: until we have a resolution on 1092 // https://github.com/gopherjs/gopherjs/issues/236 1093 rprops.Style = props.Style.hack() 1094 } 1095 1096 return &FooterElem{ 1097 Element: createElement("footer", rprops, children...), 1098 } 1099 } 1100 1101 // FormElem is the React element definition corresponding to the HTML <form> element 1102 type FormElem struct { 1103 Element 1104 } 1105 1106 func (a *FormElem) coreReactElement() {} 1107 1108 // FormProps defines the properties for the <form> element 1109 type FormProps struct { 1110 AriaExpanded bool 1111 AriaHasPopup bool 1112 AriaLabelledBy string 1113 ClassName string 1114 DangerouslySetInnerHTML *DangerousInnerHTML 1115 DataSet DataSet 1116 ID string 1117 Key string 1118 OnChange OnChange 1119 OnClick OnClick 1120 Ref Ref 1121 Role string 1122 Style *CSS 1123 } 1124 1125 // Form creates a new instance of a <form> element with the provided props and 1126 // children 1127 func Form(props *FormProps, children ...Element) *FormElem { 1128 type _FormProps struct { 1129 o *js.Object 1130 AriaExpanded bool `js:"aria-expanded"` 1131 AriaHasPopup bool `js:"aria-haspopup"` 1132 AriaLabelledBy string `js:"aria-labelledby"` 1133 ClassName string `js:"className"` 1134 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1135 ID string `js:"id" react:"omitempty"` 1136 Key string `js:"key" react:"omitempty"` 1137 OnChange OnChange `js:"onChange"` 1138 OnClick OnClick `js:"onClick"` 1139 Ref Ref `js:"ref"` 1140 Role string `js:"role"` 1141 Style *CSS `js:"style"` 1142 } 1143 1144 rprops := &_FormProps{ 1145 o: object.New(), 1146 } 1147 1148 if props != nil { 1149 rprops.AriaExpanded = props.AriaExpanded 1150 1151 rprops.AriaHasPopup = props.AriaHasPopup 1152 1153 rprops.AriaLabelledBy = props.AriaLabelledBy 1154 1155 rprops.ClassName = props.ClassName 1156 1157 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1158 1159 if props.DataSet != nil { 1160 for dk, dv := range props.DataSet { 1161 rprops.o.Set("data-"+dk, dv) 1162 } 1163 } 1164 if props.ID != "" { 1165 rprops.ID = props.ID 1166 } 1167 if props.Key != "" { 1168 rprops.Key = props.Key 1169 } 1170 if props.OnChange != nil { 1171 rprops.o.Set("onChange", props.OnChange.OnChange) 1172 } 1173 if props.OnClick != nil { 1174 rprops.o.Set("onClick", props.OnClick.OnClick) 1175 } 1176 if props.Ref != nil { 1177 rprops.o.Set("ref", props.Ref.Ref) 1178 } 1179 rprops.Role = props.Role 1180 1181 // TODO: until we have a resolution on 1182 // https://github.com/gopherjs/gopherjs/issues/236 1183 rprops.Style = props.Style.hack() 1184 } 1185 1186 return &FormElem{ 1187 Element: createElement("form", rprops, children...), 1188 } 1189 } 1190 1191 // H1Elem is the React element definition corresponding to the HTML <h1> element 1192 type H1Elem struct { 1193 Element 1194 } 1195 1196 func (a *H1Elem) coreReactElement() {} 1197 1198 // H1Props defines the properties for the <h1> element 1199 type H1Props struct { 1200 AriaExpanded bool 1201 AriaHasPopup bool 1202 AriaLabelledBy string 1203 ClassName string 1204 DangerouslySetInnerHTML *DangerousInnerHTML 1205 DataSet DataSet 1206 ID string 1207 Key string 1208 OnChange OnChange 1209 OnClick OnClick 1210 Ref Ref 1211 Role string 1212 Style *CSS 1213 } 1214 1215 // H1 creates a new instance of a <h1> element with the provided props and 1216 // children 1217 func H1(props *H1Props, children ...Element) *H1Elem { 1218 type _H1Props struct { 1219 o *js.Object 1220 AriaExpanded bool `js:"aria-expanded"` 1221 AriaHasPopup bool `js:"aria-haspopup"` 1222 AriaLabelledBy string `js:"aria-labelledby"` 1223 ClassName string `js:"className"` 1224 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1225 ID string `js:"id" react:"omitempty"` 1226 Key string `js:"key" react:"omitempty"` 1227 OnChange OnChange `js:"onChange"` 1228 OnClick OnClick `js:"onClick"` 1229 Ref Ref `js:"ref"` 1230 Role string `js:"role"` 1231 Style *CSS `js:"style"` 1232 } 1233 1234 rprops := &_H1Props{ 1235 o: object.New(), 1236 } 1237 1238 if props != nil { 1239 rprops.AriaExpanded = props.AriaExpanded 1240 1241 rprops.AriaHasPopup = props.AriaHasPopup 1242 1243 rprops.AriaLabelledBy = props.AriaLabelledBy 1244 1245 rprops.ClassName = props.ClassName 1246 1247 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1248 1249 if props.DataSet != nil { 1250 for dk, dv := range props.DataSet { 1251 rprops.o.Set("data-"+dk, dv) 1252 } 1253 } 1254 if props.ID != "" { 1255 rprops.ID = props.ID 1256 } 1257 if props.Key != "" { 1258 rprops.Key = props.Key 1259 } 1260 if props.OnChange != nil { 1261 rprops.o.Set("onChange", props.OnChange.OnChange) 1262 } 1263 if props.OnClick != nil { 1264 rprops.o.Set("onClick", props.OnClick.OnClick) 1265 } 1266 if props.Ref != nil { 1267 rprops.o.Set("ref", props.Ref.Ref) 1268 } 1269 rprops.Role = props.Role 1270 1271 // TODO: until we have a resolution on 1272 // https://github.com/gopherjs/gopherjs/issues/236 1273 rprops.Style = props.Style.hack() 1274 } 1275 1276 return &H1Elem{ 1277 Element: createElement("h1", rprops, children...), 1278 } 1279 } 1280 1281 // H2Elem is the React element definition corresponding to the HTML <h2> element 1282 type H2Elem struct { 1283 Element 1284 } 1285 1286 func (a *H2Elem) coreReactElement() {} 1287 1288 // H2Props defines the properties for the <h2> element 1289 type H2Props struct { 1290 AriaExpanded bool 1291 AriaHasPopup bool 1292 AriaLabelledBy string 1293 ClassName string 1294 DangerouslySetInnerHTML *DangerousInnerHTML 1295 DataSet DataSet 1296 ID string 1297 Key string 1298 OnChange OnChange 1299 OnClick OnClick 1300 Ref Ref 1301 Role string 1302 Style *CSS 1303 } 1304 1305 // H2 creates a new instance of a <h2> element with the provided props and 1306 // children 1307 func H2(props *H2Props, children ...Element) *H2Elem { 1308 type _H2Props struct { 1309 o *js.Object 1310 AriaExpanded bool `js:"aria-expanded"` 1311 AriaHasPopup bool `js:"aria-haspopup"` 1312 AriaLabelledBy string `js:"aria-labelledby"` 1313 ClassName string `js:"className"` 1314 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1315 ID string `js:"id" react:"omitempty"` 1316 Key string `js:"key" react:"omitempty"` 1317 OnChange OnChange `js:"onChange"` 1318 OnClick OnClick `js:"onClick"` 1319 Ref Ref `js:"ref"` 1320 Role string `js:"role"` 1321 Style *CSS `js:"style"` 1322 } 1323 1324 rprops := &_H2Props{ 1325 o: object.New(), 1326 } 1327 1328 if props != nil { 1329 rprops.AriaExpanded = props.AriaExpanded 1330 1331 rprops.AriaHasPopup = props.AriaHasPopup 1332 1333 rprops.AriaLabelledBy = props.AriaLabelledBy 1334 1335 rprops.ClassName = props.ClassName 1336 1337 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1338 1339 if props.DataSet != nil { 1340 for dk, dv := range props.DataSet { 1341 rprops.o.Set("data-"+dk, dv) 1342 } 1343 } 1344 if props.ID != "" { 1345 rprops.ID = props.ID 1346 } 1347 if props.Key != "" { 1348 rprops.Key = props.Key 1349 } 1350 if props.OnChange != nil { 1351 rprops.o.Set("onChange", props.OnChange.OnChange) 1352 } 1353 if props.OnClick != nil { 1354 rprops.o.Set("onClick", props.OnClick.OnClick) 1355 } 1356 if props.Ref != nil { 1357 rprops.o.Set("ref", props.Ref.Ref) 1358 } 1359 rprops.Role = props.Role 1360 1361 // TODO: until we have a resolution on 1362 // https://github.com/gopherjs/gopherjs/issues/236 1363 rprops.Style = props.Style.hack() 1364 } 1365 1366 return &H2Elem{ 1367 Element: createElement("h2", rprops, children...), 1368 } 1369 } 1370 1371 // H3Elem is the React element definition corresponding to the HTML <h3> element 1372 type H3Elem struct { 1373 Element 1374 } 1375 1376 func (a *H3Elem) coreReactElement() {} 1377 1378 // H3Props defines the properties for the <h3> element 1379 type H3Props struct { 1380 AriaExpanded bool 1381 AriaHasPopup bool 1382 AriaLabelledBy string 1383 ClassName string 1384 DangerouslySetInnerHTML *DangerousInnerHTML 1385 DataSet DataSet 1386 ID string 1387 Key string 1388 OnChange OnChange 1389 OnClick OnClick 1390 Ref Ref 1391 Role string 1392 Style *CSS 1393 } 1394 1395 // H3 creates a new instance of a <h3> element with the provided props and 1396 // children 1397 func H3(props *H3Props, children ...Element) *H3Elem { 1398 type _H3Props struct { 1399 o *js.Object 1400 AriaExpanded bool `js:"aria-expanded"` 1401 AriaHasPopup bool `js:"aria-haspopup"` 1402 AriaLabelledBy string `js:"aria-labelledby"` 1403 ClassName string `js:"className"` 1404 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1405 ID string `js:"id" react:"omitempty"` 1406 Key string `js:"key" react:"omitempty"` 1407 OnChange OnChange `js:"onChange"` 1408 OnClick OnClick `js:"onClick"` 1409 Ref Ref `js:"ref"` 1410 Role string `js:"role"` 1411 Style *CSS `js:"style"` 1412 } 1413 1414 rprops := &_H3Props{ 1415 o: object.New(), 1416 } 1417 1418 if props != nil { 1419 rprops.AriaExpanded = props.AriaExpanded 1420 1421 rprops.AriaHasPopup = props.AriaHasPopup 1422 1423 rprops.AriaLabelledBy = props.AriaLabelledBy 1424 1425 rprops.ClassName = props.ClassName 1426 1427 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1428 1429 if props.DataSet != nil { 1430 for dk, dv := range props.DataSet { 1431 rprops.o.Set("data-"+dk, dv) 1432 } 1433 } 1434 if props.ID != "" { 1435 rprops.ID = props.ID 1436 } 1437 if props.Key != "" { 1438 rprops.Key = props.Key 1439 } 1440 if props.OnChange != nil { 1441 rprops.o.Set("onChange", props.OnChange.OnChange) 1442 } 1443 if props.OnClick != nil { 1444 rprops.o.Set("onClick", props.OnClick.OnClick) 1445 } 1446 if props.Ref != nil { 1447 rprops.o.Set("ref", props.Ref.Ref) 1448 } 1449 rprops.Role = props.Role 1450 1451 // TODO: until we have a resolution on 1452 // https://github.com/gopherjs/gopherjs/issues/236 1453 rprops.Style = props.Style.hack() 1454 } 1455 1456 return &H3Elem{ 1457 Element: createElement("h3", rprops, children...), 1458 } 1459 } 1460 1461 // H4Elem is the React element definition corresponding to the HTML <h4> element 1462 type H4Elem struct { 1463 Element 1464 } 1465 1466 func (a *H4Elem) coreReactElement() {} 1467 1468 // H4Props defines the properties for the <h4> element 1469 type H4Props struct { 1470 AriaExpanded bool 1471 AriaHasPopup bool 1472 AriaLabelledBy string 1473 ClassName string 1474 DangerouslySetInnerHTML *DangerousInnerHTML 1475 DataSet DataSet 1476 ID string 1477 Key string 1478 OnChange OnChange 1479 OnClick OnClick 1480 Ref Ref 1481 Role string 1482 Style *CSS 1483 } 1484 1485 // H4 creates a new instance of a <h4> element with the provided props and 1486 // children 1487 func H4(props *H4Props, children ...Element) *H4Elem { 1488 type _H4Props struct { 1489 o *js.Object 1490 AriaExpanded bool `js:"aria-expanded"` 1491 AriaHasPopup bool `js:"aria-haspopup"` 1492 AriaLabelledBy string `js:"aria-labelledby"` 1493 ClassName string `js:"className"` 1494 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1495 ID string `js:"id" react:"omitempty"` 1496 Key string `js:"key" react:"omitempty"` 1497 OnChange OnChange `js:"onChange"` 1498 OnClick OnClick `js:"onClick"` 1499 Ref Ref `js:"ref"` 1500 Role string `js:"role"` 1501 Style *CSS `js:"style"` 1502 } 1503 1504 rprops := &_H4Props{ 1505 o: object.New(), 1506 } 1507 1508 if props != nil { 1509 rprops.AriaExpanded = props.AriaExpanded 1510 1511 rprops.AriaHasPopup = props.AriaHasPopup 1512 1513 rprops.AriaLabelledBy = props.AriaLabelledBy 1514 1515 rprops.ClassName = props.ClassName 1516 1517 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1518 1519 if props.DataSet != nil { 1520 for dk, dv := range props.DataSet { 1521 rprops.o.Set("data-"+dk, dv) 1522 } 1523 } 1524 if props.ID != "" { 1525 rprops.ID = props.ID 1526 } 1527 if props.Key != "" { 1528 rprops.Key = props.Key 1529 } 1530 if props.OnChange != nil { 1531 rprops.o.Set("onChange", props.OnChange.OnChange) 1532 } 1533 if props.OnClick != nil { 1534 rprops.o.Set("onClick", props.OnClick.OnClick) 1535 } 1536 if props.Ref != nil { 1537 rprops.o.Set("ref", props.Ref.Ref) 1538 } 1539 rprops.Role = props.Role 1540 1541 // TODO: until we have a resolution on 1542 // https://github.com/gopherjs/gopherjs/issues/236 1543 rprops.Style = props.Style.hack() 1544 } 1545 1546 return &H4Elem{ 1547 Element: createElement("h4", rprops, children...), 1548 } 1549 } 1550 1551 // H5Elem is the React element definition corresponding to the HTML <h5> element 1552 type H5Elem struct { 1553 Element 1554 } 1555 1556 func (a *H5Elem) coreReactElement() {} 1557 1558 // H5Props defines the properties for the <h5> element 1559 type H5Props struct { 1560 AriaExpanded bool 1561 AriaHasPopup bool 1562 AriaLabelledBy string 1563 ClassName string 1564 DangerouslySetInnerHTML *DangerousInnerHTML 1565 DataSet DataSet 1566 ID string 1567 Key string 1568 OnChange OnChange 1569 OnClick OnClick 1570 Ref Ref 1571 Role string 1572 Style *CSS 1573 } 1574 1575 // H5 creates a new instance of a <h5> element with the provided props and 1576 // children 1577 func H5(props *H5Props, children ...Element) *H5Elem { 1578 type _H5Props struct { 1579 o *js.Object 1580 AriaExpanded bool `js:"aria-expanded"` 1581 AriaHasPopup bool `js:"aria-haspopup"` 1582 AriaLabelledBy string `js:"aria-labelledby"` 1583 ClassName string `js:"className"` 1584 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1585 ID string `js:"id" react:"omitempty"` 1586 Key string `js:"key" react:"omitempty"` 1587 OnChange OnChange `js:"onChange"` 1588 OnClick OnClick `js:"onClick"` 1589 Ref Ref `js:"ref"` 1590 Role string `js:"role"` 1591 Style *CSS `js:"style"` 1592 } 1593 1594 rprops := &_H5Props{ 1595 o: object.New(), 1596 } 1597 1598 if props != nil { 1599 rprops.AriaExpanded = props.AriaExpanded 1600 1601 rprops.AriaHasPopup = props.AriaHasPopup 1602 1603 rprops.AriaLabelledBy = props.AriaLabelledBy 1604 1605 rprops.ClassName = props.ClassName 1606 1607 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1608 1609 if props.DataSet != nil { 1610 for dk, dv := range props.DataSet { 1611 rprops.o.Set("data-"+dk, dv) 1612 } 1613 } 1614 if props.ID != "" { 1615 rprops.ID = props.ID 1616 } 1617 if props.Key != "" { 1618 rprops.Key = props.Key 1619 } 1620 if props.OnChange != nil { 1621 rprops.o.Set("onChange", props.OnChange.OnChange) 1622 } 1623 if props.OnClick != nil { 1624 rprops.o.Set("onClick", props.OnClick.OnClick) 1625 } 1626 if props.Ref != nil { 1627 rprops.o.Set("ref", props.Ref.Ref) 1628 } 1629 rprops.Role = props.Role 1630 1631 // TODO: until we have a resolution on 1632 // https://github.com/gopherjs/gopherjs/issues/236 1633 rprops.Style = props.Style.hack() 1634 } 1635 1636 return &H5Elem{ 1637 Element: createElement("h5", rprops, children...), 1638 } 1639 } 1640 1641 // H6Elem is the React element definition corresponding to the HTML <h6> element 1642 type H6Elem struct { 1643 Element 1644 } 1645 1646 func (a *H6Elem) coreReactElement() {} 1647 1648 // H6Props defines the properties for the <h6> element 1649 type H6Props struct { 1650 AriaExpanded bool 1651 AriaHasPopup bool 1652 AriaLabelledBy string 1653 ClassName string 1654 DangerouslySetInnerHTML *DangerousInnerHTML 1655 DataSet DataSet 1656 ID string 1657 Key string 1658 OnChange OnChange 1659 OnClick OnClick 1660 Ref Ref 1661 Role string 1662 Style *CSS 1663 } 1664 1665 // H6 creates a new instance of a <h6> element with the provided props and 1666 // children 1667 func H6(props *H6Props, children ...Element) *H6Elem { 1668 type _H6Props struct { 1669 o *js.Object 1670 AriaExpanded bool `js:"aria-expanded"` 1671 AriaHasPopup bool `js:"aria-haspopup"` 1672 AriaLabelledBy string `js:"aria-labelledby"` 1673 ClassName string `js:"className"` 1674 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1675 ID string `js:"id" react:"omitempty"` 1676 Key string `js:"key" react:"omitempty"` 1677 OnChange OnChange `js:"onChange"` 1678 OnClick OnClick `js:"onClick"` 1679 Ref Ref `js:"ref"` 1680 Role string `js:"role"` 1681 Style *CSS `js:"style"` 1682 } 1683 1684 rprops := &_H6Props{ 1685 o: object.New(), 1686 } 1687 1688 if props != nil { 1689 rprops.AriaExpanded = props.AriaExpanded 1690 1691 rprops.AriaHasPopup = props.AriaHasPopup 1692 1693 rprops.AriaLabelledBy = props.AriaLabelledBy 1694 1695 rprops.ClassName = props.ClassName 1696 1697 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1698 1699 if props.DataSet != nil { 1700 for dk, dv := range props.DataSet { 1701 rprops.o.Set("data-"+dk, dv) 1702 } 1703 } 1704 if props.ID != "" { 1705 rprops.ID = props.ID 1706 } 1707 if props.Key != "" { 1708 rprops.Key = props.Key 1709 } 1710 if props.OnChange != nil { 1711 rprops.o.Set("onChange", props.OnChange.OnChange) 1712 } 1713 if props.OnClick != nil { 1714 rprops.o.Set("onClick", props.OnClick.OnClick) 1715 } 1716 if props.Ref != nil { 1717 rprops.o.Set("ref", props.Ref.Ref) 1718 } 1719 rprops.Role = props.Role 1720 1721 // TODO: until we have a resolution on 1722 // https://github.com/gopherjs/gopherjs/issues/236 1723 rprops.Style = props.Style.hack() 1724 } 1725 1726 return &H6Elem{ 1727 Element: createElement("h6", rprops, children...), 1728 } 1729 } 1730 1731 // HeaderElem is the React element definition corresponding to the HTML <header> element 1732 type HeaderElem struct { 1733 Element 1734 } 1735 1736 func (a *HeaderElem) coreReactElement() {} 1737 1738 // HeaderProps defines the properties for the <header> element 1739 type HeaderProps struct { 1740 AriaExpanded bool 1741 AriaHasPopup bool 1742 AriaLabelledBy string 1743 ClassName string 1744 DangerouslySetInnerHTML *DangerousInnerHTML 1745 DataSet DataSet 1746 ID string 1747 Key string 1748 OnChange OnChange 1749 OnClick OnClick 1750 Ref Ref 1751 Role string 1752 Style *CSS 1753 } 1754 1755 // Header creates a new instance of a <header> element with the provided props and 1756 // children 1757 func Header(props *HeaderProps, children ...Element) *HeaderElem { 1758 type _HeaderProps struct { 1759 o *js.Object 1760 AriaExpanded bool `js:"aria-expanded"` 1761 AriaHasPopup bool `js:"aria-haspopup"` 1762 AriaLabelledBy string `js:"aria-labelledby"` 1763 ClassName string `js:"className"` 1764 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1765 ID string `js:"id" react:"omitempty"` 1766 Key string `js:"key" react:"omitempty"` 1767 OnChange OnChange `js:"onChange"` 1768 OnClick OnClick `js:"onClick"` 1769 Ref Ref `js:"ref"` 1770 Role string `js:"role"` 1771 Style *CSS `js:"style"` 1772 } 1773 1774 rprops := &_HeaderProps{ 1775 o: object.New(), 1776 } 1777 1778 if props != nil { 1779 rprops.AriaExpanded = props.AriaExpanded 1780 1781 rprops.AriaHasPopup = props.AriaHasPopup 1782 1783 rprops.AriaLabelledBy = props.AriaLabelledBy 1784 1785 rprops.ClassName = props.ClassName 1786 1787 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1788 1789 if props.DataSet != nil { 1790 for dk, dv := range props.DataSet { 1791 rprops.o.Set("data-"+dk, dv) 1792 } 1793 } 1794 if props.ID != "" { 1795 rprops.ID = props.ID 1796 } 1797 if props.Key != "" { 1798 rprops.Key = props.Key 1799 } 1800 if props.OnChange != nil { 1801 rprops.o.Set("onChange", props.OnChange.OnChange) 1802 } 1803 if props.OnClick != nil { 1804 rprops.o.Set("onClick", props.OnClick.OnClick) 1805 } 1806 if props.Ref != nil { 1807 rprops.o.Set("ref", props.Ref.Ref) 1808 } 1809 rprops.Role = props.Role 1810 1811 // TODO: until we have a resolution on 1812 // https://github.com/gopherjs/gopherjs/issues/236 1813 rprops.Style = props.Style.hack() 1814 } 1815 1816 return &HeaderElem{ 1817 Element: createElement("header", rprops, children...), 1818 } 1819 } 1820 1821 // HrElem is the React element definition corresponding to the HTML <hr> element 1822 type HrElem struct { 1823 Element 1824 } 1825 1826 func (a *HrElem) coreReactElement() {} 1827 1828 // HrProps defines the properties for the <hr> element 1829 type HrProps struct { 1830 AriaExpanded bool 1831 AriaHasPopup bool 1832 AriaLabelledBy string 1833 ClassName string 1834 DangerouslySetInnerHTML *DangerousInnerHTML 1835 DataSet DataSet 1836 ID string 1837 Key string 1838 OnChange OnChange 1839 OnClick OnClick 1840 Ref Ref 1841 Role string 1842 Style *CSS 1843 } 1844 1845 // Hr creates a new instance of a <hr> element with the provided props and 1846 // children 1847 func Hr(props *HrProps) *HrElem { 1848 type _HrProps struct { 1849 o *js.Object 1850 AriaExpanded bool `js:"aria-expanded"` 1851 AriaHasPopup bool `js:"aria-haspopup"` 1852 AriaLabelledBy string `js:"aria-labelledby"` 1853 ClassName string `js:"className"` 1854 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1855 ID string `js:"id" react:"omitempty"` 1856 Key string `js:"key" react:"omitempty"` 1857 OnChange OnChange `js:"onChange"` 1858 OnClick OnClick `js:"onClick"` 1859 Ref Ref `js:"ref"` 1860 Role string `js:"role"` 1861 Style *CSS `js:"style"` 1862 } 1863 1864 rprops := &_HrProps{ 1865 o: object.New(), 1866 } 1867 1868 if props != nil { 1869 rprops.AriaExpanded = props.AriaExpanded 1870 1871 rprops.AriaHasPopup = props.AriaHasPopup 1872 1873 rprops.AriaLabelledBy = props.AriaLabelledBy 1874 1875 rprops.ClassName = props.ClassName 1876 1877 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1878 1879 if props.DataSet != nil { 1880 for dk, dv := range props.DataSet { 1881 rprops.o.Set("data-"+dk, dv) 1882 } 1883 } 1884 if props.ID != "" { 1885 rprops.ID = props.ID 1886 } 1887 if props.Key != "" { 1888 rprops.Key = props.Key 1889 } 1890 if props.OnChange != nil { 1891 rprops.o.Set("onChange", props.OnChange.OnChange) 1892 } 1893 if props.OnClick != nil { 1894 rprops.o.Set("onClick", props.OnClick.OnClick) 1895 } 1896 if props.Ref != nil { 1897 rprops.o.Set("ref", props.Ref.Ref) 1898 } 1899 rprops.Role = props.Role 1900 1901 // TODO: until we have a resolution on 1902 // https://github.com/gopherjs/gopherjs/issues/236 1903 rprops.Style = props.Style.hack() 1904 } 1905 1906 return &HrElem{ 1907 Element: createElement("hr", rprops), 1908 } 1909 } 1910 1911 // IElem is the React element definition corresponding to the HTML <i> element 1912 type IElem struct { 1913 Element 1914 } 1915 1916 func (a *IElem) coreReactElement() {} 1917 1918 // IProps defines the properties for the <i> element 1919 type IProps struct { 1920 AriaExpanded bool 1921 AriaHasPopup bool 1922 AriaLabelledBy string 1923 ClassName string 1924 DangerouslySetInnerHTML *DangerousInnerHTML 1925 DataSet DataSet 1926 ID string 1927 Key string 1928 OnChange OnChange 1929 OnClick OnClick 1930 Ref Ref 1931 Role string 1932 Style *CSS 1933 } 1934 1935 // I creates a new instance of a <i> element with the provided props and 1936 // children 1937 func I(props *IProps, children ...Element) *IElem { 1938 type _IProps struct { 1939 o *js.Object 1940 AriaExpanded bool `js:"aria-expanded"` 1941 AriaHasPopup bool `js:"aria-haspopup"` 1942 AriaLabelledBy string `js:"aria-labelledby"` 1943 ClassName string `js:"className"` 1944 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 1945 ID string `js:"id" react:"omitempty"` 1946 Key string `js:"key" react:"omitempty"` 1947 OnChange OnChange `js:"onChange"` 1948 OnClick OnClick `js:"onClick"` 1949 Ref Ref `js:"ref"` 1950 Role string `js:"role"` 1951 Style *CSS `js:"style"` 1952 } 1953 1954 rprops := &_IProps{ 1955 o: object.New(), 1956 } 1957 1958 if props != nil { 1959 rprops.AriaExpanded = props.AriaExpanded 1960 1961 rprops.AriaHasPopup = props.AriaHasPopup 1962 1963 rprops.AriaLabelledBy = props.AriaLabelledBy 1964 1965 rprops.ClassName = props.ClassName 1966 1967 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 1968 1969 if props.DataSet != nil { 1970 for dk, dv := range props.DataSet { 1971 rprops.o.Set("data-"+dk, dv) 1972 } 1973 } 1974 if props.ID != "" { 1975 rprops.ID = props.ID 1976 } 1977 if props.Key != "" { 1978 rprops.Key = props.Key 1979 } 1980 if props.OnChange != nil { 1981 rprops.o.Set("onChange", props.OnChange.OnChange) 1982 } 1983 if props.OnClick != nil { 1984 rprops.o.Set("onClick", props.OnClick.OnClick) 1985 } 1986 if props.Ref != nil { 1987 rprops.o.Set("ref", props.Ref.Ref) 1988 } 1989 rprops.Role = props.Role 1990 1991 // TODO: until we have a resolution on 1992 // https://github.com/gopherjs/gopherjs/issues/236 1993 rprops.Style = props.Style.hack() 1994 } 1995 1996 return &IElem{ 1997 Element: createElement("i", rprops, children...), 1998 } 1999 } 2000 2001 // IFrameElem is the React element definition corresponding to the HTML <iframe> element 2002 type IFrameElem struct { 2003 Element 2004 } 2005 2006 func (a *IFrameElem) coreReactElement() {} 2007 2008 // IFrameProps defines the properties for the <iframe> element 2009 type IFrameProps struct { 2010 AriaExpanded bool 2011 AriaHasPopup bool 2012 AriaLabelledBy string 2013 ClassName string 2014 DangerouslySetInnerHTML *DangerousInnerHTML 2015 DataSet DataSet 2016 ID string 2017 Key string 2018 OnChange OnChange 2019 OnClick OnClick 2020 Ref Ref 2021 Role string 2022 SrcDoc string 2023 Style *CSS 2024 } 2025 2026 // IFrame creates a new instance of a <iframe> element with the provided props and 2027 // children 2028 func IFrame(props *IFrameProps, children ...Element) *IFrameElem { 2029 type _IFrameProps struct { 2030 o *js.Object 2031 AriaExpanded bool `js:"aria-expanded"` 2032 AriaHasPopup bool `js:"aria-haspopup"` 2033 AriaLabelledBy string `js:"aria-labelledby"` 2034 ClassName string `js:"className"` 2035 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2036 ID string `js:"id" react:"omitempty"` 2037 Key string `js:"key" react:"omitempty"` 2038 OnChange OnChange `js:"onChange"` 2039 OnClick OnClick `js:"onClick"` 2040 Ref Ref `js:"ref"` 2041 Role string `js:"role"` 2042 SrcDoc string `js:"srcDoc"` 2043 Style *CSS `js:"style"` 2044 } 2045 2046 rprops := &_IFrameProps{ 2047 o: object.New(), 2048 } 2049 2050 if props != nil { 2051 rprops.AriaExpanded = props.AriaExpanded 2052 2053 rprops.AriaHasPopup = props.AriaHasPopup 2054 2055 rprops.AriaLabelledBy = props.AriaLabelledBy 2056 2057 rprops.ClassName = props.ClassName 2058 2059 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2060 2061 if props.DataSet != nil { 2062 for dk, dv := range props.DataSet { 2063 rprops.o.Set("data-"+dk, dv) 2064 } 2065 } 2066 if props.ID != "" { 2067 rprops.ID = props.ID 2068 } 2069 if props.Key != "" { 2070 rprops.Key = props.Key 2071 } 2072 if props.OnChange != nil { 2073 rprops.o.Set("onChange", props.OnChange.OnChange) 2074 } 2075 if props.OnClick != nil { 2076 rprops.o.Set("onClick", props.OnClick.OnClick) 2077 } 2078 if props.Ref != nil { 2079 rprops.o.Set("ref", props.Ref.Ref) 2080 } 2081 rprops.Role = props.Role 2082 2083 rprops.SrcDoc = props.SrcDoc 2084 2085 // TODO: until we have a resolution on 2086 // https://github.com/gopherjs/gopherjs/issues/236 2087 rprops.Style = props.Style.hack() 2088 } 2089 2090 return &IFrameElem{ 2091 Element: createElement("iframe", rprops, children...), 2092 } 2093 } 2094 2095 // ImgElem is the React element definition corresponding to the HTML <img> element 2096 type ImgElem struct { 2097 Element 2098 } 2099 2100 func (a *ImgElem) coreReactElement() {} 2101 2102 // ImgProps defines the properties for the <img> element 2103 type ImgProps struct { 2104 Alt string 2105 AriaExpanded bool 2106 AriaHasPopup bool 2107 AriaLabelledBy string 2108 ClassName string 2109 DangerouslySetInnerHTML *DangerousInnerHTML 2110 DataSet DataSet 2111 ID string 2112 Key string 2113 OnChange OnChange 2114 OnClick OnClick 2115 Ref Ref 2116 Role string 2117 Src string 2118 Style *CSS 2119 } 2120 2121 // Img creates a new instance of a <img> element with the provided props and 2122 // children 2123 func Img(props *ImgProps, children ...Element) *ImgElem { 2124 type _ImgProps struct { 2125 o *js.Object 2126 Alt string `js:"alt"` 2127 AriaExpanded bool `js:"aria-expanded"` 2128 AriaHasPopup bool `js:"aria-haspopup"` 2129 AriaLabelledBy string `js:"aria-labelledby"` 2130 ClassName string `js:"className"` 2131 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2132 ID string `js:"id" react:"omitempty"` 2133 Key string `js:"key" react:"omitempty"` 2134 OnChange OnChange `js:"onChange"` 2135 OnClick OnClick `js:"onClick"` 2136 Ref Ref `js:"ref"` 2137 Role string `js:"role"` 2138 Src string `js:"src"` 2139 Style *CSS `js:"style"` 2140 } 2141 2142 rprops := &_ImgProps{ 2143 o: object.New(), 2144 } 2145 2146 if props != nil { 2147 rprops.Alt = props.Alt 2148 2149 rprops.AriaExpanded = props.AriaExpanded 2150 2151 rprops.AriaHasPopup = props.AriaHasPopup 2152 2153 rprops.AriaLabelledBy = props.AriaLabelledBy 2154 2155 rprops.ClassName = props.ClassName 2156 2157 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2158 2159 if props.DataSet != nil { 2160 for dk, dv := range props.DataSet { 2161 rprops.o.Set("data-"+dk, dv) 2162 } 2163 } 2164 if props.ID != "" { 2165 rprops.ID = props.ID 2166 } 2167 if props.Key != "" { 2168 rprops.Key = props.Key 2169 } 2170 if props.OnChange != nil { 2171 rprops.o.Set("onChange", props.OnChange.OnChange) 2172 } 2173 if props.OnClick != nil { 2174 rprops.o.Set("onClick", props.OnClick.OnClick) 2175 } 2176 if props.Ref != nil { 2177 rprops.o.Set("ref", props.Ref.Ref) 2178 } 2179 rprops.Role = props.Role 2180 2181 rprops.Src = props.Src 2182 2183 // TODO: until we have a resolution on 2184 // https://github.com/gopherjs/gopherjs/issues/236 2185 rprops.Style = props.Style.hack() 2186 } 2187 2188 return &ImgElem{ 2189 Element: createElement("img", rprops, children...), 2190 } 2191 } 2192 2193 // InputElem is the React element definition corresponding to the HTML <input> element 2194 type InputElem struct { 2195 Element 2196 } 2197 2198 func (a *InputElem) coreReactElement() {} 2199 2200 // InputProps defines the properties for the <input> element 2201 type InputProps struct { 2202 AriaExpanded bool 2203 AriaHasPopup bool 2204 AriaLabelledBy string 2205 ClassName string 2206 DangerouslySetInnerHTML *DangerousInnerHTML 2207 DataSet DataSet 2208 ID string 2209 Key string 2210 OnChange OnChange 2211 OnClick OnClick 2212 Placeholder string 2213 Ref Ref 2214 Role string 2215 Style *CSS 2216 Type string 2217 Value string 2218 } 2219 2220 // Input creates a new instance of a <input> element with the provided props and 2221 // children 2222 func Input(props *InputProps, children ...Element) *InputElem { 2223 type _InputProps struct { 2224 o *js.Object 2225 AriaExpanded bool `js:"aria-expanded"` 2226 AriaHasPopup bool `js:"aria-haspopup"` 2227 AriaLabelledBy string `js:"aria-labelledby"` 2228 ClassName string `js:"className"` 2229 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2230 ID string `js:"id" react:"omitempty"` 2231 Key string `js:"key" react:"omitempty"` 2232 OnChange OnChange `js:"onChange"` 2233 OnClick OnClick `js:"onClick"` 2234 Placeholder string `js:"placeholder"` 2235 Ref Ref `js:"ref"` 2236 Role string `js:"role"` 2237 Style *CSS `js:"style"` 2238 Type string `js:"type"` 2239 Value string `js:"value"` 2240 } 2241 2242 rprops := &_InputProps{ 2243 o: object.New(), 2244 } 2245 2246 if props != nil { 2247 rprops.AriaExpanded = props.AriaExpanded 2248 2249 rprops.AriaHasPopup = props.AriaHasPopup 2250 2251 rprops.AriaLabelledBy = props.AriaLabelledBy 2252 2253 rprops.ClassName = props.ClassName 2254 2255 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2256 2257 if props.DataSet != nil { 2258 for dk, dv := range props.DataSet { 2259 rprops.o.Set("data-"+dk, dv) 2260 } 2261 } 2262 if props.ID != "" { 2263 rprops.ID = props.ID 2264 } 2265 if props.Key != "" { 2266 rprops.Key = props.Key 2267 } 2268 if props.OnChange != nil { 2269 rprops.o.Set("onChange", props.OnChange.OnChange) 2270 } 2271 if props.OnClick != nil { 2272 rprops.o.Set("onClick", props.OnClick.OnClick) 2273 } 2274 rprops.Placeholder = props.Placeholder 2275 2276 if props.Ref != nil { 2277 rprops.o.Set("ref", props.Ref.Ref) 2278 } 2279 rprops.Role = props.Role 2280 2281 // TODO: until we have a resolution on 2282 // https://github.com/gopherjs/gopherjs/issues/236 2283 rprops.Style = props.Style.hack() 2284 rprops.Type = props.Type 2285 2286 rprops.Value = props.Value 2287 } 2288 2289 return &InputElem{ 2290 Element: createElement("input", rprops, children...), 2291 } 2292 } 2293 2294 // LabelElem is the React element definition corresponding to the HTML <label> element 2295 type LabelElem struct { 2296 Element 2297 } 2298 2299 func (a *LabelElem) coreReactElement() {} 2300 2301 // LabelProps defines the properties for the <label> element 2302 type LabelProps struct { 2303 AriaExpanded bool 2304 AriaHasPopup bool 2305 AriaLabelledBy string 2306 ClassName string 2307 DangerouslySetInnerHTML *DangerousInnerHTML 2308 DataSet DataSet 2309 For string 2310 ID string 2311 Key string 2312 OnChange OnChange 2313 OnClick OnClick 2314 Ref Ref 2315 Role string 2316 Style *CSS 2317 } 2318 2319 // Label creates a new instance of a <label> element with the provided props and 2320 // children 2321 func Label(props *LabelProps, children ...Element) *LabelElem { 2322 type _LabelProps struct { 2323 o *js.Object 2324 AriaExpanded bool `js:"aria-expanded"` 2325 AriaHasPopup bool `js:"aria-haspopup"` 2326 AriaLabelledBy string `js:"aria-labelledby"` 2327 ClassName string `js:"className"` 2328 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2329 For string `js:"htmlFor"` 2330 ID string `js:"id" react:"omitempty"` 2331 Key string `js:"key" react:"omitempty"` 2332 OnChange OnChange `js:"onChange"` 2333 OnClick OnClick `js:"onClick"` 2334 Ref Ref `js:"ref"` 2335 Role string `js:"role"` 2336 Style *CSS `js:"style"` 2337 } 2338 2339 rprops := &_LabelProps{ 2340 o: object.New(), 2341 } 2342 2343 if props != nil { 2344 rprops.AriaExpanded = props.AriaExpanded 2345 2346 rprops.AriaHasPopup = props.AriaHasPopup 2347 2348 rprops.AriaLabelledBy = props.AriaLabelledBy 2349 2350 rprops.ClassName = props.ClassName 2351 2352 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2353 2354 if props.DataSet != nil { 2355 for dk, dv := range props.DataSet { 2356 rprops.o.Set("data-"+dk, dv) 2357 } 2358 } 2359 rprops.For = props.For 2360 2361 if props.ID != "" { 2362 rprops.ID = props.ID 2363 } 2364 if props.Key != "" { 2365 rprops.Key = props.Key 2366 } 2367 if props.OnChange != nil { 2368 rprops.o.Set("onChange", props.OnChange.OnChange) 2369 } 2370 if props.OnClick != nil { 2371 rprops.o.Set("onClick", props.OnClick.OnClick) 2372 } 2373 if props.Ref != nil { 2374 rprops.o.Set("ref", props.Ref.Ref) 2375 } 2376 rprops.Role = props.Role 2377 2378 // TODO: until we have a resolution on 2379 // https://github.com/gopherjs/gopherjs/issues/236 2380 rprops.Style = props.Style.hack() 2381 } 2382 2383 return &LabelElem{ 2384 Element: createElement("label", rprops, children...), 2385 } 2386 } 2387 2388 // LiElem is the React element definition corresponding to the HTML <li> element 2389 type LiElem struct { 2390 Element 2391 } 2392 2393 func (a *LiElem) coreReactElement() {} 2394 2395 func (l *LiElem) RendersLi(*LiElem) {} 2396 2397 // LiProps defines the properties for the <li> element 2398 type LiProps struct { 2399 AriaExpanded bool 2400 AriaHasPopup bool 2401 AriaLabelledBy string 2402 ClassName string 2403 DangerouslySetInnerHTML *DangerousInnerHTML 2404 DataSet DataSet 2405 ID string 2406 Key string 2407 OnChange OnChange 2408 OnClick OnClick 2409 Ref Ref 2410 Role string 2411 Style *CSS 2412 } 2413 2414 // Li creates a new instance of a <li> element with the provided props and 2415 // children 2416 func Li(props *LiProps, children ...Element) *LiElem { 2417 type _LiProps struct { 2418 o *js.Object 2419 AriaExpanded bool `js:"aria-expanded"` 2420 AriaHasPopup bool `js:"aria-haspopup"` 2421 AriaLabelledBy string `js:"aria-labelledby"` 2422 ClassName string `js:"className"` 2423 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2424 ID string `js:"id" react:"omitempty"` 2425 Key string `js:"key" react:"omitempty"` 2426 OnChange OnChange `js:"onChange"` 2427 OnClick OnClick `js:"onClick"` 2428 Ref Ref `js:"ref"` 2429 Role string `js:"role"` 2430 Style *CSS `js:"style"` 2431 } 2432 2433 rprops := &_LiProps{ 2434 o: object.New(), 2435 } 2436 2437 if props != nil { 2438 rprops.AriaExpanded = props.AriaExpanded 2439 2440 rprops.AriaHasPopup = props.AriaHasPopup 2441 2442 rprops.AriaLabelledBy = props.AriaLabelledBy 2443 2444 rprops.ClassName = props.ClassName 2445 2446 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2447 2448 if props.DataSet != nil { 2449 for dk, dv := range props.DataSet { 2450 rprops.o.Set("data-"+dk, dv) 2451 } 2452 } 2453 if props.ID != "" { 2454 rprops.ID = props.ID 2455 } 2456 if props.Key != "" { 2457 rprops.Key = props.Key 2458 } 2459 if props.OnChange != nil { 2460 rprops.o.Set("onChange", props.OnChange.OnChange) 2461 } 2462 if props.OnClick != nil { 2463 rprops.o.Set("onClick", props.OnClick.OnClick) 2464 } 2465 if props.Ref != nil { 2466 rprops.o.Set("ref", props.Ref.Ref) 2467 } 2468 rprops.Role = props.Role 2469 2470 // TODO: until we have a resolution on 2471 // https://github.com/gopherjs/gopherjs/issues/236 2472 rprops.Style = props.Style.hack() 2473 } 2474 2475 return &LiElem{ 2476 Element: createElement("li", rprops, children...), 2477 } 2478 } 2479 2480 // MainElem is the React element definition corresponding to the HTML <main> element 2481 type MainElem struct { 2482 Element 2483 } 2484 2485 func (a *MainElem) coreReactElement() {} 2486 2487 // MainProps defines the properties for the <main> element 2488 type MainProps struct { 2489 AriaExpanded bool 2490 AriaHasPopup bool 2491 AriaLabelledBy string 2492 ClassName string 2493 DangerouslySetInnerHTML *DangerousInnerHTML 2494 DataSet DataSet 2495 ID string 2496 Key string 2497 OnChange OnChange 2498 OnClick OnClick 2499 Ref Ref 2500 Role string 2501 Style *CSS 2502 } 2503 2504 // Main creates a new instance of a <main> element with the provided props and 2505 // children 2506 func Main(props *MainProps, children ...Element) *MainElem { 2507 type _MainProps struct { 2508 o *js.Object 2509 AriaExpanded bool `js:"aria-expanded"` 2510 AriaHasPopup bool `js:"aria-haspopup"` 2511 AriaLabelledBy string `js:"aria-labelledby"` 2512 ClassName string `js:"className"` 2513 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2514 ID string `js:"id" react:"omitempty"` 2515 Key string `js:"key" react:"omitempty"` 2516 OnChange OnChange `js:"onChange"` 2517 OnClick OnClick `js:"onClick"` 2518 Ref Ref `js:"ref"` 2519 Role string `js:"role"` 2520 Style *CSS `js:"style"` 2521 } 2522 2523 rprops := &_MainProps{ 2524 o: object.New(), 2525 } 2526 2527 if props != nil { 2528 rprops.AriaExpanded = props.AriaExpanded 2529 2530 rprops.AriaHasPopup = props.AriaHasPopup 2531 2532 rprops.AriaLabelledBy = props.AriaLabelledBy 2533 2534 rprops.ClassName = props.ClassName 2535 2536 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2537 2538 if props.DataSet != nil { 2539 for dk, dv := range props.DataSet { 2540 rprops.o.Set("data-"+dk, dv) 2541 } 2542 } 2543 if props.ID != "" { 2544 rprops.ID = props.ID 2545 } 2546 if props.Key != "" { 2547 rprops.Key = props.Key 2548 } 2549 if props.OnChange != nil { 2550 rprops.o.Set("onChange", props.OnChange.OnChange) 2551 } 2552 if props.OnClick != nil { 2553 rprops.o.Set("onClick", props.OnClick.OnClick) 2554 } 2555 if props.Ref != nil { 2556 rprops.o.Set("ref", props.Ref.Ref) 2557 } 2558 rprops.Role = props.Role 2559 2560 // TODO: until we have a resolution on 2561 // https://github.com/gopherjs/gopherjs/issues/236 2562 rprops.Style = props.Style.hack() 2563 } 2564 2565 return &MainElem{ 2566 Element: createElement("main", rprops, children...), 2567 } 2568 } 2569 2570 // NavElem is the React element definition corresponding to the HTML <nav> element 2571 type NavElem struct { 2572 Element 2573 } 2574 2575 func (a *NavElem) coreReactElement() {} 2576 2577 // NavProps defines the properties for the <nav> element 2578 type NavProps struct { 2579 AriaExpanded bool 2580 AriaHasPopup bool 2581 AriaLabelledBy string 2582 ClassName string 2583 DangerouslySetInnerHTML *DangerousInnerHTML 2584 DataSet DataSet 2585 ID string 2586 Key string 2587 OnChange OnChange 2588 OnClick OnClick 2589 Ref Ref 2590 Role string 2591 Style *CSS 2592 } 2593 2594 // Nav creates a new instance of a <nav> element with the provided props and 2595 // children 2596 func Nav(props *NavProps, children ...Element) *NavElem { 2597 type _NavProps struct { 2598 o *js.Object 2599 AriaExpanded bool `js:"aria-expanded"` 2600 AriaHasPopup bool `js:"aria-haspopup"` 2601 AriaLabelledBy string `js:"aria-labelledby"` 2602 ClassName string `js:"className"` 2603 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2604 ID string `js:"id" react:"omitempty"` 2605 Key string `js:"key" react:"omitempty"` 2606 OnChange OnChange `js:"onChange"` 2607 OnClick OnClick `js:"onClick"` 2608 Ref Ref `js:"ref"` 2609 Role string `js:"role"` 2610 Style *CSS `js:"style"` 2611 } 2612 2613 rprops := &_NavProps{ 2614 o: object.New(), 2615 } 2616 2617 if props != nil { 2618 rprops.AriaExpanded = props.AriaExpanded 2619 2620 rprops.AriaHasPopup = props.AriaHasPopup 2621 2622 rprops.AriaLabelledBy = props.AriaLabelledBy 2623 2624 rprops.ClassName = props.ClassName 2625 2626 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2627 2628 if props.DataSet != nil { 2629 for dk, dv := range props.DataSet { 2630 rprops.o.Set("data-"+dk, dv) 2631 } 2632 } 2633 if props.ID != "" { 2634 rprops.ID = props.ID 2635 } 2636 if props.Key != "" { 2637 rprops.Key = props.Key 2638 } 2639 if props.OnChange != nil { 2640 rprops.o.Set("onChange", props.OnChange.OnChange) 2641 } 2642 if props.OnClick != nil { 2643 rprops.o.Set("onClick", props.OnClick.OnClick) 2644 } 2645 if props.Ref != nil { 2646 rprops.o.Set("ref", props.Ref.Ref) 2647 } 2648 rprops.Role = props.Role 2649 2650 // TODO: until we have a resolution on 2651 // https://github.com/gopherjs/gopherjs/issues/236 2652 rprops.Style = props.Style.hack() 2653 } 2654 2655 return &NavElem{ 2656 Element: createElement("nav", rprops, children...), 2657 } 2658 } 2659 2660 // OptionElem is the React element definition corresponding to the HTML <option> element 2661 type OptionElem struct { 2662 Element 2663 } 2664 2665 func (a *OptionElem) coreReactElement() {} 2666 2667 // OptionProps defines the properties for the <option> element 2668 type OptionProps struct { 2669 AriaExpanded bool 2670 AriaHasPopup bool 2671 AriaLabelledBy string 2672 ClassName string 2673 DangerouslySetInnerHTML *DangerousInnerHTML 2674 DataSet DataSet 2675 ID string 2676 Key string 2677 OnChange OnChange 2678 OnClick OnClick 2679 Ref Ref 2680 Role string 2681 Style *CSS 2682 Value string 2683 } 2684 2685 // Option creates a new instance of a <option> element with the provided props and 2686 // children 2687 func Option(props *OptionProps, children ...Element) *OptionElem { 2688 type _OptionProps struct { 2689 o *js.Object 2690 AriaExpanded bool `js:"aria-expanded"` 2691 AriaHasPopup bool `js:"aria-haspopup"` 2692 AriaLabelledBy string `js:"aria-labelledby"` 2693 ClassName string `js:"className"` 2694 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2695 ID string `js:"id" react:"omitempty"` 2696 Key string `js:"key" react:"omitempty"` 2697 OnChange OnChange `js:"onChange"` 2698 OnClick OnClick `js:"onClick"` 2699 Ref Ref `js:"ref"` 2700 Role string `js:"role"` 2701 Style *CSS `js:"style"` 2702 Value string `js:"value"` 2703 } 2704 2705 rprops := &_OptionProps{ 2706 o: object.New(), 2707 } 2708 2709 if props != nil { 2710 rprops.AriaExpanded = props.AriaExpanded 2711 2712 rprops.AriaHasPopup = props.AriaHasPopup 2713 2714 rprops.AriaLabelledBy = props.AriaLabelledBy 2715 2716 rprops.ClassName = props.ClassName 2717 2718 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2719 2720 if props.DataSet != nil { 2721 for dk, dv := range props.DataSet { 2722 rprops.o.Set("data-"+dk, dv) 2723 } 2724 } 2725 if props.ID != "" { 2726 rprops.ID = props.ID 2727 } 2728 if props.Key != "" { 2729 rprops.Key = props.Key 2730 } 2731 if props.OnChange != nil { 2732 rprops.o.Set("onChange", props.OnChange.OnChange) 2733 } 2734 if props.OnClick != nil { 2735 rprops.o.Set("onClick", props.OnClick.OnClick) 2736 } 2737 if props.Ref != nil { 2738 rprops.o.Set("ref", props.Ref.Ref) 2739 } 2740 rprops.Role = props.Role 2741 2742 // TODO: until we have a resolution on 2743 // https://github.com/gopherjs/gopherjs/issues/236 2744 rprops.Style = props.Style.hack() 2745 rprops.Value = props.Value 2746 } 2747 2748 return &OptionElem{ 2749 Element: createElement("option", rprops, children...), 2750 } 2751 } 2752 2753 // PElem is the React element definition corresponding to the HTML <p> element 2754 type PElem struct { 2755 Element 2756 } 2757 2758 func (a *PElem) coreReactElement() {} 2759 2760 // PProps defines the properties for the <p> element 2761 type PProps struct { 2762 AriaExpanded bool 2763 AriaHasPopup bool 2764 AriaLabelledBy string 2765 ClassName string 2766 DangerouslySetInnerHTML *DangerousInnerHTML 2767 DataSet DataSet 2768 ID string 2769 Key string 2770 OnChange OnChange 2771 OnClick OnClick 2772 Ref Ref 2773 Role string 2774 Style *CSS 2775 } 2776 2777 // P creates a new instance of a <p> element with the provided props and 2778 // children 2779 func P(props *PProps, children ...Element) *PElem { 2780 type _PProps struct { 2781 o *js.Object 2782 AriaExpanded bool `js:"aria-expanded"` 2783 AriaHasPopup bool `js:"aria-haspopup"` 2784 AriaLabelledBy string `js:"aria-labelledby"` 2785 ClassName string `js:"className"` 2786 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2787 ID string `js:"id" react:"omitempty"` 2788 Key string `js:"key" react:"omitempty"` 2789 OnChange OnChange `js:"onChange"` 2790 OnClick OnClick `js:"onClick"` 2791 Ref Ref `js:"ref"` 2792 Role string `js:"role"` 2793 Style *CSS `js:"style"` 2794 } 2795 2796 rprops := &_PProps{ 2797 o: object.New(), 2798 } 2799 2800 if props != nil { 2801 rprops.AriaExpanded = props.AriaExpanded 2802 2803 rprops.AriaHasPopup = props.AriaHasPopup 2804 2805 rprops.AriaLabelledBy = props.AriaLabelledBy 2806 2807 rprops.ClassName = props.ClassName 2808 2809 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2810 2811 if props.DataSet != nil { 2812 for dk, dv := range props.DataSet { 2813 rprops.o.Set("data-"+dk, dv) 2814 } 2815 } 2816 if props.ID != "" { 2817 rprops.ID = props.ID 2818 } 2819 if props.Key != "" { 2820 rprops.Key = props.Key 2821 } 2822 if props.OnChange != nil { 2823 rprops.o.Set("onChange", props.OnChange.OnChange) 2824 } 2825 if props.OnClick != nil { 2826 rprops.o.Set("onClick", props.OnClick.OnClick) 2827 } 2828 if props.Ref != nil { 2829 rprops.o.Set("ref", props.Ref.Ref) 2830 } 2831 rprops.Role = props.Role 2832 2833 // TODO: until we have a resolution on 2834 // https://github.com/gopherjs/gopherjs/issues/236 2835 rprops.Style = props.Style.hack() 2836 } 2837 2838 return &PElem{ 2839 Element: createElement("p", rprops, children...), 2840 } 2841 } 2842 2843 // PreElem is the React element definition corresponding to the HTML <pre> element 2844 type PreElem struct { 2845 Element 2846 } 2847 2848 func (a *PreElem) coreReactElement() {} 2849 2850 // PreProps defines the properties for the <pre> element 2851 type PreProps struct { 2852 AriaExpanded bool 2853 AriaHasPopup bool 2854 AriaLabelledBy string 2855 ClassName string 2856 DangerouslySetInnerHTML *DangerousInnerHTML 2857 DataSet DataSet 2858 ID string 2859 Key string 2860 OnChange OnChange 2861 OnClick OnClick 2862 Ref Ref 2863 Role string 2864 Style *CSS 2865 } 2866 2867 // Pre creates a new instance of a <pre> element with the provided props and 2868 // children 2869 func Pre(props *PreProps, children ...Element) *PreElem { 2870 type _PreProps struct { 2871 o *js.Object 2872 AriaExpanded bool `js:"aria-expanded"` 2873 AriaHasPopup bool `js:"aria-haspopup"` 2874 AriaLabelledBy string `js:"aria-labelledby"` 2875 ClassName string `js:"className"` 2876 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2877 ID string `js:"id" react:"omitempty"` 2878 Key string `js:"key" react:"omitempty"` 2879 OnChange OnChange `js:"onChange"` 2880 OnClick OnClick `js:"onClick"` 2881 Ref Ref `js:"ref"` 2882 Role string `js:"role"` 2883 Style *CSS `js:"style"` 2884 } 2885 2886 rprops := &_PreProps{ 2887 o: object.New(), 2888 } 2889 2890 if props != nil { 2891 rprops.AriaExpanded = props.AriaExpanded 2892 2893 rprops.AriaHasPopup = props.AriaHasPopup 2894 2895 rprops.AriaLabelledBy = props.AriaLabelledBy 2896 2897 rprops.ClassName = props.ClassName 2898 2899 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2900 2901 if props.DataSet != nil { 2902 for dk, dv := range props.DataSet { 2903 rprops.o.Set("data-"+dk, dv) 2904 } 2905 } 2906 if props.ID != "" { 2907 rprops.ID = props.ID 2908 } 2909 if props.Key != "" { 2910 rprops.Key = props.Key 2911 } 2912 if props.OnChange != nil { 2913 rprops.o.Set("onChange", props.OnChange.OnChange) 2914 } 2915 if props.OnClick != nil { 2916 rprops.o.Set("onClick", props.OnClick.OnClick) 2917 } 2918 if props.Ref != nil { 2919 rprops.o.Set("ref", props.Ref.Ref) 2920 } 2921 rprops.Role = props.Role 2922 2923 // TODO: until we have a resolution on 2924 // https://github.com/gopherjs/gopherjs/issues/236 2925 rprops.Style = props.Style.hack() 2926 } 2927 2928 return &PreElem{ 2929 Element: createElement("pre", rprops, children...), 2930 } 2931 } 2932 2933 // SelectElem is the React element definition corresponding to the HTML <select> element 2934 type SelectElem struct { 2935 Element 2936 } 2937 2938 func (a *SelectElem) coreReactElement() {} 2939 2940 // SelectProps defines the properties for the <select> element 2941 type SelectProps struct { 2942 AriaExpanded bool 2943 AriaHasPopup bool 2944 AriaLabelledBy string 2945 ClassName string 2946 DangerouslySetInnerHTML *DangerousInnerHTML 2947 DataSet DataSet 2948 ID string 2949 Key string 2950 OnChange OnChange 2951 OnClick OnClick 2952 Ref Ref 2953 Role string 2954 Style *CSS 2955 Value string 2956 } 2957 2958 // Select creates a new instance of a <select> element with the provided props and 2959 // children 2960 func Select(props *SelectProps, children ...*OptionElem) *SelectElem { 2961 type _SelectProps struct { 2962 o *js.Object 2963 AriaExpanded bool `js:"aria-expanded"` 2964 AriaHasPopup bool `js:"aria-haspopup"` 2965 AriaLabelledBy string `js:"aria-labelledby"` 2966 ClassName string `js:"className"` 2967 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 2968 ID string `js:"id" react:"omitempty"` 2969 Key string `js:"key" react:"omitempty"` 2970 OnChange OnChange `js:"onChange"` 2971 OnClick OnClick `js:"onClick"` 2972 Ref Ref `js:"ref"` 2973 Role string `js:"role"` 2974 Style *CSS `js:"style"` 2975 Value string `js:"value"` 2976 } 2977 2978 var elems []Element 2979 for _, v := range children { 2980 elems = append(elems, v) 2981 } 2982 2983 rprops := &_SelectProps{ 2984 o: object.New(), 2985 } 2986 2987 if props != nil { 2988 rprops.AriaExpanded = props.AriaExpanded 2989 2990 rprops.AriaHasPopup = props.AriaHasPopup 2991 2992 rprops.AriaLabelledBy = props.AriaLabelledBy 2993 2994 rprops.ClassName = props.ClassName 2995 2996 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 2997 2998 if props.DataSet != nil { 2999 for dk, dv := range props.DataSet { 3000 rprops.o.Set("data-"+dk, dv) 3001 } 3002 } 3003 if props.ID != "" { 3004 rprops.ID = props.ID 3005 } 3006 if props.Key != "" { 3007 rprops.Key = props.Key 3008 } 3009 if props.OnChange != nil { 3010 rprops.o.Set("onChange", props.OnChange.OnChange) 3011 } 3012 if props.OnClick != nil { 3013 rprops.o.Set("onClick", props.OnClick.OnClick) 3014 } 3015 if props.Ref != nil { 3016 rprops.o.Set("ref", props.Ref.Ref) 3017 } 3018 rprops.Role = props.Role 3019 3020 // TODO: until we have a resolution on 3021 // https://github.com/gopherjs/gopherjs/issues/236 3022 rprops.Style = props.Style.hack() 3023 rprops.Value = props.Value 3024 } 3025 3026 return &SelectElem{ 3027 Element: createElement("select", rprops, elems...), 3028 } 3029 } 3030 3031 // SpanElem is the React element definition corresponding to the HTML <span> element 3032 type SpanElem struct { 3033 Element 3034 } 3035 3036 func (a *SpanElem) coreReactElement() {} 3037 3038 // SpanProps defines the properties for the <span> element 3039 type SpanProps struct { 3040 AriaExpanded bool 3041 AriaHasPopup bool 3042 AriaLabelledBy string 3043 ClassName string 3044 DangerouslySetInnerHTML *DangerousInnerHTML 3045 DataSet DataSet 3046 ID string 3047 Key string 3048 OnChange OnChange 3049 OnClick OnClick 3050 Ref Ref 3051 Role string 3052 Style *CSS 3053 } 3054 3055 // Span creates a new instance of a <span> element with the provided props and 3056 // children 3057 func Span(props *SpanProps, children ...Element) *SpanElem { 3058 type _SpanProps struct { 3059 o *js.Object 3060 AriaExpanded bool `js:"aria-expanded"` 3061 AriaHasPopup bool `js:"aria-haspopup"` 3062 AriaLabelledBy string `js:"aria-labelledby"` 3063 ClassName string `js:"className"` 3064 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3065 ID string `js:"id" react:"omitempty"` 3066 Key string `js:"key" react:"omitempty"` 3067 OnChange OnChange `js:"onChange"` 3068 OnClick OnClick `js:"onClick"` 3069 Ref Ref `js:"ref"` 3070 Role string `js:"role"` 3071 Style *CSS `js:"style"` 3072 } 3073 3074 rprops := &_SpanProps{ 3075 o: object.New(), 3076 } 3077 3078 if props != nil { 3079 rprops.AriaExpanded = props.AriaExpanded 3080 3081 rprops.AriaHasPopup = props.AriaHasPopup 3082 3083 rprops.AriaLabelledBy = props.AriaLabelledBy 3084 3085 rprops.ClassName = props.ClassName 3086 3087 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 3088 3089 if props.DataSet != nil { 3090 for dk, dv := range props.DataSet { 3091 rprops.o.Set("data-"+dk, dv) 3092 } 3093 } 3094 if props.ID != "" { 3095 rprops.ID = props.ID 3096 } 3097 if props.Key != "" { 3098 rprops.Key = props.Key 3099 } 3100 if props.OnChange != nil { 3101 rprops.o.Set("onChange", props.OnChange.OnChange) 3102 } 3103 if props.OnClick != nil { 3104 rprops.o.Set("onClick", props.OnClick.OnClick) 3105 } 3106 if props.Ref != nil { 3107 rprops.o.Set("ref", props.Ref.Ref) 3108 } 3109 rprops.Role = props.Role 3110 3111 // TODO: until we have a resolution on 3112 // https://github.com/gopherjs/gopherjs/issues/236 3113 rprops.Style = props.Style.hack() 3114 } 3115 3116 return &SpanElem{ 3117 Element: createElement("span", rprops, children...), 3118 } 3119 } 3120 3121 // StrikeElem is the React element definition corresponding to the HTML <s> element 3122 type StrikeElem struct { 3123 Element 3124 } 3125 3126 func (a *StrikeElem) coreReactElement() {} 3127 3128 // StrikeProps defines the properties for the <s> element 3129 type StrikeProps struct { 3130 AriaExpanded bool 3131 AriaHasPopup bool 3132 AriaLabelledBy string 3133 ClassName string 3134 DangerouslySetInnerHTML *DangerousInnerHTML 3135 DataSet DataSet 3136 ID string 3137 Key string 3138 OnChange OnChange 3139 OnClick OnClick 3140 Ref Ref 3141 Role string 3142 Style *CSS 3143 } 3144 3145 // Strike creates a new instance of a <s> element with the provided props and 3146 // children 3147 func Strike(props *StrikeProps, children ...Element) *StrikeElem { 3148 type _StrikeProps struct { 3149 o *js.Object 3150 AriaExpanded bool `js:"aria-expanded"` 3151 AriaHasPopup bool `js:"aria-haspopup"` 3152 AriaLabelledBy string `js:"aria-labelledby"` 3153 ClassName string `js:"className"` 3154 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3155 ID string `js:"id" react:"omitempty"` 3156 Key string `js:"key" react:"omitempty"` 3157 OnChange OnChange `js:"onChange"` 3158 OnClick OnClick `js:"onClick"` 3159 Ref Ref `js:"ref"` 3160 Role string `js:"role"` 3161 Style *CSS `js:"style"` 3162 } 3163 3164 rprops := &_StrikeProps{ 3165 o: object.New(), 3166 } 3167 3168 if props != nil { 3169 rprops.AriaExpanded = props.AriaExpanded 3170 3171 rprops.AriaHasPopup = props.AriaHasPopup 3172 3173 rprops.AriaLabelledBy = props.AriaLabelledBy 3174 3175 rprops.ClassName = props.ClassName 3176 3177 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 3178 3179 if props.DataSet != nil { 3180 for dk, dv := range props.DataSet { 3181 rprops.o.Set("data-"+dk, dv) 3182 } 3183 } 3184 if props.ID != "" { 3185 rprops.ID = props.ID 3186 } 3187 if props.Key != "" { 3188 rprops.Key = props.Key 3189 } 3190 if props.OnChange != nil { 3191 rprops.o.Set("onChange", props.OnChange.OnChange) 3192 } 3193 if props.OnClick != nil { 3194 rprops.o.Set("onClick", props.OnClick.OnClick) 3195 } 3196 if props.Ref != nil { 3197 rprops.o.Set("ref", props.Ref.Ref) 3198 } 3199 rprops.Role = props.Role 3200 3201 // TODO: until we have a resolution on 3202 // https://github.com/gopherjs/gopherjs/issues/236 3203 rprops.Style = props.Style.hack() 3204 } 3205 3206 return &StrikeElem{ 3207 Element: createElement("s", rprops, children...), 3208 } 3209 } 3210 3211 // SupElem is the React element definition corresponding to the HTML <sup> element 3212 type SupElem struct { 3213 Element 3214 } 3215 3216 func (a *SupElem) coreReactElement() {} 3217 3218 // SupProps defines the properties for the <sup> element 3219 type SupProps struct { 3220 AriaExpanded bool 3221 AriaHasPopup bool 3222 AriaLabelledBy string 3223 ClassName string 3224 DangerouslySetInnerHTML *DangerousInnerHTML 3225 DataSet DataSet 3226 ID string 3227 Key string 3228 OnChange OnChange 3229 OnClick OnClick 3230 Ref Ref 3231 Role string 3232 Style *CSS 3233 } 3234 3235 // Sup creates a new instance of a <sup> element with the provided props and 3236 // children 3237 func Sup(props *SupProps, children ...Element) *SupElem { 3238 type _SupProps struct { 3239 o *js.Object 3240 AriaExpanded bool `js:"aria-expanded"` 3241 AriaHasPopup bool `js:"aria-haspopup"` 3242 AriaLabelledBy string `js:"aria-labelledby"` 3243 ClassName string `js:"className"` 3244 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3245 ID string `js:"id" react:"omitempty"` 3246 Key string `js:"key" react:"omitempty"` 3247 OnChange OnChange `js:"onChange"` 3248 OnClick OnClick `js:"onClick"` 3249 Ref Ref `js:"ref"` 3250 Role string `js:"role"` 3251 Style *CSS `js:"style"` 3252 } 3253 3254 rprops := &_SupProps{ 3255 o: object.New(), 3256 } 3257 3258 if props != nil { 3259 rprops.AriaExpanded = props.AriaExpanded 3260 3261 rprops.AriaHasPopup = props.AriaHasPopup 3262 3263 rprops.AriaLabelledBy = props.AriaLabelledBy 3264 3265 rprops.ClassName = props.ClassName 3266 3267 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 3268 3269 if props.DataSet != nil { 3270 for dk, dv := range props.DataSet { 3271 rprops.o.Set("data-"+dk, dv) 3272 } 3273 } 3274 if props.ID != "" { 3275 rprops.ID = props.ID 3276 } 3277 if props.Key != "" { 3278 rprops.Key = props.Key 3279 } 3280 if props.OnChange != nil { 3281 rprops.o.Set("onChange", props.OnChange.OnChange) 3282 } 3283 if props.OnClick != nil { 3284 rprops.o.Set("onClick", props.OnClick.OnClick) 3285 } 3286 if props.Ref != nil { 3287 rprops.o.Set("ref", props.Ref.Ref) 3288 } 3289 rprops.Role = props.Role 3290 3291 // TODO: until we have a resolution on 3292 // https://github.com/gopherjs/gopherjs/issues/236 3293 rprops.Style = props.Style.hack() 3294 } 3295 3296 return &SupElem{ 3297 Element: createElement("sup", rprops, children...), 3298 } 3299 } 3300 3301 // TableElem is the React element definition corresponding to the HTML <table> element 3302 type TableElem struct { 3303 Element 3304 } 3305 3306 func (a *TableElem) coreReactElement() {} 3307 3308 // TableProps defines the properties for the <table> element 3309 type TableProps struct { 3310 AriaExpanded bool 3311 AriaHasPopup bool 3312 AriaLabelledBy string 3313 ClassName string 3314 DangerouslySetInnerHTML *DangerousInnerHTML 3315 DataSet DataSet 3316 ID string 3317 Key string 3318 OnChange OnChange 3319 OnClick OnClick 3320 Ref Ref 3321 Role string 3322 Style *CSS 3323 } 3324 3325 // Table creates a new instance of a <table> element with the provided props and 3326 // children 3327 func Table(props *TableProps, children ...Element) *TableElem { 3328 type _TableProps struct { 3329 o *js.Object 3330 AriaExpanded bool `js:"aria-expanded"` 3331 AriaHasPopup bool `js:"aria-haspopup"` 3332 AriaLabelledBy string `js:"aria-labelledby"` 3333 ClassName string `js:"className"` 3334 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3335 ID string `js:"id" react:"omitempty"` 3336 Key string `js:"key" react:"omitempty"` 3337 OnChange OnChange `js:"onChange"` 3338 OnClick OnClick `js:"onClick"` 3339 Ref Ref `js:"ref"` 3340 Role string `js:"role"` 3341 Style *CSS `js:"style"` 3342 } 3343 3344 rprops := &_TableProps{ 3345 o: object.New(), 3346 } 3347 3348 if props != nil { 3349 rprops.AriaExpanded = props.AriaExpanded 3350 3351 rprops.AriaHasPopup = props.AriaHasPopup 3352 3353 rprops.AriaLabelledBy = props.AriaLabelledBy 3354 3355 rprops.ClassName = props.ClassName 3356 3357 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 3358 3359 if props.DataSet != nil { 3360 for dk, dv := range props.DataSet { 3361 rprops.o.Set("data-"+dk, dv) 3362 } 3363 } 3364 if props.ID != "" { 3365 rprops.ID = props.ID 3366 } 3367 if props.Key != "" { 3368 rprops.Key = props.Key 3369 } 3370 if props.OnChange != nil { 3371 rprops.o.Set("onChange", props.OnChange.OnChange) 3372 } 3373 if props.OnClick != nil { 3374 rprops.o.Set("onClick", props.OnClick.OnClick) 3375 } 3376 if props.Ref != nil { 3377 rprops.o.Set("ref", props.Ref.Ref) 3378 } 3379 rprops.Role = props.Role 3380 3381 // TODO: until we have a resolution on 3382 // https://github.com/gopherjs/gopherjs/issues/236 3383 rprops.Style = props.Style.hack() 3384 } 3385 3386 return &TableElem{ 3387 Element: createElement("table", rprops, children...), 3388 } 3389 } 3390 3391 // TbodyElem is the React element definition corresponding to the HTML <tbody> element 3392 type TbodyElem struct { 3393 Element 3394 } 3395 3396 func (a *TbodyElem) coreReactElement() {} 3397 3398 // TbodyProps defines the properties for the <tbody> element 3399 type TbodyProps struct { 3400 AriaExpanded bool 3401 AriaHasPopup bool 3402 AriaLabelledBy string 3403 ClassName string 3404 DangerouslySetInnerHTML *DangerousInnerHTML 3405 DataSet DataSet 3406 ID string 3407 Key string 3408 OnChange OnChange 3409 OnClick OnClick 3410 Ref Ref 3411 Role string 3412 Style *CSS 3413 } 3414 3415 // Tbody creates a new instance of a <tbody> element with the provided props and 3416 // children 3417 func Tbody(props *TbodyProps, children ...Element) *TbodyElem { 3418 type _TbodyProps struct { 3419 o *js.Object 3420 AriaExpanded bool `js:"aria-expanded"` 3421 AriaHasPopup bool `js:"aria-haspopup"` 3422 AriaLabelledBy string `js:"aria-labelledby"` 3423 ClassName string `js:"className"` 3424 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3425 ID string `js:"id" react:"omitempty"` 3426 Key string `js:"key" react:"omitempty"` 3427 OnChange OnChange `js:"onChange"` 3428 OnClick OnClick `js:"onClick"` 3429 Ref Ref `js:"ref"` 3430 Role string `js:"role"` 3431 Style *CSS `js:"style"` 3432 } 3433 3434 rprops := &_TbodyProps{ 3435 o: object.New(), 3436 } 3437 3438 if props != nil { 3439 rprops.AriaExpanded = props.AriaExpanded 3440 3441 rprops.AriaHasPopup = props.AriaHasPopup 3442 3443 rprops.AriaLabelledBy = props.AriaLabelledBy 3444 3445 rprops.ClassName = props.ClassName 3446 3447 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 3448 3449 if props.DataSet != nil { 3450 for dk, dv := range props.DataSet { 3451 rprops.o.Set("data-"+dk, dv) 3452 } 3453 } 3454 if props.ID != "" { 3455 rprops.ID = props.ID 3456 } 3457 if props.Key != "" { 3458 rprops.Key = props.Key 3459 } 3460 if props.OnChange != nil { 3461 rprops.o.Set("onChange", props.OnChange.OnChange) 3462 } 3463 if props.OnClick != nil { 3464 rprops.o.Set("onClick", props.OnClick.OnClick) 3465 } 3466 if props.Ref != nil { 3467 rprops.o.Set("ref", props.Ref.Ref) 3468 } 3469 rprops.Role = props.Role 3470 3471 // TODO: until we have a resolution on 3472 // https://github.com/gopherjs/gopherjs/issues/236 3473 rprops.Style = props.Style.hack() 3474 } 3475 3476 return &TbodyElem{ 3477 Element: createElement("tbody", rprops, children...), 3478 } 3479 } 3480 3481 // TdElem is the React element definition corresponding to the HTML <td> element 3482 type TdElem struct { 3483 Element 3484 } 3485 3486 func (a *TdElem) coreReactElement() {} 3487 3488 // TdProps defines the properties for the <td> element 3489 type TdProps struct { 3490 AriaExpanded bool 3491 AriaHasPopup bool 3492 AriaLabelledBy string 3493 ClassName string 3494 DangerouslySetInnerHTML *DangerousInnerHTML 3495 DataSet DataSet 3496 ID string 3497 Key string 3498 OnChange OnChange 3499 OnClick OnClick 3500 Ref Ref 3501 Role string 3502 Style *CSS 3503 } 3504 3505 // Td creates a new instance of a <td> element with the provided props and 3506 // children 3507 func Td(props *TdProps, children ...Element) *TdElem { 3508 type _TdProps struct { 3509 o *js.Object 3510 AriaExpanded bool `js:"aria-expanded"` 3511 AriaHasPopup bool `js:"aria-haspopup"` 3512 AriaLabelledBy string `js:"aria-labelledby"` 3513 ClassName string `js:"className"` 3514 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3515 ID string `js:"id" react:"omitempty"` 3516 Key string `js:"key" react:"omitempty"` 3517 OnChange OnChange `js:"onChange"` 3518 OnClick OnClick `js:"onClick"` 3519 Ref Ref `js:"ref"` 3520 Role string `js:"role"` 3521 Style *CSS `js:"style"` 3522 } 3523 3524 rprops := &_TdProps{ 3525 o: object.New(), 3526 } 3527 3528 if props != nil { 3529 rprops.AriaExpanded = props.AriaExpanded 3530 3531 rprops.AriaHasPopup = props.AriaHasPopup 3532 3533 rprops.AriaLabelledBy = props.AriaLabelledBy 3534 3535 rprops.ClassName = props.ClassName 3536 3537 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 3538 3539 if props.DataSet != nil { 3540 for dk, dv := range props.DataSet { 3541 rprops.o.Set("data-"+dk, dv) 3542 } 3543 } 3544 if props.ID != "" { 3545 rprops.ID = props.ID 3546 } 3547 if props.Key != "" { 3548 rprops.Key = props.Key 3549 } 3550 if props.OnChange != nil { 3551 rprops.o.Set("onChange", props.OnChange.OnChange) 3552 } 3553 if props.OnClick != nil { 3554 rprops.o.Set("onClick", props.OnClick.OnClick) 3555 } 3556 if props.Ref != nil { 3557 rprops.o.Set("ref", props.Ref.Ref) 3558 } 3559 rprops.Role = props.Role 3560 3561 // TODO: until we have a resolution on 3562 // https://github.com/gopherjs/gopherjs/issues/236 3563 rprops.Style = props.Style.hack() 3564 } 3565 3566 return &TdElem{ 3567 Element: createElement("td", rprops, children...), 3568 } 3569 } 3570 3571 // TextAreaElem is the React element definition corresponding to the HTML <textarea> element 3572 type TextAreaElem struct { 3573 Element 3574 } 3575 3576 func (a *TextAreaElem) coreReactElement() {} 3577 3578 // TextAreaProps defines the properties for the <textarea> element 3579 type TextAreaProps struct { 3580 AriaExpanded bool 3581 AriaHasPopup bool 3582 AriaLabelledBy string 3583 ClassName string 3584 DangerouslySetInnerHTML *DangerousInnerHTML 3585 DataSet DataSet 3586 ID string 3587 Key string 3588 OnChange OnChange 3589 OnClick OnClick 3590 Placeholder string 3591 Ref Ref 3592 Role string 3593 Style *CSS 3594 Value string 3595 } 3596 3597 // TextArea creates a new instance of a <textarea> element with the provided props and 3598 // children 3599 func TextArea(props *TextAreaProps, children ...Element) *TextAreaElem { 3600 type _TextAreaProps struct { 3601 o *js.Object 3602 AriaExpanded bool `js:"aria-expanded"` 3603 AriaHasPopup bool `js:"aria-haspopup"` 3604 AriaLabelledBy string `js:"aria-labelledby"` 3605 ClassName string `js:"className"` 3606 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3607 ID string `js:"id" react:"omitempty"` 3608 Key string `js:"key" react:"omitempty"` 3609 OnChange OnChange `js:"onChange"` 3610 OnClick OnClick `js:"onClick"` 3611 Placeholder string `js:"placeholder"` 3612 Ref Ref `js:"ref"` 3613 Role string `js:"role"` 3614 Style *CSS `js:"style"` 3615 Value string `js:"value"` 3616 } 3617 3618 rprops := &_TextAreaProps{ 3619 o: object.New(), 3620 } 3621 3622 if props != nil { 3623 rprops.AriaExpanded = props.AriaExpanded 3624 3625 rprops.AriaHasPopup = props.AriaHasPopup 3626 3627 rprops.AriaLabelledBy = props.AriaLabelledBy 3628 3629 rprops.ClassName = props.ClassName 3630 3631 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 3632 3633 if props.DataSet != nil { 3634 for dk, dv := range props.DataSet { 3635 rprops.o.Set("data-"+dk, dv) 3636 } 3637 } 3638 if props.ID != "" { 3639 rprops.ID = props.ID 3640 } 3641 if props.Key != "" { 3642 rprops.Key = props.Key 3643 } 3644 if props.OnChange != nil { 3645 rprops.o.Set("onChange", props.OnChange.OnChange) 3646 } 3647 if props.OnClick != nil { 3648 rprops.o.Set("onClick", props.OnClick.OnClick) 3649 } 3650 rprops.Placeholder = props.Placeholder 3651 3652 if props.Ref != nil { 3653 rprops.o.Set("ref", props.Ref.Ref) 3654 } 3655 rprops.Role = props.Role 3656 3657 // TODO: until we have a resolution on 3658 // https://github.com/gopherjs/gopherjs/issues/236 3659 rprops.Style = props.Style.hack() 3660 rprops.Value = props.Value 3661 } 3662 3663 return &TextAreaElem{ 3664 Element: createElement("textarea", rprops, children...), 3665 } 3666 } 3667 3668 // ThElem is the React element definition corresponding to the HTML <th> element 3669 type ThElem struct { 3670 Element 3671 } 3672 3673 func (a *ThElem) coreReactElement() {} 3674 3675 // ThProps defines the properties for the <th> element 3676 type ThProps struct { 3677 AriaExpanded bool 3678 AriaHasPopup bool 3679 AriaLabelledBy string 3680 ClassName string 3681 DangerouslySetInnerHTML *DangerousInnerHTML 3682 DataSet DataSet 3683 ID string 3684 Key string 3685 OnChange OnChange 3686 OnClick OnClick 3687 Ref Ref 3688 Role string 3689 Style *CSS 3690 } 3691 3692 // Th creates a new instance of a <th> element with the provided props and 3693 // children 3694 func Th(props *ThProps, children ...Element) *ThElem { 3695 type _ThProps struct { 3696 o *js.Object 3697 AriaExpanded bool `js:"aria-expanded"` 3698 AriaHasPopup bool `js:"aria-haspopup"` 3699 AriaLabelledBy string `js:"aria-labelledby"` 3700 ClassName string `js:"className"` 3701 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3702 ID string `js:"id" react:"omitempty"` 3703 Key string `js:"key" react:"omitempty"` 3704 OnChange OnChange `js:"onChange"` 3705 OnClick OnClick `js:"onClick"` 3706 Ref Ref `js:"ref"` 3707 Role string `js:"role"` 3708 Style *CSS `js:"style"` 3709 } 3710 3711 rprops := &_ThProps{ 3712 o: object.New(), 3713 } 3714 3715 if props != nil { 3716 rprops.AriaExpanded = props.AriaExpanded 3717 3718 rprops.AriaHasPopup = props.AriaHasPopup 3719 3720 rprops.AriaLabelledBy = props.AriaLabelledBy 3721 3722 rprops.ClassName = props.ClassName 3723 3724 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 3725 3726 if props.DataSet != nil { 3727 for dk, dv := range props.DataSet { 3728 rprops.o.Set("data-"+dk, dv) 3729 } 3730 } 3731 if props.ID != "" { 3732 rprops.ID = props.ID 3733 } 3734 if props.Key != "" { 3735 rprops.Key = props.Key 3736 } 3737 if props.OnChange != nil { 3738 rprops.o.Set("onChange", props.OnChange.OnChange) 3739 } 3740 if props.OnClick != nil { 3741 rprops.o.Set("onClick", props.OnClick.OnClick) 3742 } 3743 if props.Ref != nil { 3744 rprops.o.Set("ref", props.Ref.Ref) 3745 } 3746 rprops.Role = props.Role 3747 3748 // TODO: until we have a resolution on 3749 // https://github.com/gopherjs/gopherjs/issues/236 3750 rprops.Style = props.Style.hack() 3751 } 3752 3753 return &ThElem{ 3754 Element: createElement("th", rprops, children...), 3755 } 3756 } 3757 3758 // TheadElem is the React element definition corresponding to the HTML <thead> element 3759 type TheadElem struct { 3760 Element 3761 } 3762 3763 func (a *TheadElem) coreReactElement() {} 3764 3765 // TheadProps defines the properties for the <thead> element 3766 type TheadProps struct { 3767 AriaExpanded bool 3768 AriaHasPopup bool 3769 AriaLabelledBy string 3770 ClassName string 3771 DangerouslySetInnerHTML *DangerousInnerHTML 3772 DataSet DataSet 3773 ID string 3774 Key string 3775 OnChange OnChange 3776 OnClick OnClick 3777 Ref Ref 3778 Role string 3779 Style *CSS 3780 } 3781 3782 // Thead creates a new instance of a <thead> element with the provided props and 3783 // children 3784 func Thead(props *TheadProps, children ...Element) *TheadElem { 3785 type _TheadProps struct { 3786 o *js.Object 3787 AriaExpanded bool `js:"aria-expanded"` 3788 AriaHasPopup bool `js:"aria-haspopup"` 3789 AriaLabelledBy string `js:"aria-labelledby"` 3790 ClassName string `js:"className"` 3791 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3792 ID string `js:"id" react:"omitempty"` 3793 Key string `js:"key" react:"omitempty"` 3794 OnChange OnChange `js:"onChange"` 3795 OnClick OnClick `js:"onClick"` 3796 Ref Ref `js:"ref"` 3797 Role string `js:"role"` 3798 Style *CSS `js:"style"` 3799 } 3800 3801 rprops := &_TheadProps{ 3802 o: object.New(), 3803 } 3804 3805 if props != nil { 3806 rprops.AriaExpanded = props.AriaExpanded 3807 3808 rprops.AriaHasPopup = props.AriaHasPopup 3809 3810 rprops.AriaLabelledBy = props.AriaLabelledBy 3811 3812 rprops.ClassName = props.ClassName 3813 3814 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 3815 3816 if props.DataSet != nil { 3817 for dk, dv := range props.DataSet { 3818 rprops.o.Set("data-"+dk, dv) 3819 } 3820 } 3821 if props.ID != "" { 3822 rprops.ID = props.ID 3823 } 3824 if props.Key != "" { 3825 rprops.Key = props.Key 3826 } 3827 if props.OnChange != nil { 3828 rprops.o.Set("onChange", props.OnChange.OnChange) 3829 } 3830 if props.OnClick != nil { 3831 rprops.o.Set("onClick", props.OnClick.OnClick) 3832 } 3833 if props.Ref != nil { 3834 rprops.o.Set("ref", props.Ref.Ref) 3835 } 3836 rprops.Role = props.Role 3837 3838 // TODO: until we have a resolution on 3839 // https://github.com/gopherjs/gopherjs/issues/236 3840 rprops.Style = props.Style.hack() 3841 } 3842 3843 return &TheadElem{ 3844 Element: createElement("thead", rprops, children...), 3845 } 3846 } 3847 3848 // TrElem is the React element definition corresponding to the HTML <tr> element 3849 type TrElem struct { 3850 Element 3851 } 3852 3853 func (a *TrElem) coreReactElement() {} 3854 3855 // TrProps defines the properties for the <tr> element 3856 type TrProps struct { 3857 AriaExpanded bool 3858 AriaHasPopup bool 3859 AriaLabelledBy string 3860 ClassName string 3861 DangerouslySetInnerHTML *DangerousInnerHTML 3862 DataSet DataSet 3863 ID string 3864 Key string 3865 OnChange OnChange 3866 OnClick OnClick 3867 Ref Ref 3868 Role string 3869 Style *CSS 3870 } 3871 3872 // Tr creates a new instance of a <tr> element with the provided props and 3873 // children 3874 func Tr(props *TrProps, children ...Element) *TrElem { 3875 type _TrProps struct { 3876 o *js.Object 3877 AriaExpanded bool `js:"aria-expanded"` 3878 AriaHasPopup bool `js:"aria-haspopup"` 3879 AriaLabelledBy string `js:"aria-labelledby"` 3880 ClassName string `js:"className"` 3881 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3882 ID string `js:"id" react:"omitempty"` 3883 Key string `js:"key" react:"omitempty"` 3884 OnChange OnChange `js:"onChange"` 3885 OnClick OnClick `js:"onClick"` 3886 Ref Ref `js:"ref"` 3887 Role string `js:"role"` 3888 Style *CSS `js:"style"` 3889 } 3890 3891 rprops := &_TrProps{ 3892 o: object.New(), 3893 } 3894 3895 if props != nil { 3896 rprops.AriaExpanded = props.AriaExpanded 3897 3898 rprops.AriaHasPopup = props.AriaHasPopup 3899 3900 rprops.AriaLabelledBy = props.AriaLabelledBy 3901 3902 rprops.ClassName = props.ClassName 3903 3904 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 3905 3906 if props.DataSet != nil { 3907 for dk, dv := range props.DataSet { 3908 rprops.o.Set("data-"+dk, dv) 3909 } 3910 } 3911 if props.ID != "" { 3912 rprops.ID = props.ID 3913 } 3914 if props.Key != "" { 3915 rprops.Key = props.Key 3916 } 3917 if props.OnChange != nil { 3918 rprops.o.Set("onChange", props.OnChange.OnChange) 3919 } 3920 if props.OnClick != nil { 3921 rprops.o.Set("onClick", props.OnClick.OnClick) 3922 } 3923 if props.Ref != nil { 3924 rprops.o.Set("ref", props.Ref.Ref) 3925 } 3926 rprops.Role = props.Role 3927 3928 // TODO: until we have a resolution on 3929 // https://github.com/gopherjs/gopherjs/issues/236 3930 rprops.Style = props.Style.hack() 3931 } 3932 3933 return &TrElem{ 3934 Element: createElement("tr", rprops, children...), 3935 } 3936 } 3937 3938 // UlElem is the React element definition corresponding to the HTML <ul> element 3939 type UlElem struct { 3940 Element 3941 } 3942 3943 func (a *UlElem) coreReactElement() {} 3944 3945 // UlProps defines the properties for the <ul> element 3946 type UlProps struct { 3947 AriaExpanded bool 3948 AriaHasPopup bool 3949 AriaLabelledBy string 3950 ClassName string 3951 DangerouslySetInnerHTML *DangerousInnerHTML 3952 DataSet DataSet 3953 ID string 3954 Key string 3955 OnChange OnChange 3956 OnClick OnClick 3957 Ref Ref 3958 Role string 3959 Style *CSS 3960 } 3961 3962 // Ul creates a new instance of a <ul> element with the provided props and 3963 // children 3964 func Ul(props *UlProps, children ...RendersLi) *UlElem { 3965 type _UlProps struct { 3966 o *js.Object 3967 AriaExpanded bool `js:"aria-expanded"` 3968 AriaHasPopup bool `js:"aria-haspopup"` 3969 AriaLabelledBy string `js:"aria-labelledby"` 3970 ClassName string `js:"className"` 3971 DangerouslySetInnerHTML *DangerousInnerHTML `js:"dangerouslySetInnerHTML"` 3972 ID string `js:"id" react:"omitempty"` 3973 Key string `js:"key" react:"omitempty"` 3974 OnChange OnChange `js:"onChange"` 3975 OnClick OnClick `js:"onClick"` 3976 Ref Ref `js:"ref"` 3977 Role string `js:"role"` 3978 Style *CSS `js:"style"` 3979 } 3980 3981 var elems []Element 3982 for _, v := range children { 3983 elems = append(elems, v) 3984 } 3985 3986 rprops := &_UlProps{ 3987 o: object.New(), 3988 } 3989 3990 if props != nil { 3991 rprops.AriaExpanded = props.AriaExpanded 3992 3993 rprops.AriaHasPopup = props.AriaHasPopup 3994 3995 rprops.AriaLabelledBy = props.AriaLabelledBy 3996 3997 rprops.ClassName = props.ClassName 3998 3999 rprops.DangerouslySetInnerHTML = props.DangerouslySetInnerHTML 4000 4001 if props.DataSet != nil { 4002 for dk, dv := range props.DataSet { 4003 rprops.o.Set("data-"+dk, dv) 4004 } 4005 } 4006 if props.ID != "" { 4007 rprops.ID = props.ID 4008 } 4009 if props.Key != "" { 4010 rprops.Key = props.Key 4011 } 4012 if props.OnChange != nil { 4013 rprops.o.Set("onChange", props.OnChange.OnChange) 4014 } 4015 if props.OnClick != nil { 4016 rprops.o.Set("onClick", props.OnClick.OnClick) 4017 } 4018 if props.Ref != nil { 4019 rprops.o.Set("ref", props.Ref.Ref) 4020 } 4021 rprops.Role = props.Role 4022 4023 // TODO: until we have a resolution on 4024 // https://github.com/gopherjs/gopherjs/issues/236 4025 rprops.Style = props.Style.hack() 4026 } 4027 4028 return &UlElem{ 4029 Element: createElement("ul", rprops, elems...), 4030 } 4031 }