Documentation ¶
Index ¶
- Constants
- type CustomData
- type CustomInParams
- type CustomState
- type Data
- type IList
- type IListStdOps
- type Item
- type ItemCommStatus
- type KvInfo
- type MoreOpItem
- type OpBatchRowsHandle
- type OpBatchRowsHandleBasicServerData
- type OpBatchRowsHandleClientData
- type OpBatchRowsHandleOptionServerData
- type OpBatchRowsHandleServerData
- type OpChangePage
- type OpChangePageClientData
- type OpChangePageServerData
- type OpItemBasicServerData
- type OpItemClick
- type OpItemClickClientData
- type OpItemClickGoto
- type OpItemClickGotoClientData
- type OpItemClickGotoServerData
- type OpItemClickServerData
- type OpItemStar
- type OpItemStarClientData
- type OpItemStarServerData
- type StateInfo
Constants ¶
const ( // OpListChangePageKey list level OpListChangePageKey = "changePage" // OpItemStarKey item level OpItemStarKey = "star" // OpItemClickGotoKey item level OpItemClickGotoKey = "clickGoto" // OpItemClickKey . OpItemClickKey = "click" // OpBatchRowsHandleKey . OpBatchRowsHandleKey = "batchRowsHandle" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CustomData ¶
type CustomData interface { CustomDataPtr() interface{} EncodeFromCustomData(customDataPtr interface{}, stdDataPtr *Data) DecodeToCustomData(stdDataPtr *Data, customDataPtr interface{}) }
CustomData is list's custom data handler.
type CustomInParams ¶
type CustomInParams interface { CustomInParamsPtr() interface{} EncodeFromCustomInParams(customInParamsPtr interface{}, stdInParamsPtr *cptype.ExtraMap) DecodeToCustomInParams(stdInParamsPtr *cptype.ExtraMap, customInParamsPtr interface{}) }
CustomInParams is list's custom inParams handler.
type CustomState ¶
type CustomState interface { CustomStatePtr() interface{} EncodeFromCustomState(customStatePtr interface{}, stdStatePtr *cptype.ExtraMap) DecodeToCustomState(stdStatePtr *cptype.ExtraMap, customStatePtr interface{}) }
CustomState is list's custom state handler.
type Data ¶
type Data struct { Title string `json:"title,omitempty"` TitleSummary string `json:"titleSummary,omitempty"` List []Item `json:"list,omitempty"` PageNo uint64 `json:"pageNo,omitempty"` PageSize uint64 `json:"pageSize,omitempty"` Total uint64 `json:"total,omitempty"` Operations map[cptype.OperationKey]cptype.Operation `json:"operations,omitempty"` UserIDs []string `json:"userIDs,omitempty"` }
Data includes list of items.
type IListStdOps ¶
type IListStdOps interface { RegisterChangePage(opData OpChangePage) (opFunc cptype.OperationFunc) RegisterItemStarOp(opData OpItemStar) (opFunc cptype.OperationFunc) RegisterItemClickGotoOp(opData OpItemClickGoto) (opFunc cptype.OperationFunc) RegisterItemClickOp(opData OpItemClick) (opFunc cptype.OperationFunc) RegisterBatchOp(opData OpBatchRowsHandle) (opFunc cptype.OperationFunc) }
IListStdOps standard options
type Item ¶
type Item struct { // uniq id of the item, e.g: appID, projID, ... ID string `json:"id,omitempty"` Title string `json:"title,omitempty"` TitleSummary string `json:"titleSummary,omitempty"` // logo link url of title //LogoURL string `json:"logoURL,omitempty"` Star *bool `json:"star,omitempty"` MainState *StateInfo `json:"mainState,omitempty"` TitleState []StateInfo `json:"titleState,omitempty"` Description string `json:"description,omitempty"` BackgroundImgURL string `json:"backgroundImgURL,omitempty"` KvInfos []KvInfo `json:"kvInfos,omitempty"` Selectable bool `json:"selectable"` // columns show in the item, e.g user, time ColumnsInfo map[string]interface{} `json:"columnsInfo,omitempty"` // operations on the frond Operations map[cptype.OperationKey]cptype.Operation `json:"operations,omitempty"` // operations folded MoreOperations []MoreOpItem `json:"moreOperations,omitempty"` Icon *commodel.Icon `json:"icon,omitempty"` cptype.Extra }
Item minimum unit of list
type ItemCommStatus ¶
type ItemCommStatus string
ItemCommStatus .
const ( // ItemCommStatusDefault default status ItemCommStatusDefault ItemCommStatus = "" // ItemCommStatusSuccess success status ItemCommStatusSuccess ItemCommStatus = "success" // ItemCommStatusInfo info status ItemCommStatusInfo ItemCommStatus = "info" // ItemCommStatusWarning warning status ItemCommStatusWarning ItemCommStatus = "warning" // ItemCommStatusError error status ItemCommStatusError ItemCommStatus = "error" )
type KvInfo ¶
type KvInfo struct { ID string `json:"id,omitempty"` Key string `json:"key,omitempty"` Value string `json:"value,omitempty"` Icon string `json:"icon,omitempty"` Tip string `json:"tip,omitempty"` // red green etc. Color string `json:"color,omitempty"` // metaInfo related operations Operations map[cptype.OperationKey]cptype.Operation `json:"operations"` }
KvInfo .
type MoreOpItem ¶
type MoreOpItem struct { ID string `json:"id,omitempty"` Text string `json:"text,omitempty"` Icon string `json:"icon,omitempty"` // more operation related operations Operations map[cptype.OperationKey]cptype.Operation `json:"operations"` }
MoreOpItem more operation item info
type OpBatchRowsHandle ¶
type OpBatchRowsHandle struct { cptype.Operation ServerData OpBatchRowsHandleServerData `json:"serverData,omitempty"` ClientData OpBatchRowsHandleClientData `json:"clientData,omitempty"` }
OpBatchRowsHandle .
type OpBatchRowsHandleBasicServerData ¶
type OpBatchRowsHandleBasicServerData struct {
Options []OpBatchRowsHandleOptionServerData
}
OpBatchRowsHandleBasicServerData .
type OpBatchRowsHandleClientData ¶
type OpBatchRowsHandleClientData struct { DataRef *Item `json:"dataRef,omitempty"` SelectedOptionsID string `json:"selectedOptionsID"` SelectedRowIDs []string `json:"selectedRowIDs"` }
OpBatchRowsHandleClientData data
type OpBatchRowsHandleOptionServerData ¶
type OpBatchRowsHandleOptionServerData struct { // AllowedRowIDs which rows has this op AllowedRowIDs []string `json:"allowedRowIDs"` // Icon . Icon *commodel.Icon `json:"icon"` // ID of this op. ID string `json:"id"` // Text Text string `json:"text"` }
OpBatchRowsHandleOptionServerData .
type OpBatchRowsHandleServerData ¶
type OpBatchRowsHandleServerData struct {
OpBatchRowsHandleBasicServerData
}
OpBatchRowsHandleServerData server data
type OpChangePage ¶
type OpChangePage struct { cptype.Operation ServerData OpChangePageServerData `json:"serverData,omitempty"` ClientData OpChangePageClientData `json:"clientData,omitempty"` }
OpChangePage paging operation data
type OpChangePageClientData ¶
type OpChangePageClientData struct { PageNo uint64 `json:"pageNo,omitempty"` PageSize uint64 `json:"pageSize,omitempty"` }
OpChangePageClientData data
type OpChangePageServerData ¶
type OpChangePageServerData struct{}
OpChangePageServerData server data
type OpItemBasicServerData ¶
type OpItemBasicServerData struct { // open a new fronted page JumpOut bool `json:"jumpOut,omitempty"` // the jump out target of the new opened fronted page, e.g: projectAllIssue page Target string `json:"target,omitempty"` // params needed for jumping to the new page, e.g: projectId Params map[string]interface{} `json:"params,omitempty"` // the query condition of the new page, e.g: issueFilter__urlQuery Query map[string]interface{} `json:"query,omitempty"` }
OpItemBasicServerData .
type OpItemClick ¶
type OpItemClick struct { cptype.Operation ServerData OpItemClickServerData `json:"serverData,omitempty"` ClientData OpItemClickClientData `json:"clientData,omitempty"` }
OpItemClick .
type OpItemClickClientData ¶
type OpItemClickClientData struct { DataRef *Item `json:"dataRef,omitempty"` OperationRef MoreOpItem `json:"operationRef"` }
OpItemClickClientData data
type OpItemClickGoto ¶
type OpItemClickGoto struct { cptype.Operation ServerData OpItemClickGotoServerData `json:"serverData,omitempty"` ClientData OpItemClickGotoClientData `json:"clientData,omitempty"` }
OpItemClickGoto .
type OpItemClickGotoClientData ¶
type OpItemClickGotoClientData struct{}
OpItemClickGotoClientData data
type OpItemClickGotoServerData ¶
type OpItemClickGotoServerData struct {
OpItemBasicServerData
}
OpItemClickGotoServerData server data
type OpItemClickServerData ¶
type OpItemClickServerData struct {
OpItemBasicServerData
}
OpItemClickServerData server data
type OpItemStar ¶
type OpItemStar struct { cptype.Operation ServerData OpItemStarServerData `json:"serverData,omitempty"` ClientData OpItemStarClientData `json:"clientData,omitempty"` }
OpItemStar .
type OpItemStarClientData ¶
type OpItemStarClientData struct {
DataRef *Item `json:"dataRef,omitempty"`
}
OpItemStarClientData data
type StateInfo ¶
type StateInfo struct { Text string `json:"text,omitempty"` Status ItemCommStatus `json:"status,omitempty"` // right or left SuffixIcon string `json:"suffixIcon,omitempty"` Operations map[cptype.OperationKey]cptype.Operation `json:"operations"` }
StateInfo .