prices: fold groceries and CS skins into one price tracker (/trackers/prices) with tabs
Deploy production / deploy (push) Successful in 1m30s
Deploy production / deploy (push) Successful in 1m30s
- tab registry in #lib/price-trackers (add a tab = route + entry + icon) - groceries -> /trackers/prices/groceries (owner-only), CS prices -> /trackers/prices/cs (public) - old /trackers/groceries/* and /projects/cs-prices/* redirect (301 GET, 308 POST) with query - nav: one prices entry replaces groceries and skins; cyan price-tag icon
This commit is contained in:
1 parent
c175c25615
commit
81b0c51672
29 files changed
+163
-28
No files matched your search
@@ -0,0 +1,14 @@
|
||||
<script lang="ts">
|
||||
// One price tracker, a tab per thing (#lib/price-trackers). Each tab keeps its own page,
|
||||
// loader and data; this only adds the tab bar. Private tabs are only listed for me.
|
||||
import { page } from '$app/state';
|
||||
import Tag from 'lucide-svelte/icons/tag';
|
||||
import SpottingSwitcher from '#lib/components/SpottingSwitcher.svelte';
|
||||
import { visiblePriceTabs } from '#lib/price-trackers.js';
|
||||
|
||||
let { children } = $props();
|
||||
const tabs = $derived(visiblePriceTabs(Boolean(page.data.isOwner)));
|
||||
</script>
|
||||
|
||||
<SpottingSwitcher items={tabs} home="/trackers/prices" label="prices" homeIcon={Tag} />
|
||||
{@render children()}
|
||||
Reference in new issue
Block a user