forked from MapComplete/MapComplete
Feature: add "recently visited themes" on index page
This commit is contained in:
parent
1723f268c0
commit
4db2c86c0f
5 changed files with 47 additions and 21 deletions
|
|
@ -7,19 +7,21 @@
|
|||
import { MinimalThemeInformation } from "../../Models/ThemeConfig/ThemeConfig"
|
||||
import Translations from "../i18n/Translations"
|
||||
import Tr from "../Base/Tr.svelte"
|
||||
import { twMerge } from "tailwind-merge"
|
||||
|
||||
export let search: UIEventSource<string>
|
||||
export let search: UIEventSource<string> = new UIEventSource<string>(undefined)
|
||||
export let themes: MinimalThemeInformation[]
|
||||
export let state: { osmConnection: OsmConnection }
|
||||
|
||||
export let onlyIcons: boolean = false
|
||||
export let hasSelection: boolean = true
|
||||
</script>
|
||||
|
||||
<section class="w-full">
|
||||
<slot name="title" />
|
||||
<div class="theme-list my-2 gap-4 md:grid md:grid-flow-row md:grid-cols-2 lg:grid-cols-3">
|
||||
<div
|
||||
class={onlyIcons ? "flex gap-x-2 flex-wrap items-center justify-center" : ("theme-list my-2 gap-4 md:grid md:grid-flow-row md:grid-cols-2 lg:grid-cols-3")}>
|
||||
{#each themes as theme (theme.id)}
|
||||
<ThemeButton {theme} {state}>
|
||||
<ThemeButton {theme} {state} iconOnly={onlyIcons}>
|
||||
{#if $search && hasSelection && themes?.[0] === theme}
|
||||
<span class="thanks hidden-on-mobile" aria-hidden="true">
|
||||
<Tr t={Translations.t.general.morescreen.enterToOpen} />
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue