Files
Nebula-Auth/NebulaAuth/Model/Entities/Mafile.cs
T
achiez 8ff960189e 1.5.6 Bug fixes and code clean-ups
- Update: Added "Copy Password" to Mafile context menu (if available)
- Update: "Save Password" now pre-fills the current password in the "Login Again" dialog when encryption is enabled
- Fix: Prevented overlapping confirmation cycles in AutoConfirmer
- Fix: Added a Snackbar notification when a confirmation cycle is skipped due to a too frequent timer interval
- Fix: Fixed a rare bug where the previous proxy was used instead of the current one during session refresh
- Fix: Corrected "Session Permanently Expired" message showing on unrelated errors (e.g. network issues)
- UI-Fix: Fixed visual glitch where proxy input appeared non-empty when switching to a mafile-specific proxy
- Cleanup: Refactored and cleaned up codebase, improved styling and formatting via ReSharper
2025-05-02 23:29:24 +03:00

60 lines
1.7 KiB
C#

using CommunityToolkit.Mvvm.ComponentModel;
using NebulaAuth.Model.MAAC;
using Newtonsoft.Json;
using SteamLib;
using SteamLib.Account;
namespace NebulaAuth.Model.Entities;
[INotifyPropertyChanged]
public partial class Mafile : MobileDataExtended
{
public MaProxy? Proxy { get; set; }
public string? Group { get; set; }
public string? Password { get; set; }
[JsonIgnore]
public PortableMaClient? LinkedClient
{
get => _linkedClient;
set => SetProperty(ref _linkedClient, value);
}
[JsonIgnore] private PortableMaClient? _linkedClient;
public void SetSessionData(MobileSessionData? sessionData)
{
SessionData = sessionData;
OnPropertyChanged(nameof(SessionData));
}
public static Mafile FromMobileDataExtended(MobileDataExtended data)
{
return new Mafile
{
AccountName = data.AccountName,
DeviceId = data.DeviceId,
IdentitySecret = data.IdentitySecret,
RevocationCode = data.RevocationCode,
Secret1 = data.Secret1,
SerialNumber = data.SerialNumber,
SessionData = data.SessionData,
SharedSecret = data.SharedSecret,
ServerTime = data.ServerTime,
TokenGid = data.TokenGid,
Uri = data.Uri,
SteamId = data.SteamId
};
}
public static Mafile FromMobileDataExtended(MobileDataExtended data, MaProxy? proxy, string? group,
string? password)
{
var result = FromMobileDataExtended(data);
result.Proxy = proxy;
result.Group = group;
result.Password = password;
return result;
}
}