Skip to content

Commit

Permalink
fix: redirect to login (#1082)
Browse files Browse the repository at this point in the history
  • Loading branch information
cugu authored Jul 20, 2024
1 parent e9583a2 commit 81bfbb2
Show file tree
Hide file tree
Showing 3 changed files with 63 additions and 58 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ test:
.PHONY: test-coverage
test-coverage:
@echo "Testing with coverage..."
go test -coverpkg=./... -coverprofile=coverage.out ./...
go test -coverpkg=./... -coverprofile=coverage.out -count 1 ./...
go tool cover -func=coverage.out
go tool cover -html=coverage.out

Expand Down
3 changes: 3 additions & 0 deletions reaction/action/webhook/webhook_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"encoding/json"
"net/http"
"testing"
"time"

"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
Expand All @@ -19,6 +20,8 @@ func TestWebhook_Run(t *testing.T) {

go http.ListenAndServe("127.0.0.1:12347", server) //nolint:gosec,errcheck

time.Sleep(1 * time.Second)

type fields struct {
Headers map[string]string
URL string
Expand Down
116 changes: 59 additions & 57 deletions ui/src/components/sidebar/UserDropDown.vue
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
<script setup lang="ts">
import TanView from '@/components/TanView.vue'
import { Button, buttonVariants } from '@/components/ui/button'
import {
DropdownMenu,
Expand All @@ -13,7 +12,8 @@ import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip
import { CircleUser } from 'lucide-vue-next'
import { useQuery } from '@tanstack/vue-query'
import type { AuthModel } from 'pocketbase'
import { onMounted, ref } from 'vue'
import { pb } from '@/lib/pocketbase'
import { cn } from '@/lib/utils'
Expand All @@ -24,69 +24,71 @@ defineProps<{
const variant = 'secondary'
const {
isPending,
isError,
data: user,
error
} = useQuery({
queryKey: ['user'],
queryFn: () => pb.authStore.model
})
interface User {
name: string
}
const user = ref<AuthModel | User>(pb.authStore.model)
const logout = () => {
pb.authStore.clear()
window.location.href = '/ui/login'
}
onMounted(() => {
pb.collection('users')
.authRefresh()
.catch(() => {
pb.authStore.clear()
window.location.href = '/ui/login'
})
})
</script>

<template>
<TanView :is-error="isError" :is-pending="isPending" :error="error" :value="user">
<div class="group flex flex-col gap-4 py-2 data-[collapsed=true]:py-2">
<nav
class="grid gap-1 px-2 group-[[data-collapsed=true]]:justify-center group-[[data-collapsed=true]]:px-2"
>
<DropdownMenu>
<DropdownMenuTrigger as-child>
<div>
<Tooltip v-if="isCollapsed" :delay-duration="0">
<TooltipTrigger as-child>
<Button
:class="
cn(buttonVariants({ variant: variant, size: 'icon' }), 'mx-1 h-9 w-9 px-0')
"
>
<CircleUser class="size-4" />
<span class="sr-only">{{ user.name }}</span>
</Button>
</TooltipTrigger>
<TooltipContent side="right" class="flex items-center gap-4">
{{ user.name }}
</TooltipContent>
</Tooltip>
<Button
v-else
:class="
cn(buttonVariants({ variant: variant, size: 'sm' }), 'w-full justify-start')
"
>
<CircleUser class="mr-2 size-4" />
<div class="group flex flex-col gap-4 py-2 data-[collapsed=true]:py-2">
<nav
v-if="user"
class="grid gap-1 px-2 group-[[data-collapsed=true]]:justify-center group-[[data-collapsed=true]]:px-2"
>
<DropdownMenu>
<DropdownMenuTrigger as-child>
<div>
<Tooltip v-if="isCollapsed" :delay-duration="0">
<TooltipTrigger as-child>
<Button
:class="
cn(buttonVariants({ variant: variant, size: 'icon' }), 'mx-1 h-9 w-9 px-0')
"
>
<CircleUser class="size-4" />
<span class="sr-only">{{ user.name }}</span>
</Button>
</TooltipTrigger>
<TooltipContent side="right" class="flex items-center gap-4">
{{ user.name }}
</Button>
</div>
</DropdownMenuTrigger>
<DropdownMenuContent>
<DropdownMenuLabel>Account</DropdownMenuLabel>
<DropdownMenuSeparator />
<DropdownMenuItem
@click="logout"
class="cursor-pointer text-muted-foreground transition-colors hover:text-foreground"
</TooltipContent>
</Tooltip>
<Button
v-else
:class="cn(buttonVariants({ variant: variant, size: 'sm' }), 'w-full justify-start')"
>
Logout
</DropdownMenuItem>
</DropdownMenuContent>
</DropdownMenu>
</nav>
</div>
</TanView>
<CircleUser class="mr-2 size-4" />
{{ user.name }}
</Button>
</div>
</DropdownMenuTrigger>
<DropdownMenuContent>
<DropdownMenuLabel>Account</DropdownMenuLabel>
<DropdownMenuSeparator />
<DropdownMenuItem
@click="logout"
class="cursor-pointer text-muted-foreground transition-colors hover:text-foreground"
>
Logout
</DropdownMenuItem>
</DropdownMenuContent>
</DropdownMenu>
</nav>
</div>
</template>

0 comments on commit 81bfbb2

Please sign in to comment.