'use client' import { useState, useTransition } from 'react' import Link from 'next/link' import { searchText } from '@/lib/i18n/shell' import { commonText } from '@/lib/i18n/common' import { deleteViewAction, saveViewAction } from './actions' /** * Ansichten: die mitgelieferten und die eigenen. * * Beide sind dasselbe — eine Suchadresse. Die mitgelieferten stehen im * Programm, weil sie von der Gegenwart abhängen („diese Woche"), die eigenen * in der Datenbank. */ export function SavedViews({ builtins, saved, currentQuery, }: { builtins: { key: string; params: string }[] saved: { id: string; name: string; query: string }[] currentQuery: string }) { const [name, setName] = useState('') const [offen, setOffen] = useState(false) const [fehler, setFehler] = useState(null) const [pending, startTransition] = useTransition() return (
{searchText.views} {builtins.map((view) => ( {searchText.builtin[view.key] ?? view.key} ))} {saved.map((view) => ( {view.name} ))} {offen ? ( setName(event.target.value)} placeholder={searchText.saveViewName} aria-label={searchText.saveViewName} maxLength={60} className="field" /> ) : ( )} {fehler ? {fehler} : null}
) }