Remove manual token input from Telegram targets
Some checks failed
Validate / Hassfest (push) Has been cancelled

Telegram targets now require a registered bot (no manual token
fallback). Shows link to /telegram-bots page when no bots exist.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-19 17:48:09 +03:00
parent cf987cbfb4
commit 4b01a4b371

View File

@@ -121,24 +121,19 @@
<input id="tgt-name" bind:value={form.name} required placeholder={t('targets.namePlaceholder')} class="w-full px-3 py-2 border border-[var(--color-border)] rounded-md text-sm bg-[var(--color-background)]" />
</div>
{#if formType === 'telegram'}
<!-- Bot selector -->
<!-- Bot selector (required) -->
<div>
<label for="tgt-bot" class="block text-sm font-medium mb-1">{t('telegramBot.selectBot')}</label>
<select id="tgt-bot" bind:value={form.bot_id} onchange={loadBotChats}
<select id="tgt-bot" bind:value={form.bot_id} onchange={loadBotChats} required
class="w-full px-3 py-2 border border-[var(--color-border)] rounded-md text-sm bg-[var(--color-background)]">
<option value={0}> Manual token </option>
<option value={0} disabled>{t('telegramBot.selectBot')}</option>
{#each bots as bot}<option value={bot.id}>{bot.name} (@{bot.bot_username})</option>{/each}
</select>
{#if bots.length === 0}
<p class="text-xs text-[var(--color-muted-foreground)] mt-1">{t('telegramBot.noBots')} <a href="/telegram-bots" class="underline"></a></p>
{/if}
</div>
{#if !form.bot_id}
<!-- Manual token input (fallback) -->
<div>
<label for="tgt-token" class="block text-sm font-medium mb-1">{t('targets.botToken')}</label>
<input id="tgt-token" bind:value={form.bot_token} required type="password" class="w-full px-3 py-2 border border-[var(--color-border)] rounded-md text-sm bg-[var(--color-background)]" />
</div>
{/if}
<!-- Chat selector -->
<div>
<label for="tgt-chat" class="block text-sm font-medium mb-1">{t('telegramBot.selectChat')}</label>