// templui component popover - version: v0.84.0 installed by templui v0.84.0 package popover import ( "git.jmbit.de/jmb/scanfile/server/web/templui/utils" "strconv" ) type Placement string const ( PlacementTop Placement = "top" PlacementTopStart Placement = "top-start" PlacementTopEnd Placement = "top-end" PlacementRight Placement = "right" PlacementRightStart Placement = "right-start" PlacementRightEnd Placement = "right-end" PlacementBottom Placement = "bottom" PlacementBottomStart Placement = "bottom-start" PlacementBottomEnd Placement = "bottom-end" PlacementLeft Placement = "left" PlacementLeftStart Placement = "left-start" PlacementLeftEnd Placement = "left-end" ) type TriggerType string const ( TriggerTypeHover TriggerType = "hover" TriggerTypeClick TriggerType = "click" ) type TriggerProps struct { ID string Class string Attributes templ.Attributes For string TriggerType TriggerType } type ContentProps struct { ID string Class string Attributes templ.Attributes Placement Placement Offset int DisableClickAway bool DisableESC bool ShowArrow bool HoverDelay int HoverOutDelay int MatchWidth bool } templ Trigger(props ...TriggerProps) { {{ var p TriggerProps }} if len(props) > 0 { {{ p = props[0] }} } if p.TriggerType == "" { {{ p.TriggerType = TriggerTypeClick }} } { children... } } templ Content(props ...ContentProps) { {{ var p ContentProps }} if len(props) > 0 { {{ p = props[0] }} } if p.Placement == "" { {{ p.Placement = PlacementBottom }} } if p.Offset == 0 { if p.ShowArrow { {{ p.Offset = 8 }} } else { {{ p.Offset = 4 }} } } } templ Script() { }