Files
tickte-system/src/components/PreviewLinkButton.jsx
T

44 lines
1.2 KiB
React

import { FaEye } from 'react-icons/fa6'
import { createPreviewLink } from '../lib/teamApi'
import { openInNewTab } from '../lib/openInNewTab'
// Mit subdomain holt der Knopf einen Einmal-Link vom Portal (Mitarbeiter sind dort nicht mehr angemeldet);
// ohne subdomain bleibt er ein einfacher Link.
export default function PreviewLinkButton({ href, subdomain, title = 'Preview oeffnen', size = 16 }) {
if (!href) return null
const open = (event) => {
if (!subdomain) return
event.preventDefault()
openInNewTab(() => createPreviewLink({ subdomain, previewUrl: href })).catch((err) =>
window.alert(err.message || 'Die Preview konnte nicht geöffnet werden.')
)
}
return (
<a
href={href}
onClick={open}
target="_blank"
rel="noopener noreferrer"
title={title}
aria-label={title}
style={{
display: 'inline-flex',
alignItems: 'center',
justifyContent: 'center',
width: 32,
height: 32,
borderRadius: 6,
background: 'rgba(16, 185, 129, 0.15)',
border: '1px solid rgba(16, 185, 129, 0.35)',
color: '#34d399',
textDecoration: 'none',
flexShrink: 0,
}}
>
<FaEye size={size} />
</a>
)
}