golazy.dev golazy.dev / lazyturbo Index | Files

package lazyturbo

import "golazy.dev/lazyturbo"

Package lazyturbo provides Hotwire Turbo helpers for controllers and views.

Constants

const StreamMIME

const (
	StreamMIME = "text/vnd.turbo-stream.html"
)

Functions

func AcceptsStream

AcceptsStream reports whether r advertises Turbo Stream response support.

func AcceptsStream(r *http.Request) bool

func FrameID

FrameID returns the Turbo frame id requested by r.

func FrameID(r *http.Request) string

func Helpers

Helpers returns the template helpers provided by lazyturbo.

func Helpers() map[string]any

func IsFrameRequest

IsFrameRequest reports whether r was issued for a Turbo Frame.

func IsFrameRequest(r *http.Request) bool

func IsPrefetch

IsPrefetch reports whether r is a Turbo link prefetch request.

func IsPrefetch(r *http.Request) bool

func ValidateFrameID

ValidateFrameID checks whether id is safe to use as both a DOM id and a frame partial name.

func ValidateFrameID(id string) error

Types

type FrameOption

FrameOption configures a rendered <turbo-frame> element.

type FrameOption struct {
	// contains filtered or unexported fields
}
func Action

Action sets data-turbo-action. Valid values are advance and replace.

func Action(action string) FrameOption
func Autoscroll

Autoscroll sets the frame autoscroll boolean attribute.

func Autoscroll() FrameOption
func AutoscrollBehavior

AutoscrollBehavior sets data-autoscroll-behavior. Valid values are auto and smooth.

func AutoscrollBehavior(behavior string) FrameOption
func AutoscrollBlock

AutoscrollBlock sets data-autoscroll-block. Valid values are end, start, center, and nearest.

func AutoscrollBlock(block string) FrameOption
func Busy

Busy sets the frame busy boolean attribute.

func Busy() FrameOption
func Complete

Complete sets the frame complete boolean attribute.

func Complete() FrameOption
func Disabled

Disabled sets the frame disabled boolean attribute.

func Disabled() FrameOption
func Loading

Loading sets the frame loading attribute. Valid values are eager and lazy.

func Loading(loading string) FrameOption
func Recurse

Recurse sets the frame recurse attribute.

func Recurse(frameID string) FrameOption
func Refresh

Refresh sets the frame refresh attribute. Turbo currently defines morph.

func Refresh(refresh string) FrameOption
func RefreshMorph

RefreshMorph sets refresh="morph".

func RefreshMorph() FrameOption
func Src

Src sets the frame src attribute.

func Src(src string) FrameOption
func Target

Target sets the frame target attribute.

func Target(target string) FrameOption