{#snippet externalLink({ iconData, linkData, textData }: ExternalLinkType)}
{#if textData?.location === "top" || (textData?.location === "left" && textData?.text)}
{textData?.text}
{/if}
{#if textData?.showIcon}
{@render linkIcon(iconData ?? {})}
{/if}
{#if textData?.location === "bottom" || (textData?.location === "right" && textData?.text)}
{textData?.text}
{/if}
{/snippet}
{#snippet linkIcon({ type, icon, iconClass }: LinkIconType)}
{#if type === "svg" && icon && typeof icon === 'function' && icon.length !== undefined}
{:else if type === "icon" && icon}
{@const Icon = icon}