// composables/useKompasActions.ts const availableActions = ref>({}) export function useKompasActions() { const { sendCommandToPython, isReady } = usePythonBridge() const loading = ref(false) const error = ref(null) /** * Загружает список действий с бэкенда */ async function loadActions() { loading.value = true error.value = null try { const actions = await sendCommandToPython<{ [key: string]: { label: string; allowed_types: number[] } }>('get_available_actions') if (actions) { // Преобразуем все ключи `allowed_types` → `allowedTypes` const convertedActions: Record = {} for (const key in actions) { const { label, allowed_types } = actions[key] convertedActions[key] = { label, allowedTypes: allowed_types } } availableActions.value = convertedActions } } catch (err: any) { console.error('Ошибка при получении действий:', err) error.value = 'Не удалось загрузить список действий' } finally { loading.value = false } } return { availableActions, loading, error, loadActions, } }