Added modular event system

This commit is contained in:
2025-02-01 11:50:52 +01:00
parent 966ced57d6
commit 39641f18a8
22 changed files with 262 additions and 68 deletions

View File

@@ -4,6 +4,7 @@
@implements IDisposable
@using HopFrame.Core.Config
@using HopFrame.Core.Events
@using HopFrame.Core.Services
@using HopFrame.Web.Models
@using Microsoft.JSInterop
@@ -117,6 +118,7 @@
@inject IJSRuntime Js
@inject IDialogService Dialogs
@inject IHopFrameAuthHandler Handler
@inject IEventEmitter Emitter
@code {
@@ -229,6 +231,7 @@
if (result.Cancelled) return;
await _manager!.DeleteItem(element);
await Emitter.DispatchEvent(EventTypes.DeleteEntry(_config!), element);
await Reload();
}
@@ -246,10 +249,14 @@
if (result.Cancelled) return;
if (element is null)
if (element is null) {
await _manager!.AddItem(data!.CurrentObject!);
else
await Emitter.DispatchEvent(EventTypes.CreateEntry(_config!), data.CurrentObject!);
}
else {
await _manager!.EditItem(data!.CurrentObject!);
await Emitter.DispatchEvent(EventTypes.UpdateEntry(_config!), data.CurrentObject!);
}
await Reload();
}

View File

@@ -1,5 +1,6 @@
using HopFrame.Core;
using HopFrame.Core.Config;
using HopFrame.Core.Events;
using HopFrame.Web.Components;
using HopFrame.Web.Components.Pages;
using Microsoft.Extensions.DependencyInjection;