user

package
v0.17.0 Latest Latest
Warning

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

Go to latest
Published: Aug 10, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Label holds the string label denoting the user type in the database.
	Label = "user"
	// FieldID holds the string denoting the id field in the database.
	FieldID = "id"
	// FieldEmail holds the string denoting the email field in the database.
	FieldEmail = "email"
	// FieldUsername holds the string denoting the username field in the database.
	FieldUsername = "username"
	// FieldDisplayName holds the string denoting the display_name field in the database.
	FieldDisplayName = "display_name"
	// FieldRole holds the string denoting the role field in the database.
	FieldRole = "role"
	// FieldStatus holds the string denoting the status field in the database.
	FieldStatus = "status"
	// FieldCreatedAt holds the string denoting the created_at field in the database.
	FieldCreatedAt = "created_at"
	// FieldUpdatedAt holds the string denoting the updated_at field in the database.
	FieldUpdatedAt = "updated_at"
	// EdgeIdentities holds the string denoting the identities edge name in mutations.
	EdgeIdentities = "identities"
	// EdgeAuthSessions holds the string denoting the auth_sessions edge name in mutations.
	EdgeAuthSessions = "auth_sessions"
	// EdgeAllowlistAdded holds the string denoting the allowlist_added edge name in mutations.
	EdgeAllowlistAdded = "allowlist_added"
	// EdgeChatsCreated holds the string denoting the chats_created edge name in mutations.
	EdgeChatsCreated = "chats_created"
	// EdgeMemberships holds the string denoting the memberships edge name in mutations.
	EdgeMemberships = "memberships"
	// EdgeMessages holds the string denoting the messages edge name in mutations.
	EdgeMessages = "messages"
	// EdgeAgentsCreated holds the string denoting the agents_created edge name in mutations.
	EdgeAgentsCreated = "agents_created"
	// EdgeAgentRoles holds the string denoting the agent_roles edge name in mutations.
	EdgeAgentRoles = "agent_roles"
	// Table holds the table name of the user in the database.
	Table = "users"
	// IdentitiesTable is the table that holds the identities relation/edge.
	IdentitiesTable = "identities"
	// IdentitiesInverseTable is the table name for the Identity entity.
	// It exists in this package in order to avoid circular dependency with the "identity" package.
	IdentitiesInverseTable = "identities"
	// IdentitiesColumn is the table column denoting the identities relation/edge.
	IdentitiesColumn = "user_id"
	// AuthSessionsTable is the table that holds the auth_sessions relation/edge.
	AuthSessionsTable = "auth_sessions"
	// AuthSessionsInverseTable is the table name for the AuthSession entity.
	// It exists in this package in order to avoid circular dependency with the "authsession" package.
	AuthSessionsInverseTable = "auth_sessions"
	// AuthSessionsColumn is the table column denoting the auth_sessions relation/edge.
	AuthSessionsColumn = "user_id"
	// AllowlistAddedTable is the table that holds the allowlist_added relation/edge.
	AllowlistAddedTable = "allowlist"
	// AllowlistAddedInverseTable is the table name for the AllowlistEntry entity.
	// It exists in this package in order to avoid circular dependency with the "allowlistentry" package.
	AllowlistAddedInverseTable = "allowlist"
	// AllowlistAddedColumn is the table column denoting the allowlist_added relation/edge.
	AllowlistAddedColumn = "added_by"
	// ChatsCreatedTable is the table that holds the chats_created relation/edge.
	ChatsCreatedTable = "chats"
	// ChatsCreatedInverseTable is the table name for the Chat entity.
	// It exists in this package in order to avoid circular dependency with the "chat" package.
	ChatsCreatedInverseTable = "chats"
	// ChatsCreatedColumn is the table column denoting the chats_created relation/edge.
	ChatsCreatedColumn = "created_by"
	// MembershipsTable is the table that holds the memberships relation/edge.
	MembershipsTable = "chat_members"
	// MembershipsInverseTable is the table name for the ChatMember entity.
	// It exists in this package in order to avoid circular dependency with the "chatmember" package.
	MembershipsInverseTable = "chat_members"
	// MembershipsColumn is the table column denoting the memberships relation/edge.
	MembershipsColumn = "user_id"
	// MessagesTable is the table that holds the messages relation/edge.
	MessagesTable = "messages"
	// MessagesInverseTable is the table name for the Message entity.
	// It exists in this package in order to avoid circular dependency with the "message" package.
	MessagesInverseTable = "messages"
	// MessagesColumn is the table column denoting the messages relation/edge.
	MessagesColumn = "author_user_id"
	// AgentsCreatedTable is the table that holds the agents_created relation/edge.
	AgentsCreatedTable = "agents"
	// AgentsCreatedInverseTable is the table name for the Agent entity.
	// It exists in this package in order to avoid circular dependency with the "agent" package.
	AgentsCreatedInverseTable = "agents"
	// AgentsCreatedColumn is the table column denoting the agents_created relation/edge.
	AgentsCreatedColumn = "created_by"
	// AgentRolesTable is the table that holds the agent_roles relation/edge.
	AgentRolesTable = "agent_roles"
	// AgentRolesInverseTable is the table name for the AgentRole entity.
	// It exists in this package in order to avoid circular dependency with the "agentrole" package.
	AgentRolesInverseTable = "agent_roles"
	// AgentRolesColumn is the table column denoting the agent_roles relation/edge.
	AgentRolesColumn = "user_id"
)
View Source
const DefaultRole = RoleMember

RoleMember is the default value of the Role enum.

View Source
const DefaultStatus = StatusActive

StatusActive is the default value of the Status enum.

Variables

View Source
var (
	// EmailValidator is a validator for the "email" field. It is called by the builders before save.
	EmailValidator func(string) error
	// UsernameValidator is a validator for the "username" field. It is called by the builders before save.
	UsernameValidator func(string) error
	// DefaultCreatedAt holds the default value on creation for the "created_at" field.
	DefaultCreatedAt func() time.Time
	// DefaultUpdatedAt holds the default value on creation for the "updated_at" field.
	DefaultUpdatedAt func() time.Time
	// UpdateDefaultUpdatedAt holds the default value on update for the "updated_at" field.
	UpdateDefaultUpdatedAt func() time.Time
	// DefaultID holds the default value on creation for the "id" field.
	DefaultID func() uuid.UUID
)

Columns holds all SQL columns for user fields.

Functions

func And

func And(predicates ...predicate.User) predicate.User

And groups predicates with the AND operator between them.

func CreatedAt

func CreatedAt(v time.Time) predicate.User

CreatedAt applies equality check predicate on the "created_at" field. It's identical to CreatedAtEQ.

func CreatedAtEQ

func CreatedAtEQ(v time.Time) predicate.User

CreatedAtEQ applies the EQ predicate on the "created_at" field.

func CreatedAtGT

func CreatedAtGT(v time.Time) predicate.User

CreatedAtGT applies the GT predicate on the "created_at" field.

func CreatedAtGTE

func CreatedAtGTE(v time.Time) predicate.User

CreatedAtGTE applies the GTE predicate on the "created_at" field.

func CreatedAtIn

func CreatedAtIn(vs ...time.Time) predicate.User

CreatedAtIn applies the In predicate on the "created_at" field.

func CreatedAtLT

func CreatedAtLT(v time.Time) predicate.User

CreatedAtLT applies the LT predicate on the "created_at" field.

func CreatedAtLTE

func CreatedAtLTE(v time.Time) predicate.User

CreatedAtLTE applies the LTE predicate on the "created_at" field.

func CreatedAtNEQ

func CreatedAtNEQ(v time.Time) predicate.User

CreatedAtNEQ applies the NEQ predicate on the "created_at" field.

func CreatedAtNotIn

func CreatedAtNotIn(vs ...time.Time) predicate.User

CreatedAtNotIn applies the NotIn predicate on the "created_at" field.

func DisplayName

func DisplayName(v string) predicate.User

DisplayName applies equality check predicate on the "display_name" field. It's identical to DisplayNameEQ.

func DisplayNameContains

func DisplayNameContains(v string) predicate.User

DisplayNameContains applies the Contains predicate on the "display_name" field.

func DisplayNameContainsFold

func DisplayNameContainsFold(v string) predicate.User

DisplayNameContainsFold applies the ContainsFold predicate on the "display_name" field.

func DisplayNameEQ

func DisplayNameEQ(v string) predicate.User

DisplayNameEQ applies the EQ predicate on the "display_name" field.

func DisplayNameEqualFold

func DisplayNameEqualFold(v string) predicate.User

DisplayNameEqualFold applies the EqualFold predicate on the "display_name" field.

func DisplayNameGT

func DisplayNameGT(v string) predicate.User

DisplayNameGT applies the GT predicate on the "display_name" field.

func DisplayNameGTE

func DisplayNameGTE(v string) predicate.User

DisplayNameGTE applies the GTE predicate on the "display_name" field.

func DisplayNameHasPrefix

func DisplayNameHasPrefix(v string) predicate.User

DisplayNameHasPrefix applies the HasPrefix predicate on the "display_name" field.

func DisplayNameHasSuffix

func DisplayNameHasSuffix(v string) predicate.User

DisplayNameHasSuffix applies the HasSuffix predicate on the "display_name" field.

func DisplayNameIn

func DisplayNameIn(vs ...string) predicate.User

DisplayNameIn applies the In predicate on the "display_name" field.

func DisplayNameIsNil

func DisplayNameIsNil() predicate.User

DisplayNameIsNil applies the IsNil predicate on the "display_name" field.

func DisplayNameLT

func DisplayNameLT(v string) predicate.User

DisplayNameLT applies the LT predicate on the "display_name" field.

func DisplayNameLTE

func DisplayNameLTE(v string) predicate.User

DisplayNameLTE applies the LTE predicate on the "display_name" field.

func DisplayNameNEQ

func DisplayNameNEQ(v string) predicate.User

DisplayNameNEQ applies the NEQ predicate on the "display_name" field.

func DisplayNameNotIn

func DisplayNameNotIn(vs ...string) predicate.User

DisplayNameNotIn applies the NotIn predicate on the "display_name" field.

func DisplayNameNotNil

func DisplayNameNotNil() predicate.User

DisplayNameNotNil applies the NotNil predicate on the "display_name" field.

func Email

func Email(v string) predicate.User

Email applies equality check predicate on the "email" field. It's identical to EmailEQ.

func EmailContains

func EmailContains(v string) predicate.User

EmailContains applies the Contains predicate on the "email" field.

func EmailContainsFold

func EmailContainsFold(v string) predicate.User

EmailContainsFold applies the ContainsFold predicate on the "email" field.

func EmailEQ

func EmailEQ(v string) predicate.User

EmailEQ applies the EQ predicate on the "email" field.

func EmailEqualFold

func EmailEqualFold(v string) predicate.User

EmailEqualFold applies the EqualFold predicate on the "email" field.

func EmailGT

func EmailGT(v string) predicate.User

EmailGT applies the GT predicate on the "email" field.

func EmailGTE

func EmailGTE(v string) predicate.User

EmailGTE applies the GTE predicate on the "email" field.

func EmailHasPrefix

func EmailHasPrefix(v string) predicate.User

EmailHasPrefix applies the HasPrefix predicate on the "email" field.

func EmailHasSuffix

func EmailHasSuffix(v string) predicate.User

EmailHasSuffix applies the HasSuffix predicate on the "email" field.

func EmailIn

func EmailIn(vs ...string) predicate.User

EmailIn applies the In predicate on the "email" field.

func EmailLT

func EmailLT(v string) predicate.User

EmailLT applies the LT predicate on the "email" field.

func EmailLTE

func EmailLTE(v string) predicate.User

EmailLTE applies the LTE predicate on the "email" field.

func EmailNEQ

func EmailNEQ(v string) predicate.User

EmailNEQ applies the NEQ predicate on the "email" field.

func EmailNotIn

func EmailNotIn(vs ...string) predicate.User

EmailNotIn applies the NotIn predicate on the "email" field.

func HasAgentRoles

func HasAgentRoles() predicate.User

HasAgentRoles applies the HasEdge predicate on the "agent_roles" edge.

func HasAgentRolesWith

func HasAgentRolesWith(preds ...predicate.AgentRole) predicate.User

HasAgentRolesWith applies the HasEdge predicate on the "agent_roles" edge with a given conditions (other predicates).

func HasAgentsCreated

func HasAgentsCreated() predicate.User

HasAgentsCreated applies the HasEdge predicate on the "agents_created" edge.

func HasAgentsCreatedWith

func HasAgentsCreatedWith(preds ...predicate.Agent) predicate.User

HasAgentsCreatedWith applies the HasEdge predicate on the "agents_created" edge with a given conditions (other predicates).

func HasAllowlistAdded

func HasAllowlistAdded() predicate.User

HasAllowlistAdded applies the HasEdge predicate on the "allowlist_added" edge.

func HasAllowlistAddedWith

func HasAllowlistAddedWith(preds ...predicate.AllowlistEntry) predicate.User

HasAllowlistAddedWith applies the HasEdge predicate on the "allowlist_added" edge with a given conditions (other predicates).

func HasAuthSessions

func HasAuthSessions() predicate.User

HasAuthSessions applies the HasEdge predicate on the "auth_sessions" edge.

func HasAuthSessionsWith

func HasAuthSessionsWith(preds ...predicate.AuthSession) predicate.User

HasAuthSessionsWith applies the HasEdge predicate on the "auth_sessions" edge with a given conditions (other predicates).

func HasChatsCreated

func HasChatsCreated() predicate.User

HasChatsCreated applies the HasEdge predicate on the "chats_created" edge.

func HasChatsCreatedWith

func HasChatsCreatedWith(preds ...predicate.Chat) predicate.User

HasChatsCreatedWith applies the HasEdge predicate on the "chats_created" edge with a given conditions (other predicates).

func HasIdentities

func HasIdentities() predicate.User

HasIdentities applies the HasEdge predicate on the "identities" edge.

func HasIdentitiesWith

func HasIdentitiesWith(preds ...predicate.Identity) predicate.User

HasIdentitiesWith applies the HasEdge predicate on the "identities" edge with a given conditions (other predicates).

func HasMemberships

func HasMemberships() predicate.User

HasMemberships applies the HasEdge predicate on the "memberships" edge.

func HasMembershipsWith

func HasMembershipsWith(preds ...predicate.ChatMember) predicate.User

HasMembershipsWith applies the HasEdge predicate on the "memberships" edge with a given conditions (other predicates).

func HasMessages

func HasMessages() predicate.User

HasMessages applies the HasEdge predicate on the "messages" edge.

func HasMessagesWith

func HasMessagesWith(preds ...predicate.Message) predicate.User

HasMessagesWith applies the HasEdge predicate on the "messages" edge with a given conditions (other predicates).

func ID

func ID(id uuid.UUID) predicate.User

ID filters vertices based on their ID field.

func IDEQ

func IDEQ(id uuid.UUID) predicate.User

IDEQ applies the EQ predicate on the ID field.

func IDGT

func IDGT(id uuid.UUID) predicate.User

IDGT applies the GT predicate on the ID field.

func IDGTE

func IDGTE(id uuid.UUID) predicate.User

IDGTE applies the GTE predicate on the ID field.

func IDIn

func IDIn(ids ...uuid.UUID) predicate.User

IDIn applies the In predicate on the ID field.

func IDLT

func IDLT(id uuid.UUID) predicate.User

IDLT applies the LT predicate on the ID field.

func IDLTE

func IDLTE(id uuid.UUID) predicate.User

IDLTE applies the LTE predicate on the ID field.

func IDNEQ

func IDNEQ(id uuid.UUID) predicate.User

IDNEQ applies the NEQ predicate on the ID field.

func IDNotIn

func IDNotIn(ids ...uuid.UUID) predicate.User

IDNotIn applies the NotIn predicate on the ID field.

func Not

Not applies the not operator on the given predicate.

func Or

func Or(predicates ...predicate.User) predicate.User

Or groups predicates with the OR operator between them.

func RoleEQ

func RoleEQ(v Role) predicate.User

RoleEQ applies the EQ predicate on the "role" field.

func RoleIn

func RoleIn(vs ...Role) predicate.User

RoleIn applies the In predicate on the "role" field.

func RoleNEQ

func RoleNEQ(v Role) predicate.User

RoleNEQ applies the NEQ predicate on the "role" field.

func RoleNotIn

func RoleNotIn(vs ...Role) predicate.User

RoleNotIn applies the NotIn predicate on the "role" field.

func RoleValidator

func RoleValidator(r Role) error

RoleValidator is a validator for the "role" field enum values. It is called by the builders before save.

func StatusEQ

func StatusEQ(v Status) predicate.User

StatusEQ applies the EQ predicate on the "status" field.

func StatusIn

func StatusIn(vs ...Status) predicate.User

StatusIn applies the In predicate on the "status" field.

func StatusNEQ

func StatusNEQ(v Status) predicate.User

StatusNEQ applies the NEQ predicate on the "status" field.

func StatusNotIn

func StatusNotIn(vs ...Status) predicate.User

StatusNotIn applies the NotIn predicate on the "status" field.

func StatusValidator

func StatusValidator(s Status) error

StatusValidator is a validator for the "status" field enum values. It is called by the builders before save.

func UpdatedAt

func UpdatedAt(v time.Time) predicate.User

UpdatedAt applies equality check predicate on the "updated_at" field. It's identical to UpdatedAtEQ.

func UpdatedAtEQ

func UpdatedAtEQ(v time.Time) predicate.User

UpdatedAtEQ applies the EQ predicate on the "updated_at" field.

func UpdatedAtGT

func UpdatedAtGT(v time.Time) predicate.User

UpdatedAtGT applies the GT predicate on the "updated_at" field.

func UpdatedAtGTE

func UpdatedAtGTE(v time.Time) predicate.User

UpdatedAtGTE applies the GTE predicate on the "updated_at" field.

func UpdatedAtIn

func UpdatedAtIn(vs ...time.Time) predicate.User

UpdatedAtIn applies the In predicate on the "updated_at" field.

func UpdatedAtLT

func UpdatedAtLT(v time.Time) predicate.User

UpdatedAtLT applies the LT predicate on the "updated_at" field.

func UpdatedAtLTE

func UpdatedAtLTE(v time.Time) predicate.User

UpdatedAtLTE applies the LTE predicate on the "updated_at" field.

func UpdatedAtNEQ

func UpdatedAtNEQ(v time.Time) predicate.User

UpdatedAtNEQ applies the NEQ predicate on the "updated_at" field.

func UpdatedAtNotIn

func UpdatedAtNotIn(vs ...time.Time) predicate.User

UpdatedAtNotIn applies the NotIn predicate on the "updated_at" field.

func Username

func Username(v string) predicate.User

Username applies equality check predicate on the "username" field. It's identical to UsernameEQ.

func UsernameContains

func UsernameContains(v string) predicate.User

UsernameContains applies the Contains predicate on the "username" field.

func UsernameContainsFold

func UsernameContainsFold(v string) predicate.User

UsernameContainsFold applies the ContainsFold predicate on the "username" field.

func UsernameEQ

func UsernameEQ(v string) predicate.User

UsernameEQ applies the EQ predicate on the "username" field.

func UsernameEqualFold

func UsernameEqualFold(v string) predicate.User

UsernameEqualFold applies the EqualFold predicate on the "username" field.

func UsernameGT

func UsernameGT(v string) predicate.User

UsernameGT applies the GT predicate on the "username" field.

func UsernameGTE

func UsernameGTE(v string) predicate.User

UsernameGTE applies the GTE predicate on the "username" field.

func UsernameHasPrefix

func UsernameHasPrefix(v string) predicate.User

UsernameHasPrefix applies the HasPrefix predicate on the "username" field.

func UsernameHasSuffix

func UsernameHasSuffix(v string) predicate.User

UsernameHasSuffix applies the HasSuffix predicate on the "username" field.

func UsernameIn

func UsernameIn(vs ...string) predicate.User

UsernameIn applies the In predicate on the "username" field.

func UsernameLT

func UsernameLT(v string) predicate.User

UsernameLT applies the LT predicate on the "username" field.

func UsernameLTE

func UsernameLTE(v string) predicate.User

UsernameLTE applies the LTE predicate on the "username" field.

func UsernameNEQ

func UsernameNEQ(v string) predicate.User

UsernameNEQ applies the NEQ predicate on the "username" field.

func UsernameNotIn

func UsernameNotIn(vs ...string) predicate.User

UsernameNotIn applies the NotIn predicate on the "username" field.

func ValidColumn

func ValidColumn(column string) bool

ValidColumn reports if the column name is valid (part of the table columns).

Types

type OrderOption

type OrderOption func(*sql.Selector)

OrderOption defines the ordering options for the User queries.

func ByAgentRoles

func ByAgentRoles(term sql.OrderTerm, terms ...sql.OrderTerm) OrderOption

ByAgentRoles orders the results by agent_roles terms.

func ByAgentRolesCount

func ByAgentRolesCount(opts ...sql.OrderTermOption) OrderOption

ByAgentRolesCount orders the results by agent_roles count.

func ByAgentsCreated

func ByAgentsCreated(term sql.OrderTerm, terms ...sql.OrderTerm) OrderOption

ByAgentsCreated orders the results by agents_created terms.

func ByAgentsCreatedCount

func ByAgentsCreatedCount(opts ...sql.OrderTermOption) OrderOption

ByAgentsCreatedCount orders the results by agents_created count.

func ByAllowlistAdded

func ByAllowlistAdded(term sql.OrderTerm, terms ...sql.OrderTerm) OrderOption

ByAllowlistAdded orders the results by allowlist_added terms.

func ByAllowlistAddedCount

func ByAllowlistAddedCount(opts ...sql.OrderTermOption) OrderOption

ByAllowlistAddedCount orders the results by allowlist_added count.

func ByAuthSessions

func ByAuthSessions(term sql.OrderTerm, terms ...sql.OrderTerm) OrderOption

ByAuthSessions orders the results by auth_sessions terms.

func ByAuthSessionsCount

func ByAuthSessionsCount(opts ...sql.OrderTermOption) OrderOption

ByAuthSessionsCount orders the results by auth_sessions count.

func ByChatsCreated

func ByChatsCreated(term sql.OrderTerm, terms ...sql.OrderTerm) OrderOption

ByChatsCreated orders the results by chats_created terms.

func ByChatsCreatedCount

func ByChatsCreatedCount(opts ...sql.OrderTermOption) OrderOption

ByChatsCreatedCount orders the results by chats_created count.

func ByCreatedAt

func ByCreatedAt(opts ...sql.OrderTermOption) OrderOption

ByCreatedAt orders the results by the created_at field.

func ByDisplayName

func ByDisplayName(opts ...sql.OrderTermOption) OrderOption

ByDisplayName orders the results by the display_name field.

func ByEmail

func ByEmail(opts ...sql.OrderTermOption) OrderOption

ByEmail orders the results by the email field.

func ByID

func ByID(opts ...sql.OrderTermOption) OrderOption

ByID orders the results by the id field.

func ByIdentities

func ByIdentities(term sql.OrderTerm, terms ...sql.OrderTerm) OrderOption

ByIdentities orders the results by identities terms.

func ByIdentitiesCount

func ByIdentitiesCount(opts ...sql.OrderTermOption) OrderOption

ByIdentitiesCount orders the results by identities count.

func ByMemberships

func ByMemberships(term sql.OrderTerm, terms ...sql.OrderTerm) OrderOption

ByMemberships orders the results by memberships terms.

func ByMembershipsCount

func ByMembershipsCount(opts ...sql.OrderTermOption) OrderOption

ByMembershipsCount orders the results by memberships count.

func ByMessages

func ByMessages(term sql.OrderTerm, terms ...sql.OrderTerm) OrderOption

ByMessages orders the results by messages terms.

func ByMessagesCount

func ByMessagesCount(opts ...sql.OrderTermOption) OrderOption

ByMessagesCount orders the results by messages count.

func ByRole

func ByRole(opts ...sql.OrderTermOption) OrderOption

ByRole orders the results by the role field.

func ByStatus

func ByStatus(opts ...sql.OrderTermOption) OrderOption

ByStatus orders the results by the status field.

func ByUpdatedAt

func ByUpdatedAt(opts ...sql.OrderTermOption) OrderOption

ByUpdatedAt orders the results by the updated_at field.

func ByUsername

func ByUsername(opts ...sql.OrderTermOption) OrderOption

ByUsername orders the results by the username field.

type Role

type Role string

Role defines the type for the "role" enum field.

const (
	RoleSuperadmin Role = "superadmin"
	RoleMember     Role = "member"
)

Role values.

func (Role) String

func (r Role) String() string

type Status

type Status string

Status defines the type for the "status" enum field.

const (
	StatusActive   Status = "active"
	StatusDisabled Status = "disabled"
)

Status values.

func (Status) String

func (s Status) String() string

Jump to

Keyboard shortcuts

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