Browse Source

improve code

pull/1345/head
Bernd Storath 9 months ago
parent
commit
402fa0f594
  1. 2
      .gitignore
  2. 1
      src/server/api/cnf/[oneTimeLink].ts
  3. 6
      src/server/api/release.get.ts
  4. 5
      src/server/api/session.post.ts
  5. 4
      src/server/middleware/session.ts
  6. 2
      src/services/database/lowdb.ts
  7. 2
      src/services/database/migrations/1.ts

2
.gitignore

@ -4,5 +4,3 @@
/src/node_modules /src/node_modules
.DS_Store .DS_Store
*.swp *.swp
# lowdb data file
db.json

1
src/server/api/cnf/[oneTimeLink].ts

@ -6,7 +6,6 @@ export default defineEventHandler(async (event) => {
statusMessage: 'Invalid state', statusMessage: 'Invalid state',
}); });
} }
// TODO: validate with zod
const { oneTimeLink } = await getValidatedRouterParams( const { oneTimeLink } = await getValidatedRouterParams(
event, event,
validateZod(oneTimeLinkType) validateZod(oneTimeLinkType)

6
src/server/api/release.get.ts

@ -1,11 +1,5 @@
export default defineEventHandler(async () => { export default defineEventHandler(async () => {
const system = await Database.getSystem(); const system = await Database.getSystem();
if (!system)
throw createError({
statusCode: 500,
statusMessage: 'Invalid',
});
const latestRelease = await fetchLatestRelease(); const latestRelease = await fetchLatestRelease();
return { return {
currentRelease: system.release, currentRelease: system.release,

5
src/server/api/session.post.ts

@ -23,11 +23,6 @@ export default defineEventHandler(async (event) => {
} }
const system = await Database.getSystem(); const system = await Database.getSystem();
if (!system)
throw createError({
statusCode: 500,
statusMessage: 'Invalid',
});
const conf: SessionConfig = system.sessionConfig; const conf: SessionConfig = system.sessionConfig;

4
src/server/middleware/session.ts

@ -2,12 +2,12 @@ export default defineEventHandler(async (event) => {
const url = getRequestURL(event); const url = getRequestURL(event);
if ( if (
!url.pathname.startsWith('/api/') || !url.pathname.startsWith('/api/') ||
// TODO: only allowed on onboarding!
url.pathname === '/api/account/new' || url.pathname === '/api/account/new' ||
url.pathname === '/api/session' || url.pathname === '/api/session' ||
url.pathname === '/api/lang' || url.pathname === '/api/lang' ||
url.pathname === '/api/release' || url.pathname === '/api/release' ||
url.pathname === '/api/ui-chart-type' || url.pathname === '/api/features'
url.pathname === '/api/ui-traffic-stats'
) { ) {
return; return;
} }

2
src/services/database/lowdb.ts

@ -22,7 +22,6 @@ export default class LowDB extends DatabaseProvider {
// is this really needed? // is this really needed?
private async __init() { private async __init() {
// TODO: assume path to db file
const dbFilePath = join('/etc/wireguard', 'db.json'); const dbFilePath = join('/etc/wireguard', 'db.json');
this.#db = await JSONFilePreset(dbFilePath, DEFAULT_DATABASE); this.#db = await JSONFilePreset(dbFilePath, DEFAULT_DATABASE);
} }
@ -80,6 +79,7 @@ export default class LowDB extends DatabaseProvider {
throw new DatabaseError(DatabaseError.ERROR_PASSWORD_REQ); throw new DatabaseError(DatabaseError.ERROR_PASSWORD_REQ);
} }
// TODO: multiple names are no problem
const isUserExist = this.#db.data.users.find( const isUserExist = this.#db.data.users.find(
(user) => user.username === username (user) => user.username === username
); );

2
src/services/database/migrations/1.ts

@ -23,7 +23,7 @@ export async function run1(db: Low<Database>) {
userConfig: { userConfig: {
mtu: 1420, mtu: 1420,
persistentKeepalive: 0, persistentKeepalive: 0,
// TODO: assume handle CIDR to compute next ip in WireGuard // TODO: handle CIDR to compute next ip in WireGuard
//addressRange: '10.8.0.0/24', //addressRange: '10.8.0.0/24',
addressRange: addressRange, addressRange: addressRange,
defaultDns: ['1.1.1.1'], defaultDns: ['1.1.1.1'],

Loading…
Cancel
Save