diff --git a/src/hooks/useLinks.hook.ts b/src/hooks/useLinks.hook.ts index 69ec8b1..34efb4e 100644 --- a/src/hooks/useLinks.hook.ts +++ b/src/hooks/useLinks.hook.ts @@ -1,24 +1,24 @@ -import { ComputedRef, onUnmounted, Ref, toValue } from 'vue' +import { ComputedRef, onUnmounted, Ref, toValue } from "vue" -import { noteEventBus } from '@/bus/noteEventBus' -import { useUserRepoStore } from '@/modules/repo/store/userRepo.store' -import { isExternalLink } from '@/utils/link' +import { noteEventBus } from "@/bus/noteEventBus" +import { useUserRepoStore } from "@/modules/repo/store/userRepo.store" +import { isExternalLink } from "@/utils/link" export const useLinks = ( className: ComputedRef | string, - sha?: Ref | string + sha?: Ref | string, ) => { const store = useUserRepoStore() const linkNote: EventListener = (event) => { const target = event.target as HTMLElement - const href = target.getAttribute('href') + const href = target.getAttribute("href") if (!href) { return } - if (href.startsWith('#')) { + if (href.startsWith("#")) { return } @@ -26,7 +26,7 @@ export const useLinks = ( event.stopPropagation() if (isExternalLink(href)) { - window.open(href, '_blank') + window.open(href, "_blank") return } @@ -34,38 +34,38 @@ export const useLinks = ( path: href, currentNoteSHA: toValue(sha), user: store.user, - repo: store.repo + repo: store.repo, }) } - const selector = `.${toValue(className)} a` + const LINK_SELECTOR = `.${toValue(className)} a` const removeListeners = () => { - const elements = document.querySelectorAll(selector) + const elements = document.querySelectorAll(LINK_SELECTOR) elements.forEach((element) => { - element.removeEventListener('click', linkNote) + element.removeEventListener("click", linkNote) }) } const listenToClick = () => { removeListeners() - const elements = document.querySelectorAll(selector) + const elements = document.querySelectorAll(LINK_SELECTOR) elements.forEach((element) => { - const href = element.getAttribute('href') + const href = element.getAttribute("href") if (!href) { return } if (isExternalLink(href)) { - element.classList.add('external-link') + element.classList.add("external-link") } }) elements.forEach((element) => { - element.addEventListener('click', linkNote) + element.addEventListener("click", linkNote) }) } @@ -74,6 +74,6 @@ export const useLinks = ( }) return { - listenToClick + listenToClick, } }