Files
ncd-fe/packages/pl-fe/src/components/quoted-status-indicator.tsx
nicole mikołajczyk 9f98b5b07d nicolium: oxlint and oxfmt migration, remove eslint
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2026-02-15 13:30:55 +01:00

38 lines
1017 B
TypeScript

import React, { useCallback } from 'react';
import HStack from '@/components/ui/hstack';
import Icon from '@/components/ui/icon';
import Text from '@/components/ui/text';
import { useAppSelector } from '@/hooks/use-app-selector';
import { makeGetStatus } from '@/selectors';
interface IQuotedStatusIndicator {
/** The quoted status id. */
statusId?: string;
/** The quoted status URL. */
statusUrl?: string;
}
const QuotedStatusIndicator: React.FC<IQuotedStatusIndicator> = ({ statusId, statusUrl }) => {
const getStatus = useCallback(makeGetStatus(), []);
statusUrl = useAppSelector(
(state) => statusUrl ?? (statusId && getStatus(state, { id: statusId })?.url),
);
if (!statusUrl) return null;
return (
<HStack alignItems='center' space={1}>
<Icon
className='size-5'
src={require('@phosphor-icons/core/regular/quotes.svg')}
aria-hidden
/>
<Text truncate>{statusUrl}</Text>
</HStack>
);
};
export { QuotedStatusIndicator as default };