Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 8 additions & 7 deletions src/SiteMonitor/.editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ end_of_line = lf
insert_final_newline = false

#### .NET Coding Conventions ####
[*.{cs,vb}]

# Organize usings
dotnet_separate_import_directive_groups = true
Expand Down Expand Up @@ -78,7 +77,6 @@ dotnet_code_quality_unused_parameters = all:suggestion
dotnet_remove_unnecessary_suppression_exclusions = none

#### C# Coding Conventions ####
[*.cs]

# var preferences
csharp_style_var_elsewhere = false:silent
Expand Down Expand Up @@ -175,7 +173,6 @@ csharp_preserve_single_line_blocks = true
csharp_preserve_single_line_statements = true

#### Naming styles ####
[*.{cs,vb}]

# Naming rules

Expand Down Expand Up @@ -229,19 +226,19 @@ dotnet_naming_rule.private_static_fields_should_be_s_camelcase.style = s_camelca

dotnet_naming_rule.public_constant_fields_should_be_pascalcase.severity = suggestion
dotnet_naming_rule.public_constant_fields_should_be_pascalcase.symbols = public_constant_fields
dotnet_naming_rule.public_constant_fields_should_be_pascalcase.style = pascalcase
dotnet_naming_rule.public_constant_fields_should_be_pascalcase.style = all_upper

dotnet_naming_rule.private_constant_fields_should_be_pascalcase.severity = suggestion
dotnet_naming_rule.private_constant_fields_should_be_pascalcase.symbols = private_constant_fields
dotnet_naming_rule.private_constant_fields_should_be_pascalcase.style = pascalcase
dotnet_naming_rule.private_constant_fields_should_be_pascalcase.style = all_upper

dotnet_naming_rule.public_static_readonly_fields_should_be_pascalcase.severity = suggestion
dotnet_naming_rule.public_static_readonly_fields_should_be_pascalcase.symbols = public_static_readonly_fields
dotnet_naming_rule.public_static_readonly_fields_should_be_pascalcase.style = pascalcase
dotnet_naming_rule.public_static_readonly_fields_should_be_pascalcase.style = all_upper

dotnet_naming_rule.private_static_readonly_fields_should_be_pascalcase.severity = suggestion
dotnet_naming_rule.private_static_readonly_fields_should_be_pascalcase.symbols = private_static_readonly_fields
dotnet_naming_rule.private_static_readonly_fields_should_be_pascalcase.style = pascalcase
dotnet_naming_rule.private_static_readonly_fields_should_be_pascalcase.style = all_upper

dotnet_naming_rule.enums_should_be_pascalcase.severity = suggestion
dotnet_naming_rule.enums_should_be_pascalcase.symbols = enums
Expand Down Expand Up @@ -365,3 +362,7 @@ dotnet_naming_style.s_camelcase.required_suffix =
dotnet_naming_style.s_camelcase.word_separator =
dotnet_naming_style.s_camelcase.capitalization = camel_case

dotnet_naming_style.all_upper.required_prefix =
dotnet_naming_style.all_upper.required_suffix =
dotnet_naming_style.all_upper.word_separator = _
dotnet_naming_style.all_upper.capitalization = all_upper
6 changes: 3 additions & 3 deletions src/SiteMonitor/Models/Configuration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ namespace SiteMonitor.Models;
/// The configuration of the application.
/// </summary>
public class Configuration {
private static readonly string s_configLocation =
private static readonly string S_CONFIG_LOCATION =
Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly()?.Location) ?? string.Empty, "config.json");

private static Configuration? s_instance;
Expand All @@ -34,7 +34,7 @@ public static Configuration Instance {

private static Configuration? ReadConfiguration() {
try {
string json = File.ReadAllText(s_configLocation);
string json = File.ReadAllText(S_CONFIG_LOCATION);
return JsonConvert.DeserializeObject<Configuration>(json);
}
catch { return null; }
Expand All @@ -47,7 +47,7 @@ public static Configuration Instance {
public static bool WriteConfiguration() {
try {
string json = JsonConvert.SerializeObject(Instance);
File.WriteAllText(s_configLocation, json);
File.WriteAllText(S_CONFIG_LOCATION, json);
return true;
}
catch {
Expand Down
12 changes: 6 additions & 6 deletions src/SiteMonitor/SiteMonitor.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,13 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="Avalonia" Version="11.3.1" />
<PackageReference Include="Avalonia.Desktop" Version="11.3.1" />
<PackageReference Include="Avalonia.Themes.Fluent" Version="11.3.1" />
<PackageReference Include="Avalonia.Fonts.Inter" Version="11.3.1" />
<PackageReference Include="Avalonia" Version="11.3.1"/>
<PackageReference Include="Avalonia.Desktop" Version="11.3.1"/>
<PackageReference Include="Avalonia.Themes.Fluent" Version="11.3.1"/>
<PackageReference Include="Avalonia.Fonts.Inter" Version="11.3.1"/>
<!--Condition below is needed to remove Avalonia.Diagnostics package from build output in Release configuration.-->
<PackageReference Condition="'$(Configuration)' == 'Debug'" Include="Avalonia.Diagnostics" Version="11.3.1" />
<PackageReference Include="Avalonia.ReactiveUI" Version="11.3.1" />
<PackageReference Condition="'$(Configuration)' == 'Debug'" Include="Avalonia.Diagnostics" Version="11.3.1"/>
<PackageReference Include="Avalonia.ReactiveUI" Version="11.3.1"/>
</ItemGroup>

<ItemGroup>
Expand Down
16 changes: 8 additions & 8 deletions src/SiteMonitor/ViewModels/MainWindowViewModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,13 @@ namespace SiteMonitor.ViewModels;
/// </summary>
public class MainWindowViewModel : ViewModelBase {
private bool _apiUp;
private string? _chatTimestamp;
private bool _isMinimized;
private bool _nullUp;
private string? _serverAddress;
private bool _serverUp;
private bool _websiteUp;
private WindowState _windowState;
private string? _chatTimestamp;

/// <summary>
/// Initializes a new instance of the <see cref="MainWindowViewModel" /> class.
Expand Down Expand Up @@ -121,22 +121,22 @@ private async Task PingSite() {
ApiUp = await SendHeadRequest("https://nullinside.com/api/v1/featureToggle");
NullUp = await SendHeadRequest("https://nullinside.com/null/v1/database/migration");
ChatTimestamp = await SendGetRequest("https://nullinside.com/twitch-bot/v1/bot/chat/timestamp");
var chatNotUpdating = false;
bool chatNotUpdating = false;
if (null != ChatTimestamp) {
var parsed = ChatTimestamp.Trim('"');
string parsed = ChatTimestamp.Trim('"');
if (DateTime.TryParse(parsed, out DateTime time)) {
var timestamp = time.ToLocalTime().ToString(CultureInfo.InvariantCulture);
var diff = DateTime.Now - time.ToLocalTime();
string timestamp = time.ToLocalTime().ToString(CultureInfo.InvariantCulture);
TimeSpan diff = DateTime.Now - time.ToLocalTime();
timestamp = $"{timestamp} ({diff.Hours}h {diff.Minutes}m {diff.Seconds}s ago)";
ChatTimestamp = timestamp;
chatNotUpdating = diff > TimeSpan.FromMinutes(5);
}
}

if ((!WebsiteUp || !ApiUp || !NullUp || chatNotUpdating) && IsMinimized) {
WindowState = WindowState.Normal;
}

await Task.Delay(TimeSpan.FromSeconds(10));
}
}
Expand All @@ -160,7 +160,7 @@ private async Task<bool> SendHeadRequest(string address) {
return false;
}
}

/// <summary>
/// Sends a head request to ensure a URL is online.
/// </summary>
Expand Down
3 changes: 2 additions & 1 deletion src/SiteMonitor/ViewModels/ViewModelBase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,5 @@ namespace SiteMonitor.ViewModels;
/// <summary>
/// A base class for all view models.
/// </summary>
public class ViewModelBase : ReactiveObject { }
public class ViewModelBase : ReactiveObject {
}
6 changes: 6 additions & 0 deletions src/global.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"sdk": {
"rollForward": "latestMajor",
"allowPrerelease": false
}
}
2 changes: 1 addition & 1 deletion src/nullinside-api
Submodule nullinside-api updated 30 files
+2 −0 go.sh
+8 −7 src/Nullinside.Api.Common.AspNetCore/.editorconfig
+2 −2 src/Nullinside.Api.Common.AspNetCore/Middleware/BasicAuthenticationHandler.cs
+4 −4 src/Nullinside.Api.Common.AspNetCore/Nullinside.Api.Common.AspNetCore.csproj
+8 −7 src/Nullinside.Api.Common/.editorconfig
+3 −1 src/Nullinside.Api.Common/Desktop/GithubLatestReleaseJson.cs
+3 −3 src/Nullinside.Api.Common/Nullinside.Api.Common.csproj
+6 −3 src/Nullinside.Api.Common/Twitch/ITwitchClientProxy.cs
+3 −1 src/Nullinside.Api.Common/Twitch/Json/TwitchModeratedChannelsResponse.cs
+3 −3 src/Nullinside.Api.Common/Twitch/Support/TwitchBotLoginErrors.cs
+4 −4 src/Nullinside.Api.Common/Twitch/TwitchApiProxy.cs
+218 −160 src/Nullinside.Api.Common/Twitch/TwitchClientProxy.cs
+3 −3 src/Nullinside.Api.Common/UserRoles.cs
+8 −7 src/Nullinside.Api.Model/.editorconfig
+4 −4 src/Nullinside.Api.Model/Nullinside.Api.Model.csproj
+24 −23 src/Nullinside.Api.Model/Shared/DatabaseLock.cs
+6 −2 src/Nullinside.Api.Model/Shared/UserHelpers.cs
+8 −7 src/Nullinside.Api.Tests/.editorconfig
+7 −7 src/Nullinside.Api.Tests/Nullinside.Api.Tests.csproj
+87 −88 src/Nullinside.Api.Tests/Nullinside.Api/Controllers/UserControllerTests.cs
+8 −7 src/Nullinside.Api/.editorconfig
+3 −3 src/Nullinside.Api/Controllers/DockerController.cs
+10 −10 src/Nullinside.Api/Controllers/UserController.cs
+9 −9 src/Nullinside.Api/Nullinside.Api.csproj
+4 −4 src/Nullinside.Api/Program.cs
+3 −0 src/Nullinside.Api/Shared/Json/AuthToken.cs
+3 −0 src/Nullinside.Api/Shared/Json/BasicServerFailure.cs
+2 −0 src/Nullinside.Api/Shared/Json/GoogleOpenIdToken.cs
+3 −0 src/Nullinside.Api/Shared/Json/TurnOnOrOffDockerResourcesRequest.cs
+6 −0 src/global.json