<template>
  <div class="text-xs text-grey" :class="props.noCentered ? 'text-left' : 'text-center'">
    <p>{{ t("copyright") }} © {{ new Date().getFullYear() }} {{ t("brandNameFormal") }}</p>
    <p v-if="services" class="flex" :class="props.noCentered ? 'justify-start' : 'justify-center'">
      <span>Powered by</span>
      <span class="flex services-list ms-1">
        <a class="service underline" v-for="item in services" :href="projects[item][1]">
          {{ projects[item][0] }}
        </a>
      </span>
    </p>
  </div>
</template>

<script setup lang="ts">
const props = defineProps<{ service?: string | string[], noCentered?: boolean }>()

const services = computed<string[]>(() => props.service instanceof Array ? (props.service ?? []) : (props.service ? [props.service] : []))

const { t } = useI18n()

const projects: { [id: string]: [string, string] } = {
  "solar-network": ["Solar Network", "https://solsynth.dev/products/solar-network"],
  "capital": ["Capital", "https://git.solsynth.dev/Goatworks/Capital"],
  "passport": ["HyperNet.Passport", "https://git.solsynth.dev/HyperNet/Passport"],
  "paperclip": ["HyperNet.Paperclip", "https://git.solsynth.dev/HyperNet/Paperclip"],
  "roadsign": ["RoadSign", "https://git.solsynth.dev/Goatworks/RoadSign"],
}
</script>

<style scoped>
.services-list .service:nth-child(n+2)::before {
  content: ", ";
}
</style>