each keys

This commit is contained in:
vcoppe committed 2026-10-31 15:30:11 +01:00
1 parent c778766293
commit 46563ef283
13 files changed
+17 -17

No files matched your search

@@ -16,7 +16,7 @@
</span> </span>
</Select.Trigger> </Select.Trigger>
<Select.Content> <Select.Content>
{#each Object.entries(languages) as [lang, label]} {#each Object.entries(languages) as [lang, label] (lang)}
{#if page.url.pathname.includes('404')} {#if page.url.pathname.includes('404')}
<a href={resolve(getURLForLanguage(lang, '/'))}> <a href={resolve(getURLForLanguage(lang, '/'))}>
<Select.Item value={lang}>{label}</Select.Item> <Select.Item value={lang}>{label}</Select.Item>
+1 -1
View File
@@ -527,7 +527,7 @@
</Menubar.SubTrigger> </Menubar.SubTrigger>
<Menubar.SubContent> <Menubar.SubContent>
<Menubar.RadioGroup value={i18n.lang}> <Menubar.RadioGroup value={i18n.lang}>
{#each Object.entries(languages) as [lang, label]} {#each Object.entries(languages) as [lang, label] (lang)}
<a href={resolve(getURLForLanguage(lang, '/app'))}> <a href={resolve(getURLForLanguage(lang, '/app'))}>
<Menubar.RadioItem value={lang}>{label}</Menubar.RadioItem> <Menubar.RadioItem value={lang}>{label}</Menubar.RadioItem>
</a> </a>
@@ -115,7 +115,7 @@
{i18n._(`layers.label.${options.basemap}`)} {i18n._(`layers.label.${options.basemap}`)}
</Select.Trigger> </Select.Trigger>
<Select.Content class="max-h-60 overflow-y-scroll"> <Select.Content class="max-h-60 overflow-y-scroll">
{#each allowedEmbeddingBasemaps as basemap} {#each allowedEmbeddingBasemaps as basemap (basemap)}
<Select.Item value={basemap} <Select.Item value={basemap}
>{i18n._(`layers.label.${basemap}`)}</Select.Item >{i18n._(`layers.label.${basemap}`)}</Select.Item
> >
@@ -43,7 +43,7 @@
</AlertDialog.Description> </AlertDialog.Description>
</AlertDialog.Header> </AlertDialog.Header>
<ul class="list-disc pl-6 text-sm max-h-40 overflow-y-auto"> <ul class="list-disc pl-6 text-sm max-h-40 overflow-y-auto">
{#each prompt.names as name} {#each prompt.names as name, i (i)}
<li>{name}</li> <li>{name}</li>
{/each} {/each}
</ul> </ul>
@@ -364,7 +364,7 @@
<Label for="name">{i18n._('menu.metadata.name')}</Label> <Label for="name">{i18n._('menu.metadata.name')}</Label>
<Input bind:value={name} id="name" class="h-8" /> <Input bind:value={name} id="name" class="h-8" />
<Label for="url">{i18n._('layers.custom_layers.urls')}</Label> <Label for="url">{i18n._('layers.custom_layers.urls')}</Label>
{#each tileUrls as _, i} {#each tileUrls as _, i (i)}
<div class="flex flex-row gap-2"> <div class="flex flex-row gap-2">
<Input <Input
bind:value={tileUrls[i]} bind:value={tileUrls[i]}
@@ -178,7 +178,7 @@
{/if} {/if}
</Select.Trigger> </Select.Trigger>
<Select.Content class="h-fit max-h-[40dvh] overflow-y-auto"> <Select.Content class="h-fit max-h-[40dvh] overflow-y-auto">
{#each Object.keys(overlays) as id} {#each Object.keys(overlays) as id (id)}
{#if isSelected($selectedOverlayTree, id)} {#if isSelected($selectedOverlayTree, id)}
<Select.Item value={id}> <Select.Item value={id}>
{#if $isLayerFromExtension(id)} {#if $isLayerFromExtension(id)}
@@ -189,7 +189,7 @@
</Select.Item> </Select.Item>
{/if} {/if}
{/each} {/each}
{#each Object.entries($customLayers) as [id, layer]} {#each Object.entries($customLayers) as [id, layer] (id)}
{#if layer.layerType === 'overlay'} {#if layer.layerType === 'overlay'}
<Select.Item value={id}>{layer.name}</Select.Item> <Select.Item value={id}>{layer.name}</Select.Item>
{/if} {/if}
@@ -247,7 +247,7 @@
{i18n._(`layers.label.${$terrainSource}`)} {i18n._(`layers.label.${$terrainSource}`)}
</Select.Trigger> </Select.Trigger>
<Select.Content class="h-fit max-h-[40dvh] overflow-y-auto"> <Select.Content class="h-fit max-h-[40dvh] overflow-y-auto">
{#each Object.keys(terrainSources) as id} {#each Object.keys(terrainSources) as id (id)}
<Select.Item value={id}> <Select.Item value={id}>
{i18n._(`layers.label.${id}`)} {i18n._(`layers.label.${id}`)}
</Select.Item> </Select.Item>
@@ -44,7 +44,7 @@
</script> </script>
<div class="flex flex-col gap-[3px]"> <div class="flex flex-col gap-[3px]">
{#each Object.keys(node) as id} {#each Object.keys(node) as id (id)}
{#if typeof node[id] == 'boolean'} {#if typeof node[id] == 'boolean'}
{#if node[id]} {#if node[id]}
<div class="flex flex-row items-center gap-2 first:mt-0.5 h-4"> <div class="flex flex-row items-center gap-2 first:mt-0.5 h-4">
@@ -79,7 +79,7 @@
</div> </div>
{/if} {/if}
<div class="grid grid-cols-[auto_auto] gap-x-3"> <div class="grid grid-cols-[auto_auto] gap-x-3">
{#each Object.entries(tags) as [key, value]} {#each Object.entries(tags) as [key, value] (key)}
{#if key !== 'name' && !key.includes('image')} {#if key !== 'name' && !key.includes('image')}
<span class="font-mono">{key}</span> <span class="font-mono">{key}</span>
{#if key === 'website' || key.startsWith('website:') || key.endsWith(':website') || key === 'contact:facebook' || key === 'contact:instagram' || key === 'contact:twitter'} {#if key === 'website' || key.startsWith('website:') || key.endsWith(':website') || key === 'contact:facebook' || key === 'contact:instagram' || key === 'contact:twitter'}
@@ -130,7 +130,7 @@
{i18n._(`toolbar.routing.activities.${$routingProfile}`)} {i18n._(`toolbar.routing.activities.${$routingProfile}`)}
</Select.Trigger> </Select.Trigger>
<Select.Content> <Select.Content>
{#each Object.keys(routingProfiles) as profile} {#each Object.keys(routingProfiles) as profile (profile)}
<Select.Item value={profile} <Select.Item value={profile}
>{i18n._( >{i18n._(
`toolbar.routing.activities.${profile}` `toolbar.routing.activities.${profile}`
@@ -131,7 +131,7 @@
{i18n._('gpx.' + $splitAs)} {i18n._('gpx.' + $splitAs)}
</Select.Trigger> </Select.Trigger>
<Select.Content> <Select.Content>
{#each splitTypes as splitType} {#each splitTypes as splitType (splitType)}
<Select.Item value={splitType}>{i18n._('gpx.' + splitType)}</Select.Item> <Select.Item value={splitType}>{i18n._('gpx.' + splitType)}</Select.Item>
{/each} {/each}
</Select.Content> </Select.Content>
@@ -212,7 +212,7 @@
</span> </span>
</Select.Trigger> </Select.Trigger>
<Select.Content class="max-h-60"> <Select.Content class="max-h-60">
{#each sortedSymbols as [key, symbol]} {#each sortedSymbols as [key, symbol] (key)}
<Select.Item value={symbol.value}> <Select.Item value={symbol.value}>
<span> <span>
{#if symbol.icon} {#if symbol.icon}
@@ -25,7 +25,7 @@
<div class="mb-2"> <div class="mb-2">
<AlgoliaDocSearch /> <AlgoliaDocSearch />
</div> </div>
{#each Object.keys(guides) as guide} {#each Object.keys(guides) as guide (guide)}
<Button <Button
variant="link" variant="link"
href={resolve(getURLForLanguage(i18n.lang, `/help/${guide}`))} href={resolve(getURLForLanguage(i18n.lang, `/help/${guide}`))}
@@ -36,7 +36,7 @@
> >
{data.guideTitles[guide]} {data.guideTitles[guide]}
</Button> </Button>
{#each guides[guide] as subGuide} {#each guides[guide] as subGuide (subGuide)}
<Button <Button
variant="link" variant="link"
href={resolve(getURLForLanguage(i18n.lang, `/help/${guide}/${subGuide}`))} href={resolve(getURLForLanguage(i18n.lang, `/help/${guide}/${subGuide}`))}
@@ -15,7 +15,7 @@
</script> </script>
<div class="grid grid-cols-1 sm:grid-cols-2 gap-3"> <div class="grid grid-cols-1 sm:grid-cols-2 gap-3">
{#each Object.keys(guides) as guide} {#each Object.keys(guides) as guide (guide)}
<Button <Button
variant="outline" variant="outline"
href={resolve(getURLForLanguage(i18n.lang, `/help/${guide}`))} href={resolve(getURLForLanguage(i18n.lang, `/help/${guide}`))}
@@ -29,7 +29,7 @@
{data.guideTitles[guide]} {data.guideTitles[guide]}
</div> </div>
<div class="flex flex-row justify-center flex-wrap gap-x-6 px-6"> <div class="flex flex-row justify-center flex-wrap gap-x-6 px-6">
{#each guides[guide] as subGuide} {#each guides[guide] as subGuide (subGuide)}
<Button <Button
variant="link" variant="link"
href={resolve( href={resolve(