mirror of
https://github.com/grafana/grafana.git
synced 2025-02-10 23:55:47 -06:00
* Add and configure eslint-plugin-import * Fix the lint:ts npm command * Autofix + prettier all the files * Manually fix remaining files * Move jquery code in jest-setup to external file to safely reorder imports * Resolve issue caused by circular dependencies within Prometheus * Update .betterer.results * Fix missing // @ts-ignore * ignore iconBundle.ts * Fix missing // @ts-ignore
25 lines
641 B
TypeScript
25 lines
641 B
TypeScript
import { useEffect, useState } from 'react';
|
|
|
|
import { getPlaylist } from './api';
|
|
import { Playlist } from './types';
|
|
|
|
export function usePlaylist(playlistId?: number) {
|
|
const [playlist, setPlaylist] = useState<Playlist>({ items: [], interval: '5m', name: '' });
|
|
const [loading, setLoading] = useState<boolean>(true);
|
|
|
|
useEffect(() => {
|
|
const initPlaylist = async () => {
|
|
if (!playlistId) {
|
|
setLoading(false);
|
|
return;
|
|
}
|
|
const list = await getPlaylist(playlistId);
|
|
setPlaylist(list);
|
|
setLoading(false);
|
|
};
|
|
initPlaylist();
|
|
}, [playlistId]);
|
|
|
|
return { playlist, loading };
|
|
}
|