split home page and flux note page
This commit is contained in:
@@ -102,7 +102,7 @@ const focus = () => scrollToFocusedNote(undefined, true)
|
|||||||
<div class="repo-title">
|
<div class="repo-title">
|
||||||
<h1 class="title is-1">
|
<h1 class="title is-1">
|
||||||
[<router-link
|
[<router-link
|
||||||
:to="{ name: 'Home', params: { user, repo } }"
|
:to="{ name: 'FluxNoteView', params: { user, repo } }"
|
||||||
@click="resetStackedNotes"
|
@click="resetStackedNotes"
|
||||||
>{{ repo }}</router-link
|
>{{ repo }}</router-link
|
||||||
>]
|
>]
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<div class="buttons is-centered">
|
<div class="buttons is-centered">
|
||||||
<router-link
|
<router-link
|
||||||
:to="{
|
:to="{
|
||||||
name: 'Home',
|
name: 'FluxNoteView',
|
||||||
params: { user: 'lite-note', repo: 'getting-started' }
|
params: { user: 'lite-note', repo: 'getting-started' }
|
||||||
}"
|
}"
|
||||||
class="button is-primary"
|
class="button is-primary"
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
>
|
>
|
||||||
<router-link
|
<router-link
|
||||||
:to="{
|
:to="{
|
||||||
name: 'Home',
|
name: 'FluxNoteView',
|
||||||
params: {
|
params: {
|
||||||
user: username,
|
user: username,
|
||||||
repo: favoriteRepo.name
|
repo: favoriteRepo.name
|
||||||
@@ -102,15 +102,15 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from 'vue'
|
import SignInGithub from '@/components/SignInGithub.vue'
|
||||||
import { useForm } from '@/hooks/useForm.hook'
|
import { useForm } from '@/hooks/useForm.hook'
|
||||||
import { useGitHubLogin } from '@/hooks/useGitHubLogin.hook'
|
import { useGitHubLogin } from '@/hooks/useGitHubLogin.hook'
|
||||||
import { useFavoriteRepos } from '@/modules/repo/hooks/useFavoriteRepos.hook'
|
|
||||||
import SignInGithub from '@/components/SignInGithub.vue'
|
|
||||||
import LastVisited from '@/modules/history/components/LastVisited.vue'
|
import LastVisited from '@/modules/history/components/LastVisited.vue'
|
||||||
|
import { useFavoriteRepos } from '@/modules/repo/hooks/useFavoriteRepos.hook'
|
||||||
|
import { defineComponent } from 'vue'
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: 'WelcomeWord',
|
name: 'WelcomeWorld',
|
||||||
components: { SignInGithub, LastVisited },
|
components: { SignInGithub, LastVisited },
|
||||||
setup() {
|
setup() {
|
||||||
const { isLogged, username } = useGitHubLogin()
|
const { isLogged, username } = useGitHubLogin()
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ export const useForm = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
push({
|
push({
|
||||||
name: 'Home',
|
name: 'FluxNoteView',
|
||||||
params: {
|
params: {
|
||||||
user: userInput.value,
|
user: userInput.value,
|
||||||
repo: repoInput.value
|
repo: repoInput.value
|
||||||
|
|||||||
@@ -1,10 +1,8 @@
|
|||||||
import { NOTE_WIDTH } from '@/constants/note-width'
|
import { NOTE_WIDTH } from '@/constants/note-width'
|
||||||
import { useOverlay } from '@/hooks/useOverlay.hook'
|
import { useOverlay } from '@/hooks/useOverlay.hook'
|
||||||
import { useUserRepoStore } from '@/modules/repo/store/userRepo.store'
|
import { useUserRepoStore } from '@/modules/repo/store/userRepo.store'
|
||||||
import { readonly, ref } from 'vue'
|
|
||||||
import { useWindowSize } from '@vueuse/core'
|
import { useWindowSize } from '@vueuse/core'
|
||||||
import { nextTick } from 'vue'
|
import { nextTick, readonly, ref } from 'vue'
|
||||||
|
|
||||||
import { useRoute, useRouter } from 'vue-router'
|
import { useRoute, useRouter } from 'vue-router'
|
||||||
|
|
||||||
const stackedNotes = ref<string[]>([])
|
const stackedNotes = ref<string[]>([])
|
||||||
@@ -90,7 +88,7 @@ export const useQueryStackedNotes = () => {
|
|||||||
const newStackedNotes = getStackedNotes()
|
const newStackedNotes = getStackedNotes()
|
||||||
|
|
||||||
push({
|
push({
|
||||||
name: currentRoute.value.name ?? 'Home',
|
name: currentRoute.value.name ?? 'FluxNoteView',
|
||||||
params: {
|
params: {
|
||||||
user: store.user,
|
user: store.user,
|
||||||
repo: store.repo
|
repo: store.repo
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
<div>
|
<div>
|
||||||
<router-link
|
<router-link
|
||||||
:to="{
|
:to="{
|
||||||
name: `Home`,
|
name: `FluxNoteView`,
|
||||||
params: { user: lastVisitedRepo.user, repo: lastVisitedRepo.repo }
|
params: { user: lastVisitedRepo.user, repo: lastVisitedRepo.repo }
|
||||||
}"
|
}"
|
||||||
>{{ lastVisitedRepo.user }}/{{ lastVisitedRepo.repo }}</router-link
|
>{{ lastVisitedRepo.user }}/{{ lastVisitedRepo.repo }}</router-link
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { RouteRecordRaw, createRouter, createWebHistory } from 'vue-router'
|
|
||||||
|
|
||||||
import Home from '@/views/HomeApp.vue'
|
import Home from '@/views/HomeApp.vue'
|
||||||
|
import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'
|
||||||
|
|
||||||
const routes: Array<RouteRecordRaw> = [
|
const routes: Array<RouteRecordRaw> = [
|
||||||
{
|
{
|
||||||
@@ -9,10 +8,10 @@ const routes: Array<RouteRecordRaw> = [
|
|||||||
component: () => import('@/views/RepoList.vue')
|
component: () => import('@/views/RepoList.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/:user?/:repo?',
|
path: '/:user/:repo',
|
||||||
name: 'Home',
|
name: 'FluxNoteView',
|
||||||
props: true,
|
props: true,
|
||||||
component: Home
|
component: () => import('@/views/FluxNoteView.vue')
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/:user/:repo/share/:note',
|
path: '/:user/:repo/share/:note',
|
||||||
@@ -49,6 +48,11 @@ const routes: Array<RouteRecordRaw> = [
|
|||||||
name: 'About',
|
name: 'About',
|
||||||
component: () => import('@/views/AboutApp.vue')
|
component: () => import('@/views/AboutApp.vue')
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/',
|
||||||
|
name: 'Home',
|
||||||
|
component: Home
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/:catchAll(.*)',
|
path: '/:catchAll(.*)',
|
||||||
name: 'SpaceCowboy',
|
name: 'SpaceCowboy',
|
||||||
|
|||||||
16
src/views/FluxNoteView.vue
Normal file
16
src/views/FluxNoteView.vue
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import FluxNote from '@/components/FluxNote.vue'
|
||||||
|
import { useComputeBacklinks } from '@/hooks/useComputeBacklinks.hook'
|
||||||
|
import { useQueryStackedNotes } from '@/hooks/useQueryStackedNotes.hook'
|
||||||
|
import { computed } from 'vue'
|
||||||
|
|
||||||
|
useQueryStackedNotes()
|
||||||
|
useComputeBacklinks()
|
||||||
|
|
||||||
|
const props = defineProps<{ user: string; repo: string }>()
|
||||||
|
const routeKey = computed(() => `${props.user}-${props.repo}`)
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<flux-note :key="routeKey" :user="user" :repo="repo" />
|
||||||
|
</template>
|
||||||
@@ -1,28 +1,13 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import AuthorizeUser from '@/components/AuthorizeUser.vue'
|
import AuthorizeUser from '@/components/AuthorizeUser.vue'
|
||||||
import { useComputeBacklinks } from '@/hooks/useComputeBacklinks.hook'
|
import WelcomeWorld from '@/components/WelcomeWorld.vue'
|
||||||
import { useQueryStackedNotes } from '@/hooks/useQueryStackedNotes.hook'
|
|
||||||
import { computed, defineAsyncComponent } from 'vue'
|
|
||||||
|
|
||||||
const FluxNote = defineAsyncComponent(() => import('@/components/FluxNote.vue'))
|
|
||||||
|
|
||||||
const WelcomeWorld = defineAsyncComponent(
|
|
||||||
() => import('@/components/WelcomeWorld.vue')
|
|
||||||
)
|
|
||||||
|
|
||||||
const props = defineProps<{ user?: string; repo?: string }>()
|
|
||||||
|
|
||||||
useQueryStackedNotes()
|
|
||||||
useComputeBacklinks()
|
|
||||||
const routeKey = computed(() => `${props.user}-${props.repo}`)
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div v-if="!user || !repo" class="home content">
|
<div class="home content">
|
||||||
<authorize-user class="authorize" />
|
<authorize-user class="authorize" />
|
||||||
<welcome-world />
|
<welcome-world />
|
||||||
</div>
|
</div>
|
||||||
<flux-note v-else :key="routeKey" :user="user" :repo="repo" />
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
|
|
||||||
<router-link
|
<router-link
|
||||||
:to="{
|
:to="{
|
||||||
name: 'Home',
|
name: 'FluxNoteView',
|
||||||
params: { user: username, repo: repo.name }
|
params: { user: username, repo: repo.name }
|
||||||
}"
|
}"
|
||||||
>{{ repo.name }}</router-link
|
>{{ repo.name }}</router-link
|
||||||
@@ -62,7 +62,7 @@
|
|||||||
<td>
|
<td>
|
||||||
<router-link
|
<router-link
|
||||||
:to="{
|
:to="{
|
||||||
name: 'Home',
|
name: 'FluxNoteView',
|
||||||
params: { user: username, repo: repo.name }
|
params: { user: username, repo: repo.name }
|
||||||
}"
|
}"
|
||||||
>{{ repo.name }}</router-link
|
>{{ repo.name }}</router-link
|
||||||
@@ -77,11 +77,11 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from 'vue'
|
|
||||||
import { useGitHubLogin } from '@/hooks/useGitHubLogin.hook'
|
|
||||||
import { useRepoList } from '@/modules/repo/hooks/useRepoList.hook'
|
|
||||||
import { useRepos } from '@/hooks/useRepos.hook'
|
|
||||||
import GoBack from '@/components/GoBack.vue'
|
import GoBack from '@/components/GoBack.vue'
|
||||||
|
import { useGitHubLogin } from '@/hooks/useGitHubLogin.hook'
|
||||||
|
import { useRepos } from '@/hooks/useRepos.hook'
|
||||||
|
import { useRepoList } from '@/modules/repo/hooks/useRepoList.hook'
|
||||||
|
import { defineComponent } from 'vue'
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: 'RepoList',
|
name: 'RepoList',
|
||||||
|
|||||||
Reference in New Issue
Block a user