common

package
v0.43.4 Latest Latest
Warning

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

Go to latest
Published: Oct 22, 2024 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// toast types
	TTYPE_ERR     = "error"
	TTYPE_INFO    = "info"
	TTYPE_SUCCESS = "success"
)
View Source
const (
	// generic error messages on FE
	ERR_CANNOT_REACH_BE = "cannot reach the server"
	ERR_CANNOT_GET_DATA = "cannot get the data"
	ERR_LOGIN_AGAIN     = "please log-in again"

	// flow/post-related error messages
	ERR_INVALID_REPLY      = "no valid reply content entered"
	ERR_POST_UNAUTH_DELETE = "you can delete your own posts only!"
	ERR_POST_NOT_FOUND     = "post not found"
	ERR_USER_NOT_FOUND     = "user not found"
	ERR_PRIVATE_ACC        = "this account is private"

	// notification-related (non-)error messages
	MSG_SUBSCRIPTION_UPDATED      = "subscription updated"
	MSG_UNSUBSCRIBED_SUCCESS      = "successfully unsubscribed, notifications off"
	ERR_SUBSCRIPTION_UPDATE_FAIL  = "failed to update the subscription, try again later"
	ERR_NOTIF_PERMISSION_DENIED   = "notification permission denied by user"
	ERR_NOTIF_UNSUPPORTED_BROWSER = "notifications are not supported in this browser"

	// settings-related (non-)error messages
	MSG_PASSPHRASE_UPDATED       = "passphrase updated successfully"
	MSG_ABOUT_TEXT_UPDATED       = "about text updated successfully"
	MSG_WEBSITE_UPDATED          = "website updated successfully"
	MSG_SUBSCRIPTION_REQ_SUCCESS = "successfully subscribed to notifs"
	MSG_LOCAL_TIME_TOGGLE        = "local time mode toggled"
	MSG_PRIVATE_MODE_TOGGLE      = "private mode toggled"
	MSG_AVATAR_CHANGE_SUCCESS    = "avatar updated successfully"
	ERR_PASSPHRASE_MISMATCH      = "passphrases do not match"
	ERR_PASSPHRASE_MISSING       = "passphrase fields need to be filled"
	ERR_ABOUT_TEXT_UNCHANGED     = "the about textarea is empty, or the text has not changed"
	ERR_ABOUT_TEXT_CHAR_LIMIT    = "about text has to be shorter than 100 chars"
	ERR_WEBSITE_UNCHANGED        = "website URL has to be filled, or changed"
	ERR_WEBSITE_REGEXP_FAIL      = "failed to check the website format (regexp object failed)"
	ERR_WEBSITE_INVALID          = "website prolly not a valid URL"
	ERR_SUBSCRIPTION_BLANK_UUID  = "blank UUID string"
	ERR_SUBSCRIPTION_REQ_FAIL    = "failed to subscribe to notifications: "

	// login-related error messages
	ERR_ALL_FIELDS_REQUIRED     = "all fields are required"
	ERR_LOGIN_CHARS_LIMIT       = "only a-z, A-Z characters and numbers can be used"
	ERR_ACCESS_DENIED           = "wrong credentials entered"
	ERR_LOCAL_STORAGE_USER_FAIL = "cannot save user's data to the browser"

	// polls-related (non-)error messages
	MSG_NO_POLL_TO_SHOW      = "no poll to show, click here to create one!"
	ERR_POLL_UNAUTH_DELETE   = "you can delete your own polls only!"
	ERR_POLL_OPTION_MISMATCH = "such option is not associated to the poll"

	// post-related (non-)error messages
	MSG_IMAGE_READY             = "image is ready for the upload"
	ERR_LOCAL_STORAGE_LOAD_FAIL = "cannot decode user's data: "
	ERR_POST_TEXTAREA_EMPTY     = "no valid content entered"
	ERR_POLL_FIELDS_REQUIRED    = "poll question and at least two options are required"

	// register-related error messages
	ERR_REGISTER_FIELDS_REQUIRED = "all fields are required"
	ERR_REGISTER_CHARSET_LIMIT   = "only a-z, A-Z characters and numbers can be used"
	ERR_WRONG_EMAIL_FORMAT       = "invalid e-mail address format entered"

	// reset-related (non-)error messages
	MSG_RESET_PASSPHRASE_SUCCESS = "your passphrase has been changed, check your mail inbox"
	MSG_RESET_REQUEST_SUCCESS    = "the passphrase reset request has been sent, check your mail inbox"
	ERR_RESET_FIELD_REQUIRED     = "e-mail address is required"
	ERR_RESET_UUID_FIELD_EMPTY   = "UUID string is required to continue, check your mail inbox"
	ERR_RESET_INVALID_INPUT_DATA = "invalid input data entered"

	// users-related (non-)error messages
	MSG_USER_UPDATED_SUCCESS   = "user has been updated, request was removed"
	MSG_FOLLOW_REQUEST_REMOVED = "user has been updated, request was removed"
	MSG_REQ_TO_FOLLOW_SUCCESS  = "request to follow sent successfully"
)

Variables

View Source
var (
	// those vars are used during the build --- linker (ld) bakes the values in
	AppVersion     string
	AppPepper      string
	VapidPublicKey string
)

Functions

func FetchData added in v0.42.0

func FetchData(input *CallInput, output *Response) bool

ng-func

func LoadUser added in v0.41.8

func LoadUser(encoded string, user *models.User) error

func ReadFile added in v0.41.2

func ReadFile(file app.Value) (data []byte, err error)

func SaveUser added in v0.41.8

func SaveUser(plain *string, user *models.User) error

Types

type CallInput

type CallInput struct {
	Method      string
	Url         string
	CallerID    string
	PageNo      int
	HideReplies bool

	// payload body for the API call
	Data interface{}
}

DTO-in structure for the API call.

type Response added in v0.42.0

type Response struct {
	Code      int
	Message   string      `json:"message"`
	Timestamp int64       `json:"timestamp"`
	Data      interface{} `json:"data"`
}

standardized common response from API

type Toast added in v0.41.1

type Toast struct {
	AppContext *app.Context
	TLink      string
	TText      string
	TType      string
	TID        int64
}

func (*Toast) Context added in v0.41.1

func (t *Toast) Context(ctx *app.Context) *Toast

func (*Toast) Dispatch added in v0.41.1

func (t *Toast) Dispatch(c interface{}, f func(*Toast, interface{}))
func (t *Toast) Link(link string) *Toast

func (*Toast) Text added in v0.41.1

func (t *Toast) Text(text string) *Toast

func (*Toast) Type added in v0.41.1

func (t *Toast) Type(typ string) *Toast

type ToastInterface added in v0.41.1

type ToastInterface interface {
	Context(*app.Context) *Toast
	Text(string) *Toast
	Link(string) *Toast
	Type(string) *Toast
	Dispatch(interface{}, func(*Toast, interface{}))
}

Jump to

Keyboard shortcuts

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