Skip to content

Commit bcb625c

Browse files
committed
Merge branch 'main' into billing/pm-29610/update-account-storage-endpoint
2 parents 89560de + 665be6b commit bcb625c

File tree

183 files changed

+1412
-845
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

183 files changed

+1412
-845
lines changed

.github/workflows/review-code.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: Code Review
22

33
on:
44
pull_request:
5-
types: [opened, synchronize, reopened, ready_for_review]
5+
types: [opened, synchronize, reopened]
66

77
permissions: {}
88

src/Api/Auth/Controllers/WebAuthnController.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
namespace Bit.Api.Auth.Controllers;
2222

2323
[Route("webauthn")]
24-
[Authorize(Policies.Web)]
2524
public class WebAuthnController : Controller
2625
{
2726
private readonly IUserService _userService;
@@ -62,6 +61,7 @@ public WebAuthnController(
6261
_featureService = featureService;
6362
}
6463

64+
[Authorize(Policies.Web)]
6565
[HttpGet("")]
6666
public async Task<ListResponseModel<WebAuthnCredentialResponseModel>> Get()
6767
{
@@ -71,6 +71,7 @@ public async Task<ListResponseModel<WebAuthnCredentialResponseModel>> Get()
7171
return new ListResponseModel<WebAuthnCredentialResponseModel>(credentials.Select(c => new WebAuthnCredentialResponseModel(c)));
7272
}
7373

74+
[Authorize(Policies.Application)]
7475
[HttpPost("attestation-options")]
7576
public async Task<WebAuthnCredentialCreateOptionsResponseModel> AttestationOptions([FromBody] SecretVerificationRequestModel model)
7677
{
@@ -88,6 +89,7 @@ public async Task<WebAuthnCredentialCreateOptionsResponseModel> AttestationOptio
8889
};
8990
}
9091

92+
[Authorize(Policies.Web)]
9193
[HttpPost("assertion-options")]
9294
public async Task<WebAuthnLoginAssertionOptionsResponseModel> AssertionOptions([FromBody] SecretVerificationRequestModel model)
9395
{
@@ -104,6 +106,7 @@ public async Task<WebAuthnLoginAssertionOptionsResponseModel> AssertionOptions([
104106
};
105107
}
106108

109+
[Authorize(Policies.Application)]
107110
[HttpPost("")]
108111
public async Task Post([FromBody] WebAuthnLoginCredentialCreateRequestModel model)
109112
{
@@ -149,6 +152,7 @@ private async Task ValidateIfUserCanUsePasskeyLogin(Guid userId)
149152
}
150153
}
151154

155+
[Authorize(Policies.Application)]
152156
[HttpPut()]
153157
public async Task UpdateCredential([FromBody] WebAuthnLoginCredentialUpdateRequestModel model)
154158
{
@@ -172,6 +176,7 @@ public async Task UpdateCredential([FromBody] WebAuthnLoginCredentialUpdateReque
172176
await _credentialRepository.UpdateAsync(credential);
173177
}
174178

179+
[Authorize(Policies.Web)]
175180
[HttpPost("{id}/delete")]
176181
public async Task Delete(Guid id, [FromBody] SecretVerificationRequestModel model)
177182
{

src/Api/Auth/Models/Request/TwoFactorRequestModels.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,7 @@ public override IEnumerable<ValidationResult> Validate(ValidationContext validat
273273
yield return validationResult;
274274
}
275275

276-
if (!Id.HasValue || Id < 0 || Id > 5)
276+
if (!Id.HasValue)
277277
{
278278
yield return new ValidationResult("Invalid Key Id", new string[] { nameof(Id) });
279279
}

src/Api/Billing/Controllers/VNext/AccountBillingVNextController.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Bit.Api.Billing.Models.Requests.Premium;
44
using Bit.Api.Billing.Models.Requests.Storage;
55
using Bit.Core;
6+
using Bit.Core.Billing.Licenses.Queries;
67
using Bit.Core.Billing.Payment.Commands;
78
using Bit.Core.Billing.Payment.Queries;
89
using Bit.Core.Billing.Premium.Commands;
@@ -22,6 +23,7 @@ public class AccountBillingVNextController(
2223
ICreatePremiumCloudHostedSubscriptionCommand createPremiumCloudHostedSubscriptionCommand,
2324
IGetCreditQuery getCreditQuery,
2425
IGetPaymentMethodQuery getPaymentMethodQuery,
26+
IGetUserLicenseQuery getUserLicenseQuery,
2527
IUpdatePaymentMethodCommand updatePaymentMethodCommand,
2628
IUpdatePremiumStorageCommand updatePremiumStorageCommand) : BaseBillingController
2729
{
@@ -80,6 +82,15 @@ public async Task<IResult> CreateSubscriptionAsync(
8082
return Handle(result);
8183
}
8284

85+
[HttpGet("license")]
86+
[InjectUser]
87+
public async Task<IResult> GetLicenseAsync(
88+
[BindNever] User user)
89+
{
90+
var response = await getUserLicenseQuery.Run(user);
91+
return TypedResults.Ok(response);
92+
}
93+
8394
[HttpPut("storage")]
8495
[RequireFeature(FeatureFlagKeys.PM29594_UpdateIndividualSubscriptionPage)]
8596
[InjectUser]

src/Api/AdminConsole/Controllers/OrganizationIntegrationConfigurationController.cs renamed to src/Api/Dirt/Controllers/OrganizationIntegrationConfigurationController.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
using Bit.Api.AdminConsole.Models.Request.Organizations;
2-
using Bit.Api.AdminConsole.Models.Response.Organizations;
3-
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
1+
using Bit.Api.Dirt.Models.Request;
2+
using Bit.Api.Dirt.Models.Response;
43
using Bit.Core.Context;
4+
using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
55
using Bit.Core.Exceptions;
66
using Microsoft.AspNetCore.Authorization;
77
using Microsoft.AspNetCore.Mvc;
88

9-
namespace Bit.Api.AdminConsole.Controllers;
9+
namespace Bit.Api.Dirt.Controllers;
1010

1111
[Route("organizations/{organizationId:guid}/integrations/{integrationId:guid}/configurations")]
1212
[Authorize("Application")]

src/Api/AdminConsole/Controllers/OrganizationIntegrationController.cs renamed to src/Api/Dirt/Controllers/OrganizationIntegrationController.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
using Bit.Api.AdminConsole.Models.Request.Organizations;
2-
using Bit.Api.AdminConsole.Models.Response.Organizations;
3-
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces;
1+
using Bit.Api.Dirt.Models.Request;
2+
using Bit.Api.Dirt.Models.Response;
43
using Bit.Core.Context;
4+
using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
55
using Bit.Core.Exceptions;
66
using Microsoft.AspNetCore.Authorization;
77
using Microsoft.AspNetCore.Mvc;
88

9-
namespace Bit.Api.AdminConsole.Controllers;
9+
namespace Bit.Api.Dirt.Controllers;
1010

1111
[Route("organizations/{organizationId:guid}/integrations")]
1212
[Authorize("Application")]

src/Api/AdminConsole/Controllers/SlackIntegrationController.cs renamed to src/Api/Dirt/Controllers/SlackIntegrationController.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
using System.Text.Json;
2-
using Bit.Api.AdminConsole.Models.Response.Organizations;
3-
using Bit.Core.AdminConsole.Entities;
4-
using Bit.Core.AdminConsole.Models.Data.EventIntegrations;
2+
using Bit.Api.Dirt.Models.Response;
53
using Bit.Core.Context;
6-
using Bit.Core.Enums;
4+
using Bit.Core.Dirt.Entities;
5+
using Bit.Core.Dirt.Enums;
6+
using Bit.Core.Dirt.Models.Data.EventIntegrations;
7+
using Bit.Core.Dirt.Repositories;
8+
using Bit.Core.Dirt.Services;
79
using Bit.Core.Exceptions;
8-
using Bit.Core.Repositories;
9-
using Bit.Core.Services;
1010
using Microsoft.AspNetCore.Authorization;
1111
using Microsoft.AspNetCore.Mvc;
1212

13-
namespace Bit.Api.AdminConsole.Controllers;
13+
namespace Bit.Api.Dirt.Controllers;
1414

1515
[Route("organizations")]
1616
[Authorize("Application")]

src/Api/AdminConsole/Controllers/TeamsIntegrationController.cs renamed to src/Api/Dirt/Controllers/TeamsIntegrationController.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
using System.Text.Json;
2-
using Bit.Api.AdminConsole.Models.Response.Organizations;
3-
using Bit.Core.AdminConsole.Entities;
4-
using Bit.Core.AdminConsole.Models.Data.EventIntegrations;
2+
using Bit.Api.Dirt.Models.Response;
53
using Bit.Core.Context;
6-
using Bit.Core.Enums;
4+
using Bit.Core.Dirt.Entities;
5+
using Bit.Core.Dirt.Enums;
6+
using Bit.Core.Dirt.Models.Data.EventIntegrations;
7+
using Bit.Core.Dirt.Repositories;
8+
using Bit.Core.Dirt.Services;
79
using Bit.Core.Exceptions;
8-
using Bit.Core.Repositories;
9-
using Bit.Core.Services;
1010
using Microsoft.AspNetCore.Authorization;
1111
using Microsoft.AspNetCore.Mvc;
1212
using Microsoft.Bot.Builder;
1313
using Microsoft.Bot.Builder.Integration.AspNet.Core;
1414

15-
namespace Bit.Api.AdminConsole.Controllers;
15+
namespace Bit.Api.Dirt.Controllers;
1616

1717
[Route("organizations")]
1818
[Authorize("Application")]

src/Api/AdminConsole/Models/Request/Organizations/OrganizationIntegrationConfigurationRequestModel.cs renamed to src/Api/Dirt/Models/Request/OrganizationIntegrationConfigurationRequestModel.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
using Bit.Core.AdminConsole.Entities;
1+
using Bit.Core.Dirt.Entities;
22
using Bit.Core.Enums;
33

4-
5-
namespace Bit.Api.AdminConsole.Models.Request.Organizations;
4+
namespace Bit.Api.Dirt.Models.Request;
65

76
public class OrganizationIntegrationConfigurationRequestModel
87
{

src/Api/AdminConsole/Models/Request/Organizations/OrgnizationIntegrationRequestModel.cs renamed to src/Api/Dirt/Models/Request/OrganizationIntegrationRequestModel.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
using System.ComponentModel.DataAnnotations;
22
using System.Text.Json;
3-
using Bit.Core.AdminConsole.Entities;
4-
using Bit.Core.AdminConsole.Models.Data.EventIntegrations;
5-
using Bit.Core.Enums;
3+
using Bit.Core.Dirt.Entities;
4+
using Bit.Core.Dirt.Enums;
5+
using Bit.Core.Dirt.Models.Data.EventIntegrations;
66

7-
namespace Bit.Api.AdminConsole.Models.Request.Organizations;
7+
namespace Bit.Api.Dirt.Models.Request;
88

99
public class OrganizationIntegrationRequestModel : IValidatableObject
1010
{

0 commit comments

Comments
 (0)