{ let input = item.cardData.href?.trim(); if (!input) return; let username: string | undefined; try { const parsed = new URL(input); if (/^(www\.)?last\.fm$/.test(parsed.hostname)) { const segments = parsed.pathname.split('/').filter(Boolean); if (segments.length >= 2 && segments[0] === 'user') { username = segments[1]; } } } catch { if (/^[a-zA-Z0-9_-]{2,15}$/.test(input)) { username = input; } } if (!username) { errorMessage = 'Please enter a valid Last.fm username or profile URL'; return; } item.cardData.lastfmUsername = username; item.cardData.href = `https://www.last.fm/user/${username}`; oncreate?.(); }} class="flex flex-col gap-2" > Enter a Last.fm username or profile URL {#if errorMessage}

{errorMessage}

{/if}