Documentation ¶
Index ¶
- Constants
- Variables
- type Activity
- type ActivityCreate
- type ActivityLevel
- type ActivityMemoCreatePayload
- type ActivityResourceCreatePayload
- type ActivityServerStartPayload
- type ActivityShortcutCreatePayload
- type ActivityTagCreatePayload
- type ActivityType
- type ActivityUserAuthSignInPayload
- type ActivityUserAuthSignUpPayload
- type ActivityUserCreatePayload
- type CustomizedProfile
- type FieldMapping
- type IdentityProvider
- type IdentityProviderConfig
- type IdentityProviderCreate
- type IdentityProviderDelete
- type IdentityProviderFind
- type IdentityProviderOAuth2Config
- type IdentityProviderPatch
- type IdentityProviderType
- type Memo
- type MemoCreate
- type MemoDelete
- type MemoFind
- type MemoOrganizer
- type MemoOrganizerDelete
- type MemoOrganizerFind
- type MemoOrganizerUpsert
- type MemoPatch
- type MemoRelation
- type MemoRelationType
- type MemoRelationUpsert
- type MemoResource
- type MemoResourceDelete
- type MemoResourceFind
- type MemoResourceUpsert
- type OpenAIConfig
- type Resource
- type ResourceCreate
- type ResourceDelete
- type ResourceFind
- type ResourcePatch
- type Role
- type RowStatus
- type SSOSignIn
- type Shortcut
- type ShortcutCreate
- type ShortcutDelete
- type ShortcutFind
- type ShortcutPatch
- type SignIn
- type SignUp
- type Storage
- type StorageConfig
- type StorageCreate
- type StorageDelete
- type StorageFind
- type StoragePatch
- type StorageS3Config
- type StorageType
- type SystemSetting
- type SystemSettingFind
- type SystemSettingName
- type SystemSettingUpsert
- type SystemStatus
- type Tag
- type TagDelete
- type TagFind
- type TagUpsert
- type User
- type UserCreate
- type UserDelete
- type UserFind
- type UserPatch
- type UserSetting
- type UserSettingDelete
- type UserSettingFind
- type UserSettingKey
- type UserSettingUpsert
- type Visibility
Constants ¶
View Source
const ( // LocalStorage means the storage service is local file system. LocalStorage = -1 // DatabaseStorage means the storage service is database. DatabaseStorage = 0 )
View Source
const MaxContentLength = 1 << 30
MaxContentLength means the max memo content bytes is 1MB.
View Source
const UnknownID = -1
UnknownID is the ID for unknowns.
Variables ¶
View Source
var ( UserSettingLocaleValue = []string{ "de", "en", "es", "fr", "it", "ko", "nl", "pl", "pt-BR", "ru", "sl", "sv", "tr", "uk", "vi", "zh-Hans", "zh-Hant", } UserSettingAppearanceValue = []string{"system", "light", "dark"} UserSettingMemoVisibilityValue = []Visibility{Private, Protected, Public} )
Functions ¶
This section is empty.
Types ¶
type Activity ¶ added in v0.10.0
type Activity struct { ID int `json:"id"` // Standard fields CreatorID int `json:"creatorId"` CreatedTs int64 `json:"createdTs"` // Domain specific fields Type ActivityType `json:"type"` Level ActivityLevel `json:"level"` Payload string `json:"payload"` }
type ActivityCreate ¶ added in v0.10.0
type ActivityCreate struct { // Standard fields CreatorID int // Domain specific fields Type ActivityType `json:"type"` Level ActivityLevel Payload string `json:"payload"` }
ActivityCreate is the API message for creating an activity.
type ActivityLevel ¶ added in v0.10.0
type ActivityLevel string
ActivityLevel is the level of activities.
const ( // ActivityInfo is the INFO level of activities. ActivityInfo ActivityLevel = "INFO" // ActivityWarn is the WARN level of activities. ActivityWarn ActivityLevel = "WARN" // ActivityError is the ERROR level of activities. ActivityError ActivityLevel = "ERROR" )
type ActivityMemoCreatePayload ¶ added in v0.10.0
type ActivityResourceCreatePayload ¶ added in v0.10.0
type ActivityServerStartPayload ¶ added in v0.10.0
type ActivityShortcutCreatePayload ¶ added in v0.10.0
type ActivityTagCreatePayload ¶ added in v0.10.0
type ActivityTagCreatePayload struct {
TagName string `json:"tagName"`
}
type ActivityType ¶ added in v0.10.0
type ActivityType string
ActivityType is the type for an activity.
const ( // ActivityUserCreate is the type for creating users. ActivityUserCreate ActivityType = "user.create" // ActivityUserUpdate is the type for updating users. ActivityUserUpdate ActivityType = "user.update" // ActivityUserDelete is the type for deleting users. ActivityUserDelete ActivityType = "user.delete" // ActivityUserAuthSignIn is the type for user signin. ActivityUserAuthSignIn ActivityType = "user.auth.signin" // ActivityUserAuthSignUp is the type for user signup. ActivityUserAuthSignUp ActivityType = "user.auth.signup" // ActivityUserSettingUpdate is the type for updating user settings. ActivityUserSettingUpdate ActivityType = "user.setting.update" // ActivityMemoCreate is the type for creating memos. ActivityMemoCreate ActivityType = "memo.create" // ActivityMemoUpdate is the type for updating memos. ActivityMemoUpdate ActivityType = "memo.update" // ActivityMemoDelete is the type for deleting memos. ActivityMemoDelete ActivityType = "memo.delete" // ActivityShortcutCreate is the type for creating shortcuts. ActivityShortcutCreate ActivityType = "shortcut.create" // ActivityShortcutUpdate is the type for updating shortcuts. ActivityShortcutUpdate ActivityType = "shortcut.update" // ActivityShortcutDelete is the type for deleting shortcuts. ActivityShortcutDelete ActivityType = "shortcut.delete" // ActivityResourceCreate is the type for creating resources. ActivityResourceCreate ActivityType = "resource.create" // ActivityResourceDelete is the type for deleting resources. ActivityResourceDelete ActivityType = "resource.delete" // ActivityTagCreate is the type for creating tags. ActivityTagCreate ActivityType = "tag.create" // ActivityTagDelete is the type for deleting tags. ActivityTagDelete ActivityType = "tag.delete" // ActivityServerStart is the type for starting server. ActivityServerStart ActivityType = "server.start" )
type ActivityUserAuthSignInPayload ¶ added in v0.10.0
type ActivityUserAuthSignUpPayload ¶ added in v0.10.0
type ActivityUserCreatePayload ¶ added in v0.10.0
type CustomizedProfile ¶ added in v0.9.0
type CustomizedProfile struct { // Name is the server name, default is `memos` Name string `json:"name"` // LogoURL is the url of logo image. LogoURL string `json:"logoUrl"` // Description is the server description. Description string `json:"description"` // Locale is the server default locale. Locale string `json:"locale"` // Appearance is the server default appearance. Appearance string `json:"appearance"` // ExternalURL is the external url of server. e.g. https://usermemos.com ExternalURL string `json:"externalUrl"` }
CustomizedProfile is the struct definition for SystemSettingCustomizedProfileName system setting item.
type FieldMapping ¶ added in v0.11.0
type IdentityProvider ¶ added in v0.11.0
type IdentityProvider struct { ID int `json:"id"` Name string `json:"name"` Type IdentityProviderType `json:"type"` IdentifierFilter string `json:"identifierFilter"` Config *IdentityProviderConfig `json:"config"` }
type IdentityProviderConfig ¶ added in v0.11.0
type IdentityProviderConfig struct {
OAuth2Config *IdentityProviderOAuth2Config `json:"oauth2Config"`
}
type IdentityProviderCreate ¶ added in v0.11.0
type IdentityProviderCreate struct { Name string `json:"name"` Type IdentityProviderType `json:"type"` IdentifierFilter string `json:"identifierFilter"` Config *IdentityProviderConfig `json:"config"` }
type IdentityProviderDelete ¶ added in v0.11.0
type IdentityProviderDelete struct {
ID int
}
type IdentityProviderFind ¶ added in v0.11.0
type IdentityProviderFind struct {
ID *int
}
type IdentityProviderOAuth2Config ¶ added in v0.11.0
type IdentityProviderOAuth2Config struct { ClientID string `json:"clientId"` ClientSecret string `json:"clientSecret"` AuthURL string `json:"authUrl"` TokenURL string `json:"tokenUrl"` UserInfoURL string `json:"userInfoUrl"` Scopes []string `json:"scopes"` FieldMapping *FieldMapping `json:"fieldMapping"` }
type IdentityProviderPatch ¶ added in v0.11.0
type IdentityProviderPatch struct { ID int Type IdentityProviderType `json:"type"` Name *string `json:"name"` IdentifierFilter *string `json:"identifierFilter"` Config *IdentityProviderConfig `json:"config"` }
type IdentityProviderType ¶ added in v0.11.0
type IdentityProviderType string
const (
IdentityProviderOAuth2 IdentityProviderType = "OAUTH2"
)
type Memo ¶
type Memo struct { ID int `json:"id"` // Standard fields RowStatus RowStatus `json:"rowStatus"` CreatorID int `json:"creatorId"` CreatedTs int64 `json:"createdTs"` UpdatedTs int64 `json:"updatedTs"` // Domain specific fields Content string `json:"content"` Visibility Visibility `json:"visibility"` Pinned bool `json:"pinned"` // Related fields CreatorName string `json:"creatorName"` ResourceList []*Resource `json:"resourceList"` RelationList []*MemoRelation `json:"relationList"` }
type MemoCreate ¶
type MemoCreate struct { // Standard fields CreatorID int `json:"-"` CreatedTs *int64 `json:"createdTs"` // Domain specific fields Visibility Visibility `json:"visibility"` Content string `json:"content"` // Related fields ResourceIDList []int `json:"resourceIdList"` RelationList []*MemoRelationUpsert `json:"relationList"` }
type MemoDelete ¶
type MemoDelete struct {
ID int
}
type MemoOrganizer ¶
type MemoOrganizerDelete ¶ added in v0.7.2
type MemoOrganizerFind ¶
type MemoOrganizerUpsert ¶
type MemoPatch ¶
type MemoPatch struct { ID int `json:"-"` // Standard fields CreatedTs *int64 `json:"createdTs"` UpdatedTs *int64 RowStatus *RowStatus `json:"rowStatus"` // Domain specific fields Content *string `json:"content"` Visibility *Visibility `json:"visibility"` // Related fields ResourceIDList []int `json:"resourceIdList"` RelationList []*MemoRelationUpsert `json:"relationList"` }
type MemoRelation ¶ added in v0.13.0
type MemoRelation struct { MemoID int `json:"memoId"` RelatedMemoID int `json:"relatedMemoId"` Type MemoRelationType `json:"type"` }
type MemoRelationType ¶ added in v0.13.0
type MemoRelationType string
const ( MemoRelationReference MemoRelationType = "REFERENCE" MemoRelationAdditional MemoRelationType = "ADDITIONAL" )
type MemoRelationUpsert ¶ added in v0.13.0
type MemoRelationUpsert struct { RelatedMemoID int `json:"relatedMemoId"` Type MemoRelationType `json:"type"` }
type MemoResource ¶ added in v0.5.0
type MemoResourceDelete ¶ added in v0.5.0
type MemoResourceFind ¶ added in v0.5.0
type MemoResourceUpsert ¶ added in v0.5.0
type OpenAIConfig ¶ added in v0.11.2
type Resource ¶
type Resource struct { ID int `json:"id"` // Standard fields CreatorID int `json:"creatorId"` CreatedTs int64 `json:"createdTs"` UpdatedTs int64 `json:"updatedTs"` // Domain specific fields Filename string `json:"filename"` Blob []byte `json:"-"` InternalPath string `json:"internalPath"` ExternalLink string `json:"externalLink"` Type string `json:"type"` Size int64 `json:"size"` PublicID string `json:"publicId"` // Related fields LinkedMemoAmount int `json:"linkedMemoAmount"` }
type ResourceCreate ¶
type ResourceCreate struct { // Standard fields CreatorID int `json:"-"` // Domain specific fields Filename string `json:"filename"` Blob []byte `json:"-"` InternalPath string `json:"internalPath"` ExternalLink string `json:"externalLink"` Type string `json:"type"` Size int64 `json:"-"` PublicID string `json:"publicId"` }
type ResourceDelete ¶
type ResourceDelete struct {
ID int
}
type ResourceFind ¶
type ResourcePatch ¶ added in v0.7.0
type ShortcutCreate ¶
type ShortcutDelete ¶
type ShortcutFind ¶
type ShortcutPatch ¶
type Storage ¶ added in v0.11.0
type Storage struct { ID int `json:"id"` Name string `json:"name"` Type StorageType `json:"type"` Config *StorageConfig `json:"config"` }
type StorageConfig ¶ added in v0.11.0
type StorageConfig struct {
S3Config *StorageS3Config `json:"s3Config"`
}
type StorageCreate ¶ added in v0.11.0
type StorageCreate struct { Name string `json:"name"` Type StorageType `json:"type"` Config *StorageConfig `json:"config"` }
type StorageDelete ¶ added in v0.11.0
type StorageDelete struct {
ID int `json:"id"`
}
type StorageFind ¶ added in v0.11.0
type StorageFind struct {
ID *int `json:"id"`
}
type StoragePatch ¶ added in v0.11.0
type StoragePatch struct { ID int `json:"id"` Type StorageType `json:"type"` Name *string `json:"name"` Config *StorageConfig `json:"config"` }
type StorageS3Config ¶ added in v0.11.0
type SystemSetting ¶ added in v0.7.1
type SystemSetting struct { Name SystemSettingName `json:"name"` // Value is a JSON string with basic value. Value string `json:"value"` Description string `json:"description"` }
type SystemSettingFind ¶ added in v0.7.1
type SystemSettingFind struct {
Name SystemSettingName `json:"name"`
}
type SystemSettingName ¶ added in v0.7.1
type SystemSettingName string
const ( // SystemSettingServerIDName is the name of server id. SystemSettingServerIDName SystemSettingName = "server-id" // SystemSettingSecretSessionName is the name of secret session. SystemSettingSecretSessionName SystemSettingName = "secret-session" // SystemSettingAllowSignUpName is the name of allow signup setting. SystemSettingAllowSignUpName SystemSettingName = "allow-signup" // SystemSettingIgnoreUpgradeName is the name of ignore upgrade. SystemSettingIgnoreUpgradeName SystemSettingName = "ignore-upgrade" // SystemSettingDisablePublicMemosName is the name of disable public memos setting. SystemSettingDisablePublicMemosName SystemSettingName = "disable-public-memos" // SystemSettingMaxUploadSizeMiBName is the name of max upload size setting. SystemSettingMaxUploadSizeMiBName SystemSettingName = "max-upload-size-mib" // SystemSettingAdditionalStyleName is the name of additional style. SystemSettingAdditionalStyleName SystemSettingName = "additional-style" // SystemSettingAdditionalScriptName is the name of additional script. SystemSettingAdditionalScriptName SystemSettingName = "additional-script" // SystemSettingCustomizedProfileName is the name of customized server profile. SystemSettingCustomizedProfileName SystemSettingName = "customized-profile" // SystemSettingStorageServiceIDName is the name of storage service ID. SystemSettingStorageServiceIDName SystemSettingName = "storage-service-id" // SystemSettingLocalStoragePathName is the name of local storage path. SystemSettingLocalStoragePathName SystemSettingName = "local-storage-path" // SystemSettingOpenAIConfigName is the name of OpenAI config. SystemSettingOpenAIConfigName SystemSettingName = "openai-config" )
func (SystemSettingName) String ¶ added in v0.7.1
func (key SystemSettingName) String() string
type SystemSettingUpsert ¶ added in v0.7.1
type SystemSettingUpsert struct { Name SystemSettingName `json:"name"` Value string `json:"value"` Description string `json:"description"` }
func (SystemSettingUpsert) Validate ¶ added in v0.7.1
func (upsert SystemSettingUpsert) Validate() error
type SystemStatus ¶
type SystemStatus struct { Host *User `json:"host"` Profile profile.Profile `json:"profile"` DBSize int64 `json:"dbSize"` // System settings // Allow sign up. AllowSignUp bool `json:"allowSignUp"` // Ignore upgrade IgnoreUpgrade bool `json:"ignoreUpgrade"` // Disable public memos. DisablePublicMemos bool `json:"disablePublicMemos"` // Max upload size. MaxUploadSizeMiB int `json:"maxUploadSizeMiB"` // Additional style. AdditionalStyle string `json:"additionalStyle"` // Additional script. AdditionalScript string `json:"additionalScript"` // Customized server profile, including server name and external url. CustomizedProfile CustomizedProfile `json:"customizedProfile"` // Storage service ID. StorageServiceID int `json:"storageServiceId"` // Local storage path LocalStoragePath string `json:"localStoragePath"` }
type User ¶
type User struct { ID int `json:"id"` // Standard fields RowStatus RowStatus `json:"rowStatus"` CreatedTs int64 `json:"createdTs"` UpdatedTs int64 `json:"updatedTs"` // Domain specific fields Username string `json:"username"` Role Role `json:"role"` Email string `json:"email"` Nickname string `json:"nickname"` PasswordHash string `json:"-"` OpenID string `json:"openId"` AvatarURL string `json:"avatarUrl"` UserSettingList []*UserSetting `json:"userSettingList"` }
type UserCreate ¶
type UserCreate struct { // Domain specific fields Username string `json:"username"` Role Role `json:"role"` Email string `json:"email"` Nickname string `json:"nickname"` Password string `json:"password"` PasswordHash string OpenID string }
func (UserCreate) Validate ¶ added in v0.4.1
func (create UserCreate) Validate() error
type UserDelete ¶ added in v0.3.0
type UserDelete struct {
ID int
}
type UserPatch ¶
type UserPatch struct { ID int `json:"-"` // Standard fields UpdatedTs *int64 RowStatus *RowStatus `json:"rowStatus"` // Domain specific fields Username *string `json:"username"` Email *string `json:"email"` Nickname *string `json:"nickname"` Password *string `json:"password"` ResetOpenID *bool `json:"resetOpenId"` AvatarURL *string `json:"avatarUrl"` PasswordHash *string OpenID *string }
type UserSetting ¶ added in v0.4.0
type UserSetting struct { UserID int Key UserSettingKey `json:"key"` // Value is a JSON string with basic value Value string `json:"value"` }
type UserSettingDelete ¶ added in v0.7.2
type UserSettingDelete struct {
UserID int
}
type UserSettingFind ¶ added in v0.4.0
type UserSettingFind struct { UserID int Key UserSettingKey `json:"key"` }
type UserSettingKey ¶ added in v0.4.0
type UserSettingKey string
const ( // UserSettingLocaleKey is the key type for user locale. UserSettingLocaleKey UserSettingKey = "locale" // UserSettingAppearanceKey is the key type for user appearance. UserSettingAppearanceKey UserSettingKey = "appearance" // UserSettingMemoVisibilityKey is the key type for user preference memo default visibility. UserSettingMemoVisibilityKey UserSettingKey = "memo-visibility" )
func (UserSettingKey) String ¶ added in v0.4.0
func (key UserSettingKey) String() string
String returns the string format of UserSettingKey type.
type UserSettingUpsert ¶ added in v0.4.0
type UserSettingUpsert struct { UserID int `json:"-"` Key UserSettingKey `json:"key"` Value string `json:"value"` }
func (UserSettingUpsert) Validate ¶ added in v0.4.1
func (upsert UserSettingUpsert) Validate() error
type Visibility ¶ added in v0.2.0
type Visibility string
Visibility is the type of a visibility.
const ( // Public is the PUBLIC visibility. Public Visibility = "PUBLIC" // Protected is the PROTECTED visibility. Protected Visibility = "PROTECTED" // Private is the PRIVATE visibility. Private Visibility = "PRIVATE" )
func (Visibility) String ¶ added in v0.2.0
func (e Visibility) String() string
Click to show internal directories.
Click to hide internal directories.