The from-scratch Go rewrite had unresolved bugs (missing go.sum, UI 404s, path issues) from being built without a working local Go toolchain to verify against. Switching strategy: use the actual upstream wireguard-ui codebase (proven, battle-tested single-server manager) as the base, and extend it for multi-server support instead of re-deriving everything from zero. Kept our own installers (bootstrap.sh, update.sh, scripts/install.sh, scripts/proxmox-install.sh) - these still apply, just need updating to build/install the upstream module layout instead of the old cmd/wireguard-ui-multi structure. Module path intentionally left as upstream's own (github.com/ngoduykhanh/wireguard-ui) for now to avoid touching every internal import; revisit if this needs to be fully rebranded. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
31 lines
1.1 KiB
Go
31 lines
1.1 KiB
Go
package store
|
|
|
|
import (
|
|
"github.com/ngoduykhanh/wireguard-ui/model"
|
|
)
|
|
|
|
type IStore interface {
|
|
Init() error
|
|
GetUsers() ([]model.User, error)
|
|
GetUserByName(username string) (model.User, error)
|
|
SaveUser(user model.User) error
|
|
DeleteUser(username string) error
|
|
GetGlobalSettings() (model.GlobalSetting, error)
|
|
GetServer() (model.Server, error)
|
|
GetClients(hasQRCode bool) ([]model.ClientData, error)
|
|
GetClientByID(clientID string, qrCode model.QRCodeSettings) (model.ClientData, error)
|
|
SaveClient(client model.Client) error
|
|
DeleteClient(clientID string) error
|
|
SaveServerInterface(serverInterface model.ServerInterface) error
|
|
SaveServerKeyPair(serverKeyPair model.ServerKeypair) error
|
|
SaveGlobalSettings(globalSettings model.GlobalSetting) error
|
|
GetWakeOnLanHosts() ([]model.WakeOnLanHost, error)
|
|
GetWakeOnLanHost(macAddress string) (*model.WakeOnLanHost, error)
|
|
DeleteWakeOnHostLanHost(macAddress string) error
|
|
SaveWakeOnLanHost(host model.WakeOnLanHost) error
|
|
DeleteWakeOnHost(host model.WakeOnLanHost) error
|
|
GetPath() string
|
|
SaveHashes(hashes model.ClientServerHashes) error
|
|
GetHashes() (model.ClientServerHashes, error)
|
|
}
|