@@ -35,20 +35,18 @@ import {
3535 TesterSortCriteria ,
3636 PurchaseSortCriteria ,
3737} from "../types/data" ;
38- import { mockData } from "../test/mock-data" ;
3938import { InMemoryDB } from "../db/in-memory-db" ;
39+ import { getDatabase } from "../db/db" ;
4040
4141import { Router } from "./router" ;
4242
43- // Use the inMemory database with mock data
44- const db = new InMemoryDB ( mockData ) ;
45-
4643// Tester Management
4744const testerRoutes = ( router : Router , env : Env ) => {
4845 // Get all testers with pagination and sort, requires admin permission
4946 router . get (
5047 "/api/testers" ,
5148 async ( request ) => {
49+ const db = getDatabase ( env ) ;
5250 const url = new URL ( request . url ) ;
5351 const page = parseInt ( url . searchParams . get ( "page" ) || "1" ) ;
5452 const limit = parseInt ( url . searchParams . get ( "limit" ) || "10" ) ;
@@ -101,6 +99,8 @@ const testerRoutes = (router: Router, env: Env) => {
10199 router . post (
102100 "/api/tester" ,
103101 async ( request ) => {
102+ const db = getDatabase ( env ) ;
103+
104104 try {
105105 const { name, ids : _ids } =
106106 ( await request . json ( ) ) as TesterCreateRequest ;
@@ -198,6 +198,8 @@ const testerRoutes = (router: Router, env: Env) => {
198198 router . post (
199199 "/api/tester/ids" ,
200200 async ( request ) => {
201+ const db = getDatabase ( env ) ;
202+
201203 try {
202204 const testerId = router . jwtPayload . sub ;
203205
@@ -311,6 +313,8 @@ const testerRoutes = (router: Router, env: Env) => {
311313 router . get (
312314 "/api/tester" ,
313315 async ( ) => {
316+ const db = getDatabase ( env ) ;
317+
314318 // Get user ID from authenticated user
315319 const userId = router . jwtPayload . sub ;
316320
@@ -370,6 +374,8 @@ const purchaseRoutes = (router: Router, env: Env) => {
370374 router . post (
371375 "/api/purchase" ,
372376 async ( request ) => {
377+ const db = getDatabase ( env ) ;
378+
373379 try {
374380 const data = ( await request . json ( ) ) as PurchaseCreateRequest ;
375381 const { date, order, description, amount, screenshot } = data ;
@@ -444,6 +450,8 @@ const purchaseRoutes = (router: Router, env: Env) => {
444450 router . get (
445451 "/api/purchase/:id" ,
446452 async ( request ) => {
453+ const db = getDatabase ( env ) ;
454+
447455 const { id } = request . params ;
448456
449457 // Find purchase in the database
@@ -490,6 +498,7 @@ const purchaseRoutes = (router: Router, env: Env) => {
490498 router . get (
491499 "/api/purchases/not-refunded" ,
492500 async ( request ) => {
501+ const db = getDatabase ( env ) ;
493502 const url = new URL ( request . url ) ;
494503 const page = parseInt ( url . searchParams . get ( "page" ) || "1" ) ;
495504 const limit = parseInt ( url . searchParams . get ( "limit" ) || "10" ) ;
@@ -579,6 +588,7 @@ const purchaseRoutes = (router: Router, env: Env) => {
579588 router . get (
580589 "/api/purchases/refunded" ,
581590 async ( request ) => {
591+ const db = getDatabase ( env ) ;
582592 const url = new URL ( request . url ) ;
583593 const page = parseInt ( url . searchParams . get ( "page" ) || "1" ) ;
584594 const limit = parseInt ( url . searchParams . get ( "limit" ) || "10" ) ;
@@ -671,6 +681,8 @@ const feedbackRoutes = (router: Router, env: Env) => {
671681 router . post (
672682 "/api/feedback" ,
673683 async ( request ) => {
684+ const db = getDatabase ( env ) ;
685+
674686 try {
675687 const { date, purchase, feedback } =
676688 ( await request . json ( ) ) as FeedbackCreateRequest ;
@@ -727,6 +739,8 @@ const feedbackRoutes = (router: Router, env: Env) => {
727739 router . post (
728740 "/api/publish" ,
729741 async ( request ) => {
742+ const db = getDatabase ( env ) ;
743+
730744 try {
731745 const { date, purchase, screenshot } =
732746 ( await request . json ( ) ) as PublishCreateRequest ;
@@ -782,6 +796,7 @@ const feedbackRoutes = (router: Router, env: Env) => {
782796 router . get (
783797 "/api/publish/:id" ,
784798 async ( request ) => {
799+ const db = getDatabase ( env ) ;
785800 const { id } = request . params ;
786801
787802 // Find publication in the database
@@ -828,6 +843,8 @@ const refundRoutes = (router: Router, env: Env) => {
828843 router . post (
829844 "/api/refund" ,
830845 async ( request ) => {
846+ const db = getDatabase ( env ) ;
847+
831848 try {
832849 const { date, purchase, refunddate, amount } =
833850 ( await request . json ( ) ) as RefundCreateRequest ;
@@ -891,6 +908,7 @@ const refundRoutes = (router: Router, env: Env) => {
891908 router . get (
892909 "/api/refund/:id" ,
893910 async ( request ) => {
911+ const db = getDatabase ( env ) ;
894912 const { id } = request . params ;
895913
896914 // Find refund in the database
@@ -930,6 +948,20 @@ const refundRoutes = (router: Router, env: Env) => {
930948 } ,
931949 env . READ_PERMISSION ,
932950 ) ;
951+ } ;
952+
953+ /**
954+ * Setup routes
955+ * @param router The router
956+ * @param env The environment variables
957+ */
958+ export const setupRoutes = ( router : Router , env : Env ) => {
959+ const db = getDatabase ( env ) ;
960+
961+ testerRoutes ( router , env ) ;
962+ purchaseRoutes ( router , env ) ;
963+ feedbackRoutes ( router , env ) ;
964+ refundRoutes ( router , env ) ;
933965
934966 // Only allow backup route for in-memory database
935967 if ( db instanceof InMemoryDB ) {
@@ -963,15 +995,3 @@ const refundRoutes = (router: Router, env: Env) => {
963995 } ) ;
964996 }
965997} ;
966-
967- /**
968- * Setup routes
969- * @param router The router
970- * @param env The environment variables
971- */
972- export const setupRoutes = ( router : Router , env : Env ) => {
973- testerRoutes ( router , env ) ;
974- purchaseRoutes ( router , env ) ;
975- feedbackRoutes ( router , env ) ;
976- refundRoutes ( router , env ) ;
977- } ;
0 commit comments