diff --git a/src/components/HelloWorld.vue b/src/components/HelloWorld.vue deleted file mode 100644 index ca2337c..0000000 --- a/src/components/HelloWorld.vue +++ /dev/null @@ -1,184 +0,0 @@ - - - - - diff --git a/src/hooks/useLinks.hook.ts b/src/hooks/useLinks.hook.ts new file mode 100644 index 0000000..502977f --- /dev/null +++ b/src/hooks/useLinks.hook.ts @@ -0,0 +1,28 @@ +export const useLinks = (className: string) => { + const linkNote: EventListenerOrEventListenerObject = (e) => { + e.preventDefault() + console.log('use links') + } + + const selector = `.${className} a` + + const removeListeners = () => { + const elements = document.querySelectorAll(selector) + elements.forEach((element) => { + element.removeEventListener('click', linkNote) + }) + } + + const listenToClick = () => { + removeListeners() + const elements = document.querySelectorAll(selector) + elements.forEach((element) => { + element.addEventListener('click', linkNote) + }) + } + + return { + listenToClick, + removeListeners + } +} diff --git a/src/hooks/useRepo.hook.ts b/src/hooks/useRepo.hook.ts new file mode 100644 index 0000000..90fabc7 --- /dev/null +++ b/src/hooks/useRepo.hook.ts @@ -0,0 +1,50 @@ +import { onMounted, ref } from '@vue/runtime-core' + +import MarkdownIt from 'markdown-it' +import { request } from '@octokit/request' + +const md = new MarkdownIt() + +export const useRepo = (owner: string, repo: string) => { + const readme = ref(null) + + onMounted(async () => { + const README = await request('GET /repos/{owner}/{repo}/readme', { + repo, + owner + }) + + if (README) { + readme.value = md.render( + decodeURIComponent(escape(atob(README.data.content))) + ) + } + + const commits = await request('GET /repos/{owner}/{repo}/commits', { + owner, + repo + }) + + const lastCommit = commits.data.shift() + + if (!lastCommit) { + return + } + + const tree = await request( + 'GET /repos/{owner}/{repo}/git/trees/{tree_sha}', + { + owner, + repo, + tree_sha: lastCommit.commit.tree.sha, + recursive: 'true' + } + ) + + console.log(tree.data.tree.filter((t) => t.type === 'blob')) + }) + + return { + readme + } +} diff --git a/src/styles/app.scss b/src/styles/app.scss index e7895aa..d3f02bb 100644 --- a/src/styles/app.scss +++ b/src/styles/app.scss @@ -6,3 +6,19 @@ body { text-align: center; min-height: 100vh; } + +h1 { + font-size: 3rem; +} + +h2 { + font-size: 2.5rem; +} + +h3 { + font-size: 2rem; +} + +h4 { + font-size: 1.5rem; +} diff --git a/src/views/Home.vue b/src/views/Home.vue index ebc6da3..c976c60 100644 --- a/src/views/Home.vue +++ b/src/views/Home.vue @@ -1,18 +1,35 @@