add allowedSections for user

This commit is contained in:
Jacob Overgaard
2022-05-19 12:07:58 +02:00
parent e4b6c825ac
commit 958efd4dc8
7 changed files with 278 additions and 181 deletions

View File

@@ -1,8 +1,9 @@
import './installer';
import './user';
import { api, body, defaultResponse, endpoint, request, response } from '@airtasker/spot';
import { api, body, defaultResponse, endpoint, response } from '@airtasker/spot';
import { ErrorResponse, InitResponse, UserLoginRequest, UserResponse, VersionResponse } from './models';
import { ErrorResponse, InitResponse, VersionResponse } from './models';
/* eslint-disable */
@api({ name: "umbraco-backoffice-api", version: "1.0.0" })
@@ -31,42 +32,3 @@ class GetVersion {
@defaultResponse
default(@body body: ErrorResponse) { }
}
@endpoint({
method: "POST",
path: "/user/login",
})
class PostUserLogin {
@request
request(@body body: UserLoginRequest) { }
@response({ status: 201 })
success() { }
@response({ status: 403 })
failure(@body body: ErrorResponse) { }
}
@endpoint({
method: "POST",
path: "/user/logout",
})
class PostUserLogout {
@response({ status: 201 })
success() { }
@defaultResponse
default(@body body: ErrorResponse) { }
}
@endpoint({
method: "GET",
path: "/user",
})
class GetUser {
@response({ status: 200 })
success(@body body: UserResponse) { }
@response({ status: 403 })
failure(@body body: ErrorResponse) { }
}

View File

@@ -0,0 +1,62 @@
import { body, defaultResponse, endpoint, request, response } from '@airtasker/spot';
import { ErrorResponse, UserLoginRequest, UserResponse } from './models';
@endpoint({
method: "GET",
path: "/user",
})
class GetUser {
@response({ status: 200 })
success(@body body: UserResponse) { }
@response({ status: 403 })
failure(@body body: ErrorResponse) { }
}
@endpoint({
method: "POST",
path: "/user/login",
})
class PostUserLogin {
@request
request(@body body: UserLoginRequest) { }
@response({ status: 201 })
success() { }
@response({ status: 403 })
failure(@body body: ErrorResponse) { }
}
@endpoint({
method: "POST",
path: "/user/logout",
})
class PostUserLogout {
@response({ status: 201 })
success() { }
@defaultResponse
default(@body body: ErrorResponse) { }
}
@endpoint({
method: "GET",
path: "/user/sections",
})
export class GetAllowedSections {
@response({ status: 200 })
successResponse(
@body body: AllowedSectionsResponse
) { }
@defaultResponse
defaultResponse(
@body body: ErrorResponse
) { }
}
export interface AllowedSectionsResponse {
sections: string[];
}