This commit is contained in:
2025-07-17 06:42:00 +03:30
parent 3f878d15ca
commit 6178c9d4e6
6 changed files with 455 additions and 127 deletions
+80 -64
View File
@@ -10,15 +10,18 @@ using xIdentityModels.Models;
using xIdentityModels.Navigations;
using xModels.Dtos;
namespace xIdentityService.Interfaces {
public partial interface IXIdentityProvider {
namespace xIdentityService.Interfaces
{
public partial interface IXIdentityProvider
{
//
string BaseUrl { get; }
string RevisionSecretKey { get; }
IXSecurityProvider SecurityProvider { get; }
//
#region Tools ...
string GetUserSelectByParam (
string GetUserSelectByParam(
XActionRequest model,
bool forceNotNull = true,
ICollection<XUserSelectBy> excludes = null
@@ -27,7 +30,7 @@ namespace xIdentityService.Interfaces {
//
#region Tools ...
Task<T> RunRestRequest<T> (
Task<T> RunRestRequest<T>(
RestClient client,
RestRequest request,
XHttpMethod method,
@@ -37,15 +40,15 @@ namespace xIdentityService.Interfaces {
//
#region Authentication ...
Task<DiscoveryDocumentResponse> RequestDiscoveryDocument ();
Task<XTokenResponse> RequestScopeAccessToken (string scope);
Task<TokenIntrospectionResponse> Introspection (XTokenResponse model);
Task<XLoginResponse> Login (XLoginRequest model);
Task Logout (XTokenResponse model);
Task<XTokenResponse> Authenticate (XLoginRequest model);
Task<XTokenResponse> RefreshTokens (XTokenResponse model);
Task<DiscoveryDocumentResponse> RequestDiscoveryDocument();
Task<XTokenResponse> RequestScopeAccessToken(string scope);
Task<TokenIntrospectionResponse> Introspection(XTokenResponse model);
Task<XLoginResponse> Login(XLoginRequest model);
Task Logout(XTokenResponse model);
Task<XTokenResponse> Authenticate(XLoginRequest model);
Task<XTokenResponse> RefreshTokens(XTokenResponse model);
Task ChangePassword (
Task ChangePassword(
XTokenResponse tokens,
XActionRequest model
);
@@ -53,67 +56,67 @@ namespace xIdentityService.Interfaces {
//
#region Profile ...
Task<IEnumerable<string>> GetUserNames (
Task<IEnumerable<string>> GetUserNames(
XTokenResponse tokens,
string userIds
);
Task<IEnumerable<XUserNameIdResponse>> GetUserNameIds (
Task<IEnumerable<XUserNameIdResponse>> GetUserNameIds(
XTokenResponse tokens,
XUserNameIdRequest model
);
Task<XUserProfileDto> GetUserProfile (
Task<XUserProfileDto> GetUserProfile(
XTokenResponse tokens,
string userSelectByParam
);
Task<XQueryResult<XUserProfileDto>> QueryUsers (
Task<XQueryResult<XUserProfileDto>> QueryUsers(
XTokenResponse tokens,
XQuery query
);
Task<XQueryResult<XUserProfileDto>> QueryInRoleUsers (
Task<XQueryResult<XUserProfileDto>> QueryInRoleUsers(
XTokenResponse tokens,
string role,
XQuery query,
bool forceRole = false
);
Task<XQueryResult<XProfileImage>> QueryAvatars (
Task<XQueryResult<XProfileImage>> QueryAvatars(
XTokenResponse tokens,
string userSelectByParam,
XQuery query
);
Task<XUserProfileDto> ProfileUpdateAsync (
Task<XUserProfileDto> ProfileUpdateAsync(
XTokenResponse tokens,
string userSelectByParam,
XProfileUpdateRequest model
);
Task<XUserProfileDto> FullProfileUpdateAsync (
Task<XUserProfileDto> FullProfileUpdateAsync(
XTokenResponse tokens,
string userSelectByParam,
XProfileUpdateRequest request
);
Task<XUserProfileDto> AddAvatar (
Task<XUserProfileDto> AddAvatar(
XTokenResponse tokens,
IFormFile file
);
Task<XUserProfileDto> AddAvatars (
Task<XUserProfileDto> AddAvatars(
XTokenResponse tokens,
IFormFileCollection files
);
Task<XUserProfileDto> SetAvatar (
Task<XUserProfileDto> SetAvatar(
XTokenResponse tokens,
int avatarId
);
Task<XUserProfileDto> RemoveAvatars (
Task<XUserProfileDto> RemoveAvatars(
XTokenResponse tokens,
string avatarIds
);
@@ -121,142 +124,142 @@ namespace xIdentityService.Interfaces {
//
#region Registration ...
Task<bool> CanRegister (string userSelectByParam);
Task<bool> CanRegister(string userSelectByParam);
Task<XActionResponse> InviteUser (
Task<XActionResponse> InviteUser(
XTokenResponse tokens,
XActionRequest model
);
Task<XActionResponse> RequestRegistration (
Task<XActionResponse> RequestRegistration(
XActionRequest model
);
Task<XActionResponse> AddAccountInfo (
Task<XActionResponse> AddAccountInfo(
XActionRequest model
);
Task<XActionResponse> AttachProfileImage (
Task<XActionResponse> AttachProfileImage(
string actionToken,
IFormFile file
);
Task FinishRegistration (XActionRequest model);
Task FinishRegistration(XActionRequest model);
Task<bool> IsConfirmedEmail (
Task<bool> IsConfirmedEmail(
XTokenResponse tokens,
string userSelectByParam
);
Task<bool> IsConfirmedMobile (
Task<bool> IsConfirmedMobile(
XTokenResponse tokens,
string userSelectByParam
);
Task RequestConfirmRegistration (XActionRequest model);
Task RequestConfirmRegistration(XActionRequest model);
Task ConfirmRegistration (
Task ConfirmRegistration(
XActionRequest model
);
Task<XActionResponse> RequestConfirmMobile (XActionRequest model);
Task<XActionResponse> RequestConfirmMobile(XActionRequest model);
Task<XActionResponse> ConfirmMobileNumber (XActionRequest model);
Task<XActionResponse> ConfirmMobileNumber(XActionRequest model);
Task<XActionResponse> RequestConfirmEmail (XActionRequest model);
Task<XActionResponse> RequestConfirmEmail(XActionRequest model);
Task<XActionResponse> ConfirmEmailAddress (XActionRequest model);
Task<XActionResponse> ConfirmEmailAddress(XActionRequest model);
Task<XActionResponse> RequestResetPassword (XActionRequest model);
Task<XActionResponse> RequestResetPassword(XActionRequest model);
Task ResetPassword (XActionRequest model);
Task ResetPassword(XActionRequest model);
#endregion
//
#region Friendship ...
Task<XFriendshipFollowing> Follow (
Task<XFriendshipFollowing> Follow(
XTokenResponse tokens,
string destUser
);
Task<bool> Cancel (
Task<bool> Cancel(
XTokenResponse tokens,
string destUser
);
Task UnFollowFollower (
Task UnFollowFollower(
XTokenResponse tokens,
string destUser
);
Task UnFollowFollowing (
Task UnFollowFollowing(
XTokenResponse tokens,
string destUser
);
Task<XFriendshipFollowing> Block (
Task<XFriendshipFollowing> Block(
XTokenResponse tokens,
string destUser
);
Task<XFriendshipFollowing> UnBlock (
Task<XFriendshipFollowing> UnBlock(
XTokenResponse tokens,
string destUser
);
Task<XFriendshipFollower> AcceptRequest (
Task<XFriendshipFollower> AcceptRequest(
XTokenResponse tokens,
string destUser
);
Task<XFriendshipFollower> RejectRequest (
Task<XFriendshipFollower> RejectRequest(
XTokenResponse tokens,
string destUser
);
Task<bool> IsFollower (
Task<bool> IsFollower(
XTokenResponse tokens,
string destUser
);
Task<XFriendshipFollower> GetFollower (
Task<XFriendshipFollower> GetFollower(
XTokenResponse tokens,
string destUser
);
Task<XFriendshipState> GetFollowerState (
Task<XFriendshipState> GetFollowerState(
XTokenResponse tokens,
string destUser
);
Task<IEnumerable<XFriendshipFollower>> GetFollowers (XTokenResponse tokens);
Task<IEnumerable<XFriendshipFollower>> GetFollowers(XTokenResponse tokens);
Task<IEnumerable<XFriendshipFollower>> GetAllFollowers (XTokenResponse tokens);
Task<IEnumerable<XFriendshipFollower>> GetAllFollowers(XTokenResponse tokens);
Task<bool> IsFollowing (
Task<bool> IsFollowing(
XTokenResponse tokens,
string destUser
);
Task<XFriendshipFollowing> GetFollowing (
Task<XFriendshipFollowing> GetFollowing(
XTokenResponse tokens,
string destUser
);
Task<XFriendshipState> GetFollowingState (
Task<XFriendshipState> GetFollowingState(
XTokenResponse tokens,
string destUser
);
Task<IEnumerable<XFriendshipFollowing>> GetFollowings (XTokenResponse tokens);
Task<IEnumerable<XFriendshipFollowing>> GetFollowings(XTokenResponse tokens);
Task<IEnumerable<XFriendshipFollowing>> GetAllFollowings (XTokenResponse tokens);
Task<IEnumerable<XFriendshipFollowing>> GetAllFollowings(XTokenResponse tokens);
Task<IEnumerable<string>> GetFollowingList (XTokenResponse tokens);
Task<IEnumerable<string>> GetFollowingList(XTokenResponse tokens);
Task<IEnumerable<string>> GetFollowersList (XTokenResponse tokens);
Task<IEnumerable<string>> GetFollowersList(XTokenResponse tokens);
Task<XFriendshipInfoDto> GetFriendshipInfo (
Task<XFriendshipInfoDto> GetFriendshipInfo(
XTokenResponse tokens,
string destUser
);
@@ -264,20 +267,33 @@ namespace xIdentityService.Interfaces {
//
#region Admin ...
Task<IEnumerable<string>> Ban (
Task<IEnumerable<string>> Ban(
XTokenResponse tokens,
XUserNameIdRequest model
);
Task<IEnumerable<string>> UnBan (
Task<IEnumerable<string>> UnBan(
XTokenResponse tokens,
XUserNameIdRequest model
);
Task<bool> IsBanned (
Task<bool> IsBanned(
XTokenResponse tokens,
string userSelectByParam
);
#endregion
//
#region Open Actions ...
Task<XOpenActionUserInfoDto> GetUserInfo(
XDeviceDto device,
string userSelectByParam
);
Task<XOpenActionUserInfoDto> GetUserInfo(XOpenActionInnerDto dto);
Task<XOpenActionUserInfoDto> GetUserInfo(
string token,
string request
);
#endregion
}
}