| -rw-r--r-- | .dockerignore | 7L |
| -rw-r--r-- | .github/workflows/ci.yaml | 40L |
| -rw-r--r-- | .gitignore | 41L |
| -rw-r--r-- | .vscode/settings.json | 3L |
| -rw-r--r-- | Dockerfile | 62L |
| -rw-r--r-- | LICENSE | 661L |
| -rw-r--r-- | README.md | 88L |
| -rw-r--r-- | components.json | 21L |
| -rw-r--r-- | eslint.config.mjs | 16L |
| -rw-r--r-- | next.config.ts | 17L |
| -rw-r--r-- | package.json | 54L |
| -rw-r--r-- | pnpm-lock.yaml | 7930L |
| -rw-r--r-- | postcss.config.mjs | 8L |
| -rw-r--r-- | public/placeholder.svg | 1L |
| -rw-r--r-- | renovate.json | 6L |
| -rw-r--r-- | src/app/api/session/route.ts | 49L |
| -rw-r--r-- | src/app/dashboard/analytics/loading.tsx | 160L |
| -rw-r--r-- | src/app/dashboard/analytics/page.tsx | 333L |
| -rw-r--r-- | src/app/dashboard/bans/loading.tsx | 77L |
| -rw-r--r-- | src/app/dashboard/bans/page.tsx | 58L |
| -rw-r--r-- | src/app/dashboard/layout.tsx | 14L |
| -rw-r--r-- | src/app/dashboard/mockData.ts | 312L |
| -rw-r--r-- | src/app/dashboard/overview/loading.tsx | 107L |
| -rw-r--r-- | src/app/dashboard/overview/page.tsx | 149L |
| -rw-r--r-- | src/app/dashboard/page.tsx | 14L |
| -rw-r--r-- | src/app/dashboard/reports/loading.tsx | 113L |
| -rw-r--r-- | src/app/dashboard/reports/page.tsx | 110L |
| -rw-r--r-- | src/app/dashboard/settings/bot/page.tsx | 50L |
| -rw-r--r-- | src/app/dashboard/settings/members/page.tsx | 150L |
| -rw-r--r-- | src/app/dashboard/settings/page.tsx | 15L |
| -rw-r--r-- | src/app/dashboard/settings/protectedRooms/page.tsx | 44L |
| -rw-r--r-- | src/app/dashboard/settings/settingsLayout.tsx | 53L |
| -rw-r--r-- | src/app/globals.css | 94L |
| -rw-r--r-- | src/app/layout.tsx | 35L |
| -rw-r--r-- | src/app/login/page.tsx | 230L |
| -rw-r--r-- | src/app/page.tsx | 377L |
| -rw-r--r-- | src/app/refresh/page.tsx | 19L |
| -rw-r--r-- | src/app/register/page.tsx | 223L |
| -rw-r--r-- | src/components/analytics/chart-configs.ts | 302L |
| -rw-r--r-- | src/components/analytics/heatmap.tsx | 100L |
| -rw-r--r-- | src/components/analytics/info-card-with-trend.tsx | 31L |
| -rw-r--r-- | src/components/analytics/plotly-chart.tsx | 28L |
| -rw-r--r-- | src/components/blurred-image.tsx | 34L |
| -rw-r--r-- | src/components/blurred-text.tsx | 34L |
| -rw-r--r-- | src/components/dashboard/bans-list.tsx | 136L |
| -rw-r--r-- | src/components/dashboard/bot-selector.tsx | 49L |
| -rw-r--r-- | src/components/dashboard/dashboard-header.tsx | 129L |
| -rw-r--r-- | src/components/dashboard/layoutWrapper.tsx | 34L |
| -rw-r--r-- | src/components/dashboard/logout.tsx | 25L |
| -rw-r--r-- | src/components/dashboard/notifications.tsx | 153L |
| -rw-r--r-- | src/components/dashboard/protected-rooms-list.tsx | 22L |
| -rw-r--r-- | src/components/dashboard/report-list.tsx | 227L |
| -rw-r--r-- | src/components/dashboard/tab-navigation.tsx | 35L |
| -rw-r--r-- | src/components/modals/add-ban.tsx | 115L |
| -rw-r--r-- | src/components/modals/add-protected-room.tsx | 58L |
| -rw-r--r-- | src/components/modals/are-you-sure.tsx | 37L |
| -rw-r--r-- | src/components/modals/create-bot.tsx | 43L |
| -rw-r--r-- | src/components/modals/kick-user.tsx | 36L |
| -rw-r--r-- | src/components/redirect-workaround.tsx | 32L |
| -rw-r--r-- | src/components/theme-provider.tsx | 11L |
| -rw-r--r-- | src/components/ui/alert.tsx | 59L |
| -rw-r--r-- | src/components/ui/avatar.tsx | 49L |
| -rw-r--r-- | src/components/ui/badge.tsx | 36L |
| -rw-r--r-- | src/components/ui/breadcrumb.tsx | 115L |
| -rw-r--r-- | src/components/ui/button.tsx | 56L |
| -rw-r--r-- | src/components/ui/card.tsx | 78L |
| -rw-r--r-- | src/components/ui/checkbox.tsx | 30L |
| -rw-r--r-- | src/components/ui/dialog.tsx | 139L |
| -rw-r--r-- | src/components/ui/dropdown-menu.tsx | 200L |
| -rw-r--r-- | src/components/ui/input.tsx | 21L |
| -rw-r--r-- | src/components/ui/label.tsx | 26L |
| -rw-r--r-- | src/components/ui/pagination.tsx | 117L |
| -rw-r--r-- | src/components/ui/popover.tsx | 31L |
| -rw-r--r-- | src/components/ui/scroll-area.tsx | 48L |
| -rw-r--r-- | src/components/ui/select.tsx | 160L |
| -rw-r--r-- | src/components/ui/separator.tsx | 31L |
| -rw-r--r-- | src/components/ui/sheet.tsx | 140L |
| -rw-r--r-- | src/components/ui/skeleton.tsx | 16L |
| -rw-r--r-- | src/components/ui/table.tsx | 117L |
| -rw-r--r-- | src/components/ui/tabs.tsx | 55L |
| -rw-r--r-- | src/components/ui/textarea.tsx | 22L |
| -rw-r--r-- | src/components/ui/use-mobile.tsx | 19L |
| -rw-r--r-- | src/contexts/session-context.tsx | 324L |
| -rw-r--r-- | src/lib/api.ts | 43L |
| -rw-r--r-- | src/lib/api/v1.d.ts | 674L |
| -rw-r--r-- | src/lib/auth.ts | 39L |
| -rw-r--r-- | src/lib/clientSideAuth.ts | 76L |
| -rw-r--r-- | src/lib/utils.ts | 6L |
| -rw-r--r-- | src/middleware.ts | 31L |
| -rw-r--r-- | tailwind.config.ts | 84L |
| -rw-r--r-- | tsconfig.json | 41L |