github.com/jgarto/itcv@v0.0.0-20180826224514-4eea09c1aa0d/core.go (about)

     1  // Copyright (c) 2016 Paul Jolly <paul@myitcv.org.uk>, all rights reserved.
     2  // Use of this document is governed by a license found in the LICENSE document.
     3  
     4  package react
     5  
     6  import (
     7  	"github.com/gopherjs/gopherjs/js"
     8  	"honnef.co/go/js/dom"
     9  )
    10  
    11  type AriaSet map[string]string
    12  type DataSet map[string]string
    13  
    14  type SyntheticEvent struct {
    15  	o *js.Object
    16  
    17  	PreventDefault  func() `js:"preventDefault"`
    18  	StopPropagation func() `js:"stopPropagation"`
    19  }
    20  
    21  func (s *SyntheticEvent) Target() dom.HTMLElement {
    22  	return dom.WrapHTMLElement(s.o.Get("target"))
    23  }
    24  
    25  type SyntheticMouseEvent struct {
    26  	*SyntheticEvent
    27  
    28  	ClientX int `js:"clientX"`
    29  }
    30  
    31  type RendersLi interface {
    32  	Element
    33  	RendersLi(*LiElem)
    34  }
    35  
    36  type Event interface{}
    37  
    38  type Ref interface {
    39  	Ref(h *js.Object)
    40  }
    41  
    42  type OnChange interface {
    43  	Event
    44  
    45  	OnChange(e *SyntheticEvent)
    46  }
    47  
    48  type OnClick interface {
    49  	Event
    50  
    51  	OnClick(e *SyntheticMouseEvent)
    52  }