
react.semanticui.elements.button.Button.scala Maven / Gradle / Ivy
package react.semanticui.elements.button
import scala.scalajs.js
import js.annotation._
import js.|
import japgolly.scalajs.react._
import japgolly.scalajs.react.raw.React
import japgolly.scalajs.react.component.Js.RawMounted
import japgolly.scalajs.react.component.Js.UnmountedMapped
import japgolly.scalajs.react.vdom.VdomNode
import japgolly.scalajs.react.internal.Effect.Id
import react.common.syntax._
import react.semanticui.{ raw => suiraw }
import react.semanticui._
import react.semanticui.sizes._
import react.semanticui.colors._
import react.semanticui.floats._
import react.semanticui.elements.label.Label.LabelProps
import react.semanticui.elements.label.UnmountedLabel
import react.semanticui.elements.icon.Icon.IconProps
import react.semanticui.elements.icon.UnmountedIcon
object Button {
type OnClick = (ReactMouseEvent, ButtonProps) => Callback
@js.native
@JSImport("semantic-ui-react", "Button")
object RawComponent extends js.Object
@js.native
trait ButtonProps extends js.Object {
@JSBracketAccess
def apply(key: String): js.Any = js.native
@JSBracketAccess
def update(key: String, v: js.Any): Unit = js.native
var as: js.UndefOr[AsT] = js.native
var active: js.UndefOr[Boolean] = js.native
var animated: js.UndefOr[Boolean | String] = js.native
var attached: js.UndefOr[Boolean | String] = js.native
var basic: js.UndefOr[Boolean] = js.native
var children: js.UndefOr[React.Node] = js.native
var circular: js.UndefOr[Boolean] = js.native
var className: js.UndefOr[String] = js.native
var color: js.UndefOr[String] = js.native
var compact: js.UndefOr[Boolean] = js.native
var content: js.UndefOr[suiraw.SemanticShorthandContent] = js.native
var disabled: js.UndefOr[Boolean] = js.native
var floated: js.UndefOr[suiraw.SemanticFLOATS] = js.native
var fluid: js.UndefOr[Boolean] = js.native
var icon: js.UndefOr[suiraw.SemanticShorthandItem[IconProps]] =
js.native
var inverted: js.UndefOr[Boolean] = js.native
var label: js.UndefOr[suiraw.SemanticShorthandItem[LabelProps]] = js.native
var labelPosition: js.UndefOr[String] = js.native
var loading: js.UndefOr[Boolean] = js.native
var negative: js.UndefOr[Boolean] = js.native
var onClick: js.UndefOr[js.Function2[ReactMouseEvent, ButtonProps, Unit]] = js.native
var positive: js.UndefOr[Boolean] = js.native
var primary: js.UndefOr[Boolean] = js.native
var role: js.UndefOr[Boolean] = js.native
var secondary: js.UndefOr[Boolean] = js.native
var size: js.UndefOr[suiraw.SemanticSIZES] = js.native
var tabIndex: js.UndefOr[Double | String] = js.native
var toggle: js.UndefOr[Boolean] = js.native
}
def props(
as: js.UndefOr[AsC] = js.undefined,
active: js.UndefOr[Boolean] = js.undefined,
animated: js.UndefOr[ButtonAnimated] = js.undefined,
attached: js.UndefOr[ButtonAttached] = js.undefined,
basic: js.UndefOr[Boolean] = js.undefined,
children: js.UndefOr[VdomNode] = js.undefined,
circular: js.UndefOr[Boolean] = js.undefined,
className: js.UndefOr[String] = js.undefined,
color: js.UndefOr[SemanticColor] = js.undefined,
compact: js.UndefOr[Boolean] = js.undefined,
content: js.UndefOr[VdomNode] = js.undefined,
disabled: js.UndefOr[Boolean] = js.undefined,
floated: js.UndefOr[SemanticFloats] = js.undefined,
fluid: js.UndefOr[Boolean] = js.undefined,
icon: js.UndefOr[UnmountedIcon] = js.undefined,
inverted: js.UndefOr[Boolean] = js.undefined,
label: js.UndefOr[UnmountedLabel] = js.undefined,
labelPosition: js.UndefOr[String] = js.undefined,
loading: js.UndefOr[Boolean] = js.undefined,
negative: js.UndefOr[Boolean] = js.undefined,
onClickE: js.UndefOr[OnClick] = js.undefined,
onClick: js.UndefOr[Callback] = js.undefined,
positive: js.UndefOr[Boolean] = js.undefined,
primary: js.UndefOr[Boolean] = js.undefined,
role: js.UndefOr[Boolean] = js.undefined,
secondary: js.UndefOr[Boolean] = js.undefined,
size: js.UndefOr[SemanticSize] = js.undefined,
tabIndex: js.UndefOr[TabIndex] = js.undefined,
toggle: js.UndefOr[Boolean] = js.undefined
): ButtonProps = {
val p = as.toJsObject[ButtonProps]
p.as = as.toJs
p.active = active
p.animated = animated.toJs
p.attached = attached.toJs
p.basic = basic
p.children = children.toJs
p.circular = circular
p.className = className
p.color = color.toJs
p.compact = compact
p.content = content.toJs
p.disabled = disabled
p.floated = floated.toJs
p.fluid = fluid
p.icon = icon.map(_.props)
p.inverted = inverted
p.label = label.map(_.props)
p.labelPosition = labelPosition
p.loading = loading
p.negative = negative
p.onClick = (onClickE, onClick).toJs
p.positive = positive
p.primary = primary
p.role = role
p.secondary = secondary
p.size = size.toJs
p.tabIndex = tabIndex
p.toggle = toggle
p
}
private val component =
JsComponent[ButtonProps, Children.Varargs, Null](RawComponent)
def apply(p: ButtonProps, children: VdomNode*)
: UnmountedMapped[Id, ButtonProps, Null, RawMounted[ButtonProps, Null], ButtonProps, Null] =
component(p)(children: _*)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy