chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,112 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
package schema
|
||||
|
||||
const (
|
||||
ExternalLoginOAuthStateLoginIntent = "login"
|
||||
ExternalLoginOAuthStateBindIntent = "bind"
|
||||
)
|
||||
|
||||
// UserExternalLoginResp user external login resp
|
||||
type UserExternalLoginResp struct {
|
||||
BindingKey string `json:"binding_key"`
|
||||
AccessToken string `json:"access_token"`
|
||||
// ErrMsg error message, if not empty, means login failed and this message should be displayed.
|
||||
ErrMsg string `json:"-"`
|
||||
ErrTitle string `json:"-"`
|
||||
}
|
||||
|
||||
// ExternalLoginBindingUserSendEmailReq external login binding user request
|
||||
type ExternalLoginBindingUserSendEmailReq struct {
|
||||
BindingKey string `validate:"required,gt=1,lte=100" json:"binding_key"`
|
||||
Email string `validate:"required,gt=1,lte=512,email" json:"email"`
|
||||
// If must is true, whatever email if exists, try to bind user.
|
||||
// If must is false, when email exist, will only be prompted with a warning.
|
||||
Must bool `json:"must"`
|
||||
}
|
||||
|
||||
// ExternalLoginBindingUserSendEmailResp external login binding user response
|
||||
type ExternalLoginBindingUserSendEmailResp struct {
|
||||
EmailExistAndMustBeConfirmed bool `json:"email_exist_and_must_be_confirmed"`
|
||||
AccessToken string `json:"access_token"`
|
||||
}
|
||||
|
||||
// ExternalLoginBindingUserReq external login binding user request
|
||||
type ExternalLoginBindingUserReq struct {
|
||||
Code string `validate:"required,gt=0,lte=500" json:"code"`
|
||||
Content string `json:"-"`
|
||||
}
|
||||
|
||||
// ExternalLoginBindingUserResp external login binding user response
|
||||
type ExternalLoginBindingUserResp struct {
|
||||
AccessToken string `json:"access_token"`
|
||||
}
|
||||
|
||||
// ExternalLoginUserInfoCache external login user info
|
||||
type ExternalLoginUserInfoCache struct {
|
||||
// Third party identification
|
||||
// e.g. facebook, twitter, instagram
|
||||
Provider string
|
||||
// required. The unique user ID provided by the third-party login
|
||||
ExternalID string
|
||||
// optional. This name is used preferentially during registration
|
||||
DisplayName string
|
||||
// optional. This username is used preferentially during registration
|
||||
Username string
|
||||
// optional. If email exist will bind the existing user
|
||||
Email string
|
||||
// optional. The avatar URL provided by the third-party login platform
|
||||
Avatar string
|
||||
// optional. The original user information provided by the third-party login platform
|
||||
MetaInfo string
|
||||
// optional. The bio provided by the third-party login platform
|
||||
Bio string
|
||||
}
|
||||
|
||||
// ExternalLoginOAuthState stores the local OAuth request state.
|
||||
type ExternalLoginOAuthState struct {
|
||||
Provider string `json:"provider"`
|
||||
Intent string `json:"intent"`
|
||||
UserID string `json:"user_id,omitempty"`
|
||||
}
|
||||
|
||||
// ExternalLoginUnbindingReq external login unbinding user
|
||||
type ExternalLoginUnbindingReq struct {
|
||||
ExternalID string `validate:"required,gt=0,lte=128" json:"external_id"`
|
||||
UserID string `json:"-"`
|
||||
}
|
||||
|
||||
// UserCenterUserSettingsResp user center user info response
|
||||
type UserCenterUserSettingsResp struct {
|
||||
ProfileSettingAgent UserSettingAgent `json:"profile_setting_agent"`
|
||||
AccountSettingAgent UserSettingAgent `json:"account_setting_agent"`
|
||||
}
|
||||
|
||||
type UserCenterAdminFunctionAgentResp struct {
|
||||
AllowCreateUser bool `json:"allow_create_user"`
|
||||
AllowUpdateUserStatus bool `json:"allow_update_user_status"`
|
||||
AllowUpdateUserPassword bool `json:"allow_update_user_password"`
|
||||
AllowUpdateUserRole bool `json:"allow_update_user_role"`
|
||||
}
|
||||
|
||||
type UserSettingAgent struct {
|
||||
Enabled bool `json:"enabled"`
|
||||
RedirectURL string `json:"redirect_url"`
|
||||
}
|
||||
Reference in New Issue
Block a user