cutil

package
v0.9.25 Latest Latest
Warning

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

Go to latest
Published: Jun 21, 2023 License: MIT Imports: 33 Imported by: 0

Documentation

Overview

Content managed by Project Forge, see [projectforge.md] for details.

Content managed by Project Forge, see [projectforge.md] for details.

Content managed by Project Forge, see [projectforge.md] for details.

Content managed by Project Forge, see [projectforge.md] for details.

Content managed by Project Forge, see [projectforge.md] for details.

Content managed by Project Forge, see [projectforge.md] for details.

Content managed by Project Forge, see [projectforge.md] for details.

Content managed by Project Forge, see [projectforge.md] for details.

Content managed by Project Forge, see [projectforge.md] for details.

Content managed by Project Forge, see [projectforge.md] for details.

Index

Constants

View Source
const (
	DefaultSearchPath  = "/search"
	DefaultProfilePath = "/profile"
)
View Source
const (
	PageComment = "Thanks for viewing the source; we tried to make it pretty for you"
)

Variables

View Source
var (
	AllowedRequestHeaders  = "*"
	AllowedResponseHeaders = "*"
)

Functions

func CleanID added in v0.8.0

func CleanID(key string, id string) string

func DecryptMessage

func DecryptMessage(message string, logger util.Logger) (string, error)

func EncryptMessage

func EncryptMessage(message string, logger util.Logger) (string, error)

func FormatCleanMarkup added in v0.7.6

func FormatCleanMarkup(s string, icon string) (string, string, error)

func FormatFilename

func FormatFilename(content string, filename string) (string, error)

func FormatJSON

func FormatJSON(v any) (string, error)

func FormatLang

func FormatLang(content string, lang string) (string, error)

func FormatLangIgnoreErrors

func FormatLangIgnoreErrors(content string, lang string) string

func FormatMarkdown added in v0.7.5

func FormatMarkdown(s string) (string, error)

func FormatString

func FormatString(content string, l chroma.Lexer) (string, error)

func GetContentType

func GetContentType(rc *fasthttp.RequestCtx) string

func IsContentTypeJSON

func IsContentTypeJSON(c string) bool

func IsContentTypeXML

func IsContentTypeXML(c string) bool

func IsContentTypeYAML

func IsContentTypeYAML(c string) bool

func ParamSetFromRequest

func ParamSetFromRequest(rc *fasthttp.RequestCtx) filter.ParamSet

func ParseForm

func ParseForm(rc *fasthttp.RequestCtx) (util.ValueMap, error)

func ParseFormAsChanges

func ParseFormAsChanges(rc *fasthttp.RequestCtx) (util.ValueMap, error)

func QueryStringBool added in v0.2.38

func QueryStringBool(rc *fasthttp.RequestCtx, key string) bool

func RCRequiredArray added in v0.6.15

func RCRequiredArray(rc *fasthttp.RequestCtx, key string) ([]string, error)

func RCRequiredBool added in v0.2.38

func RCRequiredBool(rc *fasthttp.RequestCtx, key string) (bool, error)

func RCRequiredInt added in v0.2.38

func RCRequiredInt(rc *fasthttp.RequestCtx, key string) (int, error)

func RCRequiredString added in v0.2.38

func RCRequiredString(rc *fasthttp.RequestCtx, key string, allowEmpty bool) (string, error)

func RCRequiredUUID added in v0.2.38

func RCRequiredUUID(rc *fasthttp.RequestCtx, key string) (*uuid.UUID, error)

func RequestCtxToMap

func RequestCtxToMap(rc *fasthttp.RequestCtx, data any) util.ValueMap

func RespondDebug

func RespondDebug(rc *fasthttp.RequestCtx, filename string, body any) (string, error)

func RespondJSON

func RespondJSON(rc *fasthttp.RequestCtx, filename string, body any) (string, error)

func RespondMIME

func RespondMIME(filename string, mime string, ext string, ba []byte, rc *fasthttp.RequestCtx) (string, error)

func RespondXML

func RespondXML(rc *fasthttp.RequestCtx, filename string, body any) (string, error)

func RespondYAML

func RespondYAML(rc *fasthttp.RequestCtx, filename string, body any) (string, error)

func WriteCORS

func WriteCORS(rc *fasthttp.RequestCtx)

Types

type Arg

type Arg struct {
	Key         string `json:"key"`
	Title       string `json:"title"`
	Description string `json:"description,omitempty"`
	Type        string `json:"type,omitempty"`
	Default     string `json:"default,omitempty"`
}

type ArgResults

type ArgResults struct {
	Args    Args              `json:"args"`
	Values  map[string]string `json:"values"`
	Missing []string          `json:"missing,omitempty"`
}

func CollectArgs

func CollectArgs(rc *fasthttp.RequestCtx, args Args) *ArgResults

type Args

type Args []*Arg

type Location

type Location struct {
	URL   string `json:"url"`
	Title string `json:"title"`
	Icon  string `json:"icon,omitempty"`
}

type Locations

type Locations []*Location

type PageState

type PageState struct {
	Title         string            `json:"title,omitempty"`
	Description   string            `json:"description,omitempty"`
	Method        string            `json:"method,omitempty"`
	URI           *fasthttp.URI     `json:"-"`
	Menu          menu.Items        `json:"menu,omitempty"`
	Breadcrumbs   cmenu.Breadcrumbs `json:"breadcrumbs,omitempty"`
	Flashes       []string          `json:"flashes,omitempty"`
	Session       util.ValueMap     `json:"-"`
	Profile       *user.Profile     `json:"profile,omitempty"`
	Authed        bool              `json:"authed,omitempty"`
	Admin         bool              `json:"admin,omitempty"`
	Params        filter.ParamSet   `json:"params,omitempty"`
	Icons         []string          `json:"icons,omitempty"`
	RootIcon      string            `json:"rootIcon,omitempty"`
	RootPath      string            `json:"rootPath,omitempty"`
	RootTitle     string            `json:"rootTitle,omitempty"`
	SearchPath    string            `json:"searchPath,omitempty"`
	ProfilePath   string            `json:"profilePath,omitempty"`
	HideMenu      bool              `json:"hideMenu,omitempty"`
	ForceRedirect string            `json:"forceRedirect,omitempty"`
	HeaderContent string            `json:"headerContent,omitempty"`
	Data          any               `json:"data,omitempty"`
	Logger        util.Logger       `json:"-"`
	Context       context.Context   `json:"-"` //nolint:containedctx // properly closed, never directly used
	Span          *telemetry.Span   `json:"-"`
	RenderElapsed float64           `json:"renderElapsed,omitempty"`
}

func LoadPageState added in v0.3.15

func LoadPageState(as *app.State, rc *fasthttp.RequestCtx, key string, logger util.Logger) *PageState

func (*PageState) AddIcon

func (p *PageState) AddIcon(keys ...string)

func (*PageState) Clean added in v0.3.15

func (p *PageState) Clean(_ *fasthttp.RequestCtx, as *app.State) error

func (*PageState) Close

func (p *PageState) Close()

func (*PageState) TitleString

func (p *PageState) TitleString() string

func (*PageState) Username added in v0.8.17

func (p *PageState) Username() string

type XMLResponse

type XMLResponse struct {
	Result any `xml:"result"`
}

Jump to

Keyboard shortcuts

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