Skip to content

Commit

Permalink
feat(vuehorizontaltimeline): introduced two new fields on the timelin…
Browse files Browse the repository at this point in the history
…e item to add custom styles

The VueHorizontalTimeline component now manages two new timeline item fields: stepCssClass and
boxCssClass. These can be used to customize a single item of the timeline

fix #76
  • Loading branch information
leobia committed Aug 10, 2021
1 parent 36e5113 commit ab1adae
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 3 deletions.
14 changes: 12 additions & 2 deletions src/components/VueHorizontalTimeline.vue
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@
v-for="(item, i) in items"
:key="i"
:style="setLineColor"
:class="{'add-step': $scopedSlots.default || item[titleAttr] || item[contentAttr]}"
:class="[{'add-step': $scopedSlots.default || item[titleAttr] || item[contentAttr]}, item.stepCssClass]"
>
<div
v-if="$scopedSlots.default || item[titleAttr] || item[contentAttr]"
class="time"
:class="getTimeClass(item)"
:class="[getTimeClass(item), item.boxCssClass]"
:style="getTimeStyles" @click="cardClicked(item)"
>
<slot v-if="$scopedSlots.default" v-bind:item="item"/>
Expand Down Expand Up @@ -182,3 +182,13 @@ export default {
</script>

<style src="../assets/css/style.min.css" scoped></style>

<style>
.has-color-red {
color: red !important;
}
.has-step-green::after {
background: green !important;
}
</style>
4 changes: 3 additions & 1 deletion stories/index.stories.js
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,9 @@ export const Default = () => {
const label1 = 'Object 1'
const defaultValue1 = {
title: 'Title example 1',
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut ex dolor, malesuada luctus scelerisque ac, auctor vitae risus. Vivamus risus dolor, faucibus a bibendum quis, facilisis eget odio. Nullam non condimentum orci, a cursus magna. Suspendisse tempor rutrum eros, non pellentesque odio commodo eu. Donec at volutpat enim. Vivamus mattis volutpat urna, sit amet vulputate mauris sollicitudin et. Proin consequat at dolor in sodales. Vestibulum vel porta turpis. Pellentesque sollicitudin justo est, ut dapibus felis luctus mollis. Suspendisse feugiat, metus ut auctor dictum, nulla dui fringilla nisl, a pulvinar ipsum justo non lacus. Integer vestibulum sapien metus, et congue felis efficitur iaculis. Aliquam et mi quis nulla molestie elementum. Vestibulum in nibh nibh.'
content: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut ex dolor, malesuada luctus scelerisque ac, auctor vitae risus. Vivamus risus dolor, faucibus a bibendum quis, facilisis eget odio. Nullam non condimentum orci, a cursus magna. Suspendisse tempor rutrum eros, non pellentesque odio commodo eu. Donec at volutpat enim. Vivamus mattis volutpat urna, sit amet vulputate mauris sollicitudin et. Proin consequat at dolor in sodales. Vestibulum vel porta turpis. Pellentesque sollicitudin justo est, ut dapibus felis luctus mollis. Suspendisse feugiat, metus ut auctor dictum, nulla dui fringilla nisl, a pulvinar ipsum justo non lacus. Integer vestibulum sapien metus, et congue felis efficitur iaculis. Aliquam et mi quis nulla molestie elementum. Vestibulum in nibh nibh.',
stepCssClass: 'has-step-green',
boxCssClass: 'has-color-red'
}
const value1 = object(label1, defaultValue1)

Expand Down

0 comments on commit ab1adae

Please sign in to comment.