filters

package
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 18, 2026 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AbsFilter

func AbsFilter(value interface{}, args ...interface{}) (interface{}, error)

AbsFilter returns the absolute value of a number

func AgeFilter

func AgeFilter(value interface{}, args ...interface{}) (interface{}, error)

AgeFilter calculates age in years from a date

func AttrFilter

func AttrFilter(value interface{}, args ...interface{}) (interface{}, error)

AttrFilter extracts an attribute from an object

func AutoEscapeFilter

func AutoEscapeFilter(value interface{}, args ...interface{}) (interface{}, error)

AutoEscapeFilter conditionally escapes based on context

func BatchFilter

func BatchFilter(value interface{}, args ...interface{}) (interface{}, error)

BatchFilter creates batches of items

func CapitalizeFilter

func CapitalizeFilter(value interface{}, args ...interface{}) (interface{}, error)

CapitalizeFilter capitalizes the first character

func CeilFilter

func CeilFilter(value interface{}, args ...interface{}) (interface{}, error)

CeilFilter returns the ceiling (smallest integer greater than or equal to) of a number

func CenterFilter

func CenterFilter(value interface{}, args ...interface{}) (interface{}, error)

CenterFilter centers string in field of given width

func ContainsFilter

func ContainsFilter(value interface{}, args ...interface{}) (interface{}, error)

ContainsFilter checks if string contains substring

func CurrencyFilter

func CurrencyFilter(value interface{}, args ...interface{}) (interface{}, error)

CurrencyFilter formats a number as currency with proper thousands separators

func DateFilter

func DateFilter(value interface{}, args ...interface{}) (interface{}, error)

DateFilter formats a date/time value

func DatetimeFilter

func DatetimeFilter(value interface{}, args ...interface{}) (interface{}, error)

DatetimeFilter formats a datetime value

func DefaultFilter

func DefaultFilter(value interface{}, args ...interface{}) (interface{}, error)

DefaultFilter returns default value if input is falsy

func DictSortFilter

func DictSortFilter(value interface{}, args ...interface{}) (interface{}, error)

DictSortFilter sorts a dictionary by keys or values

func EndswithFilter

func EndswithFilter(value interface{}, args ...interface{}) (interface{}, error)

EndswithFilter checks if string ends with suffix

func EscapeFilter

func EscapeFilter(value interface{}, args ...interface{}) (interface{}, error)

EscapeFilter escapes HTML characters

func FileSizeFormatFilter

func FileSizeFormatFilter(value interface{}, args ...interface{}) (interface{}, error)

FileSizeFormatFilter formats file sizes in human-readable format

func FirstFilter

func FirstFilter(value interface{}, args ...interface{}) (interface{}, error)

FirstFilter returns the first item in a sequence

func FloatFilter

func FloatFilter(value interface{}, args ...interface{}) (interface{}, error)

FloatFilter converts value to float

func FloorFilter

func FloorFilter(value interface{}, args ...interface{}) (interface{}, error)

FloorFilter returns the floor (largest integer less than or equal to) of a number

func ForceEscapeFilter

func ForceEscapeFilter(value interface{}, args ...interface{}) (interface{}, error)

ForceEscapeFilter forces HTML escaping even for safe values

func FormatFilter

func FormatFilter(value interface{}, args ...interface{}) (result interface{}, err error)

FormatFilter formats string using Printf-style formatting Note: This safely handles format strings by recovering from panics and validating that the format doesn't cause issues

func FormatNumberFilter

func FormatNumberFilter(value interface{}, args ...interface{}) (interface{}, error)

FormatNumberFilter formats a number with thousands separators

func FromJSONFilter

func FromJSONFilter(value interface{}, args ...interface{}) (interface{}, error)

FromJSONFilter parses JSON string to value

func GroupByFilter

func GroupByFilter(value interface{}, args ...interface{}) (interface{}, error)

GroupByFilter groups sequence items by attribute

func IndentFilter

func IndentFilter(value interface{}, args ...interface{}) (interface{}, error)

IndentFilter indents each line

func IntFilter

func IntFilter(value interface{}, args ...interface{}) (interface{}, error)

IntFilter converts value to integer

func ItemsFilter

func ItemsFilter(value interface{}, args ...interface{}) (interface{}, error)

ItemsFilter returns (key, value) pairs for dictionaries

func JoinFilter

func JoinFilter(value interface{}, args ...interface{}) (interface{}, error)

JoinFilter joins sequence elements with separator

func KeysFilter

func KeysFilter(value interface{}, args ...interface{}) (interface{}, error)

KeysFilter returns keys from a dictionary

func LastFilter

func LastFilter(value interface{}, args ...interface{}) (interface{}, error)

LastFilter returns the last item in a sequence

func LengthFilter

func LengthFilter(value interface{}, args ...interface{}) (interface{}, error)

LengthFilter returns the length of a sequence or mapping

func ListFilter

func ListFilter(value interface{}, args ...interface{}) (interface{}, error)

ListFilter converts value to list

func LowerFilter

func LowerFilter(value interface{}, args ...interface{}) (interface{}, error)

LowerFilter converts string to lowercase

func LstripFilter

func LstripFilter(value interface{}, args ...interface{}) (interface{}, error)

LstripFilter removes leading whitespace

func MapFilter

func MapFilter(value interface{}, args ...interface{}) (interface{}, error)

MapFilter applies an attribute or filter to each item

func MarkSafeFilter

func MarkSafeFilter(value interface{}, args ...interface{}) (interface{}, error)

MarkSafeFilter marks content as safe (alias for safe)

func MaxFilter

func MaxFilter(value interface{}, args ...interface{}) (interface{}, error)

MaxFilter returns the maximum value in a sequence

func MinFilter

func MinFilter(value interface{}, args ...interface{}) (interface{}, error)

MinFilter returns the minimum value in a sequence

func MonthNameFilter

func MonthNameFilter(value interface{}, args ...interface{}) (interface{}, error)

MonthNameFilter returns the month name

func NL2BRFilter

func NL2BRFilter(value interface{}, args ...interface{}) (interface{}, error)

NL2BRFilter converts newlines to HTML <br> tags

func PPrintFilter

func PPrintFilter(value interface{}, args ...interface{}) (interface{}, error)

PPrintFilter formats value for pretty printing

func PadLeftFilter

func PadLeftFilter(value interface{}, args ...interface{}) (interface{}, error)

PadLeftFilter pads string on the left

func PadRightFilter

func PadRightFilter(value interface{}, args ...interface{}) (interface{}, error)

PadRightFilter pads string on the right

func PowFilter

func PowFilter(value interface{}, args ...interface{}) (interface{}, error)

PowFilter returns the power of a number (value ** exponent)

func RandomFilter

func RandomFilter(value interface{}, args ...interface{}) (interface{}, error)

RandomFilter returns a random item from sequence (simplified - not truly random)

func RegexFindallFilter

func RegexFindallFilter(value interface{}, args ...interface{}) (interface{}, error)

RegexFindallFilter finds all matches of pattern

func RegexReplaceFilter

func RegexReplaceFilter(value interface{}, args ...interface{}) (interface{}, error)

RegexReplaceFilter replaces text using regular expressions

func RegexSearchFilter

func RegexSearchFilter(value interface{}, args ...interface{}) (interface{}, error)

RegexSearchFilter searches for pattern and returns first match

func RejectAttrFilter

func RejectAttrFilter(value interface{}, args ...interface{}) (interface{}, error)

RejectAttrFilter rejects items with a specific attribute value

func RejectFilter

func RejectFilter(value interface{}, args ...interface{}) (interface{}, error)

RejectFilter rejects items that pass a test

func RelativeDateFilter

func RelativeDateFilter(value interface{}, args ...interface{}) (interface{}, error)

RelativeDateFilter returns human-readable relative date

func ReplaceFilter

func ReplaceFilter(value interface{}, args ...interface{}) (interface{}, error)

ReplaceFilter replaces occurrences of old with new

func ReverseFilter

func ReverseFilter(value interface{}, args ...interface{}) (interface{}, error)

ReverseFilter reverses a sequence

func RoundFilter

func RoundFilter(value interface{}, args ...interface{}) (interface{}, error)

RoundFilter rounds a number to specified precision

func RstripFilter

func RstripFilter(value interface{}, args ...interface{}) (interface{}, error)

RstripFilter removes trailing whitespace

func SafeFilter

func SafeFilter(value interface{}, args ...interface{}) (interface{}, error)

SafeFilter marks a value as safe (won't be escaped)

func SelectAttrFilter

func SelectAttrFilter(value interface{}, args ...interface{}) (interface{}, error)

SelectAttrFilter selects items with a specific attribute value

func SelectFilter

func SelectFilter(value interface{}, args ...interface{}) (interface{}, error)

SelectFilter selects items that pass a test

func SliceFilter

func SliceFilter(value interface{}, args ...interface{}) (interface{}, error)

SliceFilter returns a slice of the sequence

func SlugifyFilter

func SlugifyFilter(value interface{}, args ...interface{}) (interface{}, error)

SlugifyFilter creates URL-friendly slug from string

func SortFilter

func SortFilter(value interface{}, args ...interface{}) (interface{}, error)

SortFilter sorts a sequence

func SplitFilter

func SplitFilter(value interface{}, args ...interface{}) (interface{}, error)

SplitFilter splits string on delimiter

func StartswithFilter

func StartswithFilter(value interface{}, args ...interface{}) (interface{}, error)

StartswithFilter checks if string starts with prefix

func StrftimeFilter

func StrftimeFilter(value interface{}, args ...interface{}) (interface{}, error)

StrftimeFilter formats time using strftime-like format

func StringFilter

func StringFilter(value interface{}, args ...interface{}) (interface{}, error)

StringFilter converts value to string

func StripTagsFilter

func StripTagsFilter(value interface{}, args ...interface{}) (interface{}, error)

StripTagsFilter removes HTML/XML tags

func SumFilter

func SumFilter(value interface{}, args ...interface{}) (interface{}, error)

SumFilter sums numeric values in a sequence

func TimeFilter

func TimeFilter(value interface{}, args ...interface{}) (interface{}, error)

TimeFilter formats a time value

func TimestampFilter

func TimestampFilter(value interface{}, args ...interface{}) (interface{}, error)

TimestampFilter returns Unix timestamp

func TitleFilter

func TitleFilter(value interface{}, args ...interface{}) (interface{}, error)

TitleFilter converts string to title case

func ToBool

func ToBool(value interface{}) bool

func ToFloat

func ToFloat(value interface{}) (float64, error)

Helper function for numeric filters

func ToInt

func ToInt(value interface{}) (int, error)

func ToJSONFilter

func ToJSONFilter(value interface{}, args ...interface{}) (interface{}, error)

ToJSONFilter converts value to JSON string. Returns a SafeValue to prevent HTML auto-escaping, matching Jinja2's tojson behavior which returns Markup. This is necessary for safe embedding of JSON in <script> blocks where HTML entities are not decoded.

func ToString

func ToString(value interface{}) string

func TrimFilter

func TrimFilter(value interface{}, args ...interface{}) (interface{}, error)

TrimFilter removes leading and trailing whitespace

func TruncateFilter

func TruncateFilter(value interface{}, args ...interface{}) (interface{}, error)

TruncateFilter truncates string to specified length

func TruncateHTMLFilter

func TruncateHTMLFilter(value interface{}, args ...interface{}) (interface{}, error)

TruncateHTMLFilter truncates HTML content safely

func URLEncodeFilter

func URLEncodeFilter(value interface{}, args ...interface{}) (interface{}, error)

URLEncodeFilter URL-encodes a string

func UniqueFilter

func UniqueFilter(value interface{}, args ...interface{}) (interface{}, error)

UniqueFilter removes duplicate items from sequence

func UpperFilter

func UpperFilter(value interface{}, args ...interface{}) (interface{}, error)

UpperFilter converts string to uppercase

func UrlizeFilter

func UrlizeFilter(value interface{}, args ...interface{}) (interface{}, error)

UrlizeFilter converts URLs in text to clickable links

func UrlizeTargetFilter

func UrlizeTargetFilter(value interface{}, args ...interface{}) (interface{}, error)

UrlizeTargetFilter is like urlize but with a specific target

func UrlizeTruncateFilter

func UrlizeTruncateFilter(value interface{}, args ...interface{}) (interface{}, error)

UrlizeTruncateFilter combines urlize with truncation

func ValuesFilter

func ValuesFilter(value interface{}, args ...interface{}) (interface{}, error)

ValuesFilter returns values from a dictionary

func WeekdayFilter

func WeekdayFilter(value interface{}, args ...interface{}) (interface{}, error)

WeekdayFilter returns the weekday name

func WordcountFilter

func WordcountFilter(value interface{}, args ...interface{}) (interface{}, error)

WordcountFilter counts words in a string

func WordwrapFilter

func WordwrapFilter(value interface{}, args ...interface{}) (interface{}, error)

WordwrapFilter wraps words at specified width

func XMLAttrFilter

func XMLAttrFilter(value interface{}, args ...interface{}) (interface{}, error)

XMLAttrFilter formats attributes for XML/HTML

func ZipFilter

func ZipFilter(value interface{}, args ...interface{}) (interface{}, error)

ZipFilter combines multiple sequences into tuples

Types

type FilterFunc

type FilterFunc func(value interface{}, args ...interface{}) (interface{}, error)

type FilterRegistry

type FilterRegistry struct {
	// contains filtered or unexported fields
}

func NewRegistry

func NewRegistry() *FilterRegistry

func (*FilterRegistry) Apply

func (r *FilterRegistry) Apply(name string, value interface{}, args ...interface{}) (interface{}, error)

func (*FilterRegistry) Get

func (r *FilterRegistry) Get(name string) (FilterFunc, bool)

func (*FilterRegistry) List

func (r *FilterRegistry) List() []string

func (*FilterRegistry) Register

func (r *FilterRegistry) Register(name string, fn FilterFunc) error

func (*FilterRegistry) Unregister

func (r *FilterRegistry) Unregister(name string) bool

type SafeValue

type SafeValue struct {
	Value interface{}
}

SafeValue represents a value that should not be escaped

func (SafeValue) String

func (s SafeValue) String() string

String returns the string representation of the safe value

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL