github.com/nhannv/mattermost-server@v5.11.1+incompatible/app/import_types.go (about) 1 // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. 2 // See License.txt for license information. 3 4 package app 5 6 import "github.com/mattermost/mattermost-server/model" 7 8 // Import Data Models 9 10 type LineImportData struct { 11 Type string `json:"type"` 12 Scheme *SchemeImportData `json:"scheme,omitempty"` 13 Team *TeamImportData `json:"team,omitempty"` 14 Channel *ChannelImportData `json:"channel,omitempty"` 15 User *UserImportData `json:"user,omitempty"` 16 Post *PostImportData `json:"post,omitempty"` 17 DirectChannel *DirectChannelImportData `json:"direct_channel,omitempty"` 18 DirectPost *DirectPostImportData `json:"direct_post,omitempty"` 19 Emoji *EmojiImportData `json:"emoji,omitempty"` 20 Version *int `json:"version,omitempty"` 21 } 22 23 type TeamImportData struct { 24 Name *string `json:"name"` 25 DisplayName *string `json:"display_name"` 26 Type *string `json:"type"` 27 Description *string `json:"description,omitempty"` 28 AllowOpenInvite *bool `json:"allow_open_invite,omitempty"` 29 Scheme *string `json:"scheme,omitempty"` 30 } 31 32 type ChannelImportData struct { 33 Team *string `json:"team"` 34 Name *string `json:"name"` 35 DisplayName *string `json:"display_name"` 36 Type *string `json:"type"` 37 Header *string `json:"header,omitempty"` 38 Purpose *string `json:"purpose,omitempty"` 39 Scheme *string `json:"scheme,omitempty"` 40 } 41 42 type UserImportData struct { 43 ProfileImage *string `json:"profile_image,omitempty"` 44 Username *string `json:"username"` 45 Email *string `json:"email"` 46 AuthService *string `json:"auth_service"` 47 AuthData *string `json:"auth_data,omitempty"` 48 Password *string `json:"password,omitempty"` 49 Nickname *string `json:"nickname"` 50 FirstName *string `json:"first_name"` 51 LastName *string `json:"last_name"` 52 Position *string `json:"position"` 53 Roles *string `json:"roles"` 54 Locale *string `json:"locale"` 55 UseMarkdownPreview *string `json:"feature_enabled_markdown_preview,omitempty"` 56 UseFormatting *string `json:"formatting,omitempty"` 57 ShowUnreadSection *string `json:"show_unread_section,omitempty"` 58 DeleteAt *int64 `json:"delete_at,omitempty"` 59 60 Teams *[]UserTeamImportData `json:"teams,omitempty"` 61 62 Theme *string `json:"theme,omitempty"` 63 UseMilitaryTime *string `json:"military_time,omitempty"` 64 CollapsePreviews *string `json:"link_previews,omitempty"` 65 MessageDisplay *string `json:"message_display,omitempty"` 66 ChannelDisplayMode *string `json:"channel_display_mode,omitempty"` 67 TutorialStep *string `json:"tutorial_step,omitempty"` 68 EmailInterval *string `json:"email_interval,omitempty"` 69 70 NotifyProps *UserNotifyPropsImportData `json:"notify_props,omitempty"` 71 } 72 73 type UserNotifyPropsImportData struct { 74 Desktop *string `json:"desktop"` 75 DesktopSound *string `json:"desktop_sound"` 76 77 Email *string `json:"email"` 78 79 Mobile *string `json:"mobile"` 80 MobilePushStatus *string `json:"mobile_push_status"` 81 82 ChannelTrigger *string `json:"channel"` 83 CommentsTrigger *string `json:"comments"` 84 MentionKeys *string `json:"mention_keys"` 85 } 86 87 type UserTeamImportData struct { 88 Name *string `json:"name"` 89 Roles *string `json:"roles"` 90 Theme *string `json:"theme,omitempty"` 91 Channels *[]UserChannelImportData `json:"channels,omitempty"` 92 } 93 94 type UserChannelImportData struct { 95 Name *string `json:"name"` 96 Roles *string `json:"roles"` 97 NotifyProps *UserChannelNotifyPropsImportData `json:"notify_props,omitempty"` 98 Favorite *bool `json:"favorite,omitempty"` 99 } 100 101 type UserChannelNotifyPropsImportData struct { 102 Desktop *string `json:"desktop"` 103 Mobile *string `json:"mobile"` 104 MarkUnread *string `json:"mark_unread"` 105 } 106 107 type EmojiImportData struct { 108 Name *string `json:"name"` 109 Image *string `json:"image"` 110 } 111 112 type ReactionImportData struct { 113 User *string `json:"user"` 114 CreateAt *int64 `json:"create_at"` 115 EmojiName *string `json:"emoji_name"` 116 } 117 118 type ReplyImportData struct { 119 User *string `json:"user"` 120 121 Message *string `json:"message"` 122 CreateAt *int64 `json:"create_at"` 123 124 FlaggedBy *[]string `json:"flagged_by,omitempty"` 125 Reactions *[]ReactionImportData `json:"reactions,omitempty"` 126 Attachments *[]AttachmentImportData `json:"attachments,omitempty"` 127 } 128 129 type PostImportData struct { 130 Team *string `json:"team"` 131 Channel *string `json:"channel"` 132 User *string `json:"user"` 133 134 Message *string `json:"message"` 135 CreateAt *int64 `json:"create_at"` 136 137 FlaggedBy *[]string `json:"flagged_by,omitempty"` 138 Reactions *[]ReactionImportData `json:"reactions,omitempty"` 139 Replies *[]ReplyImportData `json:"replies,omitempty"` 140 Attachments *[]AttachmentImportData `json:"attachments,omitempty"` 141 } 142 143 type DirectChannelImportData struct { 144 Members *[]string `json:"members"` 145 FavoritedBy *[]string `json:"favorited_by"` 146 147 Header *string `json:"header"` 148 } 149 150 type DirectPostImportData struct { 151 ChannelMembers *[]string `json:"channel_members"` 152 User *string `json:"user"` 153 154 Message *string `json:"message"` 155 CreateAt *int64 `json:"create_at"` 156 157 FlaggedBy *[]string `json:"flagged_by"` 158 Reactions *[]ReactionImportData `json:"reactions"` 159 Replies *[]ReplyImportData `json:"replies"` 160 Attachments *[]AttachmentImportData `json:"attachments"` 161 } 162 163 type SchemeImportData struct { 164 Name *string `json:"name"` 165 DisplayName *string `json:"display_name"` 166 Description *string `json:"description"` 167 Scope *string `json:"scope"` 168 DefaultTeamAdminRole *RoleImportData `json:"default_team_admin_role"` 169 DefaultTeamUserRole *RoleImportData `json:"default_team_user_role"` 170 DefaultChannelAdminRole *RoleImportData `json:"default_channel_admin_role"` 171 DefaultChannelUserRole *RoleImportData `json:"default_channel_user_role"` 172 } 173 174 type RoleImportData struct { 175 Name *string `json:"name"` 176 DisplayName *string `json:"display_name"` 177 Description *string `json:"description"` 178 Permissions *[]string `json:"permissions"` 179 } 180 181 type LineImportWorkerData struct { 182 LineImportData 183 LineNumber int 184 } 185 186 type LineImportWorkerError struct { 187 Error *model.AppError 188 LineNumber int 189 } 190 191 type AttachmentImportData struct { 192 Path *string `json:"path"` 193 } 194 195 type ComparablePreference struct { 196 Category string 197 Name string 198 }