misskey/src/client/app/common/views/directives/particle.ts
Aya Morisawa 6943c7d2d8
Resolve #3770
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2018-12-27 22:54:50 +09:00

26 lines
544 B
TypeScript

import Particle from '../components/particle.vue';
export default {
bind(el, binding, vn) {
if (vn.context.$store.state.device.reduceMotion) return;
el.addEventListener('click', () => {
if (binding.value === false) return;
const rect = el.getBoundingClientRect();
const x = rect.left + (el.clientWidth / 2);
const y = rect.top + (el.clientHeight / 2);
const particle = new Particle({
parent: vn.context,
propsData: {
x,
y
}
}).$mount();
document.body.appendChild(particle.$el);
});
}
};