diff options
Diffstat (limited to 'src/utils/hooks/use-comments.tsx')
| -rw-r--r-- | src/utils/hooks/use-comments.tsx | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/utils/hooks/use-comments.tsx b/src/utils/hooks/use-comments.tsx index f430f19..9076888 100644 --- a/src/utils/hooks/use-comments.tsx +++ b/src/utils/hooks/use-comments.tsx @@ -8,18 +8,25 @@ import { Comment } from '@ts/types/app'; import { RawComment } from '@ts/types/raw-data'; import useSWR from 'swr'; +export type UseCommentsConfig = { + contentId?: string | number; + fallback?: Comment[]; +}; + /** * Retrieve the comments of a page/article. * * @param {string | number} contentId - A page/article id. * @returns {Comment[]|undefined} */ -const useComments = ( - contentId: string | number, - fallback?: Comment[] -): Comment[] | undefined => { +const useComments = ({ + contentId, + fallback, +}: UseCommentsConfig): Comment[] | undefined => { const { data } = useSWR( - { api: getAPIUrl(), query: commentsQuery, variables: { contentId } }, + contentId + ? { api: getAPIUrl(), query: commentsQuery, variables: { contentId } } + : null, fetchAPI<RawComment, typeof commentsQuery> ); |
