Documentation
¶
Overview ¶
Package htmx adapts Ohm HTML views to htmx request and response headers.
Index ¶
- Constants
- Variables
- func Render(req *ohm.Request, status int, view ohm.HTMLView, opts ...Option) error
- func Select(r *http.Request, view ohm.HTMLView, opts ...Option) (ohm.HTML, error)
- func SetLocation(w http.ResponseWriter, path string)
- func SetPushURL(w http.ResponseWriter, url string)
- func SetRedirect(w http.ResponseWriter, url string)
- func SetRefresh(w http.ResponseWriter)
- func SetReplaceURL(w http.ResponseWriter, url string)
- func SetReselect(w http.ResponseWriter, selector string)
- func SetReswap(w http.ResponseWriter, swap string)
- func SetRetarget(w http.ResponseWriter, selector string)
- func SetTrigger(w http.ResponseWriter, event string)
- func SetTriggerAfterSettle(w http.ResponseWriter, event string)
- func SetTriggerAfterSwap(w http.ResponseWriter, event string)
- type Option
- type Request
- type UnknownTargetError
Constants ¶
const ( // HeaderBoosted identifies requests made through hx-boost. HeaderBoosted = "HX-Boosted" // HeaderCurrentURL carries the browser's current URL. HeaderCurrentURL = "HX-Current-URL" // HeaderHistoryRestoreRequest identifies a history cache miss restore. HeaderHistoryRestoreRequest = "HX-History-Restore-Request" // HeaderPrompt carries the user response to hx-prompt. HeaderPrompt = "HX-Prompt" // HeaderRequest identifies htmx requests. HeaderRequest = "HX-Request" // HeaderTarget carries the target element id when one exists. HeaderTarget = "HX-Target" // HeaderTrigger carries the triggering id on requests and events on responses. HeaderTrigger = "HX-Trigger" // HeaderTriggerName carries the name of the triggering element when one exists. HeaderTriggerName = "HX-Trigger-Name" // HeaderLocation performs a client-side redirect without a full reload. HeaderLocation = "HX-Location" // HeaderPushURL pushes a URL into the browser history stack. HeaderPushURL = "HX-Push-Url" // HeaderRedirect redirects the browser to a new location. HeaderRedirect = "HX-Redirect" // HeaderRefresh asks the browser to perform a full refresh. HeaderRefresh = "HX-Refresh" // HeaderReplaceURL replaces the current URL in the browser history stack. HeaderReplaceURL = "HX-Replace-Url" // HeaderReselect selects part of the response for swapping. HeaderReselect = "HX-Reselect" // HeaderReswap overrides the swap behavior. HeaderReswap = "HX-Reswap" // HeaderRetarget overrides the response target. HeaderRetarget = "HX-Retarget" // HeaderTriggerAfterSettle triggers client events after settle. HeaderTriggerAfterSettle = "HX-Trigger-After-Settle" // HeaderTriggerAfterSwap triggers client events after swap. HeaderTriggerAfterSwap = "HX-Trigger-After-Swap" )
Variables ¶
var ErrUnknownTarget = errors.New("unknown htmx target")
ErrUnknownTarget identifies an htmx request target with no matching fragment.
Functions ¶
func SetLocation ¶
func SetLocation(w http.ResponseWriter, path string)
SetLocation sets HX-Location.
func SetRedirect ¶
func SetRedirect(w http.ResponseWriter, url string)
SetRedirect sets HX-Redirect.
func SetReplaceURL ¶
func SetReplaceURL(w http.ResponseWriter, url string)
SetReplaceURL sets HX-Replace-Url.
func SetReselect ¶
func SetReselect(w http.ResponseWriter, selector string)
SetReselect sets HX-Reselect.
func SetRetarget ¶
func SetRetarget(w http.ResponseWriter, selector string)
SetRetarget sets HX-Retarget.
func SetTriggerAfterSettle ¶
func SetTriggerAfterSettle(w http.ResponseWriter, event string)
SetTriggerAfterSettle sets HX-Trigger-After-Settle.
func SetTriggerAfterSwap ¶
func SetTriggerAfterSwap(w http.ResponseWriter, event string)
SetTriggerAfterSwap sets HX-Trigger-After-Swap.
Types ¶
type Option ¶
type Option func(*renderOptions)
Option configures htmx rendering.
func WithSingleFragmentFallback ¶
func WithSingleFragmentFallback() Option
WithSingleFragmentFallback renders the only fragment for targetless htmx requests.
type Request ¶
type Request struct {
// contains filtered or unexported fields
}
Request describes the htmx-specific request headers Ohm uses.
func ParseRequest ¶
ParseRequest extracts htmx request information from r.
func (Request) CurrentURL ¶
CurrentURL returns the browser's current URL, when htmx sent one.
func (Request) IsHistoryRestore ¶
IsHistoryRestore reports whether htmx is restoring a history cache miss.
func (Request) TriggerName ¶
TriggerName returns the triggering element name, when htmx sent one.
type UnknownTargetError ¶
type UnknownTargetError struct {
// Target is the requested htmx target.
Target string
// KnownTargets is the set of fragment targets declared by the view.
KnownTargets []string
}
UnknownTargetError describes an htmx target that does not match a fragment.
func (*UnknownTargetError) Error ¶
func (e *UnknownTargetError) Error() string
Error returns a human-readable unknown target error.
func (*UnknownTargetError) Is ¶
func (e *UnknownTargetError) Is(target error) bool
Is reports whether target matches ErrUnknownTarget.