{#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} {@render icon?.()} {:else if type === "icon" && icon} {@const Icon = icon} {:else} {@const Icon = ExternalLink} {/if} {/snippet} {@render externalLink({ iconData, linkData, textData })}