PageSourceSearch

https://studio--coachtrack-7u2rj.us-central1.hosted.app/_next/stat…/notifications/page-7b7ec3eb19fb9cc9.js

js studio--coachtrack-7u2rj.us-central1.hosted.app collected 2026-10-03 05:35:43 UTC 13,025 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1308],{13896:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(40157).A)("UserPlus",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]])},22100:(e,t,r)=>{"use strict";r.d(t,{A:()=>i,c:()=>s});var a=r(12115);let s=(0,a.createContext)(void 0),i=()=>{let e=(0,a.useContext)(s);if(void 0===e)throw Error("useAuth must be used within an AuthProvider");return e}},23422:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>h});var a=r(95155),s=r(12115),i=r(22100),n=r(56104),o=r(35317),d=r(50172),c=r(26955),l=r(36931),u=r(66695),f=r(30285),m=r(36409),p=r(87481);function h(){let{user:e}=(0,i.A)(),{toast:t}=(0,p.dj)(),[r,h]=(0,s.useState)([]),[x,g]=(0,s.useState)(!0),[y,v]=(0,s.useState)(!1);(0,s.useEffect)(()=>{document.title="My Notifications - xMonks"},[]),(0,s.useEffect)(()=>{if(!e){g(!1),h([]);return}g(!0);let r=(0,o.P)((0,o.rJ)(n.db,"notifications"),(0,o._M)("recipientId","==",e.uid),(0,o.My)("createdAt","desc")),a=(0,o.aQ)(r,e=>{let t=[];e.forEach(e=>{let r=e.data();t.push({id:e.id,...r,createdAt:r.createdAt.toDate()})}),h(t),g(!1)},e=>{console.error("Error fetching notifications: ",e),t({variant:"destructive",title:"Error",description:"Could not load notifications."}),g(!1)});return()=>a()},[e,t]);let j=async()=>{if(!e||0===r.length)return;let a=r.filter(e=>!e.isRead).map(e=>e.id);if(0===a.length)return void t({title:"Already Up to Date",description:"No unread notifications to mark."});v(!0);let s=(0,o.wP)(n.db);a.forEach(e=>{let t=doc(n.db,"notifications",e);s.update(t,{isRead:!0})});try{await s.commit(),t({title:"Success",description:"All notifications marked as read."})}catch(e){console.error("Error marking all notifications as read: ",e),t({variant:"destructive",title:"Error",description:"Could not mark all as read."})}finally{v(!1)}},b=r.some(e=>!e.isRead);return(0,a.jsxs)("div",{className:"space-y-6 max-w-4xl mx-auto",children:[(0,a.jsxs)("div",{className:"flex flex-col md:flex-row md:items-center md:justify-between gap-4",children:[(0,a.jsx)("h1",{className:"text-3xl font-bold tracking-tight",children:"All Notifications"}),r.length>0&&b&&(0,a.jsxs)(f.$,{onClick:j,disabled:y,children:[y?(0,a.jsx)(d.A,{className:"mr-2 h-4 w-4 animate-spin"}):(0,a.jsx)(c.A,{className:"mr-2 h-4 w-4"}),"Mark All as Read"]})]}),(0,a.jsxs)(u.Zp,{children:[(0,a.jsxs)(u.aR,{children:[(0,a.jsx)(u.ZB,{children:"Your Updates"}),(0,a.jsx)(u.BT,{children:"A complete history of your interactions and alerts on the platform."})]}),(0,a.jsx)(u.Wu,{children:x?(0,a.jsx)("div",{className:"flex h-48 items-center justify-center",children:(0,a.jsx)(d.A,{className:"h-8 w-8 animate-spin text-primary"})}):0===r.length?(0,a.jsxs)("div",{className:"text-center py-16 text-muted-foreground",children:[(0,a.jsx)(l.A,{className:"mx-auto h-12 w-12 mb-4"}),(0,a.jsx)("p",{className:"text-xl font-semibold text-foreground",children:"You're all caught up!"}),(0,a.jsx)("p",{children:"You have no notifications right now."})]}):(0,a.jsx)("div",{className:"space-y-2",children:r.map(e=>(0,a.jsx)(m.r,{notification:e},e.id))})})]})]})}},26955:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(40157).A)("CheckCheck",[["path",{d:"M18 6 7 17l-5-5",key:"116fxf"}],["path",{d:"m22 10-7.5 7.5L13 16",key:"ke71qq"}]])},30285:(e,t,r)=>{"use strict";r.d(t,{$:()=>c,r:()=>d});var a=r(95155),s=r(12115),i=r(99708),n=r(74466),o=r(59434);let d=(0,n.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary-gradient text-primary-foreground hover:opacity-90 active:opacity-80",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),c=s.forwardRef((e,t)=>
1{let{className:r,variant:s,size:n,asChild:c=!1,...l}=e,u=c?i.DX:"button";return(0,a.jsx)(u,{className:(0,o.cn)(d({variant:s,size:n,className:r})),ref:t,...l})});c.displayName="Button"},36409:(e,t,r)=>{"use strict";r.d(t,{r:()=>x});var a=r(95155),s=r(91394),i=r(59434),n=r(22097),o=r(68098),d=r(38224),c=r(13896),l=r(6874),u=r.n(l),f=r(35317),m=r(56104);let p=e=>e?e.split(" ").map(e=>e[0]).join("").toUpperCase():"U",h=e=>{switch(e.type){case"like":return{icon:o.A,color:"text-red-500",text:(0,a.jsxs)(a.Fragment,{children:["liked your post: ",(0,a.jsxs)("strong",{children:['"',e.postContentSnippet,'"']})]}),href:"/community-feed"};case"comment":case"log_comment":return{icon:d.A,color:"text-blue-500",text:(0,a.jsxs)(a.Fragment,{children:["commented on: ",(0,a.jsxs)("strong",{children:['"',e.postContentSnippet,'"']})]}),href:"log_comment"===e.type?"/progress-log/view/".concat(e.postId):"/community-feed"};case"connection_request":return{icon:c.A,color:"text-green-500",text:(0,a.jsx)(a.Fragment,{children:"sent you a connection request."}),href:"/connect"};case"new_message":return{icon:d.A,color:"text-primary",text:(0,a.jsx)(a.Fragment,{children:"sent you a new message."}),href:"/chat/".concat(e.postId)};default:return{icon:o.A,color:"text-muted-foreground",text:(0,a.jsx)(a.Fragment,{children:"has an update."}),href:"#"}}};function x(e){let{notification:t}=e,{icon:r,color:o,text:d,href:c}=h(t),l=async()=>{if(!t.isRead){let e=(0,f.H9)(m.db,"notifications",t.id);try{await (0,f.mZ)(e,{isRead:!0})}catch(e){console.error("Failed to mark notification as read:",e)}}};return(0,a.jsxs)(u(),{href:c,onClick:l,className:(0,i.cn)("flex items-start gap-3 p-3 transition-colors hover:bg-muted/50",!t.isRead&&"bg-primary/5"),children:[(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsxs)(s.eu,{className:"h-10 w-10",children:[(0,a.jsx)(s.BK,{src:t.actor.avatarUrl||void 0,alt:t.actor.name,"data-ai-hint":"notification user avatar"}),(0,a.jsx)(s.q5,{children:p(t.actor.name)})]}),(0,a.jsx)("div",{className:(0,i.cn)("absolute -bottom-1 -right-1 rounded-full bg-card p-0.5",o),children:(0,a.jsx)(r,{className:"h-4 w-4"})})]}),(0,a.jsxs)("div",{className:"flex-1 text-sm",children:[(0,a.jsxs)("p",{children:[(0,a.jsx)("strong",{className:"font-semibold",children:t.actor.name})," ",(0,a.jsx)("span",{className:"text-muted-foreground",children:d})]}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground mt-0.5",children:(0,n.m)(t.createdAt,{addSuffix:!0})})]}),!t.isRead&&(0,a.jsx)("div",{className:"mt-2 h-2.5 w-2.5 rounded-full bg-primary"})]})}},36931:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(40157).A)("Bell",[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]])},38224:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(40157).A)("MessageCircle",[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}]])},56104:(e,t,r)=>{"use strict";r.d(t,{IG:()=>l,db:()=>c,j2:()=>d});var a=r(23915),s=r(93004),i=r(35317),n=r(90858);let o=(0,a.Dk)().length?(0,a.Sx)():(0,a.Wp)({apiKey:"AIzaSyCMwTaqasntnRy3AkTs1XiHms4d1pRaYgY",authDomain:"coachtrack-7u2rj.firebaseapp.com",databaseURL:"https://coachtrack-7u2rj-default-rtdb.firebaseio.com",projectId:"coachtrack-7u2rj",storageBucket:"coachtrack-7u2rj.firebasestorage.app",messagingSenderId:"1065353124046",appId:"1:1065353124046:web:4c7429e81735251db3d89f"}),d=(0,s.xI)(o),c=(0,i.aU)(o),l=(0,n.c7)(o)},59434:(e,t,r)=>{"use strict";r.d(t,{cn:()=>i});var a=r(52596),s=r(39688);function i(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,s.QP)((0,a.$)(t))}},66695:(e,t,r)=>{"use strict";r.d(t,{BT:()=>c,Wu:()=>l,ZB:()=>d,Zp:()=>n,aR:()=>o,wL:()=>u});var a=r(95155),s=r(12115),i=r(59434);let n=s.forwardRef((e,t)=>{let{className:r,...s}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("rounded-lg border bg-card text-card-foreground shadow-sm",r),...s})});n.displayName="Card";let o=s.forwardRef((e,t)=>{let{className:r,...s}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("flex flex-col space-y-1.5 p-6",r),...s})});
1o.displayName="CardHeader";let d=s.forwardRef((e,t)=>{let{className:r,...s}=e;return(0,a.jsx)("h3",{ref:t,className:(0,i.cn)("text-2xl font-semibold leading-none tracking-tight card-title",r),...s})});d.displayName="CardTitle";let c=s.forwardRef((e,t)=>{let{className:r,...s}=e;return(0,a.jsx)("p",{ref:t,className:(0,i.cn)("text-sm text-muted-foreground",r),...s})});c.displayName="CardDescription";let l=s.forwardRef((e,t)=>{let{className:r,...s}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("p-6 pt-0",r),...s})});l.displayName="CardContent";let u=s.forwardRef((e,t)=>{let{className:r,...s}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("flex items-center p-6 pt-0",r),...s})});u.displayName="CardFooter"},68098:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(40157).A)("Heart",[["path",{d:"M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z",key:"c3ymky"}]])},81540:(e,t,r)=>{Promise.resolve().then(r.bind(r,23422))},85977:(e,t,r)=>{"use strict";r.d(t,{H4:()=>b,_V:()=>j,bL:()=>v});var a=r(12115),s=r(46081),i=r(39033),n=r(52712),o=r(63655),d=r(95155),c="Avatar",[l,u]=(0,s.A)(c),[f,m]=l(c),p=a.forwardRef((e,t)=>{let{__scopeAvatar:r,...s}=e,[i,n]=a.useState("idle");return(0,d.jsx)(f,{scope:r,imageLoadingStatus:i,onImageLoadingStatusChange:n,children:(0,d.jsx)(o.sG.span,{...s,ref:t})})});p.displayName=c;var h="AvatarImage",x=a.forwardRef((e,t)=>{let{__scopeAvatar:r,src:s,onLoadingStatusChange:c=()=>{},...l}=e,u=m(h,r),f=function(e,t){let[r,s]=a.useState("idle");return(0,n.N)(()=>{if(!e)return void s("error");let r=!0,a=new window.Image,i=e=>()=>{r&&s(e)};return s("loading"),a.onload=i("loaded"),a.onerror=i("error"),a.src=e,t&&(a.referrerPolicy=t),()=>{r=!1}},[e,t]),r}(s,l.referrerPolicy),p=(0,i.c)(e=>{c(e),u.onImageLoadingStatusChange(e)});return(0,n.N)(()=>{"idle"!==f&&p(f)},[f,p]),"loaded"===f?(0,d.jsx)(o.sG.img,{...l,ref:t,src:s}):null});x.displayName=h;var g="AvatarFallback",y=a.forwardRef((e,t)=>{let{__scopeAvatar:r,delayMs:s,...i}=e,n=m(g,r),[c,l]=a.useState(void 0===s);return a.useEffect(()=>{if(void 0!==s){let e=window.setTimeout(()=>l(!0),s);return()=>window.clearTimeout(e)}},[s]),c&&"loaded"!==n.imageLoadingStatus?(0,d.jsx)(o.sG.span,{...i,ref:t}):null});y.displayName=g;var v=p,j=x,b=y},87481:(e,t,r)=>{"use strict";r.d(t,{dj:()=>f});var a=r(12115);let s=0,i=new Map,n=e=>{if(i.has(e))return;let t=setTimeout(()=>{i.delete(e),l({type:"REMOVE_TOAST",toastId:e})},1e6);i.set(e,t)},o=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:r}=t;return r?n(r):e.toasts.forEach(e=>{n(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===r||void 0===r?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},d=[],c={toasts:[]};function l(e){c=o(c,e),d.forEach(e=>{e(c)})}function u(e){let{...t}=e,r=(s=(s+1)%Number.MAX_SAFE_INTEGER).toString(),a=()=>l({type:"DISMISS_TOAST",toastId:r});return l({type:"ADD_TOAST",toast:{...t,id:r,open:!0,onOpenChange:e=>{e||a()}}}),{id:r,dismiss:a,update:e=>l({type:"UPDATE_TOAST",toast:{...e,id:r}})}}function f(){let[e,t]=a.useState(c);return a.useEffect(()=>(d.push(t),()=>{let e=d.indexOf(t);e>-1&&d.splice(e,1)}),[e]),{...e,toast:u,dismiss:e=>l({type:"DISMISS_TOAST",toastId:e})}}},91394:(e,t,r)=>{"use strict";r.d(t,{BK:()=>d,eu:()=>o,q5:()=>c});var a=r(95155),s=r(12115),i=r(85977),n=r(59434);let o=s.forwardRef((e,t)=>{let{className:r,...s}=e;return(0,a.jsx)(i.bL,{ref:t,className:(0,n.cn)("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",r),...s})});o.displayName=i.bL.displayName;let d=s.forwardRef((e,t)=>{let{className:r,...s}=e;return(0,a.jsx)(i._V,{ref:t,className:(0,n.cn)("aspect-square h-full w-full",r),...s})});d.displayName=i._V.displayName;let c=s.forwardRef((e,t)=>{let{className:r,...s}=e;return(0,a.jsx)(i.H4,{ref:t,className:(0,n.cn)("flex h-full w-full items-center justify-center rounded-full bg-muted",r),...s})});c.displayName=i.H4.displayName}},e=>{var t=t=>e(e.s=t);e.O(0,[2992,3644,4277,1554,4453,1492,6874,475,7250,8441,2721,7358],()=>t(81540)),_N_E=e.O()}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.