Kairo-Jinkendo/frontend/src/api/actors.js

30 lines
879 B
JavaScript
Raw Normal View History

import { apiFetch } from './client.js'
/**
* @param {{ actor_type?: string, include_inactive?: boolean, q?: string }} [params]
*/
export function listActors(params = {}) {
const search = new URLSearchParams()
if (params.actor_type) search.set('actor_type', params.actor_type)
if (params.include_inactive) search.set('include_inactive', 'true')
if (params.q) search.set('q', params.q)
const qs = search.toString()
return apiFetch(`/api/actors${qs ? `?${qs}` : ''}`)
}
export function getActor(id) {
return apiFetch(`/api/actors/${id}`)
}
/** Fallback wenn Actor Directory nicht erreichbar (AP0.6-Kompatibilität). */
export function actorsFromContext(context) {
if (!context?.actor?.id) return []
return [
{
id: context.actor.id,
name: context.display_name || 'Aktueller Actor',
actor_type: context.actor.type || 'human',
},
]
}