Refactored GUI

This commit is contained in:
Alessandro Autiero
2025-08-10 19:43:57 +01:00
parent 52abf5eb95
commit 4ea73d17c7
75 changed files with 2020 additions and 2011 deletions

View File

@@ -1,4 +1,4 @@
library;
export 'src/server_entry.dart';
export 'src/server_browser_entry.dart';
export 'src/web_socket.dart';

View File

@@ -1,4 +1,4 @@
class ServerEntry {
class ServerBrowserEntry {
final String id;
final String name;
final String description;
@@ -9,7 +9,7 @@ class ServerEntry {
final String author;
final bool discoverable;
ServerEntry({
ServerBrowserEntry({
required this.id,
required this.name,
required this.description,
@@ -35,8 +35,8 @@ class ServerEntry {
};
}
static ServerEntry fromJson(Map<String, dynamic> json) {
return ServerEntry(
static ServerBrowserEntry fromJson(Map<String, dynamic> json) {
return ServerBrowserEntry(
id: json['id'],
name: json['name'],
description: json['description'],

View File

@@ -1,13 +1,14 @@
import 'dart:convert';
import 'dart:io';
import 'package:server_browser_backend/src/server_entry.dart';
import 'package:server_browser_backend/src/server_browser_entry.dart';
class WebSocketServer {
class ServerBrowserBackend {
static const String addEvent = 'add';
static const String removeEvent = 'remove';
static const String pingEvent = 'ping';
final Map<String, ServerEntry> _entries = {};
final Map<String, ServerBrowserEntry> _entries = {};
final Set<WebSocket> _clients = {};
late HttpServer _server;
@@ -54,8 +55,11 @@ class WebSocketServer {
type = data['type'];
final payload = data['data'];
switch (type) {
case pingEvent:
client.add(json.encode({"type": pingEvent}));
break;
case addEvent:
final entry = ServerEntry.fromJson(payload);
final entry = ServerBrowserEntry.fromJson(payload);
_entries[entry.id] = entry;
_broadcastEvent(addEvent, entry.toJson());
break;