backend/source/api/functions.ts

60 lines
1.5 KiB
TypeScript

namespace _zeitbild.api
{
/**
*/
export function make(
) : lib_plankton.rest.type_rest
{
const rest_subject : lib_plankton.rest.type_rest = lib_plankton.rest.make(
{
"title": "zeitbild",
"versioning_method": "header",
"versioning_header_name": "X-Api-Version",
"set_access_control_headers": true,
"authentication": {
"kind": "key_header",
"parameters": {"name": "X-Session-Key"}
},
}
);
// meta
{
_zeitbild.api.register_meta_ping(rest_subject);
_zeitbild.api.register_meta_spec(rest_subject);
}
// session
{
_zeitbild.api.register_session_prepare(rest_subject);
_zeitbild.api.register_session_begin(rest_subject);
_zeitbild.api.register_session_end(rest_subject);
_zeitbild.api.register_session_oidc(rest_subject);
}
// calendar
{
_zeitbild.api.register_calendar_list(rest_subject);
_zeitbild.api.register_calendar_get(rest_subject);
_zeitbild.api.register_calendar_add(rest_subject);
_zeitbild.api.register_calendar_change(rest_subject);
_zeitbild.api.register_calendar_remove(rest_subject);
// event
{
_zeitbild.api.register_calendar_event_get(rest_subject);
_zeitbild.api.register_calendar_event_add(rest_subject);
_zeitbild.api.register_calendar_event_change(rest_subject);
_zeitbild.api.register_calendar_event_remove(rest_subject);
}
}
// misc
{
_zeitbild.api.register_users(rest_subject);
_zeitbild.api.register_events(rest_subject);
}
return rest_subject;
}
}