|
import { computed } from 'vue' |
|
import { storeToRefs } from 'pinia' |
|
import { useSlidesStore } from '@/store' |
|
import { SLIDE_ANIMATIONS } from '@/configs/animation' |
|
|
|
export default () => { |
|
const { slides } = storeToRefs(useSlidesStore()) |
|
|
|
const slidesWithTurningMode = computed(() => { |
|
return slides.value.map(slide => { |
|
let turningMode = slide.turningMode |
|
if (!turningMode) turningMode = 'slideY' |
|
if (turningMode === 'random') { |
|
const turningModeKeys = SLIDE_ANIMATIONS.filter(item => !['random', 'no'].includes(item.value)).map(item => item.value) |
|
turningMode = turningModeKeys[Math.floor(Math.random() * turningModeKeys.length)] |
|
} |
|
return { |
|
...slide, |
|
turningMode, |
|
} |
|
}) |
|
}) |
|
|
|
return { |
|
slidesWithTurningMode, |
|
} |
|
} |