2023-08-27 20:12:31 +02:00
|
|
|
<script lang="ts" setup>
|
|
|
|
import _ from 'lodash';
|
|
|
|
import type { CKeyValueListItems } from './c-key-value-list.types';
|
|
|
|
|
|
|
|
const props = withDefaults(defineProps<{ items?: CKeyValueListItems }>(), { items: () => [] });
|
|
|
|
const { items } = toRefs(props);
|
|
|
|
|
|
|
|
const formattedItems = computed(() => items.value.filter(item => !_.isNil(item.value) || !item.hideOnNil));
|
|
|
|
</script>
|
|
|
|
|
|
|
|
<template>
|
2023-09-03 18:12:22 +02:00
|
|
|
<div my-5>
|
|
|
|
<div v-for="item in formattedItems" :key="item.label" flex gap-2 py-1 class="c-key-value-list__item">
|
|
|
|
<div flex-basis-180px text-right font-bold class="c-key-value-list__key">
|
2023-08-27 20:12:31 +02:00
|
|
|
{{ item.label }}
|
2023-09-03 18:12:22 +02:00
|
|
|
</div>
|
2023-08-27 20:12:31 +02:00
|
|
|
|
2023-09-03 18:12:22 +02:00
|
|
|
<c-key-value-list-item :item="item" class="c-key-value-list__value" />
|
|
|
|
</div>
|
|
|
|
</div>
|
2023-08-27 20:12:31 +02:00
|
|
|
</template>
|