Documentation ¶
Index ¶
- Constants
- Variables
- func GetAnySlice(key string, vals url.Values) []any
- func GetQueryInt(key string, vals url.Values) int
- func GetQueryStringSlice(key string, q url.Values) []string
- func ParseQueryString(val string) (url.Values, error)
- func ParseQueryStrings(q []string) []string
- func QueryToSettings(settings map[string]any) map[string]any
- func SettingsToQuery(settings map[string]any) map[string]any
- type Param
- type Params
Constants ¶
View Source
const ( // content-type NdJSON = `application/x-ndjson` JSON = `application/json` )
Variables ¶
View Source
var Routes = []Param{ Blv, Dir, File, }
View Source
var SearchParams = []Param{ Hits, RtrvAttr, Page, HitsPerPage, Query, NbHits, NbPages, SortBy, Order, SortFacetsBy, MaxFacetVals, Facets, Filters, FacetFilters, Route, Path, }
View Source
var SettingParams = []Param{ SrchAttr, FacetAttr, SortAttr, UID, DefaultField, Format, }
Functions ¶
func ParseQueryString ¶
ParseQueryString parses an encoded filter string.
func ParseQueryStrings ¶ added in v0.0.21
func QueryToSettings ¶ added in v0.0.29
QueryToSettings returns a map with all keys converted to snakecase
Types ¶
type Param ¶ added in v0.0.29
type Param int
const ( // search params Hits Param = iota // hits RtrvAttr // attributesToRetrieve Page // page HitsPerPage // hitsPerPage SortFacetsBy // sortFacetValuesBy MaxFacetVals // maxValuesPerFacet Query // query Facets // facets Filters // filters FacetFilters // facetFilters NbHits // nbHits NbPages // nbPage SortBy // sortBy Order // order // Settings SrchAttr // searchableAttributes FacetAttr // attributesForFaceting SortAttr // sortableAttributes Path // path // Cfg Format // format DefaultField // title UID // uid // file paths Route // route Blv // blv Dir // dir File // file )
func (Param) Dasherize ¶ added in v0.0.29
Dasherize returns an alphanumeric, lowercased, dashed string
func (Param) Query ¶ added in v0.0.29
Query returns a camelCase string to use as the key in a URL query
type Params ¶
type Params struct { URL *url.URL `json:"-" mapstructure:"-"` Other url.Values `json:"-" mapstructure:"-"` // Index Settings SrchAttr []string `query:"searchableAttributes,omitempty" json:"searchableAttributes,omitempty" mapstructure:"searchable_attributes"` FacetAttr []string `query:"attributesForFaceting,omitempty" json:"attributesForFaceting,omitempty" mapstructure:"attributes_for_faceting"` SortAttr []string `query:"sortableAttributes,omitempty" json:"sortableAttributes,omitempty" mapstructure:"sortable_attributes"` DefaultField string `query:"defaultField,omitempty" json:"defaultField,omitempty" mapstructure:"defaultField"` UID string `query:"uid,omitempty" json:"uid,omitempty" mapstructure:"uid"` // Search Hits int `query:"hits,omitempty" json:"hits,omitempty" mapstructure:"hits"` RtrvAttr []string `query:"attributesToRetrieve,omitempty" json:"attributesToRetrieve,omitempty" mapstructure:"attributes_to_retrieve"` Page int `query:"page,omitempty" json:"page,omitempty" mapstructure:"page"` HitsPerPage int `query:"hitsPerPage,omitempty" json:"hitsPerPage,omitempty" mapstructure:"hits_per_page"` Query string `query:"query,omitempty" json:"query,omitempty" mapstructure:"query"` SortBy string `query:"sortBy,omitempty" json:"sortBy,omitempty" mapstructure:"sort_by"` Order string `query:"order,omitempty" json:"order,omitempty" mapstructure:"order"` // Facets Facets []string `query:"facets,omitempty" json:"facets,omitempty" mapstructure:"facets"` Filters string `query:"filters,omitempty" json:"filters,omitempty" mapstructure:"filters"` FacetFilters []any `query:"facetFilters,omitempty" json:"facetFilters,omitempty" mapstructure:"facet_filters"` SortFacetsBy string `query:"sortFacetsBy,omitempty" json:"sortFacetsBy,omitempty" mapstructure:"sort_facets_by"` MaxFacetVals int `query:"maxValuesPerFacet,omitempty" json:"maxValuesPerFacet,omitempty" mapstructure:"max_values_per_facet"` // Data Format string `json:"-" mapstructure:"format"` Path string `json:"-" mapstructure:"path"` Route string `json:"-" mapstructure:"route"` }
Params is a structure for search params
func DecodeSnakeMap ¶ added in v0.0.29
DecodeSnakeMap decodes a map with snakecase keys to Params
Click to show internal directories.
Click to hide internal directories.