Documentation
¶
Index ¶
- Constants
- Variables
- func ValidateChat(v *validator.Validator, chat *Chat, action int)
- func ValidateContact(v *validator.Validator, contact *Contact, action int)
- func ValidateEmail(v *validator.Validator, email string)
- func ValidateFilters(v *validator.Validator, f Filters)
- func ValidateMessage(v *validator.Validator, message *Message, action int)
- func ValidatePasswordPlaintext(v *validator.Validator, password string)
- func ValidatePhrase(v *validator.Validator, phrase *Phrase, action int)
- func ValidateTokenPlaintext(v *validator.Validator, tokenPlaintext string)
- func ValidateUser(v *validator.Validator, user *User)
- type Chat
- type ChatModel
- type Contact
- type ContactModel
- func (m ContactModel) Delete(id int64) error
- func (m ContactModel) Get(id int64) (*Contact, error)
- func (m ContactModel) GetAll(name string, phone_number string, filters Filters) ([]*Contact, Metadata, error)
- func (m ContactModel) Insert(contact *Contact) error
- func (m ContactModel) Update(contact *Contact) error
- type Filters
- type Message
- type MessageModel
- func (m MessageModel) Delete(id int64) error
- func (m MessageModel) Get(id int64) (*Message, error)
- func (m MessageModel) GetAll(filters Filters) ([]*Message, Metadata, error)
- func (m MessageModel) GetAllNotInSemantic(filters Filters, contentField string) ([]*Message, Metadata, error)
- func (m MessageModel) Insert(message *Message) error
- func (m MessageModel) Update(message *Message) error
- type Metadata
- type Models
- type Phrase
- type PhraseModel
- func (m PhraseModel) Delete(id int64) error
- func (m PhraseModel) Get(id int64) (*Phrase, error)
- func (m PhraseModel) GetAll(message_id int64, filters Filters) ([]*Phrase, Metadata, error)
- func (m PhraseModel) GetAllSemantic(embedding pgvector.Vector, similarity float64, provider string, ...) ([]*Phrase, Metadata, error)
- func (m PhraseModel) GetAllWithoutEmbeddings(limit int, provider string) ([]*Phrase, Metadata, error)
- func (m PhraseModel) Insert(phrase *Phrase) error
- func (m PhraseModel) Update(phrase *Phrase) error
- func (m PhraseModel) UpdateEmbedding(phrase *Phrase, embeddings pgvector.Vector, provider string) error
- type Token
- type TokenModel
- type User
- type UserModel
Constants ¶
View Source
const ( ScopeActivation = "activation" ScopeAuthentication = "authentication" ScopePasswordReset = "password-reset" )
Variables ¶
View Source
var ( ErrRecordNotFound = errors.New("record not found") ErrEditConflict = errors.New("edit conflict") )
View Source
var AnonymousUser = &User{}
View Source
var (
ErrDuplicateEmail = errors.New("duplicate email")
)
Functions ¶
func ValidateEmail ¶
func ValidateFilters ¶
func ValidateTokenPlaintext ¶
func ValidateUser ¶
Types ¶
type Contact ¶
type Contact struct { ID int64 `json:"id" db:"id"` Name string `json:"name" db:"name"` PhoneNumber string `json:"phone_number" db:"phone_number"` Version int32 `json:"version" db:"version"` CreatedAt time.Time `json:"created_at" db:"created_at"` ModifiedAt time.Time `json:"modified_at" db:"modified_at"` }
type ContactModel ¶
func (ContactModel) Delete ¶
func (m ContactModel) Delete(id int64) error
func (ContactModel) Insert ¶
func (m ContactModel) Insert(contact *Contact) error
func (ContactModel) Update ¶
func (m ContactModel) Update(contact *Contact) error
type Message ¶
type Message struct { ID int64 `json:"id" db:"id"` MessageDate time.Time `json:"message_date" db:"message_date"` Message string `json:"message" db:"message"` ContactID int64 `json:"contact_id" db:"contact_id"` Attachment string `json:"attachment" db:"attachment"` ChatID int64 `json:"chat_id" db:"chat_id"` EnableSemanticSearch bool `json:"enable_semantic_search" db:"enable_semantic_search"` Version int32 `json:"version" db:"version"` CreatedAt time.Time `json:"created_at" db:"created_at"` ModifiedAt time.Time `json:"modified_at" db:"modified_at"` }
type MessageModel ¶
func (MessageModel) Delete ¶
func (m MessageModel) Delete(id int64) error
func (MessageModel) GetAll ¶
func (m MessageModel) GetAll(filters Filters) ([]*Message, Metadata, error)
func (MessageModel) GetAllNotInSemantic ¶
func (m MessageModel) GetAllNotInSemantic(filters Filters, contentField string) ([]*Message, Metadata, error)
not_in_semantic_start
func (MessageModel) Insert ¶
func (m MessageModel) Insert(message *Message) error
func (MessageModel) Update ¶
func (m MessageModel) Update(message *Message) error
type Models ¶
type Models struct { Contacts ContactModel Messages MessageModel Chats ChatModel Phrases PhraseModel Users UserModel Tokens TokenModel }
type Phrase ¶
type Phrase struct { ID int64 `json:"id" db:"id"` MessageID int64 `json:"message_id" db:"message_id"` Title string `json:"title" db:"title"` Similarity float64 `json:"similarity" db:"similarity"` Content string `json:"content" db:"content"` Tokens int `json:"tokens" db:"tokens"` Sequence int `json:"sequence" db:"sequence"` ContentField string `json:"content_field" db:"content_field"` Version int32 `json:"version" db:"version"` CreatedAt time.Time `json:"created_at" db:"created_at"` ModifiedAt time.Time `json:"modified_at" db:"modified_at"` }
type PhraseModel ¶
func (PhraseModel) Delete ¶
func (m PhraseModel) Delete(id int64) error
func (PhraseModel) GetAllSemantic ¶
func (m PhraseModel) GetAllSemantic(embedding pgvector.Vector, similarity float64, provider string, content_fields []string, message_id int64, filters Filters) ([]*Phrase, Metadata, error)
get_all_semantic_start
func (PhraseModel) GetAllWithoutEmbeddings ¶
func (m PhraseModel) GetAllWithoutEmbeddings(limit int, provider string) ([]*Phrase, Metadata, error)
get_all_without_embeddings_start
func (PhraseModel) Insert ¶
func (m PhraseModel) Insert(phrase *Phrase) error
func (PhraseModel) Update ¶
func (m PhraseModel) Update(phrase *Phrase) error
func (PhraseModel) UpdateEmbedding ¶
func (m PhraseModel) UpdateEmbedding(phrase *Phrase, embeddings pgvector.Vector, provider string) error
update_embedding_start
type TokenModel ¶
func (TokenModel) DeleteAllForUser ¶
func (m TokenModel) DeleteAllForUser(scope string, userID int64) error
func (TokenModel) Insert ¶
func (m TokenModel) Insert(token *Token) error
type User ¶
type User struct { ID int64 `json:"id"` CreatedAt time.Time `json:"created_at"` Name string `json:"name"` Email string `json:"email"` Password password `json:"-"` Activated bool `json:"activated"` Version int `json:"-"` }
func (*User) IsAnonymous ¶
type UserModel ¶
func (UserModel) GetForToken ¶
Click to show internal directories.
Click to hide internal directories.