port

package
v0.0.0-...-2c8b9bc Latest Latest
Warning

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

Go to latest
Published: Jan 30, 2024 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const SubLoggerCtxKey = "sub_logger"

set context value with this key

Variables

This section is empty.

Functions

This section is empty.

Types

type AddCommentParams

type AddCommentParams struct {
	AuthArg AuthParams
	Slug    string
	Comment domain.Comment
}

type AddFavoriteParams

type AddFavoriteParams struct {
	AuthArg AuthParams
	Slug    string
	UserID  domain.ID
}

type AddTagsPayload

type AddTagsPayload struct {
	Tags []string
}

type AssignTagPayload

type AssignTagPayload struct {
	ArticleID domain.ID
	TagIDs    []domain.ID
}

type AuthParams

type AuthParams struct {
	Token   string
	Payload *token.Payload
}

type CreateArticleTxParams

type CreateArticleTxParams struct {
	AuthArg AuthParams
	Article domain.Article
	Tags    []string
}

type DeleteArticleParams

type DeleteArticleParams struct {
	AuthArg AuthParams
	Slug    string
}

type DeleteCommentParams

type DeleteCommentParams struct {
	AuthArg   AuthParams
	Slug      string
	CommentID domain.ID
}

type FilterArticlePayload

type FilterArticlePayload struct {
	Slugs     []string
	IDs       []domain.ID
	AuthorIDs []domain.ID
	Limit     int
	Offset    int
}

type FilterArticleTagPayload

type FilterArticleTagPayload struct {
	ArticleIDs []domain.ID
	TagIDs     []domain.ID
}

type FilterCommentPayload

type FilterCommentPayload struct {
	ArticleIDs []domain.ID
	AuthorIDs  []domain.ID
}

type FilterFavoritePayload

type FilterFavoritePayload struct {
	UserIDs    []domain.ID
	ArticleIDs []domain.ID
}

type FilterTagPayload

type FilterTagPayload struct {
	IDs   []domain.ID
	Names []string
}

type FilterUserFollowPayload

type FilterUserFollowPayload struct {
	FollowerIDs []domain.ID
	FolloweeIDs []domain.ID
}

type FilterUserPayload

type FilterUserPayload struct {
	IDs       []domain.ID
	Usernames []string
	Emails    []string
}

type GetArticleParams

type GetArticleParams struct {
	AuthArg AuthParams
	Slug    string
}

type ListArticleParams

type ListArticleParams struct {
	AuthArg        AuthParams
	IDs            []domain.ID
	Tags           []string
	AuthorNames    []string
	FavoritedNames []string
	Limit          int
	Offset         int
}

type ListCommentParams

type ListCommentParams struct {
	AuthArg AuthParams
	Slug    string
}

type LogEvent

type LogEvent interface {
	Field(string, any) LogEvent
	Err(error) LogEvent

	Msgf(string, ...any)
	Msg(...any)
}

type Logger

type Logger interface {
	NewInstance() Logger

	Field(string, any) Logger
	Logger() Logger

	Info() LogEvent
	Error() LogEvent
	Fatal() LogEvent
}

func GetCtxSubLogger

func GetCtxSubLogger(ctx context.Context, defaultLogger Logger) Logger

type LoginParams

type LoginParams struct {
	User domain.User
}

type ProfileParams

type ProfileParams struct {
	AuthArg  AuthParams
	Username string
}

type RegisterParams

type RegisterParams struct {
	User domain.User
}

type RemoveFavoriteParams

type RemoveFavoriteParams AddFavoriteParams

type Repository

type Repository interface {
	Atomic(context.Context, RepositoryAtomicCallback) error
	User() UserRepository
	Article() ArticleRepository
}

type RepositoryAtomicCallback

type RepositoryAtomicCallback func(r Repository) error

type Server

type Server interface {
	Start() error
}

type Service

type Service interface {
	TokenMaker() token.Maker
	User() UserService
	Article() ArticleService
}

type UpdateArticleParams

type UpdateArticleParams struct {
	AuthArg AuthParams
	Slug    string
	Article domain.Article
}

type UpdateUserParams

type UpdateUserParams struct {
	AuthArg AuthParams
	User    domain.User
}

Jump to

Keyboard shortcuts

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