1
0
mirror of https://github.com/bitwarden/server synced 2025-12-20 10:13:39 +00:00

[PM-19659] Clean up Notifications code (#6244)

* Move PushType to Platform Folder

- Move the PushType next to the rest of push notification code
- Specifically exclude it from needing Platform code review
- Add tests establishing rules Platform has for usage of this enum, making it safe to have no owner

* Move NotificationHub code into Platform/Push directory

* Update NotificationHub namespace imports

* Add attribute for storing push type metadata

* Rename Push Engines to have PushEngine suffix

* Move Push Registration items to their own directory

* Push code move

* Add expected usage comment

* Add Push feature registration method

- Make method able to be called multipes times with no ill effects

* Add Push Registration service entrypoint and tests

* Use new service entrypoints

* Test changes
This commit is contained in:
Justin Baur
2025-08-26 13:30:37 -04:00
committed by GitHub
parent 7a63ae6315
commit e5159a3ba2
51 changed files with 849 additions and 205 deletions

View File

@@ -0,0 +1,31 @@
namespace Bit.Core.Platform.PushRegistration;
public record struct WebPushRegistrationData
{
public string Endpoint { get; init; }
public string P256dh { get; init; }
public string Auth { get; init; }
}
public record class PushRegistrationData
{
public string? Token { get; set; }
public WebPushRegistrationData? WebPush { get; set; }
public PushRegistrationData(string? token)
{
Token = token;
}
public PushRegistrationData(string Endpoint, string P256dh, string Auth) : this(new WebPushRegistrationData
{
Endpoint = Endpoint,
P256dh = P256dh,
Auth = Auth
})
{ }
public PushRegistrationData(WebPushRegistrationData webPush)
{
WebPush = webPush;
}
}