misskey/packages/frontend/src/directives/ripple.ts
2024-02-13 15:59:27 +00:00

24 lines
582 B
TypeScript

/*
* SPDX-FileCopyrightText: syuilo and misskey-project
* SPDX-License-Identifier: AGPL-3.0-only
*/
import MkRippleEffect from '@/components/MkRippleEffect.vue';
import { popup } from '@/os.js';
export default {
mounted(el, binding, vn) {
// 明示的に false であればバインドしない
if (binding.value === false) return;
el.addEventListener('click', () => {
const rect = el.getBoundingClientRect();
const x = rect.left + (el.offsetWidth / 2);
const y = rect.top + (el.offsetHeight / 2);
popup(MkRippleEffect, { x, y }, {}, 'end');
});
},
};