{decryptedData}
+ )
+}
diff --git a/src/views/DocumentsView/DocumentsListView.tsx b/src/views/DocumentsView/DocumentsListView.tsx
new file mode 100644
index 0000000..e39519c
--- /dev/null
+++ b/src/views/DocumentsView/DocumentsListView.tsx
@@ -0,0 +1,69 @@
+import { api } from '@convex/_generated/api'
+import type { Doc } from '@convex/_generated/dataModel'
+import { Link, useNavigate } from '@tanstack/react-router'
+import { useQuery } from 'convex/react'
+
+import { Button } from '@/components/ui/button'
+import {
+ Card,
+ CardContent,
+ CardDescription,
+ CardTitle,
+} from '@/components/ui/card'
+import { RoutesPath } from '@/types/routes'
+
+export const DocumentsListView = () => {
+ const navigate = useNavigate()
+ const documents = useQuery(api.documents.getDocuments)
+ const sortedByUpdatedAt = documents?.sort((a, b) => b.updatedAt - a.updatedAt)
+
+ const handleAddDocument = () => {
+ navigate({ to: RoutesPath.DOCUMENTS_CREATE.toString() })
+ }
+
+ return (
+ {decryptedData}
- )
+ return {decrypted}
}
From 113791fb04cad37dd689570262c14d990b2bad85 Mon Sep 17 00:00:00 2001
From: tacosjs <6282845+tacosjs@users.noreply.github.com>
Date: Tue, 24 Feb 2026 09:51:01 -0500
Subject: [PATCH 4/8] class auth views + remove demo
---
src/routeTree.gen.ts | 21 ----
src/routes/auth/signin.tsx | 2 +-
src/routes/auth/signup.tsx | 2 +-
src/routes/demo/encrypt.tsx | 19 ----
src/types/routes.ts | 1 -
src/views/{ => AuthViews}/SignInView.tsx | 0
src/views/{ => AuthViews}/SignUpView.tsx | 0
src/views/EncryptDemoView.tsx | 120 -----------------------
8 files changed, 2 insertions(+), 163 deletions(-)
delete mode 100644 src/routes/demo/encrypt.tsx
rename src/views/{ => AuthViews}/SignInView.tsx (100%)
rename src/views/{ => AuthViews}/SignUpView.tsx (100%)
delete mode 100644 src/views/EncryptDemoView.tsx
diff --git a/src/routeTree.gen.ts b/src/routeTree.gen.ts
index c254e17..9546e32 100644
--- a/src/routeTree.gen.ts
+++ b/src/routeTree.gen.ts
@@ -12,7 +12,6 @@ import { Route as rootRouteImport } from './routes/__root'
import { Route as IndexRouteImport } from './routes/index'
import { Route as DocumentsListRouteImport } from './routes/documents/list'
import { Route as DocumentsCreateRouteImport } from './routes/documents/create'
-import { Route as DemoEncryptRouteImport } from './routes/demo/encrypt'
import { Route as AuthSignupRouteImport } from './routes/auth/signup'
import { Route as AuthSigninRouteImport } from './routes/auth/signin'
import { Route as DocumentsDetailsIdRouteImport } from './routes/documents/details.$id'
@@ -32,11 +31,6 @@ const DocumentsCreateRoute = DocumentsCreateRouteImport.update({
path: '/documents/create',
getParentRoute: () => rootRouteImport,
} as any)
-const DemoEncryptRoute = DemoEncryptRouteImport.update({
- id: '/demo/encrypt',
- path: '/demo/encrypt',
- getParentRoute: () => rootRouteImport,
-} as any)
const AuthSignupRoute = AuthSignupRouteImport.update({
id: '/auth/signup',
path: '/auth/signup',
@@ -57,7 +51,6 @@ export interface FileRoutesByFullPath {
'/': typeof IndexRoute
'/auth/signin': typeof AuthSigninRoute
'/auth/signup': typeof AuthSignupRoute
- '/demo/encrypt': typeof DemoEncryptRoute
'/documents/create': typeof DocumentsCreateRoute
'/documents/list': typeof DocumentsListRoute
'/documents/details/$id': typeof DocumentsDetailsIdRoute
@@ -66,7 +59,6 @@ export interface FileRoutesByTo {
'/': typeof IndexRoute
'/auth/signin': typeof AuthSigninRoute
'/auth/signup': typeof AuthSignupRoute
- '/demo/encrypt': typeof DemoEncryptRoute
'/documents/create': typeof DocumentsCreateRoute
'/documents/list': typeof DocumentsListRoute
'/documents/details/$id': typeof DocumentsDetailsIdRoute
@@ -76,7 +68,6 @@ export interface FileRoutesById {
'/': typeof IndexRoute
'/auth/signin': typeof AuthSigninRoute
'/auth/signup': typeof AuthSignupRoute
- '/demo/encrypt': typeof DemoEncryptRoute
'/documents/create': typeof DocumentsCreateRoute
'/documents/list': typeof DocumentsListRoute
'/documents/details/$id': typeof DocumentsDetailsIdRoute
@@ -87,7 +78,6 @@ export interface FileRouteTypes {
| '/'
| '/auth/signin'
| '/auth/signup'
- | '/demo/encrypt'
| '/documents/create'
| '/documents/list'
| '/documents/details/$id'
@@ -96,7 +86,6 @@ export interface FileRouteTypes {
| '/'
| '/auth/signin'
| '/auth/signup'
- | '/demo/encrypt'
| '/documents/create'
| '/documents/list'
| '/documents/details/$id'
@@ -105,7 +94,6 @@ export interface FileRouteTypes {
| '/'
| '/auth/signin'
| '/auth/signup'
- | '/demo/encrypt'
| '/documents/create'
| '/documents/list'
| '/documents/details/$id'
@@ -115,7 +103,6 @@ export interface RootRouteChildren {
IndexRoute: typeof IndexRoute
AuthSigninRoute: typeof AuthSigninRoute
AuthSignupRoute: typeof AuthSignupRoute
- DemoEncryptRoute: typeof DemoEncryptRoute
DocumentsCreateRoute: typeof DocumentsCreateRoute
DocumentsListRoute: typeof DocumentsListRoute
DocumentsDetailsIdRoute: typeof DocumentsDetailsIdRoute
@@ -144,13 +131,6 @@ declare module '@tanstack/react-router' {
preLoaderRoute: typeof DocumentsCreateRouteImport
parentRoute: typeof rootRouteImport
}
- '/demo/encrypt': {
- id: '/demo/encrypt'
- path: '/demo/encrypt'
- fullPath: '/demo/encrypt'
- preLoaderRoute: typeof DemoEncryptRouteImport
- parentRoute: typeof rootRouteImport
- }
'/auth/signup': {
id: '/auth/signup'
path: '/auth/signup'
@@ -179,7 +159,6 @@ const rootRouteChildren: RootRouteChildren = {
IndexRoute: IndexRoute,
AuthSigninRoute: AuthSigninRoute,
AuthSignupRoute: AuthSignupRoute,
- DemoEncryptRoute: DemoEncryptRoute,
DocumentsCreateRoute: DocumentsCreateRoute,
DocumentsListRoute: DocumentsListRoute,
DocumentsDetailsIdRoute: DocumentsDetailsIdRoute,
diff --git a/src/routes/auth/signin.tsx b/src/routes/auth/signin.tsx
index 7ffca0e..7f466cb 100644
--- a/src/routes/auth/signin.tsx
+++ b/src/routes/auth/signin.tsx
@@ -4,7 +4,7 @@ import { useAtomValue } from 'jotai'
import { passphraseAtom } from '@/stores/encryptionAtoms'
import { RoutesPath } from '@/types/routes'
-import { SignInView } from '@/views/SignInView'
+import { SignInView } from '@/views/AuthViews/SignInView'
export const Route = createFileRoute(RoutesPath.SIGN_IN)({
component: RouteComponent,
diff --git a/src/routes/auth/signup.tsx b/src/routes/auth/signup.tsx
index 49e54cf..04bf25a 100644
--- a/src/routes/auth/signup.tsx
+++ b/src/routes/auth/signup.tsx
@@ -1,7 +1,7 @@
import { createFileRoute } from '@tanstack/react-router'
import { RoutesPath } from '@/types/routes'
-import { SignUpView } from '@/views/SignUpView'
+import { SignUpView } from '@/views/AuthViews/SignUpView'
export const Route = createFileRoute(RoutesPath.SIGN_UP)({
component: RouteComponent,
diff --git a/src/routes/demo/encrypt.tsx b/src/routes/demo/encrypt.tsx
deleted file mode 100644
index daf3116..0000000
--- a/src/routes/demo/encrypt.tsx
+++ /dev/null
@@ -1,19 +0,0 @@
-import { Layout } from '@/components/Layouts'
-import { ProtectedRoutes } from '@/components/ProtectedRoutes'
-import { RoutesPath } from '@/types/routes'
-import { EncryptDemoView } from '@/views/EncryptDemoView'
-import { createFileRoute } from '@tanstack/react-router'
-
-export const Route = createFileRoute(RoutesPath.DEMO_ENCRYPT)({
- component: RouteComponent,
-})
-
-function RouteComponent() {
- return (
-
- {decryptedText}
-
- )}
- {decrypted}
+ return (
+
+ {decrypted}
+
+ )
}
diff --git a/src/views/DocumentsView/DocumentsListView.tsx b/src/views/DocumentsView/DocumentsListView.tsx
index e39519c..56bcc81 100644
--- a/src/views/DocumentsView/DocumentsListView.tsx
+++ b/src/views/DocumentsView/DocumentsListView.tsx
@@ -10,6 +10,7 @@ import {
CardDescription,
CardTitle,
} from '@/components/ui/card'
+import { Spinner } from '@/components/ui/spinner'
import { RoutesPath } from '@/types/routes'
export const DocumentsListView = () => {
@@ -21,26 +22,52 @@ export const DocumentsListView = () => {
navigate({ to: RoutesPath.DOCUMENTS_CREATE.toString() })
}
+ const renderContent = () => {
+ if (documents === undefined) return