primevue-mirror/doc/timeline/OppositeDoc.vue

99 lines
3.3 KiB
Vue
Raw Normal View History

2023-02-28 08:29:30 +00:00
<template>
<DocSectionText v-bind="$attrs">
<p>Additional content at the other side of the line can be provided with the <i>opposite</i> property.</p>
</DocSectionText>
<div class="card">
<Timeline :value="events">
<template #opposite="slotProps">
2024-05-20 12:14:38 +00:00
<small class="text-surface-500 dark:text-surface-400">{{ slotProps.item.date }}</small>
2023-02-28 08:29:30 +00:00
</template>
<template #content="slotProps">
{{ slotProps.item.status }}
</template>
</Timeline>
</div>
<DocSectionCode :code="code" />
</template>
<script>
export default {
data() {
return {
events: [
{ status: 'Ordered', date: '15/10/2020 10:30', icon: 'pi pi-shopping-cart', color: '#9C27B0' },
{ status: 'Processing', date: '15/10/2020 14:00', icon: 'pi pi-cog', color: '#673AB7' },
{ status: 'Shipped', date: '15/10/2020 16:15', icon: 'pi pi-shopping-cart', color: '#FF9800' },
{ status: 'Delivered', date: '16/10/2020 10:00', icon: 'pi pi-check', color: '#607D8B' }
],
code: {
2023-09-22 12:54:14 +00:00
basic: `
<Timeline :value="events">
2023-02-28 08:29:30 +00:00
<template #opposite="slotProps">
2024-05-20 12:14:38 +00:00
<small class="text-surface-500 dark:text-surface-400">{{slotProps.item.date}}</small>
2023-02-28 08:29:30 +00:00
</template>
<template #content="slotProps">
{{slotProps.item.status}}
</template>
2023-10-15 09:38:39 +00:00
</Timeline>
`,
2023-09-22 12:54:14 +00:00
options: `
<template>
2023-02-28 08:29:30 +00:00
<div class="card">
<Timeline :value="events">
<template #opposite="slotProps">
2024-05-20 12:14:38 +00:00
<small class="text-surface-500 dark:text-surface-400">{{slotProps.item.date}}</small>
2023-02-28 08:29:30 +00:00
</template>
<template #content="slotProps">
{{slotProps.item.status}}
</template>
</Timeline>
</div>
</template>
<script>
export default {
data() {
return {
events: [
{ status: 'Ordered', date: '15/10/2020 10:30', icon: 'pi pi-shopping-cart', color: '#9C27B0'},
{ status: 'Processing', date: '15/10/2020 14:00', icon: 'pi pi-cog', color: '#673AB7' },
{ status: 'Shipped', date: '15/10/2020 16:15', icon: 'pi pi-shopping-cart', color: '#FF9800' },
{ status: 'Delivered', date: '16/10/2020 10:00', icon: 'pi pi-check', color: '#607D8B' }
]
};
}
};
2023-10-15 09:38:39 +00:00
<\/script>
`,
2023-09-22 12:54:14 +00:00
composition: `
<template>
2023-02-28 08:29:30 +00:00
<div class="card">
<Timeline :value="events">
<template #opposite="slotProps">
2024-05-20 12:14:38 +00:00
<small class="text-surface-500 dark:text-surface-400">{{slotProps.item.date}}</small>
2023-02-28 08:29:30 +00:00
</template>
<template #content="slotProps">
{{slotProps.item.status}}
</template>
</Timeline>
</div>
</template>
<script setup>
import { ref } from "vue";
const events = ref([
{ status: 'Ordered', date: '15/10/2020 10:30', icon: 'pi pi-shopping-cart', color: '#9C27B0'},
{ status: 'Processing', date: '15/10/2020 14:00', icon: 'pi pi-cog', color: '#673AB7' },
{ status: 'Shipped', date: '15/10/2020 16:15', icon: 'pi pi-shopping-cart', color: '#FF9800' },
{ status: 'Delivered', date: '16/10/2020 10:00', icon: 'pi pi-check', color: '#607D8B' }
]);
2023-10-15 09:38:39 +00:00
<\/script>
`
2023-02-28 08:29:30 +00:00
}
};
}
};
</script>