From 70ebc77f843207a1d4b46c8d960dafbff37e7e2e Mon Sep 17 00:00:00 2001
From: Leonardo Bishop <me@leonardobishop.com>
Date: Fri, 17 Jan 2025 13:42:21 +0000
Subject: Initial commit

---
 pages/tracks/index.vue | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)
 create mode 100644 pages/tracks/index.vue

(limited to 'pages/tracks/index.vue')

diff --git a/pages/tracks/index.vue b/pages/tracks/index.vue
new file mode 100644
index 0000000..35641ab
--- /dev/null
+++ b/pages/tracks/index.vue
@@ -0,0 +1,49 @@
+<script setup lang="ts">
+import Panel from '~/components/Panel.vue';
+
+const scheduleStore = useScheduleStore();
+</script>
+
+<template>
+  <Panel v-if="scheduleStore.schedule">
+    <h2 class="tracks-title">Tracks</h2>
+    <ul class="tracks-list">
+      <li 
+        v-for="track in scheduleStore.schedule.tracks" 
+        :key="track.name" 
+        class="tracks-item"
+      >
+        <NuxtLink :to="'/tracks/' +  track.slug" class="track-item">
+          {{ track.name }}
+        </NuxtLink>
+      </li>
+    </ul>
+  </Panel>    
+</template>
+
+<style scoped>
+.tracks-list {
+  list-style: none;
+  margin: 0.5rem 0 0 0;
+  padding: 0;
+  display: grid;
+}
+          
+.track-item {
+  position: relative;
+  border-bottom: 1px solid var(--color-background-muted); 
+  padding: 0.5rem 1rem;
+  left: -1rem;
+  width: calc(100%);
+  display: block;
+  text-decoration: none;
+}
+
+.track-item:last-child {
+  border-bottom: none; 
+}
+
+.track-item:hover {
+  background-color: var(--color-background-muted);
+}
+</style>
\ No newline at end of file
-- 
cgit v1.2.3-70-g09d2

