fix: use private helcimApiToken for all server-side Helcim API calls

This commit is contained in:
Jennie Robinson Faber 2026-04-04 13:37:34 +01:00
parent ccd1d0783a
commit d31b5b4dac
53 changed files with 1755 additions and 572 deletions

View file

@ -1,17 +1,29 @@
<template>
<aside class="events-mini">
<div class="em-label">Upcoming</div>
<div v-for="event in events" :key="event._id" class="em-item">
<span class="em-date">{{ formatDate(event.date) }}</span>
<NuxtLink :to="`/events/${event._id}`" class="em-title">{{ event.title }}</NuxtLink>
<span
v-if="event.circle"
class="em-circle"
:style="{ color: `var(--c-${event.circle})` }"
>{{ event.circle }}</span>
<div class="em-inset">
<div class="em-label">Upcoming</div>
</div>
<div v-if="events?.length" class="em-rows">
<div v-for="event in events" :key="event._id" class="em-item">
<div class="em-inset em-item-body">
<span class="em-date">{{ formatDate(event.date) }}</span>
<NuxtLink :to="`/events/${event._id}`" class="em-title">{{ event.title }}</NuxtLink>
<span
v-if="event.circle"
class="em-circle"
:style="{ color: `var(--c-${event.circle})` }"
>{{ event.circle }}</span>
</div>
</div>
</div>
<div v-else class="em-rows">
<div class="em-item em-item--plain">
<div class="em-inset em-empty">No upcoming events</div>
</div>
</div>
<div class="em-inset em-link-wrap">
<NuxtLink to="/events" class="em-link">All events &rarr;</NuxtLink>
</div>
<div v-if="!events?.length" class="em-empty">No upcoming events</div>
<NuxtLink to="/events" class="em-link">All events &rarr;</NuxtLink>
</aside>
</template>
@ -29,9 +41,17 @@ const formatDate = (dateStr) => {
<style scoped>
.events-mini {
padding: 24px 20px;
border-left: 1px dashed var(--border);
box-sizing: border-box;
align-self: stretch;
height: 100%;
min-height: 100%;
padding: 24px 0;
border-left: 1px dashed var(--border);
}
.em-inset {
padding-left: 20px;
padding-right: 20px;
}
.em-label {
@ -43,14 +63,23 @@ const formatDate = (dateStr) => {
}
.em-item {
padding: 8px 0;
border-bottom: 1px dashed var(--border);
}
.em-item:last-child {
.em-rows .em-item:last-child {
border-bottom: none;
}
.em-item-body {
padding-top: 8px;
padding-bottom: 8px;
}
.em-item--plain .em-empty {
padding-top: 8px;
padding-bottom: 8px;
}
.em-date {
font-size: 11px;
color: var(--text-faint);
@ -77,9 +106,12 @@ const formatDate = (dateStr) => {
display: inline-block;
}
.em-link {
display: block;
.em-link-wrap {
margin-top: 12px;
}
.em-link {
display: inline-block;
font-size: 11px;
color: var(--candle);
}
@ -87,7 +119,6 @@ const formatDate = (dateStr) => {
.em-empty {
font-size: 11px;
color: var(--text-faint);
padding: 8px 0;
}
@media (max-width: 1024px) {