Skip to content

Commit

Permalink
Merge pull request #139 from ONLYOFFICE/bugfix/65812
Browse files Browse the repository at this point in the history
Bugfix/65812
  • Loading branch information
pavelbannov authored Jan 12, 2024
2 parents d5d87d4 + 8909670 commit 76ce026
Show file tree
Hide file tree
Showing 15 changed files with 46 additions and 0 deletions.
1 change: 1 addition & 0 deletions products/ASC.Files/Server/Api/EditorController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -282,6 +282,7 @@ public async Task<ConfigurationDto<T>> OpenEditAsync(T fileId, int version, stri
/// <path>api/2.0/files/file/{fileId}/sharedusers</path>
/// <httpMethod>GET</httpMethod>
/// <collection>list</collection>
/// <visible>false</visible>
[HttpGet("file/{fileId}/sharedusers")]
public async Task<List<MentionWrapper>> SharedUsers(T fileId)
{
Expand Down
2 changes: 2 additions & 0 deletions products/ASC.Files/Server/Api/FilesController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -550,6 +550,7 @@ public async Task<FileDto<int>> CreateFileAsync(CreateFileRequestDto<JsonElement
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.FileDto, ASC.Files.Core">New file information</returns>
/// <path>api/2.0/files/@common/html</path>
/// <httpMethod>POST</httpMethod>
/// <visible>false</visible>
[HttpPost("@common/html")]
public async Task<FileDto<int>> CreateHtmlFileInCommonAsync(CreateTextOrHtmlFileRequestDto inDto)
{
Expand Down Expand Up @@ -580,6 +581,7 @@ public async Task<FileDto<int>> CreateHtmlFileInMyAsync(CreateTextOrHtmlFileRequ
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.FileDto, ASC.Files.Core">New file information</returns>
/// <path>api/2.0/files/@common/text</path>
/// <httpMethod>POST</httpMethod>
/// <visible>false</visible>
[HttpPost("@common/text")]
public async Task<FileDto<int>> CreateTextFileInCommonAsync(CreateTextOrHtmlFileRequestDto inDto)
{
Expand Down
5 changes: 5 additions & 0 deletions products/ASC.Files/Server/Api/FoldersController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -269,6 +269,7 @@ public FoldersControllerCommon(
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.FolderContentDto, ASC.Files.Core">The "Common" section contents</returns>
/// <path>api/2.0/files/@common</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("@common")]
public async Task<FolderContentDto<int>> GetCommonFolderAsync(Guid? userIdOrGroupId, FilterType? filterType, bool? searchInContent, bool? withsubfolders)
{
Expand Down Expand Up @@ -352,6 +353,7 @@ public async Task<FolderContentDto<int>> GetPrivacyFolderAsync(Guid? userIdOrGro
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.FolderContentDto, ASC.Files.Core">The "In projects" section contents</returns>
/// <path>api/2.0/files/@projects</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("@projects")]
public async Task<FolderContentDto<string>> GetProjectsFolderAsync(Guid? userIdOrGroupId, FilterType? filterType, bool? searchInContent, bool? withsubfolders)
{
Expand All @@ -371,6 +373,7 @@ public async Task<FolderContentDto<string>> GetProjectsFolderAsync(Guid? userIdO
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.FolderContentDto, ASC.Files.Core">The "Recent" section contents</returns>
/// <path>api/2.0/files/@recent</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("@recent")]
public async Task<FolderContentDto<int>> GetRecentFolderAsync(Guid? userIdOrGroupId, FilterType? filterType, bool? searchInContent, bool? withsubfolders)
{
Expand Down Expand Up @@ -417,6 +420,7 @@ public async IAsyncEnumerable<FolderContentDto<int>> GetRootFoldersAsync(Guid? u
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.FolderContentDto, ASC.Files.Core">The "Shared with me" section contents</returns>
/// <path>api/2.0/files/@share</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("@share")]
public async Task<FolderContentDto<int>> GetShareFolderAsync(Guid? userIdOrGroupId, FilterType? filterType, bool? searchInContent, bool? withsubfolders)
{
Expand All @@ -436,6 +440,7 @@ public async Task<FolderContentDto<int>> GetShareFolderAsync(Guid? userIdOrGroup
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.FolderContentDto, ASC.Files.Core">The "Templates" section contents</returns>
/// <path>api/2.0/files/@templates</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("@templates")]
public async Task<FolderContentDto<int>> GetTemplatesFolderAsync(Guid? userIdOrGroupId, FilterType? filterType, bool? searchInContent, bool? withsubfolders)
{
Expand Down
7 changes: 7 additions & 0 deletions products/ASC.Files/Server/Api/SecurityController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ public SecurityController(
/// <returns type="System.Object, System">Shared file link</returns>
/// <path>api/2.0/files/{fileId}/sharedlinkAsync</path>
/// <httpMethod>PUT</httpMethod>
/// <visible>false</visible>
[HttpPut("{fileId}/sharedlinkAsync")]
public async Task<object> GenerateSharedLinkAsync(T fileId, GenerateSharedLinkRequestDto inDto)
{
Expand Down Expand Up @@ -135,6 +136,7 @@ public async IAsyncEnumerable<FileShareDto> GetFolderSecurityInfoAsync(T folderI
/// <returns type="System.Boolean, System">Boolean value: true if the file is successfully shared</returns>
/// <path>api/2.0/files/{fileId}/setacelink</path>
/// <httpMethod>PUT</httpMethod>
/// <visible>false</visible>
[HttpPut("{fileId}/setacelink")]
public async Task<bool> SetAceLinkAsync(T fileId, [FromBody] GenerateSharedLinkRequestDto inDto)
{
Expand Down Expand Up @@ -193,6 +195,7 @@ public async IAsyncEnumerable<FileShareDto> SetFolderSecurityInfoAsync(T folderI
/// <path>api/2.0/files/file/{fileId}/publickeys</path>
/// <httpMethod>GET</httpMethod>
/// <collection>list</collection>
/// <visible>false</visible>
[HttpGet("file/{fileId}/publickeys")]
public async Task<List<EncryptionKeyPairDto>> GetEncryptionAccess(T fileId)
{
Expand All @@ -210,6 +213,7 @@ public async Task<List<EncryptionKeyPairDto>> GetEncryptionAccess(T fileId)
/// <path>api/2.0/files/file/{fileId}/sendeditornotify</path>
/// <httpMethod>POST</httpMethod>
/// <collection>list</collection>
/// <visible>false</visible>
[HttpPost("file/{fileId}/sendeditornotify")]
public async Task<List<AceShortWrapper>> SendEditorNotify(T fileId, MentionMessageWrapper mentionMessage)
{
Expand Down Expand Up @@ -254,6 +258,7 @@ public SecurityControllerCommon(
/// <path>api/2.0/files/owner</path>
/// <httpMethod>POST</httpMethod>
/// <collection>list</collection>
/// <visible>false</visible>
[HttpPost("owner")]
public async IAsyncEnumerable<FileEntryDto> ChangeOwnerAsync(ChangeOwnerRequestDto inDto)
{
Expand Down Expand Up @@ -354,6 +359,7 @@ public async IAsyncEnumerable<FileShareDto> SetSecurityInfoAsync(SecurityInfoReq
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.ExternalShareDto, ASC.Files.Core">External data</returns>
/// <path>api/2.0/files/share/{key}</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[AllowAnonymous]
[HttpGet("share/{key}")]
public async Task<ExternalShareDto> GetExternalShareDataAsync(string key)
Expand All @@ -373,6 +379,7 @@ public async Task<ExternalShareDto> GetExternalShareDataAsync(string key)
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.ExternalShareDto, ASC.Files.Core">External data</returns>
/// <path>api/2.0/files/share/{key}/password</path>
/// <httpMethod>POST</httpMethod>
/// <visible>false</visible>
[AllowAnonymous]
[HttpPost("share/{key}/password")]
public async Task<ExternalShareDto> ApplyExternalSharePasswordAsync(string key, ExternalShareRequestDto inDto)
Expand Down
1 change: 1 addition & 0 deletions products/ASC.Files/Server/Api/TagsController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ protected TagsController(
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.FileDto, ASC.Files.Core">New file information</returns>
/// <path>api/2.0/files/file/{fileId}/recent</path>
/// <httpMethod>POST</httpMethod>
/// <visible>false</visible>
[HttpPost("file/{fileId}/recent")]
public async Task<FileDto<T>> AddToRecentAsync(T fileId)
{
Expand Down
2 changes: 2 additions & 0 deletions products/ASC.Files/Server/Api/UploadController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,7 @@ public UploadControllerCommon(
/// <returns type="ASC.Files.Core.ApiModels.ResponseDto.FileDto, ASC.Files.Core">Inserted file</returns>
/// <path>api/2.0/files/@common/insert</path>
/// <httpMethod>POST</httpMethod>
/// <visible>false</visible>
[HttpPost("@common/insert")]
public async Task<FileDto<int>> InsertFileToCommonFromBodyAsync([FromForm][ModelBinder(BinderType = typeof(InsertFileModelBinder))] InsertFileRequestDto inDto)
{
Expand Down Expand Up @@ -230,6 +231,7 @@ public async Task<FileDto<int>> InsertFileToMyFromBodyAsync([FromForm][ModelBind
/// <returns type="System.Object, System">Uploaded file(s)</returns>
/// <path>api/2.0/files/@common/upload</path>
/// <httpMethod>POST</httpMethod>
/// <visible>false</visible>
[HttpPost("@common/upload")]
public async Task<object> UploadFileToCommonAsync([ModelBinder(BinderType = typeof(UploadModelBinder))] UploadRequestDto inDto)
{
Expand Down
1 change: 1 addition & 0 deletions products/ASC.People/Server/Api/GroupController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ namespace ASC.Employee.Core.Controllers;
/// Groups API.
///</summary>
///<name>group</name>
///<visible>false</visible>
[Scope]
[DefaultRoute]
[ApiController]
Expand Down
3 changes: 3 additions & 0 deletions products/ASC.People/Server/Api/UserController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1675,6 +1675,7 @@ await _messageService.SendAsync(MessageAction.UsersUpdatedType, _messageTarget.C
/// <path>api/2.0/people/recalculatequota</path>
/// <httpMethod>GET</httpMethod>
/// <returns></returns>
/// <visible>false</visible>
[HttpGet("recalculatequota")]
public async Task RecalculateQuotaAsync()
{
Expand All @@ -1692,6 +1693,7 @@ public async Task RecalculateQuotaAsync()
/// <returns type="ASC.Api.Core.Model.TaskProgressDto, ASC.Api.Core.Model">Task progress</returns>
/// <path>api/2.0/people/checkrecalculatequota</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("checkrecalculatequota")]
public async Task<TaskProgressDto> CheckRecalculateQuotaAsync()
{
Expand All @@ -1711,6 +1713,7 @@ public async Task<TaskProgressDto> CheckRecalculateQuotaAsync()
/// <path>api/2.0/people/quota</path>
/// <httpMethod>PUT</httpMethod>
/// <collection>list</collection>
/// <visible>false</visible>
[HttpPut("quota")]
public async IAsyncEnumerable<EmployeeFullDto> UpdateUserQuotaAsync(UpdateMembersQuotaRequestDto inDto)
{
Expand Down
1 change: 1 addition & 0 deletions web/ASC.Web.Api/Api/FeedController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ namespace ASC.Web.Api.Controllers;
/// Feed API.
/// </summary>
/// <name>feed</name>
/// <visible>false</visible>
[Scope]
[DefaultRoute]
[ApiController]
Expand Down
1 change: 1 addition & 0 deletions web/ASC.Web.Api/Api/PaymentsController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ namespace ASC.Web.Api.Controllers;
/// Portal information access.
///</summary>
///<name>portal</name>
///<visible>false</visible>
[Scope]
[DefaultRoute]
[ApiController]
Expand Down
3 changes: 3 additions & 0 deletions web/ASC.Web.Api/Api/PortalController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,7 @@ public async Task<object> GetShortenLinkAsync(ShortenLinkRequestsDto inDto)
/// <returns type="ASC.Web.Api.ApiModels.ResponseDto, ASC.Web.Api">Extra tenant license information</returns>
/// <path>api/2.0/portal/tenantextra</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[AllowNotPayment]
[HttpGet("tenantextra")]
public async Task<TenantExtraDto> GetTenantExtra(bool refresh)
Expand Down Expand Up @@ -388,6 +389,7 @@ public object GetFullAbsolutePath(string virtualPath)
/// <returns type="Microsoft.AspNetCore.Mvc.FileResult, Microsoft.AspNetCore.Mvc">Thumbnail</returns>
/// <path>api/2.0/portal/thumb</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("thumb")]
public FileResult GetThumb(string url)
{
Expand Down Expand Up @@ -458,6 +460,7 @@ public async Task MarkPresentAsReadedAsync()
/// <returns></returns>
/// <path>api/2.0/portal/mobile/registration</path>
/// <httpMethod>POST</httpMethod>
/// <visible>false</visible>
[HttpPost("mobile/registration")]
public async Task RegisterMobileAppInstallAsync(MobileAppRequestsDto inDto)
{
Expand Down
10 changes: 10 additions & 0 deletions web/ASC.Web.Api/Api/Settings/LdapController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@

namespace ASC.Web.Api.Controllers.Settings;

/// <visible>false</visible>
public class LdapController : BaseSettingsController
{
private readonly SettingsManager _settingsManager;
Expand Down Expand Up @@ -71,6 +72,7 @@ public LdapController(
/// <returns type="ASC.Web.Api.ApiModels.ResponseDto.LdapSettingsDto, ASC.Web.Api">LDAP settings</returns>
/// <path>api/2.0/settings/ldap</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("ldap")]
public async Task<LdapSettingsDto> GetLdapSettingsAsync()
{
Expand Down Expand Up @@ -110,6 +112,7 @@ public async Task<LdapSettingsDto> GetLdapSettingsAsync()
/// <returns type="ASC.Web.Api.ApiModels.ResponseDto.LdapCronSettingsDto, ASC.Web.Api">LDAP cron settings</returns>
/// <path>api/2.0/settings/ldap/cron</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("ldap/cron")]
public async Task<LdapCronSettingsDto> GetLdapCronSettingsAsync()
{
Expand Down Expand Up @@ -137,6 +140,7 @@ public async Task<LdapCronSettingsDto> GetLdapCronSettingsAsync()
/// <param type="ASC.Web.Api.ApiModels.RequestsDto.LdapCronRequestDto, ASC.Web.Api" name="inDto">LDAP cron request parameters</param>
/// <httpMethod>POST</httpMethod>
/// <returns></returns>
/// <visible>false</visible>
[HttpPost("ldap/cron")]
public async Task SetLdapCronSettingsAsync(LdapCronRequestDto inDto)
{
Expand Down Expand Up @@ -184,6 +188,7 @@ public async Task SetLdapCronSettingsAsync(LdapCronRequestDto inDto)
/// <path>api/2.0/settings/ldap/sync</path>
/// <httpMethod>GET</httpMethod>
/// <returns type="ASC.Web.Api.ApiModels.ResponseDto.LdapStatusDto, ASC.Web.Api">LDAP operation status</returns>
/// <visible>false</visible>
[HttpGet("ldap/sync")]
public async Task<LdapStatusDto> SyncLdapAsync()
{
Expand All @@ -210,6 +215,7 @@ public async Task<LdapStatusDto> SyncLdapAsync()
/// <path>api/2.0/settings/ldap/sync/test</path>
/// <httpMethod>GET</httpMethod>
/// <returns type="ASC.Web.Api.ApiModels.ResponseDto.LdapStatusDto, ASC.Web.Api">LDAP operation status</returns>
/// <visible>false</visible>
[HttpGet("ldap/sync/test")]
public async Task<LdapStatusDto> TestLdapSync()
{
Expand All @@ -235,6 +241,7 @@ public async Task<LdapStatusDto> TestLdapSync()
/// <returns type="ASC.Web.Api.ApiModels.ResponseDto.LdapStatusDto, ASC.Web.Api">LDAP operation status</returns>
/// <path>api/2.0/settings/ldap</path>
/// <httpMethod>POST</httpMethod>
/// <visible>false</visible>
[HttpPost("ldap")]
public async Task<LdapStatusDto> SaveLdapSettingsAsync(LdapRequestsDto inDto)
{
Expand Down Expand Up @@ -267,6 +274,7 @@ public async Task<LdapStatusDto> SaveLdapSettingsAsync(LdapRequestsDto inDto)
/// <path>api/2.0/settings/ldap/save/test</path>
/// <httpMethod>POST</httpMethod>
/// <returns type="ASC.Web.Api.ApiModels.ResponseDto.LdapStatusDto, ASC.Web.Api">LDAP operation status</returns>
/// <visible>false</visible>
[HttpPost("ldap/save/test")]
public async Task<LdapStatusDto> TestLdapSaveAsync(LdapSettings inDto)
{
Expand All @@ -291,6 +299,7 @@ public async Task<LdapStatusDto> TestLdapSaveAsync(LdapSettings inDto)
/// <returns type="ASC.Web.Api.ApiModels.ResponseDto.LdapStatusDto, ASC.Web.Api">LDAP operation status</returns>
/// <path>api/2.0/settings/ldap/status</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("ldap/status")]
public async Task<LdapStatusDto> GetLdapOperationStatusAsync()
{
Expand All @@ -313,6 +322,7 @@ public async Task<LdapStatusDto> GetLdapOperationStatusAsync()
/// <returns type="ASC.Web.Api.ApiModels.ResponseDto.LdapSettingsDto, ASC.Web.Api">LDAP default settings: enable LDAP authentication or not, start TLS or not, enable SSL or not, send welcome email or not, server name, user name, port number, user filter, login attribute, LDAP settings mapping, access rights, user is a group member or not, group name, user attribute, group filter, group attribute, group name attribute, authentication is enabled or not, login, password, accept certificate or not</returns>
/// <path>api/2.0/settings/ldap/default</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("ldap/default")]
public async Task<LdapSettingsDto> GetDefaultLdapSettingsAsync()
{
Expand Down
4 changes: 4 additions & 0 deletions web/ASC.Web.Api/Api/Settings/SettingsController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -332,6 +332,7 @@ public async Task<object> SaveMailDomainSettingsAsync(MailDomainSettingsRequests
/// <returns type="ASC.Web.Api.ApiModel.ResponseDto.QuotaUsageDto, ASC.Web.Api">Space usage and limits for upload</returns>
/// <path>api/2.0/settings/quota</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("quota")]
public async Task<QuotaUsageDto> GetQuotaUsed()
{
Expand All @@ -349,6 +350,7 @@ public async Task<QuotaUsageDto> GetQuotaUsed()
/// <returns type="System.Object, System">Message about the result of saving the user quota settings</returns>
/// <path>api/2.0/settings/userquotasettings</path>
/// <httpMethod>POST</httpMethod>
/// <visible>false</visible>
[HttpPost("userquotasettings")]
public async Task<object> SaveUserQuotaSettingsAsync(UserQuotaSettingsRequestsDto inDto)
{
Expand Down Expand Up @@ -454,6 +456,7 @@ public async Task<object> SaveDnsSettingsAsync(DnsSettingsRequestsDto inDto)
/// <path>api/2.0/settings/recalculatequota</path>
/// <httpMethod>GET</httpMethod>
/// <returns></returns>
/// <visible>false</visible>
[HttpGet("recalculatequota")]
public async Task RecalculateQuotaAsync()
{
Expand All @@ -471,6 +474,7 @@ public async Task RecalculateQuotaAsync()
/// <returns type="System.Boolean, System">Boolean value: true - quota recalculation process is enabled, false - quota recalculation process is disabled</returns>
/// <path>api/2.0/settings/checkrecalculatequota</path>
/// <httpMethod>GET</httpMethod>
/// <visible>false</visible>
[HttpGet("checkrecalculatequota")]
public async Task<bool> CheckRecalculateQuotaAsync()
{
Expand Down
4 changes: 4 additions & 0 deletions web/ASC.Web.Api/Api/Settings/VersionController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@

namespace ASC.Web.Api.Controllers.Settings;

/// <visible>false</visible>
public class VersionController : BaseSettingsController
{
private readonly TenantManager _tenantManager;
Expand Down Expand Up @@ -55,6 +56,7 @@ public VersionController(
/// <httpMethod>GET</httpMethod>
/// <requiresAuthorization>false</requiresAuthorization>
/// <returns type="ASC.Api.Settings.BuildVersion, ASC.Web.Api">Current product versions</returns>
/// <visible>false</visible>
[AllowAnonymous]
[AllowNotPayment]
[HttpGet("version/build")]
Expand All @@ -73,6 +75,7 @@ public async Task<BuildVersion> GetBuildVersionsAsync()
/// <path>api/2.0/settings/version</path>
/// <httpMethod>GET</httpMethod>
/// <returns type="ASC.Web.Api.ApiModel.ResponseDto.TenantVersionDto, ASC.Web.Api">List of availibe portal versions including the current version</returns>
/// <visible>false</visible>
[HttpGet("version")]
public async Task<TenantVersionDto> GetVersionsAsync()
{
Expand All @@ -91,6 +94,7 @@ public async Task<TenantVersionDto> GetVersionsAsync()
/// <path>api/2.0/settings/version</path>
/// <httpMethod>PUT</httpMethod>
/// <returns type="ASC.Web.Api.ApiModel.ResponseDto.TenantVersionDto, ASC.Web.Api">List of availibe portal versions including the current version</returns>
/// <visible>false</visible>
[HttpPut("version")]
public async Task<TenantVersionDto> SetVersionAsync(SettingsRequestsDto inDto)
{
Expand Down
1 change: 1 addition & 0 deletions web/ASC.Web.Api/Api/ThirdPartyController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ namespace ASC.Web.Api.Controllers;
/// Third-party API.
///</summary>
///<name>thirdparty</name>
///<visible>false</visible>
[Scope(Additional = typeof(BaseLoginProviderExtension))]
[DefaultRoute]
[ApiController]
Expand Down

0 comments on commit 76ce026

Please sign in to comment.