From 3ceb642ae3f35cdf871943f21b19df31f72be994 Mon Sep 17 00:00:00 2001 From: Bernd Storath <32197462+kaaax0815@users.noreply.github.com> Date: Tue, 3 Sep 2024 15:13:16 +0200 Subject: [PATCH] Feat: Rewrite Wireguard to use Database (#1345) * update wireguard * update * update * remove all config * move all features into one route * improve code * fix some issues --- .gitignore | 2 - src/app/app.vue | 7 +- src/app/components/Client/Charts.vue | 20 +- src/app/components/Client/Client.vue | 4 +- src/app/components/Client/ExpireDate.vue | 8 +- src/app/components/Client/LastSeen.vue | 2 +- src/app/components/Client/OneTimeLink.vue | 4 +- src/app/components/Client/OneTimeLinkBtn.vue | 2 +- src/app/components/Clients/CreateDialog.vue | 5 +- src/app/components/Clients/Sort.vue | 2 +- src/app/layouts/Header.vue | 4 +- src/app/pages/login.vue | 2 - src/app/stores/auth.ts | 2 +- src/app/stores/clients.ts | 5 +- src/app/stores/global.ts | 70 +-- src/app/utils/api.ts | 44 +- ...clientOneTimeLink].ts => [oneTimeLink].ts} | 26 +- src/server/api/features.get.ts | 9 + src/server/api/release.get.ts | 6 - src/server/api/remember-me.get.ts | 5 - src/server/api/session.post.ts | 10 +- src/server/api/ui-chart-type.get.ts | 11 - src/server/api/ui-sort-clients.get.ts | 11 - src/server/api/ui-traffic-stats.get.ts | 11 - src/server/api/wg-enable-expire-time.get.ts | 11 - .../api/wg-enable-one-time-links.get.ts | 11 - .../[clientId]/generateOneTimeLink.post.ts | 3 +- src/server/middleware/session.ts | 4 +- src/server/middleware/setup.ts | 3 +- src/server/utils/Database.ts | 1 - src/server/utils/WireGuard.ts | 398 +++++++----------- src/server/utils/config.ts | 69 --- src/server/utils/logger.ts | 3 + src/server/utils/types.ts | 12 + src/services/database/lowdb.ts | 106 ++++- src/services/database/migrations/1.ts | 64 +-- src/services/database/repositories/client.ts | 43 ++ .../database/repositories/database.ts | 27 +- src/services/database/repositories/system.ts | 4 +- 39 files changed, 463 insertions(+), 568 deletions(-) rename src/server/api/cnf/{[clientOneTimeLink].ts => [oneTimeLink].ts} (60%) create mode 100644 src/server/api/features.get.ts delete mode 100644 src/server/api/remember-me.get.ts delete mode 100644 src/server/api/ui-chart-type.get.ts delete mode 100644 src/server/api/ui-sort-clients.get.ts delete mode 100644 src/server/api/ui-traffic-stats.get.ts delete mode 100644 src/server/api/wg-enable-expire-time.get.ts delete mode 100644 src/server/api/wg-enable-one-time-links.get.ts delete mode 100644 src/server/utils/config.ts create mode 100644 src/server/utils/logger.ts create mode 100644 src/services/database/repositories/client.ts diff --git a/.gitignore b/.gitignore index ed408701..e6fce2a6 100644 --- a/.gitignore +++ b/.gitignore @@ -4,5 +4,3 @@ /src/node_modules .DS_Store *.swp -# lowdb data file -db.json \ No newline at end of file diff --git a/src/app/app.vue b/src/app/app.vue index 860b7031..a8f0a0f7 100644 --- a/src/app/app.vue +++ b/src/app/app.vue @@ -8,13 +8,8 @@