diff --git a/src/ArcadePointsBot/App.axaml b/src/ArcadePointsBot/App.axaml index 1d0c081..0acc33e 100644 --- a/src/ArcadePointsBot/App.axaml +++ b/src/ArcadePointsBot/App.axaml @@ -1,17 +1,16 @@ - Stopped - Errored - Starting - Running + Stopped + Errored + Starting + Running Press Keyboard diff --git a/src/ArcadePointsBot/App.axaml.cs b/src/ArcadePointsBot/App.axaml.cs index 90d64d1..53f8cd7 100644 --- a/src/ArcadePointsBot/App.axaml.cs +++ b/src/ArcadePointsBot/App.axaml.cs @@ -1,34 +1,28 @@ using Avalonia; using Avalonia.Controls; using Avalonia.Controls.ApplicationLifetimes; -using Avalonia.Data.Core; using Avalonia.Data.Core.Plugins; using Avalonia.Markup.Xaml; -using Avalonia.Styling; -using Avalonia.Themes.Fluent; -using AvaloniaApplication1.Auth; -using AvaloniaApplication1.Config; -using AvaloniaApplication1.Data.Abstractions.Repositories; -using AvaloniaApplication1.Data.Contexts; -using AvaloniaApplication1.Data.Repositories; -using AvaloniaApplication1.Services; -using AvaloniaApplication1.Util; -using AvaloniaApplication1.ViewModels; -using AvaloniaApplication1.Views; +using ArcadePointsBot.Auth; +using ArcadePointsBot.Config; +using ArcadePointsBot.Data.Abstractions.Repositories; +using ArcadePointsBot.Data.Contexts; +using ArcadePointsBot.Data.Repositories; +using ArcadePointsBot.Services; +using ArcadePointsBot.ViewModels; +using ArcadePointsBot.Views; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; -using ReactiveUI; using Serilog; using System; using System.IO; using System.Linq; using System.Reflection; -using System.Threading.Tasks; -namespace AvaloniaApplication1; +namespace ArcadePointsBot; public partial class App : Application { public IHost? GlobalHost { get; private set; } @@ -65,6 +59,11 @@ public override async void OnFrameworkInitializationCompleted() { GlobalHost = CreateAppBuilder().Build(); EnsureDb(GlobalHost.Services); + + + var lang = GlobalHost.Services.GetRequiredService().GetValue("lang"); + ArcadePointsBot.Resources.L10n.Culture = new System.Globalization.CultureInfo(lang ?? "en-US"); + if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop) { // Line below is needed to remove Avalonia data validation. @@ -82,7 +81,7 @@ public override async void OnFrameworkInitializationCompleted() GlobalHost = null; }; } - + DataTemplates.Add(GlobalHost.Services.GetRequiredService()); base.OnFrameworkInitializationCompleted(); @@ -90,74 +89,74 @@ public override async void OnFrameworkInitializationCompleted() await GlobalHost.StartAsync(); } - - public static IHostBuilder CreateAppBuilder() => Host - .CreateDefaultBuilder(Environment.GetCommandLineArgs()) - .UseSerilog((ctx, svc, cfg) => + + public static IHostBuilder CreateAppBuilder() => Host + .CreateDefaultBuilder(Environment.GetCommandLineArgs()) + .UseSerilog((ctx, svc, cfg) => + { + cfg + .ReadFrom.Configuration(ctx.Configuration) + .ReadFrom.Services(svc) + .Enrich.FromLogContext(); + }) + .ConfigureAppConfiguration(WithApplicationConfiguration) + .ConfigureServices(WithApplicationServices); + + private static void WithApplicationConfiguration(HostBuilderContext context, IConfigurationBuilder configurationBuilder) + { + if (Design.IsDesignMode) + return; + configurationBuilder.Sources.Clear(); + configurationBuilder + .SetBasePath(Directory.GetCurrentDirectory()) + .Add(s => + { + s.Path = "appsettings.json"; + s.Optional = false; + s.ReloadOnChange = true; + s.FileProvider = null; + s.ResolveFileProvider(); + }) + .AddJsonFile("appsettings.Development.json", true, true); + + if (context.HostingEnvironment.IsDevelopment()) { - cfg - .ReadFrom.Configuration(ctx.Configuration) - .ReadFrom.Services(svc) - .Enrich.FromLogContext(); - }) - .ConfigureAppConfiguration(WithApplicationConfiguration) - .ConfigureServices(WithApplicationServices); - - private static void WithApplicationConfiguration(HostBuilderContext context, IConfigurationBuilder configurationBuilder) + configurationBuilder.AddUserSecrets(Assembly.GetExecutingAssembly()); + } + + configurationBuilder.AddEnvironmentVariables(); + } + private static void WithApplicationServices(HostBuilderContext context, IServiceCollection services) + { + services.AddDbContext(options => { - if (Design.IsDesignMode) - return; - configurationBuilder.Sources.Clear(); - configurationBuilder - .SetBasePath(Directory.GetCurrentDirectory()) - .Add(s => - { - s.Path = "appsettings.json"; - s.Optional = false; - s.ReloadOnChange = true; - s.FileProvider = null; - s.ResolveFileProvider(); - }) - .AddJsonFile("appsettings.Development.json", true, true); - - if (context.HostingEnvironment.IsDevelopment()) - { - configurationBuilder.AddUserSecrets(Assembly.GetExecutingAssembly()); - } + var dbPath = Path.Join(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "ArcadePointsBot.db"); + options.UseSqlite($"Data Source={dbPath}"); + }); - configurationBuilder.AddEnvironmentVariables(); - } - private static void WithApplicationServices(HostBuilderContext context, IServiceCollection services) - { - services.AddDbContext(options => + services.AddOptions().BindConfiguration("TwitchAuthConfig"); + + services.Configure(options => + { + var rawConfig = context.Configuration; + options.PropertyChanged += (o, e) => { - var dbPath = Path.Join(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "ArcadePointsBot.db"); - options.UseSqlite($"Data Source={dbPath}"); - }); + if (e is not PropertyChangedEventArgsEx args) throw new InvalidOperationException(); + rawConfig["TwitchAuthConfig:" + args.PropertyName!] = args.Value?.ToString(); + }; + }); - services.AddOptions().BindConfiguration("TwitchAuthConfig"); + services.AddSingleton, GlobalRxExceptionHandler>(); + services.AddSingleton(); + services.AddScoped(); - services.Configure(options => - { - var rawConfig = context.Configuration; - options.PropertyChanged += (o, e) => - { - if (e is not PropertyChangedEventArgsEx args) throw new InvalidOperationException(); - rawConfig["TwitchAuthConfig:" + args.PropertyName!] = args.Value?.ToString(); - }; - }); - - services.AddSingleton, GlobalRxExceptionHandler>(); - services.AddSingleton(); - services.AddScoped(); - - services.AddScoped(typeof(IEntityRepository<,>), typeof(DataEntityRepository<,>)); - services.AddScoped(); - - services.AddSingleton(); - - services.AddTransient(); - services.AddTransient(); - services.AddTransient(); - } + services.AddScoped(typeof(IEntityRepository<,>), typeof(DataEntityRepository<,>)); + services.AddScoped(); + + services.AddSingleton(); + + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + } } \ No newline at end of file diff --git a/src/ArcadePointsBot/ArcadePointsBot.csproj b/src/ArcadePointsBot/ArcadePointsBot.csproj index cecb47b..b49bed9 100644 --- a/src/ArcadePointsBot/ArcadePointsBot.csproj +++ b/src/ArcadePointsBot/ArcadePointsBot.csproj @@ -15,7 +15,6 @@ - @@ -47,6 +46,20 @@ + + + True + True + L10n.resx + + + + + + PublicResXFileCodeGenerator + L10n.Designer.cs + + diff --git a/src/ArcadePointsBot/Auth/IAuthenticationService.cs b/src/ArcadePointsBot/Auth/IAuthenticationService.cs index 0ae242a..a23a2bb 100644 --- a/src/ArcadePointsBot/Auth/IAuthenticationService.cs +++ b/src/ArcadePointsBot/Auth/IAuthenticationService.cs @@ -4,7 +4,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1.Auth; +namespace ArcadePointsBot.Auth; public interface IAuthenticationService { diff --git a/src/ArcadePointsBot/Auth/TwitchAuthConfig.cs b/src/ArcadePointsBot/Auth/TwitchAuthConfig.cs index f5c60f6..bfe6dbb 100644 --- a/src/ArcadePointsBot/Auth/TwitchAuthConfig.cs +++ b/src/ArcadePointsBot/Auth/TwitchAuthConfig.cs @@ -7,7 +7,7 @@ using System.Text.Json.Nodes; using System.Text.Json.Serialization; -namespace AvaloniaApplication1.Auth; +namespace ArcadePointsBot.Auth; public class TwitchAuthConfig : INotifyPropertyChanged { private DateTimeOffset? accessTokenExpiration; diff --git a/src/ArcadePointsBot/Auth/TwitchAuthenticationService.cs b/src/ArcadePointsBot/Auth/TwitchAuthenticationService.cs index 57d66cb..1954197 100644 --- a/src/ArcadePointsBot/Auth/TwitchAuthenticationService.cs +++ b/src/ArcadePointsBot/Auth/TwitchAuthenticationService.cs @@ -5,7 +5,7 @@ using System.Net.Http; using System.Threading.Tasks; -namespace AvaloniaApplication1.Auth +namespace ArcadePointsBot.Auth { internal class TwitchAuthenticationService : IAuthenticationService { diff --git a/src/ArcadePointsBot/Config/WritableJsonConfigurationProvider.cs b/src/ArcadePointsBot/Config/WritableJsonConfigurationProvider.cs index 02d2a3f..ff54d61 100644 --- a/src/ArcadePointsBot/Config/WritableJsonConfigurationProvider.cs +++ b/src/ArcadePointsBot/Config/WritableJsonConfigurationProvider.cs @@ -1,4 +1,4 @@ -using AvaloniaApplication1.Auth; +using ArcadePointsBot.Auth; using Microsoft.Extensions.Configuration.Json; using System; using System.Collections.Generic; @@ -9,7 +9,7 @@ using System.Text.Json.Nodes; using System.Threading.Tasks; -namespace AvaloniaApplication1.Config +namespace ArcadePointsBot.Config { internal class WritableJsonConfigurationProvider : JsonConfigurationProvider { diff --git a/src/ArcadePointsBot/Config/WritableJsonConfigurationSource.cs b/src/ArcadePointsBot/Config/WritableJsonConfigurationSource.cs index 6fb9d3e..5dc9820 100644 --- a/src/ArcadePointsBot/Config/WritableJsonConfigurationSource.cs +++ b/src/ArcadePointsBot/Config/WritableJsonConfigurationSource.cs @@ -6,7 +6,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1.Config +namespace ArcadePointsBot.Config { internal class WritableJsonConfigurationSource : JsonConfigurationSource { diff --git a/src/ArcadePointsBot/Data/Abstractions/IEntity.cs b/src/ArcadePointsBot/Data/Abstractions/IEntity.cs index f8abf1b..a87c93a 100644 --- a/src/ArcadePointsBot/Data/Abstractions/IEntity.cs +++ b/src/ArcadePointsBot/Data/Abstractions/IEntity.cs @@ -4,7 +4,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1.Data.Abstractions; +namespace ArcadePointsBot.Data.Abstractions; public interface IEntity { diff --git a/src/ArcadePointsBot/Data/Abstractions/IUnitOfWork.cs b/src/ArcadePointsBot/Data/Abstractions/IUnitOfWork.cs index ee1ddf3..a9fd275 100644 --- a/src/ArcadePointsBot/Data/Abstractions/IUnitOfWork.cs +++ b/src/ArcadePointsBot/Data/Abstractions/IUnitOfWork.cs @@ -6,7 +6,7 @@ using System.Threading; using System.Threading.Tasks; -namespace AvaloniaApplication1.Data.Abstractions +namespace ArcadePointsBot.Data.Abstractions { public interface IUnitOfWork { diff --git a/src/ArcadePointsBot/Data/Abstractions/Repositories/IRepository.cs b/src/ArcadePointsBot/Data/Abstractions/Repositories/IRepository.cs index 8f25c8d..bcccbf9 100644 --- a/src/ArcadePointsBot/Data/Abstractions/Repositories/IRepository.cs +++ b/src/ArcadePointsBot/Data/Abstractions/Repositories/IRepository.cs @@ -5,7 +5,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1.Data.Abstractions.Repositories; +namespace ArcadePointsBot.Data.Abstractions.Repositories; public interface IEntityRepository : IReadRepository, IWriteRepository where T : IEntity { diff --git a/src/ArcadePointsBot/Data/Abstractions/Repositories/IRewardRepository.cs b/src/ArcadePointsBot/Data/Abstractions/Repositories/IRewardRepository.cs index 1484a6f..b999349 100644 --- a/src/ArcadePointsBot/Data/Abstractions/Repositories/IRewardRepository.cs +++ b/src/ArcadePointsBot/Data/Abstractions/Repositories/IRewardRepository.cs @@ -1,6 +1,6 @@ -using AvaloniaApplication1.Models; +using ArcadePointsBot.Models; -namespace AvaloniaApplication1.Data.Abstractions.Repositories +namespace ArcadePointsBot.Data.Abstractions.Repositories { public interface IRewardRepository : IEntityRepository { diff --git a/src/ArcadePointsBot/Data/Contexts/ApplicationDbContext.cs b/src/ArcadePointsBot/Data/Contexts/ApplicationDbContext.cs index 5a610bd..7dfd91d 100644 --- a/src/ArcadePointsBot/Data/Contexts/ApplicationDbContext.cs +++ b/src/ArcadePointsBot/Data/Contexts/ApplicationDbContext.cs @@ -1,6 +1,6 @@ -using AvaloniaApplication1.Data.Abstractions; -using AvaloniaApplication1.Models; -using AvaloniaApplication1.ViewModels; +using ArcadePointsBot.Data.Abstractions; +using ArcadePointsBot.Models; +using ArcadePointsBot.ViewModels; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Storage; using System; @@ -9,7 +9,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1.Data.Contexts; +namespace ArcadePointsBot.Data.Contexts; public class ApplicationDbContext : DbContext, IUnitOfWork { diff --git a/src/ArcadePointsBot/Data/Migrations/20231022033828_InitialCreate.Designer.cs b/src/ArcadePointsBot/Data/Migrations/20231022033828_InitialCreate.Designer.cs index 666b083..0357073 100644 --- a/src/ArcadePointsBot/Data/Migrations/20231022033828_InitialCreate.Designer.cs +++ b/src/ArcadePointsBot/Data/Migrations/20231022033828_InitialCreate.Designer.cs @@ -1,6 +1,6 @@ // using System; -using AvaloniaApplication1.Data.Contexts; +using ArcadePointsBot.Data.Contexts; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; @@ -8,7 +8,7 @@ #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { [DbContext(typeof(ApplicationDbContext))] [Migration("20231022033828_InitialCreate")] diff --git a/src/ArcadePointsBot/Data/Migrations/20231022033828_InitialCreate.cs b/src/ArcadePointsBot/Data/Migrations/20231022033828_InitialCreate.cs index fdc0c0c..4506458 100644 --- a/src/ArcadePointsBot/Data/Migrations/20231022033828_InitialCreate.cs +++ b/src/ArcadePointsBot/Data/Migrations/20231022033828_InitialCreate.cs @@ -2,7 +2,7 @@ #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { /// public partial class InitialCreate : Migration diff --git a/src/ArcadePointsBot/Data/Migrations/20231024011504_AddIndexCol.Designer.cs b/src/ArcadePointsBot/Data/Migrations/20231024011504_AddIndexCol.Designer.cs index 438247a..6734d20 100644 --- a/src/ArcadePointsBot/Data/Migrations/20231024011504_AddIndexCol.Designer.cs +++ b/src/ArcadePointsBot/Data/Migrations/20231024011504_AddIndexCol.Designer.cs @@ -1,6 +1,6 @@ // using System; -using AvaloniaApplication1.Data.Contexts; +using ArcadePointsBot.Data.Contexts; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; @@ -8,7 +8,7 @@ #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { [DbContext(typeof(ApplicationDbContext))] [Migration("20231024011504_AddIndexCol")] diff --git a/src/ArcadePointsBot/Data/Migrations/20231024011504_AddIndexCol.cs b/src/ArcadePointsBot/Data/Migrations/20231024011504_AddIndexCol.cs index 5499006..d758ea3 100644 --- a/src/ArcadePointsBot/Data/Migrations/20231024011504_AddIndexCol.cs +++ b/src/ArcadePointsBot/Data/Migrations/20231024011504_AddIndexCol.cs @@ -2,7 +2,7 @@ #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { /// public partial class AddIndexCol : Migration diff --git a/src/ArcadePointsBot/Data/Migrations/20231024013830_AddEnabledCol.Designer.cs b/src/ArcadePointsBot/Data/Migrations/20231024013830_AddEnabledCol.Designer.cs index 4f17b35..f0d8656 100644 --- a/src/ArcadePointsBot/Data/Migrations/20231024013830_AddEnabledCol.Designer.cs +++ b/src/ArcadePointsBot/Data/Migrations/20231024013830_AddEnabledCol.Designer.cs @@ -1,6 +1,6 @@ // using System; -using AvaloniaApplication1.Data.Contexts; +using ArcadePointsBot.Data.Contexts; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; @@ -8,7 +8,7 @@ #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { [DbContext(typeof(ApplicationDbContext))] [Migration("20231024013830_AddEnabledCol")] diff --git a/src/ArcadePointsBot/Data/Migrations/20231024013830_AddEnabledCol.cs b/src/ArcadePointsBot/Data/Migrations/20231024013830_AddEnabledCol.cs index e25ab58..4981ea0 100644 --- a/src/ArcadePointsBot/Data/Migrations/20231024013830_AddEnabledCol.cs +++ b/src/ArcadePointsBot/Data/Migrations/20231024013830_AddEnabledCol.cs @@ -2,7 +2,7 @@ #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { /// public partial class AddEnabledCol : Migration diff --git a/src/ArcadePointsBot/Data/Migrations/20231031040438_NewActionType.Designer.cs b/src/ArcadePointsBot/Data/Migrations/20231031040438_NewActionType.Designer.cs index 561b8dc..977ba4c 100644 --- a/src/ArcadePointsBot/Data/Migrations/20231031040438_NewActionType.Designer.cs +++ b/src/ArcadePointsBot/Data/Migrations/20231031040438_NewActionType.Designer.cs @@ -1,6 +1,6 @@ // using System; -using AvaloniaApplication1.Data.Contexts; +using ArcadePointsBot.Data.Contexts; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; @@ -8,7 +8,7 @@ #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { [DbContext(typeof(ApplicationDbContext))] [Migration("20231031040438_NewActionType")] diff --git a/src/ArcadePointsBot/Data/Migrations/20231031040438_NewActionType.cs b/src/ArcadePointsBot/Data/Migrations/20231031040438_NewActionType.cs index d013241..5b4333b 100644 --- a/src/ArcadePointsBot/Data/Migrations/20231031040438_NewActionType.cs +++ b/src/ArcadePointsBot/Data/Migrations/20231031040438_NewActionType.cs @@ -2,7 +2,7 @@ #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { /// public partial class NewActionType : Migration diff --git a/src/ArcadePointsBot/Data/Migrations/20231101142744_RewardCategory.Designer.cs b/src/ArcadePointsBot/Data/Migrations/20231101142744_RewardCategory.Designer.cs index 7de2e94..da45d35 100644 --- a/src/ArcadePointsBot/Data/Migrations/20231101142744_RewardCategory.Designer.cs +++ b/src/ArcadePointsBot/Data/Migrations/20231101142744_RewardCategory.Designer.cs @@ -1,6 +1,6 @@ // using System; -using AvaloniaApplication1.Data.Contexts; +using ArcadePointsBot.Data.Contexts; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; @@ -8,7 +8,7 @@ #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { [DbContext(typeof(ApplicationDbContext))] [Migration("20231101142744_RewardCategory")] diff --git a/src/ArcadePointsBot/Data/Migrations/20231101142744_RewardCategory.cs b/src/ArcadePointsBot/Data/Migrations/20231101142744_RewardCategory.cs index 662e5f7..ef4b8ce 100644 --- a/src/ArcadePointsBot/Data/Migrations/20231101142744_RewardCategory.cs +++ b/src/ArcadePointsBot/Data/Migrations/20231101142744_RewardCategory.cs @@ -2,7 +2,7 @@ #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { /// public partial class RewardCategory : Migration diff --git a/src/ArcadePointsBot/Data/Migrations/ApplicationDbContextModelSnapshot.cs b/src/ArcadePointsBot/Data/Migrations/ApplicationDbContextModelSnapshot.cs index 68c064d..7146735 100644 --- a/src/ArcadePointsBot/Data/Migrations/ApplicationDbContextModelSnapshot.cs +++ b/src/ArcadePointsBot/Data/Migrations/ApplicationDbContextModelSnapshot.cs @@ -1,13 +1,13 @@ // using System; -using AvaloniaApplication1.Data.Contexts; +using ArcadePointsBot.Data.Contexts; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; #nullable disable -namespace AvaloniaApplication1.Data.Migrations +namespace ArcadePointsBot.Data.Migrations { [DbContext(typeof(ApplicationDbContext))] partial class ApplicationDbContextModelSnapshot : ModelSnapshot diff --git a/src/ArcadePointsBot/Data/Repositories/DataEntityRepository.cs b/src/ArcadePointsBot/Data/Repositories/DataEntityRepository.cs index 9bbaf82..c2c3678 100644 --- a/src/ArcadePointsBot/Data/Repositories/DataEntityRepository.cs +++ b/src/ArcadePointsBot/Data/Repositories/DataEntityRepository.cs @@ -1,6 +1,6 @@ -using AvaloniaApplication1.Data.Abstractions; -using AvaloniaApplication1.Data.Abstractions.Repositories; -using AvaloniaApplication1.Data.Contexts; +using ArcadePointsBot.Data.Abstractions; +using ArcadePointsBot.Data.Abstractions.Repositories; +using ArcadePointsBot.Data.Contexts; using Microsoft.EntityFrameworkCore; using System; using System.Collections.Generic; @@ -9,7 +9,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1.Data.Repositories +namespace ArcadePointsBot.Data.Repositories { internal class DataEntityRepository : IEntityRepository where T : class, IEntity { diff --git a/src/ArcadePointsBot/Data/Repositories/RewardRepository.cs b/src/ArcadePointsBot/Data/Repositories/RewardRepository.cs index 50ba93a..1a14230 100644 --- a/src/ArcadePointsBot/Data/Repositories/RewardRepository.cs +++ b/src/ArcadePointsBot/Data/Repositories/RewardRepository.cs @@ -1,10 +1,10 @@ -using AvaloniaApplication1.Data.Abstractions.Repositories; -using AvaloniaApplication1.Data.Contexts; -using AvaloniaApplication1.Models; +using ArcadePointsBot.Data.Abstractions.Repositories; +using ArcadePointsBot.Data.Contexts; +using ArcadePointsBot.Models; using Microsoft.EntityFrameworkCore; using System.Threading.Tasks; -namespace AvaloniaApplication1.Data.Repositories +namespace ArcadePointsBot.Data.Repositories { internal class RewardRepository : DataEntityRepository, IRewardRepository { diff --git a/src/ArcadePointsBot/Error.cs b/src/ArcadePointsBot/Error.cs index 35ec5c2..b611318 100644 --- a/src/ArcadePointsBot/Error.cs +++ b/src/ArcadePointsBot/Error.cs @@ -4,7 +4,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1; +namespace ArcadePointsBot; /// /// Represents a concrete domain error. diff --git a/src/ArcadePointsBot/Errors/TwitchAPI.cs b/src/ArcadePointsBot/Errors/TwitchAPI.cs index f601cab..1e67ba8 100644 --- a/src/ArcadePointsBot/Errors/TwitchAPI.cs +++ b/src/ArcadePointsBot/Errors/TwitchAPI.cs @@ -4,7 +4,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1.Errors +namespace ArcadePointsBot.Errors { public static class TwitchAPI { diff --git a/src/ArcadePointsBot/GlobalRxExceptionHandler.cs b/src/ArcadePointsBot/GlobalRxExceptionHandler.cs index b5abb1a..084035c 100644 --- a/src/ArcadePointsBot/GlobalRxExceptionHandler.cs +++ b/src/ArcadePointsBot/GlobalRxExceptionHandler.cs @@ -6,7 +6,7 @@ using System.Diagnostics; using System.Reactive.Concurrency; -namespace AvaloniaApplication1 +namespace ArcadePointsBot { internal class GlobalRxExceptionHandler : IObserver { diff --git a/src/ArcadePointsBot/Interop/Windows/NativeMethods.cs b/src/ArcadePointsBot/Interop/Windows/NativeMethods.cs index 6db7cd0..e4462dc 100644 --- a/src/ArcadePointsBot/Interop/Windows/NativeMethods.cs +++ b/src/ArcadePointsBot/Interop/Windows/NativeMethods.cs @@ -6,7 +6,7 @@ using System.Linq; using System.Runtime.InteropServices; -namespace AvaloniaApplication1.Interop.Windows; +namespace ArcadePointsBot.Interop.Windows; internal static class NativeMethods { diff --git a/src/ArcadePointsBot/Models/KeyboardRewardAction.cs b/src/ArcadePointsBot/Models/KeyboardRewardAction.cs index 6f6a1de..06be034 100644 --- a/src/ArcadePointsBot/Models/KeyboardRewardAction.cs +++ b/src/ArcadePointsBot/Models/KeyboardRewardAction.cs @@ -1,12 +1,12 @@ using Avalonia.Input; -using AvaloniaApplication1.Util; +using ArcadePointsBot.Util; using ReactiveUI.Fody.Helpers; using ReactiveUI; using System; using System.Collections; -using AvaloniaApplication1.ViewModels; +using ArcadePointsBot.ViewModels; -namespace AvaloniaApplication1.Models; +namespace ArcadePointsBot.Models; public class KeyboardRewardAction : RewardAction { diff --git a/src/ArcadePointsBot/Models/MouseRewardAction.cs b/src/ArcadePointsBot/Models/MouseRewardAction.cs index 4830835..3b60cd7 100644 --- a/src/ArcadePointsBot/Models/MouseRewardAction.cs +++ b/src/ArcadePointsBot/Models/MouseRewardAction.cs @@ -1,12 +1,12 @@ using Avalonia.Input; -using AvaloniaApplication1.Util; +using ArcadePointsBot.Util; using ReactiveUI.Fody.Helpers; using ReactiveUI; using System; using System.Collections; -using AvaloniaApplication1.ViewModels; +using ArcadePointsBot.ViewModels; -namespace AvaloniaApplication1.Models; +namespace ArcadePointsBot.Models; public class MouseRewardAction : RewardAction { diff --git a/src/ArcadePointsBot/Models/RewardAction.cs b/src/ArcadePointsBot/Models/RewardAction.cs index 7e5b500..895bdd4 100644 --- a/src/ArcadePointsBot/Models/RewardAction.cs +++ b/src/ArcadePointsBot/Models/RewardAction.cs @@ -1,13 +1,13 @@ using Avalonia.Input; -using AvaloniaApplication1.Data.Abstractions; -using AvaloniaApplication1.Util; -using AvaloniaApplication1.ViewModels; +using ArcadePointsBot.Data.Abstractions; +using ArcadePointsBot.Util; +using ArcadePointsBot.ViewModels; using ReactiveUI; using ReactiveUI.Fody.Helpers; using System; using System.Collections; -namespace AvaloniaApplication1.Models; +namespace ArcadePointsBot.Models; public abstract class RewardAction : IEntity { public string Id { get; set; } = null!; diff --git a/src/ArcadePointsBot/Models/TwitchReward.cs b/src/ArcadePointsBot/Models/TwitchReward.cs index 3b1813c..712ef42 100644 --- a/src/ArcadePointsBot/Models/TwitchReward.cs +++ b/src/ArcadePointsBot/Models/TwitchReward.cs @@ -1,9 +1,9 @@ -using AvaloniaApplication1.Data.Abstractions; +using ArcadePointsBot.Data.Abstractions; using System.Collections.Generic; using System.ComponentModel; using TwitchLib.Api.Helix.Models.ChannelPoints; -namespace AvaloniaApplication1.Models +namespace ArcadePointsBot.Models { public class TwitchReward : IEntity, INotifyPropertyChanged { diff --git a/src/ArcadePointsBot/Program.cs b/src/ArcadePointsBot/Program.cs index 67edfac..acb6482 100644 --- a/src/ArcadePointsBot/Program.cs +++ b/src/ArcadePointsBot/Program.cs @@ -1,28 +1,9 @@ using Avalonia; -using Avalonia.Controls; -using Avalonia.Controls.ApplicationLifetimes; using Avalonia.ReactiveUI; -using AvaloniaApplication1.Auth; -using AvaloniaApplication1.Config; -using AvaloniaApplication1.Data.Abstractions.Repositories; -using AvaloniaApplication1.Data.Contexts; -using AvaloniaApplication1.Data.Repositories; -using AvaloniaApplication1.Services; -using AvaloniaApplication1.ViewModels; -using Microsoft.EntityFrameworkCore; -using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Hosting; -using Microsoft.Extensions.Logging; -using Serilog; using System; -using System.Diagnostics; -using System.IO; -using System.Reflection; -using System.Threading; -using System.Threading.Tasks; +using System.Globalization; -namespace AvaloniaApplication1 +namespace ArcadePointsBot { internal class Program { @@ -31,8 +12,9 @@ internal class Program // SynchronizationContext-reliant code before AppMain is called: things aren't initialized // yet and stuff might break. [STAThread] - public static void Main(string[] args) => BuildAvaloniaApp() - .StartWithClassicDesktopLifetime(args); + public static void Main(string[] args) => + BuildAvaloniaApp() + .StartWithClassicDesktopLifetime(args); // Avalonia configuration, don't remove; also used by visual designer. public static AppBuilder BuildAvaloniaApp() diff --git a/src/ArcadePointsBot/Resources/L10n.Designer.cs b/src/ArcadePointsBot/Resources/L10n.Designer.cs new file mode 100644 index 0000000..184cf78 --- /dev/null +++ b/src/ArcadePointsBot/Resources/L10n.Designer.cs @@ -0,0 +1,234 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace ArcadePointsBot.Resources { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + public class L10n { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal L10n() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + public static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ArcadePointsBot.Resources.L10n", typeof(L10n).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + public static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized string similar to Duplicate. + /// + public static string Action_Duplicate { + get { + return ResourceManager.GetString("Action_Duplicate", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Duration milliseconds. + /// + public static string Action_Duration { + get { + return ResourceManager.GetString("Action_Duration", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Key action type. + /// + public static string Action_Key_Type { + get { + return ResourceManager.GetString("Action_Key_Type", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Keyboard key. + /// + public static string Action_Keyboard_Key { + get { + return ResourceManager.GetString("Action_Keyboard_Key", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Mouse Action Type. + /// + public static string Action_Mouse_Action { + get { + return ResourceManager.GetString("Action_Mouse_Action", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Mouse button. + /// + public static string Action_Mouse_Key { + get { + return ResourceManager.GetString("Action_Mouse_Key", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Action Type. + /// + public static string Action_Type { + get { + return ResourceManager.GetString("Action_Type", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Add Action. + /// + public static string Create_AddBtn { + get { + return ResourceManager.GetString("Create_AddBtn", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Category/Game. + /// + public static string Create_Category { + get { + return ResourceManager.GetString("Create_Category", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cost. + /// + public static string Create_Cost { + get { + return ResourceManager.GetString("Create_Cost", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Create Reward. + /// + public static string Create_CreateBtn { + get { + return ResourceManager.GetString("Create_CreateBtn", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Require User Input. + /// + public static string Create_RequireInput { + get { + return ResourceManager.GetString("Create_RequireInput", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reward Title. + /// + public static string Create_Title { + get { + return ResourceManager.GetString("Create_Title", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Create a new Reward. + /// + public static string Create_Window { + get { + return ResourceManager.GetString("Create_Window", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Save changes. + /// + public static string Edit_SaveBtn { + get { + return ResourceManager.GetString("Edit_SaveBtn", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Edit Reward. + /// + public static string Edit_Window { + get { + return ResourceManager.GetString("Edit_Window", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enabled. + /// + public static string Main_CB_Enabled { + get { + return ResourceManager.GetString("Main_CB_Enabled", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Delete. + /// + public static string Main_DeleteBtn { + get { + return ResourceManager.GetString("Main_DeleteBtn", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Edit. + /// + public static string Main_EditBtn { + get { + return ResourceManager.GetString("Main_EditBtn", resourceCulture); + } + } + } +} diff --git a/src/ArcadePointsBot/Resources/L10n.de-DE.resx b/src/ArcadePointsBot/Resources/L10n.de-DE.resx new file mode 100644 index 0000000..dc49aeb --- /dev/null +++ b/src/ArcadePointsBot/Resources/L10n.de-DE.resx @@ -0,0 +1,177 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Duplizieren + + + Dauer in millisekunden + + + Tastaturtaste + + + Tastatur Aktionstyp + + + Maus Aktionstyp + + + Maustaste + + + Aktions Typ + + + Neue Aktion + + + Spiel/Kategorie + + + Preis + + + Belohnung erstellen + + + Muss Text eingeben? + + + Name der Belohnung + + + Neue Belohnung erstellen + + + Änderung speichern + + + Belohnung bearbeiten + + + Ist Aktiv? + + + Löschen + + + Bearbeiten + + \ No newline at end of file diff --git a/src/ArcadePointsBot/Resources/L10n.resx b/src/ArcadePointsBot/Resources/L10n.resx new file mode 100644 index 0000000..4f53d11 --- /dev/null +++ b/src/ArcadePointsBot/Resources/L10n.resx @@ -0,0 +1,177 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Duplicate + + + Duration milliseconds + + + Keyboard key + + + Key action type + + + Mouse Action Type + + + Mouse button + + + Action Type + + + Add Action + + + Category/Game + + + Cost + + + Create Reward + + + Require User Input + + + Reward Title + + + Create a new Reward + + + Save changes + + + Edit Reward + + + Enabled + + + Delete + + + Edit + + \ No newline at end of file diff --git a/src/ArcadePointsBot/Result.cs b/src/ArcadePointsBot/Result.cs index afa5153..717441c 100644 --- a/src/ArcadePointsBot/Result.cs +++ b/src/ArcadePointsBot/Result.cs @@ -4,7 +4,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1; +namespace ArcadePointsBot; /// /// Represents a result of some operation, with status information and possibly an error. diff --git a/src/ArcadePointsBot/Services/TwitchPointRewardService.cs b/src/ArcadePointsBot/Services/TwitchPointRewardService.cs index 4153e07..a4fd258 100644 --- a/src/ArcadePointsBot/Services/TwitchPointRewardService.cs +++ b/src/ArcadePointsBot/Services/TwitchPointRewardService.cs @@ -1,7 +1,7 @@ -using AvaloniaApplication1.Auth; -using AvaloniaApplication1.Data.Abstractions.Repositories; -using AvaloniaApplication1.Models; -using AvaloniaApplication1.ViewModels; +using ArcadePointsBot.Auth; +using ArcadePointsBot.Data.Abstractions.Repositories; +using ArcadePointsBot.Models; +using ArcadePointsBot.ViewModels; using DynamicData; using Microsoft.Extensions.Logging; using System; @@ -18,7 +18,7 @@ using TwitchLib.Api.Helix.Models.ChannelPoints.UpdateCustomRewardRedemptionStatus; using TwitchLib.PubSub.Models.Responses.Messages.Redemption; -namespace AvaloniaApplication1.Services +namespace ArcadePointsBot.Services { public class TwitchPointRewardService { diff --git a/src/ArcadePointsBot/SystemBrowser.cs b/src/ArcadePointsBot/SystemBrowser.cs index ff4e538..d4ef11e 100644 --- a/src/ArcadePointsBot/SystemBrowser.cs +++ b/src/ArcadePointsBot/SystemBrowser.cs @@ -12,7 +12,7 @@ using System.Threading.Tasks; using System.IO; -namespace AvaloniaApplication1; +namespace ArcadePointsBot; public class SystemBrowser : IBrowser { public int Port { get; } diff --git a/src/ArcadePointsBot/TwitchWorker.cs b/src/ArcadePointsBot/TwitchWorker.cs index 02b86b4..49fa054 100644 --- a/src/ArcadePointsBot/TwitchWorker.cs +++ b/src/ArcadePointsBot/TwitchWorker.cs @@ -1,10 +1,10 @@ using Avalonia.Controls.ApplicationLifetimes; using Avalonia.Threading; -using AvaloniaApplication1.Auth; -using AvaloniaApplication1.Data.Abstractions.Repositories; -using AvaloniaApplication1.Interop.Windows; -using AvaloniaApplication1.Models; -using AvaloniaApplication1.Views; +using ArcadePointsBot.Auth; +using ArcadePointsBot.Data.Abstractions.Repositories; +using ArcadePointsBot.Interop.Windows; +using ArcadePointsBot.Models; +using ArcadePointsBot.Views; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; @@ -25,7 +25,7 @@ using TwitchLib.PubSub.Events; using TwitchLib.PubSub.Models.Responses.Messages.Redemption; -namespace AvaloniaApplication1; +namespace ArcadePointsBot; public class TwitchWorker : BackgroundService, INotifyPropertyChanged { diff --git a/src/ArcadePointsBot/Util/EnumUtils.cs b/src/ArcadePointsBot/Util/EnumUtils.cs index 0529e4a..1bd4639 100644 --- a/src/ArcadePointsBot/Util/EnumUtils.cs +++ b/src/ArcadePointsBot/Util/EnumUtils.cs @@ -6,7 +6,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1.Util; +namespace ArcadePointsBot.Util; public static class EnumUtils { diff --git a/src/ArcadePointsBot/Util/ResourceHostExtensions.cs b/src/ArcadePointsBot/Util/ResourceHostExtensions.cs index b3e3d47..0718062 100644 --- a/src/ArcadePointsBot/Util/ResourceHostExtensions.cs +++ b/src/ArcadePointsBot/Util/ResourceHostExtensions.cs @@ -6,7 +6,7 @@ using System.Text; using System.Threading.Tasks; -namespace AvaloniaApplication1.Util +namespace ArcadePointsBot.Util { internal static class ResourceHostExtensions { diff --git a/src/ArcadePointsBot/ViewLocator.cs b/src/ArcadePointsBot/ViewLocator.cs index c9bfc42..76c7825 100644 --- a/src/ArcadePointsBot/ViewLocator.cs +++ b/src/ArcadePointsBot/ViewLocator.cs @@ -1,12 +1,12 @@ using Avalonia.Controls; using Avalonia.Controls.Templates; -using AvaloniaApplication1.ViewModels; +using ArcadePointsBot.ViewModels; using Microsoft.Extensions.DependencyInjection; using System; using System.Collections.Generic; using System.Linq; -namespace AvaloniaApplication1 +namespace ArcadePointsBot { public static class ViewLocatorHelpers { diff --git a/src/ArcadePointsBot/ViewModels/CreateRewardWindowViewModel.cs b/src/ArcadePointsBot/ViewModels/CreateRewardWindowViewModel.cs index d622a29..1e4fe55 100644 --- a/src/ArcadePointsBot/ViewModels/CreateRewardWindowViewModel.cs +++ b/src/ArcadePointsBot/ViewModels/CreateRewardWindowViewModel.cs @@ -1,6 +1,6 @@ -using AvaloniaApplication1.Models; -using AvaloniaApplication1.Services; -using AvaloniaApplication1.Util; +using ArcadePointsBot.Models; +using ArcadePointsBot.Services; +using ArcadePointsBot.Util; using DynamicData; using DynamicData.Binding; using Microsoft.Extensions.DependencyInjection; @@ -13,7 +13,7 @@ using System.Reactive.Linq; using System.Threading.Tasks; -namespace AvaloniaApplication1.ViewModels +namespace ArcadePointsBot.ViewModels { public partial class CreateRewardWindowViewModel : ViewModelBase { diff --git a/src/ArcadePointsBot/ViewModels/DesignData.cs b/src/ArcadePointsBot/ViewModels/DesignData.cs index d31210d..67be009 100644 --- a/src/ArcadePointsBot/ViewModels/DesignData.cs +++ b/src/ArcadePointsBot/ViewModels/DesignData.cs @@ -1,7 +1,7 @@ using Avalonia; -using AvaloniaApplication1; -using AvaloniaApplication1.Services; -using AvaloniaApplication1.ViewModels; +using ArcadePointsBot; +using ArcadePointsBot.Services; +using ArcadePointsBot.ViewModels; using Microsoft.Extensions.DependencyInjection; using System.Diagnostics; using System.Threading; @@ -21,5 +21,5 @@ public static class DesignData ((App)Application.Current!).GlobalHost!.Services.GetRequiredService(); public static EditRewardViewModel EditRewardViewModel { get; } = new EditRewardViewModel(null, - new AvaloniaApplication1.Models.TwitchReward()); + new ArcadePointsBot.Models.TwitchReward()); } diff --git a/src/ArcadePointsBot/ViewModels/EditRewardViewModel.cs b/src/ArcadePointsBot/ViewModels/EditRewardViewModel.cs index b6951f2..92569bc 100644 --- a/src/ArcadePointsBot/ViewModels/EditRewardViewModel.cs +++ b/src/ArcadePointsBot/ViewModels/EditRewardViewModel.cs @@ -1,6 +1,6 @@ -using AvaloniaApplication1.Models; -using AvaloniaApplication1.Services; -using AvaloniaApplication1.Util; +using ArcadePointsBot.Models; +using ArcadePointsBot.Services; +using ArcadePointsBot.Util; using DynamicData; using DynamicData.Binding; using Microsoft.Extensions.DependencyInjection; @@ -14,7 +14,7 @@ using System.Reactive.Linq; using System.Threading.Tasks; -namespace AvaloniaApplication1.ViewModels; +namespace ArcadePointsBot.ViewModels; public partial class EditRewardViewModel : ViewModelBase { diff --git a/src/ArcadePointsBot/ViewModels/MainWindowViewModel.cs b/src/ArcadePointsBot/ViewModels/MainWindowViewModel.cs index fd0174a..e0da8c6 100644 --- a/src/ArcadePointsBot/ViewModels/MainWindowViewModel.cs +++ b/src/ArcadePointsBot/ViewModels/MainWindowViewModel.cs @@ -1,10 +1,10 @@ using Avalonia.Collections; using Avalonia.Controls.ApplicationLifetimes; using Avalonia.Threading; -using AvaloniaApplication1.Auth; -using AvaloniaApplication1.Models; -using AvaloniaApplication1.Services; -using AvaloniaApplication1.Views; +using ArcadePointsBot.Auth; +using ArcadePointsBot.Models; +using ArcadePointsBot.Services; +using ArcadePointsBot.Views; using DynamicData; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.DependencyInjection; @@ -19,7 +19,7 @@ using System.Reactive.Linq; using System.Threading.Tasks; -namespace AvaloniaApplication1.ViewModels +namespace ArcadePointsBot.ViewModels { public partial class MainWindowViewModel : ViewModelBase { diff --git a/src/ArcadePointsBot/ViewModels/RewardActionViewModel.cs b/src/ArcadePointsBot/ViewModels/RewardActionViewModel.cs index 073d7bb..8203441 100644 --- a/src/ArcadePointsBot/ViewModels/RewardActionViewModel.cs +++ b/src/ArcadePointsBot/ViewModels/RewardActionViewModel.cs @@ -1,12 +1,12 @@ using ReactiveUI; -using AvaloniaApplication1.Models; -using AvaloniaApplication1.Util; +using ArcadePointsBot.Models; +using ArcadePointsBot.Util; using System.Collections; using Avalonia.Input; using ReactiveUI.Fody.Helpers; using System; -namespace AvaloniaApplication1.ViewModels +namespace ArcadePointsBot.ViewModels { public class RewardActionViewModel : ReactiveObject { diff --git a/src/ArcadePointsBot/ViewModels/ViewModelBase.cs b/src/ArcadePointsBot/ViewModels/ViewModelBase.cs index cb14c1b..069031e 100644 --- a/src/ArcadePointsBot/ViewModels/ViewModelBase.cs +++ b/src/ArcadePointsBot/ViewModels/ViewModelBase.cs @@ -8,7 +8,7 @@ using System.Linq; using System.Reactive.Linq; -namespace AvaloniaApplication1.ViewModels +namespace ArcadePointsBot.ViewModels { public partial class ViewModelBase : ReactiveObject { diff --git a/src/ArcadePointsBot/Views/CreateRewardWindow.axaml b/src/ArcadePointsBot/Views/CreateRewardWindow.axaml index 2896f23..45aa484 100644 --- a/src/ArcadePointsBot/Views/CreateRewardWindow.axaml +++ b/src/ArcadePointsBot/Views/CreateRewardWindow.axaml @@ -1,28 +1,31 @@ - - + + - - + - Require User Input + @@ -36,13 +39,15 @@ - + - -