Skip to main content

Variable: tagKeys

const tagKeys: object

Defined in: web/lib/hooks/use-tags.ts:78

Query key factory for tag queries.

Type declaration

all

all: readonly ["tags"]

Base key for all tag queries

detail()

detail: (normalizedForm) => readonly ["tags", "detail", string]

Key for tag detail

Parameters

normalizedForm

string

Returns

readonly ["tags", "detail", string]

forPreprint()

forPreprint: (preprintUri) => readonly ["tags", "preprint", string]

Key for tags by preprint

Parameters

preprintUri

string

Returns

readonly ["tags", "preprint", string]

preprintsWithTag()

preprintsWithTag: (normalizedForm, params?) => readonly ["tags", "preprints", string, undefined | TagPreprintParams]

Key for preprints by tag

Parameters

normalizedForm

string

params?

TagPreprintParams

Returns

readonly ["tags", "preprints", string, undefined | TagPreprintParams]

search: (query, params?) => readonly ["tags", "search", string, undefined | TagSearchParams]

Key for tag search

Parameters

query

string

params?

TagSearchParams

Returns

readonly ["tags", "search", string, undefined | TagSearchParams]

suggestions()

suggestions: (query) => readonly ["tags", "suggestions", string]

Key for tag suggestions

Parameters

query

string

Returns

readonly ["tags", "suggestions", string]

trending: (timeWindow) => readonly ["tags", "trending", "day" | "week" | "month"]

Key for trending tags

Parameters

timeWindow

"day" | "week" | "month"

Returns

readonly ["tags", "trending", "day" | "week" | "month"]

Remarks

Follows TanStack Query best practices for hierarchical cache key management.

Example

// Invalidate all tag queries
queryClient.invalidateQueries({ queryKey: tagKeys.all });

// Invalidate tags for a specific preprint
queryClient.invalidateQueries({ queryKey: tagKeys.forPreprint(preprintUri) });

// Invalidate trending tags
queryClient.invalidateQueries({ queryKey: tagKeys.trending('week') });