Files
svelte-carousel/src/actions/pausable/pausable.js
2021-08-08 11:59:39 +03:00

31 lines
596 B
JavaScript

import {
createDispatcher,
getIsTouchable,
} from '../../utils/event'
import { focusable } from '../focusable'
import { tappable } from '../tappable'
export function pausable(node) {
const dispatch = createDispatcher(node)
if (getIsTouchable()) {
return tappable(node, {
dispatch: (_, payload) => {
dispatch('pausedToggle', {
isTouchable: true,
...payload
})
}
})
}
return focusable(node, {
dispatch: (_, payload) => {
dispatch('pausedToggle', {
isTouchable: false,
...payload
})
}
})
}