diff --git a/content/.vuepress/client.ts b/content/.vuepress/client.ts index be18de7..716c4d3 100644 --- a/content/.vuepress/client.ts +++ b/content/.vuepress/client.ts @@ -1,7 +1,8 @@ import { defineClientConfig } from '@vuepress/client'; import ResponsiveImage from './components/ResponsiveImage.vue'; -import ListRepositories from './components/GitRepos/ListRepositories.vue'; -import GithubRepository from './components/GitRepos/GithubRepository.vue'; +import ListRepositories from './components/GitHub/ListRepositories.vue'; +import FetchRepositories from './components/GitHub/FetchRepositories.vue'; +import GithubRepository from './components/GitHub/GithubRepository.vue'; import ApiLoader from './components/ApiLoader.vue'; import Loader from './components/Loader.vue'; import Cache from './components/Cache.vue'; @@ -10,6 +11,7 @@ export default defineClientConfig({ enhance({ app }) { app.component('ResponsiveImage', ResponsiveImage); app.component('ListRepositories', ListRepositories); + app.component('FetchRepositories', FetchRepositories); app.component('GithubRepository', GithubRepository); app.component('ApiLoader', ApiLoader); app.component('Loader', Loader); diff --git a/content/.vuepress/components/ApiLoader.vue b/content/.vuepress/components/ApiLoader.vue index 5cb31c0..4e12527 100644 --- a/content/.vuepress/components/ApiLoader.vue +++ b/content/.vuepress/components/ApiLoader.vue @@ -2,7 +2,7 @@ diff --git a/content/.vuepress/components/Cache.vue b/content/.vuepress/components/Cache.vue index 285f60c..bc9cc6c 100644 --- a/content/.vuepress/components/Cache.vue +++ b/content/.vuepress/components/Cache.vue @@ -19,7 +19,7 @@ const props = defineProps({ required: false, type: Number, }, - data: { + alreadyKnownData: { default: null, type: Object, }, @@ -50,14 +50,20 @@ const storeInCache = ( }; if (isDataOutdated(props.name)) { - emits('cached', storeInCache(props.callback, props.data, props.name)); + emits( + 'cached', + storeInCache(props.callback, props.alreadyKnownData, props.name) + ); } else { let data = localStorage.getItem(props.name); try { emits('cached', of(JSON.parse(data))); } catch (err) { console.error(`Could not parse data found in cache: ${err}`); - emits('cached', storeInCache(props.callback, props.data, props.name)); + emits( + 'cached', + storeInCache(props.callback, props.alreadyKnownData, props.name) + ); } } diff --git a/content/.vuepress/components/GitHub/FetchRepositories.vue b/content/.vuepress/components/GitHub/FetchRepositories.vue new file mode 100644 index 0000000..546dc53 --- /dev/null +++ b/content/.vuepress/components/GitHub/FetchRepositories.vue @@ -0,0 +1,48 @@ + + + + + diff --git a/content/.vuepress/components/GitRepos/GithubRepository.vue b/content/.vuepress/components/GitHub/GithubRepository.vue similarity index 79% rename from content/.vuepress/components/GitRepos/GithubRepository.vue rename to content/.vuepress/components/GitHub/GithubRepository.vue index af0a0f6..e54335f 100644 --- a/content/.vuepress/components/GitRepos/GithubRepository.vue +++ b/content/.vuepress/components/GitHub/GithubRepository.vue @@ -1,5 +1,7 @@ - + (repository = repo)" > - {{ props.data.name }} + {{ repository.name }} - {{ props.data.description }} + {{ repository.description }} - Stars: {{ data.stargazers_count }} - Forks: {{ data.forks_count }} + Stars: {{ repository.stargazers_count }} + Forks: {{ repository.forks_count }} @@ -31,7 +33,6 @@ import { PropType, Ref, ref } from 'vue'; const props = defineProps({ data: Object as PropType, repoName: String, - fetcher: String as PropType<'gitea' | 'github'>, }); const repoName = (): string => { diff --git a/content/.vuepress/components/GitHub/ListRepositories.vue b/content/.vuepress/components/GitHub/ListRepositories.vue new file mode 100644 index 0000000..100afbc --- /dev/null +++ b/content/.vuepress/components/GitHub/ListRepositories.vue @@ -0,0 +1,50 @@ + + + (repos = response)" + /> + + + + + + + + + + diff --git a/content/.vuepress/components/GitRepos/ListRepositories.vue b/content/.vuepress/components/GitRepos/ListRepositories.vue deleted file mode 100644 index bcc2ecb..0000000 --- a/content/.vuepress/components/GitRepos/ListRepositories.vue +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - -
- {{ props.data.description }} + {{ repository.description }}
Stars: {{ data.stargazers_count }}
Forks: {{ data.forks_count }}
Stars: {{ repository.stargazers_count }}
Forks: {{ repository.forks_count }}