export function ignoreClick (e) { return (e.target.onclick || // the target has a click handler // the target has an interactive parent e.target.matches(':where(.upvoteParent, .pointer, a, form, textarea, button, input) :scope') || // the target is an interactive element ['TEXTAREA', 'BUTTON', 'INPUT', 'A', 'FORM'].includes(e.target.tagName.toUpperCase()) || // the target is an interactive element e.target.class === 'upvoteParent' || e.target.class === 'pointer' || // the click is caused by a selection window.getSelection()?.toString()) }