Edit: /tmp/tsx-0/17887-86c754be339e711066a029ce66e585e389d554bc (6463B)
{"code":"__filename=\"/opt/canhelp/apps/api/src/routes/notifications.ts\";(()=>{\n\"use strict\";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:true})};var __copyProps=(to,from,except,desc2)=>{if(from&&typeof from===\"object\"||typeof from===\"function\"){for(let key of __getOwnPropNames(from))if(!__hasOwnProp.call(to,key)&&key!==except)__defProp(to,key,{get:()=>from[key],enumerable:!(desc2=__getOwnPropDesc(from,key))||desc2.enumerable})}return to};var __toCommonJS=mod=>__copyProps(__defProp({},\"__esModule\",{value:true}),mod);var notifications_exports={};__export(notifications_exports,{default:()=>notifications_default});module.exports=__toCommonJS(notifications_exports);var import_hono=require(\"hono\");var import_drizzle_orm=require(\"drizzle-orm\");var import_db=require(\"../db.js\");var import_db2=require(\"@canhelp/db\");var import_auth=require(\"../middleware/auth.js\");const app=new import_hono.Hono;app.get(\"/\",import_auth.requireAuth,async c=>{const user=c.get(\"user\");const limit=Math.min(Number(c.req.query(\"limit\")||50),200);const referenceId=c.req.query(\"referenceId\");const type=c.req.query(\"type\");const conditions=[(0,import_drizzle_orm.eq)(import_db2.notifications.recipientId,user.id)];if(referenceId)conditions.push((0,import_drizzle_orm.eq)(import_db2.notifications.referenceId,referenceId));if(type)conditions.push((0,import_drizzle_orm.eq)(import_db2.notifications.type,type));const rows=await import_db.db.select().from(import_db2.notifications).where((0,import_drizzle_orm.and)(...conditions)).orderBy((0,import_drizzle_orm.desc)(import_db2.notifications.createdAt)).limit(limit);return c.json(rows)});app.get(\"/count\",import_auth.requireAuth,async c=>{const user=c.get(\"user\");const[{total}]=await import_db.db.select({total:(0,import_drizzle_orm.count)()}).from(import_db2.notifications).where((0,import_drizzle_orm.and)((0,import_drizzle_orm.eq)(import_db2.notifications.recipientId,user.id),(0,import_drizzle_orm.eq)(import_db2.notifications.isRead,false)));return c.json({count:total})});app.patch(\"/read-all\",import_auth.requireAuth,async c=>{const user=c.get(\"user\");await import_db.db.update(import_db2.notifications).set({isRead:true}).where((0,import_drizzle_orm.and)((0,import_drizzle_orm.eq)(import_db2.notifications.recipientId,user.id),(0,import_drizzle_orm.eq)(import_db2.notifications.isRead,false)));return c.json({ok:true})});app.patch(\"/:id/read\",import_auth.requireAuth,async c=>{const user=c.get(\"user\");const[notif]=await import_db.db.select().from(import_db2.notifications).where((0,import_drizzle_orm.eq)(import_db2.notifications.id,c.req.param(\"id\")));if(!notif)return c.json({error:\"Not found\"},404);if(notif.recipientId!==user.id)return c.json({error:\"Forbidden\"},403);const[updated]=await import_db.db.update(import_db2.notifications).set({isRead:true}).where((0,import_drizzle_orm.eq)(import_db2.notifications.id,notif.id)).returning();return c.json(updated)});app.delete(\"/\",import_auth.requireAuth,async c=>{const user=c.get(\"user\");await import_db.db.delete(import_db2.notifications).where((0,import_drizzle_orm.eq)(import_db2.notifications.recipientId,user.id));return c.json({ok:true})});app.delete(\"/:id\",import_auth.requireAuth,async c=>{const user=c.get(\"user\");const[notif]=await import_db.db.select().from(import_db2.notifications).where((0,import_drizzle_orm.eq)(import_db2.notifications.id,c.req.param(\"id\")));if(!notif)return c.json({error:\"Not found\"},404);if(notif.recipientId!==user.id)return c.json({error:\"Forbidden\"},403);await import_db.db.delete(import_db2.notifications).where((0,import_drizzle_orm.eq)(import_db2.notifications.id,notif.id));return c.json({ok:true})});var notifications_default=app;\n})()\n","warnings":[],"map":{"version":3,"mappings":"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","names":["import_db"],"ignoreList":[],"sources":["/opt/canhelp/apps/api/src/routes/notifications.ts"],"sourcesContent":[null]}}