Documentation ¶
Index ¶
- type APIToken
- type CloudFunction
- type CloudFunctionRequestResponseType
- type ConnectionType
- type DriverCredentials
- type FieldInfo
- type FileDetails
- type FileLink
- type FilePickParameter
- type Filter
- type FunctionEnvVariables
- type FunctionRuntimeConfig
- type ImageMetaInfo
- type InitParams
- type LoginRequest
- type MetaField
- type ModelType
- type PassChangeRequest
- type PictureDeleteRequest
- type PluginActivateStatus
- type PluginDetails
- type PluginLoadStatus
- type PluginType
- type PreviewMode
- type Project
- type ProjectCreateRequest
- type ProjectSchema
- type RegisterRequest
- type Request
- type Response
- type SystemMessage
- type SystemUser
- type UploadParams
- type Validation
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIToken ¶
type APIToken struct { ProjectID string `json:"project_id,omitempty" firestore:"project_id,omitempty"` Name string `json:"name,omitempty" firestore:"name,omitempty"` Token string `json:"token,omitempty" firestore:"token,omitempty"` Expire string `json:"expire,omitempty" firestore:"expire,omitempty"` }
type CloudFunction ¶
type CloudFunction struct { ProjectID string `bun:"type:uuid,pk" json:"project_id,omitempty" firestore:"project_id,omitempty"` ID string `json:"id,omitempty" firestore:"id,omitempty"` Name string `json:"name,omitempty" firestore:"name,omitempty"` Description string `json:"description,omitempty" firestore:"description,omitempty"` EnvVars []*FunctionEnvVariables `json:"env_vars,omitempty" firestore:"env_vars,omitempty"` FunctionPath string `json:"function_path,omitempty" firestore:"function_path,omitempty"` Request *CloudFunctionRequestResponseType `json:"request,omitempty" firestore:"request,omitempty"` Response *CloudFunctionRequestResponseType `json:"response,omitempty" firestore:"response,omitempty"` FunctionProviderId string `json:"function_provider_id,omitempty" firestore:"function_provider_id,omitempty"` FunctionConnected bool `json:"function_connected,omitempty" firestore:"function_connected,omitempty"` ProviderExportedVariable string `json:"provider_exported_variable,omitempty" firestore:"provider_exported_variable,omitempty"` FunctionExportedVariable string `json:"function_exported_variable,omitempty" firestore:"function_exported_variable,omitempty"` RuntimeConfig *FunctionRuntimeConfig `json:"runtime_config,omitempty" firestore:"runtime_config,omitempty"` UpdatedAt string `bun:",nullzero,notnull,default:current_timestamp" json:"updated_at,omitempty" firestore:"updated_at,omitempty"` CreatedAt string `bun:",nullzero,notnull,default:current_timestamp" json:"created_at,omitempty" firestore:"created_at,omitempty"` }
type ConnectionType ¶
type ConnectionType struct { ConnectionID string `json:"connection_id,omitempty" firestore:"connection_id,omitempty"` Model string `json:"model,omitempty" firestore:"model,omitempty"` Relation string `json:"relation,omitempty" firestore:"relation,omitempty"` Type string `json:"type,omitempty" firestore:"type,omitempty"` KnownAs string `json:"known_as,omitempty" firestore:"known_as,omitempty"` }
type DriverCredentials ¶
type DriverCredentials struct { // for sql migration purposes ProjectID string `bun:"type:uuid,pk" json:"project_id,omitempty" firestore:"project_id,omitempty"` // normal sql & nosql database Engine string `json:"engine,omitempty"` Host string `json:"host,omitempty"` Port string `json:"port,omitempty"` User string `json:"user,omitempty"` Password string `json:"password,omitempty"` Database string `json:"database,omitempty"` // for firebase FirebaseProjectId string `json:"firebase_project_id,omitempty"` FirebaseProjectCredentialJson string `json:"firebase_project_credential_json,omitempty"` // for dynamodb AccessKey string `json:"access_key,omitempty"` SecretKey string `json:"secret_key,omitempty"` // for embedded database DatabaseDir string `json:"database_dir,omitempty"` }
type FieldInfo ¶
type FieldInfo struct { FieldID string `bun:",pk" json:"field_id,omitempty" firestore:"field_id,omitempty"` Identifier string `json:"identifier,omitempty" firestore:"identifier,omitempty"` Description string `json:"description,omitempty" firestore:"description,omitempty"` InputType string `json:"input_type,omitempty" firestore:"input_type,omitempty"` FieldType string `json:"field_type,omitempty" firestore:"field_type,omitempty"` FieldSubType string `json:"field_sub_type,omitempty"` SubFieldInfo []*FieldInfo `json:"sub_field_info,omitempty" firestore:"modules,omitempty"` Validation *Validation `json:"validation,omitempty" firestore:"validation,omitempty"` Serial uint32 `json:"serial,omitempty" firestore:"serial,omitempty"` Label string `json:"label,omitempty" firestore:"label,omitempty"` SystemGenerated bool `json:"system_generated,omitempty" firestore:"system_generated,omitempty"` RepeatedGroupIdentifier string `json:"repeated_group_identifier,omitempty" firestore:"repeated_group_identifier,omitempty"` IsObjectField bool `json:"is_object_field,omitempty" firestore:"is_object_field,omitempty"` ParentField string `json:"parent_field,omitempty" firestore:"parent_field,omitempty"` }
type FileDetails ¶
type FileDetails struct { Id string `json:"id,omitempty" firestore:"id,omitempty"` XKey string `json:"_key,omitempty" firestore:"_key,omitempty"` Type string `json:"type,omitempty" firestore:"type,omitempty"` FileExtension string `json:"file_extension,omitempty" firestore:"file_extension,omitempty"` FileName string `json:"file_name,omitempty" firestore:"file_name,omitempty"` ContentType string `json:"content_type,omitempty" firestore:"content_type,omitempty"` Size int64 `json:"size,omitempty" firestore:"size,omitempty"` S3Key string `json:"s3_key,omitempty" firestore:"s3_key,omitempty"` Url string `json:"url,omitempty" firestore:"url,omitempty"` CreatedAt string `json:"created_at,omitempty" firestore:"created_at,omitempty"` UploadParam *UploadParams `json:"upload_param,omitempty" firestore:"upload_param,omitempty"` Buffer []byte `json:"buffer,omitempty" firestore:"upload_param,omitempty"` }
type FileLink ¶
type FileLink struct { Link string `json:"link,omitempty" firestore:"link,omitempty"` Title string `json:"title,omitempty" firestore:"title,omitempty"` CreatedAt string `json:"created_at,omitempty" firestore:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty" firestore:"updated_at,omitempty"` }
File Picker
type FilePickParameter ¶
type FilePickParameter struct { NumberOfImages uint32 `json:"number_of_images,omitempty" firestore:"number_of_images,omitempty"` S3Folder string `json:"s3_folder,omitempty" firestore:"s3_folder,omitempty"` PickerTitle string `json:"picker_title,omitempty" firestore:"picker_title,omitempty"` Origin *SystemUser `json:"origin,omitempty" firestore:"origin,omitempty"` }
type Filter ¶
type Filter struct { Page uint32 `json:"page,omitempty" firestore:"page,omitempty"` Offset uint32 `json:"offset,omitempty" firestore:"offset,omitempty"` Limit uint32 `json:"limit,omitempty" firestore:"limit,omitempty"` Order string `json:"order,omitempty" firestore:"order,omitempty"` Min uint32 `json:"min,omitempty" firestore:"min,omitempty"` Max uint32 `json:"max,omitempty" firestore:"max,omitempty"` Category string `json:"category,omitempty" firestore:"category,omitempty"` }
type FunctionEnvVariables ¶
type FunctionRuntimeConfig ¶
type FunctionRuntimeConfig struct { Runtime string `json:"runtime,omitempty" firestore:"runtime,omitempty"` Memory int64 `json:"memory,omitempty" firestore:"memory,omitempty"` Handler string `json:"handler,omitempty" firestore:"handler,omitempty"` TimeOut int64 `json:"time_out,omitempty" firestore:"time_out,omitempty"` }
type ImageMetaInfo ¶
type ImageMetaInfo struct { Identifier string `json:"identifier,omitempty" firestore:"identifier,omitempty"` Name string `json:"name,omitempty" firestore:"name,omitempty"` Width uint32 `json:"width,omitempty" firestore:"width,omitempty"` Height uint32 `json:"height,omitempty" firestore:"height,omitempty"` Type string `json:"type,omitempty" firestore:"type,omitempty"` }
type InitParams ¶
type InitParams struct { ProjectID string `json:"project_id"` ProjectDB *DriverCredentials `json:"system_credentials"` CacheDB *DriverCredentials `json:"cache_db"` }
type LoginRequest ¶
type ModelType ¶
type ModelType struct { ProjectID string `bun:"type:uuid,pk" json:"project_id,omitempty" firestore:"project_id,omitempty"` ModelID string `bun:",pk" json:"model_id,omitempty" firestore:"model_id,omitempty"` Fields []*FieldInfo `bun:"rel:has-many,join:model_id=field_id" json:"fields,omitempty" firestore:"fields,omitempty"` Connections []*ConnectionType `bun:"rel:has-many,join:model_id=connection_id" json:"connections,omitempty" firestore:"connections,omitempty"` Name string `json:"name,omitempty" firestore:"name,omitempty"` Description string `json:"description,omitempty"` HookIds []string `json:"hook_ids,omitempty" firestore:"hook_ids,omitempty"` Locals []string `json:"locals,omitempty" firestore:"locals,omitempty"` RepeatedGroups []string `json:"repeated_groups,omitempty" firestore:"locals,omitempty"` SystemGenerated bool `json:"system_generated,omitempty" firestore:"system_generated,omitempty"` SinglePage bool `json:"single_page,omitempty" firestore:"system_generated,omitempty"` SinglePageUuid string `json:"single_page_uuid,omitempty" firestore:"system_generated,omitempty"` HasConnections bool `json:"has_connections,omitempty" firestore:"has_connections,omitempty"` }
type PassChangeRequest ¶
type PictureDeleteRequest ¶
type PictureDeleteRequest struct { Urls []string `json:"urls,omitempty" firestore:"urls,omitempty"` Model string `json:"model,omitempty" firestore:"model,omitempty"` Id string `json:"id,omitempty" firestore:"id,omitempty"` FieldName string `json:"field_name,omitempty" firestore:"field_name,omitempty"` }
type PluginActivateStatus ¶
type PluginActivateStatus int32
const ( PluginActivateStatus_deactivated PluginActivateStatus = 0 PluginActivateStatus_activated PluginActivateStatus = 1 )
type PluginDetails ¶
type PluginDetails struct { ProjectID string `json:"project_id,omitempty" firestore:"project_id,omitempty"` Icon string `json:"icon,omitempty" firestore:"icon,omitempty"` ID string `json:"id,omitempty" firestore:"id,omitempty"` Title string `json:"title,omitempty" firestore:"title,omitempty"` Serial int64 `json:"serial,omitempty" firestore:"serial,omitempty"` Version string `json:"version,omitempty" firestore:"version,omitempty"` Description string `json:"description,omitempty" firestore:"description,omitempty"` Type PluginType `json:"type,omitempty" firestore:"type,omitempty"` EnvVars []*FunctionEnvVariables `json:"env_vars,omitempty" firestore:"env_vars,omitempty"` ExportedVariable string `json:"exported_variable,omitempty" firestore:"exported_variable,omitempty"` Enable bool `json:"enable,omitempty" firestore:"enable,omitempty"` RepositoryUrl string `json:"repository_url,omitempty" firestore:"repository_url,omitempty"` Branch string `json:"branch,omitempty" firestore:"branch,omitempty"` Author string `json:"author,omitempty" firestore:"author,omitempty"` LoadStatus PluginLoadStatus `json:"load_status,omitempty" firestore:"load_status,omitempty"` ActivateStatus PluginActivateStatus `json:"activate_status,omitempty" firestore:"activate_status,omitempty"` }
type PluginLoadStatus ¶
type PluginLoadStatus int32
const ( PluginLoadStatus_NotInstalled PluginLoadStatus = 0 PluginLoadStatus_Installed PluginLoadStatus = 1 PluginLoadStatus_ReInstall PluginLoadStatus = 2 PluginLoadStatus_Loading PluginLoadStatus = 3 PluginLoadStatus_Loaded PluginLoadStatus = 4 PluginLoadStatus_LoadFailed PluginLoadStatus = 5 )
type PluginType ¶
type PluginType int32
const ( PluginType_NormalPlugin PluginType = 0 // auth, customFunction etc PluginType_Function PluginType = 1 // go-plugin, aws-lambda etc PluginType_Storage PluginType = 2 // s3, cloudinary etc )
type PreviewMode ¶
type Project ¶
type Project struct { XKey string `json:"_key,omitempty" firestore:"_key,omitempty"` ID string `bun:"type:uuid,pk" json:"id,omitempty" firestore:"id,omitempty"` SystemUserID string `bun:"type:uuid,notnull" json:"system_user_id,omitempty" firestore:"system_user_id,omitempty"` Name string `json:"name,omitempty" firestore:"name,omitempty"` Description string `json:"description,omitempty" firestore:"description,omitempty"` Schema *ProjectSchema `bun:"-" json:"schema,omitempty" firestore:"schema,omitempty"` ExpireAt string `json:"expire_at,omitempty" firestore:"expire_at,omitempty"` Plugins []*PluginDetails `bun:"rel:has-many" json:"plugins,omitempty" firestore:"plugins,omitempty"` Tokens []*APIToken `bun:"rel:has-many" json:"tokens,omitempty" firestore:"tokens,omitempty"` ProjectTemplate string `json:"project_template,omitempty" firestore:"project_template,omitempty"` SystemMessages []*SystemMessage `bun:"rel:has-many" json:"system_messages,omitempty" firestore:"system_messages,omitempty"` DefaultStoragePlugin string `json:"default_storage_plugin,omitempty" firestore:"default_storage_plugin,omitempty"` DefaultFunctionPlugin string `json:"default_function_plugin,omitempty" firestore:"default_function_plugin,omitempty"` Locals []string `json:"locals,omitempty" firestore:"locals,omitempty"` CreatedAt string `json:"created_at,omitempty" firestore:"created_at,omitempty"` UpdatedAt string `json:"updated_at,omitempty" firestore:"updated_at,omitempty"` }
Project user project
type ProjectCreateRequest ¶
type ProjectSchema ¶
type ProjectSchema struct { Models []*ModelType `bun:"rel:has-many" json:"models,omitempty" firestore:"models,omitempty"` Functions []*CloudFunction `bun:"rel:has-many" json:"functions,omitempty" firestore:"functions,omitempty"` }
type RegisterRequest ¶
type RegisterRequest struct { User *SystemUser `json:"user,omitempty" firestore:"user,omitempty"` VerificationCode string `json:"verification_code,omitempty" firestore:"profession,omitempty"` AddedByAdmin bool `json:"added_by_admin,omitempty" firestore:"added_by_admin,omitempty"` }
type Request ¶
type Request struct { Id string `json:"id,omitempty" firestore:"id,omitempty"` Type string `json:"type,omitempty" firestore:"type,omitempty"` Filter *Filter `json:"filter,omitempty" firestore:"filter,omitempty"` SearchString string `json:"search_string,omitempty" firestore:"search_string,omitempty"` Retry bool `json:"retry,omitempty" firestore:"retry,omitempty"` }
type SystemMessage ¶
type SystemMessage struct { ProjectID string `json:"project_id,omitempty" firestore:"project_id,omitempty"` Message string `json:"message,omitempty" firestore:"message,omitempty"` Code string `json:"code,omitempty" firestore:"code,omitempty"` Redirection string `json:"redirection,omitempty" firestore:"redirection,omitempty"` Hide bool `json:"hide,omitempty" firestore:"hide,omitempty"` }
type SystemUser ¶
type SystemUser struct { XKey string `json:"_key,omitempty" firestore:"_key,omitempty"` ID string `bun:"type:uuid,pk" json:"id,omitempty" firestore:"id,omitempty"` FirstName string `json:"first_name,omitempty" firestore:"first_name,omitempty"` LastName string `json:"last_name,omitempty" firestore:"last_name,omitempty"` Username string `json:"username,omitempty" firestore:"username,omitempty"` Email string `json:"email,omitempty" firestore:"email,omitempty"` Secret string `json:"secret,omitempty" firestore:"secret,omitempty"` Avatar string `json:"avatar,omitempty" firestore:"avatar,omitempty"` RegisterProvider string `json:"register_provider,omitempty" firestore:"register_provider,omitempty"` CurrentProjectId string `json:"current_project_id,omitempty" firestore:"current_project_id,omitempty"` Projects []*Project `bun:"rel:has-many,join:id=system_user_id" json:"projects,omitempty" firestore:"projects,omitempty"` RefreshToken string `json:"refresh_token,omitempty" firestore:"refresh_token,omitempty"` AccessToken string `json:"access_token,omitempty" firestore:"access_token,omitempty"` LastLoggedIn string `json:"last_logged_in,omitempty" firestore:"last_logged_in,omitempty"` CreatedAt string `bun:"type:timestamp,notnull,default:current_timestamp" json:"created_at,omitempty" firestore:"created_at,omitempty"` UpdatedAt string `bun:"type:timestamp,notnull,default:current_timestamp" json:"updated_at,omitempty" firestore:"updated_at,omitempty"` }
type UploadParams ¶
type UploadParams struct { DocId string `json:"doc_id,omitempty" firestore:"doc_id,omitempty"` ProjectId string `json:"project_id,omitempty" firestore:"project_id,omitempty"` ModelName string `json:"model_name,omitempty" firestore:"model_name,omitempty"` FieldName string `json:"field_name,omitempty" firestore:"field_name,omitempty"` AllowMulti bool `json:"allow_multi,omitempty" firestore:"allow_multi,omitempty"` Provider string `json:"provider,omitempty" firestore:"provider,omitempty"` }
type Validation ¶
type Validation struct { Required bool `json:"required,omitempty" firestore:"required,omitempty"` Hide bool `json:"hide,omitempty" firestore:"hide,omitempty"` AsTitle bool `json:"as_title,omitempty" firestore:"as_title,omitempty"` Locals []string `json:"locals,omitempty" firestore:"locals,omitempty"` Unique bool `json:"unique,omitempty" firestore:"unique,omitempty"` CharLimit []uint32 `json:"char_limit,omitempty" firestore:"char_limit,omitempty"` IntRangeLimit []uint32 `json:"int_range_limit,omitempty" firestore:"int_range_limit,omitempty"` DoubleRangeLimit []float64 `json:"double_range_limit,omitempty" firestore:"double_range_limit,omitempty"` IsEmail bool `json:"is_email,omitempty" firestore:"is_email,omitempty"` Placeholder string `json:"placeholder,omitempty" firestore:"placeholder,omitempty"` FixedListElements []string `json:"fixed_list_elements,omitempty" firestore:"fixed_list_elements,omitempty"` IsMultiChoice bool `json:"is_multi_choice,omitempty" firestore:"is_multi_choice,omitempty"` ListType string `json:"list_type,omitempty" firestore:"list_type,omitempty"` IsGallery bool `json:"is_gallery,omitempty" firestore:"is_gallery,omitempty"` IsPassword bool `json:"is_password,omitempty" firestore:"is_gallery,omitempty"` IsSystemRole bool `json:"is_system_role,omitempty" firestore:"is_gallery,omitempty"` IsUrl bool `json:"is_url,omitempty" firestore:"is_url,omitempty"` }
Click to show internal directories.
Click to hide internal directories.