feat: ШАГ 4 — UI для browser events в TodayScreen
Go bindings: - bindings_browser.go: ListBrowserEvents, CountPendingBrowserEvents, AcceptBrowserEvent, DismissBrowserEvent, AttachBrowserEventToNode Frontend: - BrowserEvents.svelte — компонент списка событий с действиями (принять/прикрепить/удалить), статусы, домены, длительность - TodayScreen.svelte — новая вкладка «Браузер» с badge - App.svelte — loadBrowserEvents, acceptBrowserEvent, dismissBrowserEvent, attachBrowserEvent handlers
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
<script>
|
||||
import { t } from './i18n'
|
||||
import BrowserEvents from './BrowserEvents.svelte'
|
||||
|
||||
export let todayDashboard = null
|
||||
export let suggestions = []
|
||||
@@ -22,6 +23,14 @@
|
||||
export let onOpenInboxArtifact = (item) => {}
|
||||
export let onOpenTrashNode = (nodeId) => {}
|
||||
|
||||
// Browser events
|
||||
export let browserEvents = []
|
||||
export let browserLoading = false
|
||||
export let onBrowserAccept = (ev) => {}
|
||||
export let onBrowserDismiss = (ev) => {}
|
||||
export let onBrowserAttach = (ev) => {}
|
||||
export let onBrowserRefresh = () => {}
|
||||
|
||||
let activeTab = 'feed'
|
||||
|
||||
function pluralize(n, one, few, many) {
|
||||
@@ -172,6 +181,10 @@
|
||||
{t('today.captured')}
|
||||
{#if todayCaptures.length > 0}<span class="tab-badge">{todayCaptures.length}</span>{/if}
|
||||
</button>
|
||||
<button class="today-tab" class:active={activeTab === 'browser'} on:click={() => activeTab = 'browser'}>
|
||||
Браузер
|
||||
{#if browserEvents.length > 0}<span class="tab-badge">{browserEvents.length}</span>{/if}
|
||||
</button>
|
||||
</div>
|
||||
|
||||
{#if activeTab === 'feed'}
|
||||
@@ -328,6 +341,18 @@
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
{:else if activeTab === 'browser'}
|
||||
<div class="today-tab-content">
|
||||
<BrowserEvents
|
||||
events={browserEvents}
|
||||
loading={browserLoading}
|
||||
{formatTime}
|
||||
onAccept={onBrowserAccept}
|
||||
onDismiss={onBrowserDismiss}
|
||||
onAttach={onBrowserAttach}
|
||||
onRefresh={onBrowserRefresh}
|
||||
/>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user