Files
cinny/src/app/hooks/useAccountData.ts
T

25 lines
686 B
TypeScript
Raw Normal View History

import { MatrixEvent } from 'matrix-js-sdk';
import { useState, useCallback } from 'react';
import { useMatrixClient } from './useMatrixClient';
import { useAccountDataCallback } from './useAccountDataCallback';
import { getAccountData } from '../utils/room';
export function useAccountData(eventType: string): MatrixEvent | undefined {
const mx = useMatrixClient();
2026-07-11 13:52:36 -04:00
const [event, setEvent] = useState<MatrixEvent | undefined>(() => getAccountData(mx, eventType));
useAccountDataCallback(
mx,
useCallback(
(evt) => {
if (evt.getType() === eventType) {
setEvent(evt);
}
},
[eventType, setEvent],
),
);
return event;
}