backend/source/api/functions.ts
2024-11-28 23:08:24 +01:00

73 lines
1.9 KiB
TypeScript

namespace _zeitbild.api
{
/**
*/
export function make(
) : lib_plankton.rest_caldav.type_rest
{
const rest_subject : lib_plankton.rest_caldav.type_rest = lib_plankton.rest_caldav.make(
{
"title": "zeitbild",
"versioning_method": "header",
"versioning_header_name": "X-Api-Version",
"set_access_control_headers": true,
"authentication": {
"kind": "key_header",
"data": {"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);
}
}
// export
{
_zeitbild.api.register_export_ical(rest_subject);
}
// caldav
{
_zeitbild.api.register_caldav_sniff(rest_subject);
_zeitbild.api.register_caldav_put(rest_subject);
_zeitbild.api.register_caldav_probe(rest_subject);
_zeitbild.api.register_caldav_probe_via_well_known(rest_subject);
_zeitbild.api.register_caldav_projects(rest_subject);
_zeitbild.api.register_caldav_get(rest_subject);
}
// misc
{
_zeitbild.api.register_users(rest_subject);
_zeitbild.api.register_events(rest_subject);
}
return rest_subject;
}
}