PageSourceSearch

https://blabber.ai/_next/static/chunks/3808.4fbad15239ead9d5.js

js blabber.ai collected 2026-10-05 12:56:06 UTC 14,782 bytes, 1 lines download raw bytes

1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e._sentryModuleMetadata=e._sentryModuleMetadata||{},e._sentryModuleMetadata[(new e.Error).stack]=function(e){for(var s=1;s<arguments.length;s++){var t=arguments[s];if(null!=t)for(var a in t)t.hasOwnProperty(a)&&(e[a]=t[a])}return e}({},e._sentryModuleMetadata[(new e.Error).stack],{"_sentryBundlerPluginAppKey:blabber-web":!0});var s=(new e.Error).stack;s&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[s]="fdac8062-4839-476a-9cef-58ef9da9927b",e._sentryDebugIdIdentifier="sentry-dbid-fdac8062-4839-476a-9cef-58ef9da9927b")}catch(e){}}();"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3808],{20671:(e,s,t)=>{t.r(s),t.d(s,{BugReportsTable:()=>U});var a=t(95155),r=t(12115),n=t(85127),d=t(30285),l=t(73667),i=t(54165),c=t(88539),o=t(59409),m=t(85057),u=t(1243),x=t(14186),h=t(40646),p=t(54861),v=t(81497),j=t(30446),f=t(47924),g=t(53904),b=t(21492),N=t(56671),w=t(59116),_=t(59434);let y=e=>"critical"===e?"live":"high"===e?"staff":"medium"===e?"gold":"soft",A=e=>"open"===e?"violet":"in_progress"===e||"resolved"===e?"gold":"duplicate"===e?"staff":"soft",C={ui_ux:"UI/UX",functionality:"Functionality",performance:"Performance",payment:"Payment",media:"Media",notifications:"Notifications",mobile:"Mobile",other:"Other"},k=e=>new Date(e).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}),S=e=>{switch(e){case"open":return(0,a.jsx)(u.A,{className:"h-4 w-4"});case"in_progress":return(0,a.jsx)(x.A,{className:"h-4 w-4"});case"resolved":return(0,a.jsx)(h.A,{className:"h-4 w-4"});case"closed":return(0,a.jsx)(p.A,{className:"h-4 w-4"});case"duplicate":return(0,a.jsx)(v.A,{className:"h-4 w-4"});default:return(0,a.jsx)(j.A,{className:"h-4 w-4"})}},U=(0,r.memo)(function(e){let{bugReports:s,onRefresh:t,onUpdateStatus:u,onAssignTo:x,staffUsers:h,isLoading:p=!1}=e,[v,U]=(0,r.useState)(""),[J,F]=(0,r.useState)("created_at"),[I,M]=(0,r.useState)("desc"),[L,B]=(0,r.useState)(null),[D,H]=(0,r.useState)(!1),[R,z]=(0,r.useState)(""),[K,T]=(0,r.useState)(""),[E,O]=(0,r.useState)(!1),q=(0,r.useCallback)(e=>{J===e?M("asc"===I?"desc":"asc"):(F(e),M("desc"))},[I,J]),P=(0,r.useMemo)(()=>{let e=v.trim().toLowerCase();return e?s.filter(s=>{var t,a,r,n,d,l,i;return(null==(t=s.title)?void 0:t.toLowerCase().includes(e))||(null==(a=s.description)?void 0:a.toLowerCase().includes(e))||(null==(n=s.user)||null==(r=n.username)?void 0:r.toLowerCase().includes(e))||(null==(l=s.user)||null==(d=l.full_name)?void 0:d.toLowerCase().includes(e))||(null==(i=s.category)?void 0:i.toLowerCase().includes(e))}):s},[s,v]),V=(0,r.useMemo)(()=>[...P].sort((e,s)=>{let t=e[J],a=s[J];return"string"==typeof t&&"string"==typeof a?"asc"===I?t.localeCompare(a):a.localeCompare(t):0}),[P,I,J]),X=(0,r.useCallback)(e=>{B(e),z(e.admin_notes||""),T(e.status),H(!0)},[]),Y=(0,r.useCallback)(async()=>{if(L){O(!0);try{await u(L.id,K,R),H(!1),B(null),N.toast.success("Bug report updated successfully")}catch(e){N.toast.error("Failed to update bug report")}finally{O(!1)}}},[R,K,u,L]);return(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)(w.v4,{children:[(0,a.jsx)(w.pN,{title:"Bug reports",description:"".concat(P.length," of ").concat(s.length," reports")}),(0,a.jsxs)("div",{className:"flex items-center gap-2 w-full sm:w-auto",children:[(0,a.jsx)(w.Hj,{value:v,onChange:U,placeholder:"Search bug reports…",className:"flex-1 sm:min-w-[240px]"}),(0,a.jsxs)(w.L6,{onClick:t,disabled:p,children:[(0,a.jsx)(f.A,{className:"h-4 w-4 opacity-0 absolute"}),(0,a.jsx)(g.A,{className:"h-4 w-4 ".concat(p?"animate-spin":"")})]})]})]}),(0,a.jsx)(w.Ag,{children:(0,a.jsxs)(n.XI,{children:[(0,a.jsx)(n.A0,{children:(0,a.jsxs)(w.jW,{children:[(0,a.jsx)(w.UF,{children:"Bug report"}),(0,a.jsx)(w.UF,{className:"hidden sm:table-cell",children:"Reporter"}),(0,a.jsx)(w.UF,{className:"hidden md:table-cell",children:(0,a.jsxs)(w.mI,{onClick:()=>q("category"),children:["Category ",(0,a.jsx)(b.A,{className:"h-3 w-3"})]})}),(0,a.jsx)(w.UF,{children:(0,a.jsxs)(w.mI,{onClick:()=>q("severity"),children:["Severity ",(0,a.jsx)(b.A,{className:"h-3 w-3"})]})}),(0,a.jsx)(w.UF,{children:(0,a.jsxs)(w.mI,{onClick:()=>q("status"),children:["Status ",(0,a.jsx)(b.A,{className:"h-3 w-3"})]})}),(0,a.jsx)(w.UF,{className:"hidden md:table-cell",children:(0,a.jsxs)(w.mI,{onClick:()=>q("created_at"),children:["Reported ",(0,a.jsx)(b.A,{className:"h-3 w-3"})]})}),(0,a.jsx)(w.UF,{children:"Actions"})]})}),(0,a.jsx)(n.BF,{children:0===V.length?(0,a.jsx)(n.Hj,{children:(0,a.jsxs)(n.nA,{colSpan:7,className:"text-center py-8",children:[(0,a.jsx)(j.A,{className:"h-12 w-12 mx-auto text-muted-foreground mb-4"}),(0,a.jsx)("h3",{className:"text-lg font-semibold mb-2",children:"No Bug Reports Found"}),(0,a.jsx)("p",{className:"text-muted-foreground",children:0===s.length?"There are no bug reports in the database yet.":"No bug reports match your search criteria."})]})}):V.map(e=>{var s,t,r,d,i,c,o;return(0,a.jsxs)(n.Hj,{className:"admin-row border-b border-border",children:[(0,a.jsx)(n.nA,{children:(0,a.jsxs)("div",{className:"min-w-0 max-w-[180px] sm:max-w-xs",children:[(0,a.jsx)("div",{className:"font-medium truncate text-sm",children:e.title}),(0,a.jsx)("div",{className:"text-xs text-muted-foreground truncate mt-0.5 hidden xs:block",children:e.description})]})}),(0,a.jsx)(n.nA,{className:(0,_.cn)(w.Km,"hidden sm:table-cell"),children:(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsxs)(l.eu,{className:"h-7 w-7 shrink-0",children:[(0,a.jsx)(l.BK,{src:(null==(s=e.user)?void 0:s.avatar_url)||""}),(0,a.jsx)(l.q5,{children:(null==(r=e.user)||null==(t=r.full_name)?void 0:t.charAt(0))||(null==(i=e.user)||null==(d=i.username)?void 0:d.charAt(0))||"U"})]}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsxs)("div",{className:"text-xs font-medium truncate",children:["@",null==(c=e.user)?void 0:c.username]}),(0,a.jsx)("div",{className:"text-xs text-muted-foreground truncate",children:null==(o=e.user)?void 0:o.full_name})]})]})}),(0,a.jsx)(n.nA,{className:(0,_.cn)(w.Km,"hidden md:table-cell"),children:(0,a.jsx)(w.Hp,{variant:"soft",children:C[e.category]||e.category})}),(0,a.jsx)(n.nA,{className:w.Km,children:(0,a.jsx)(w.Hp,{variant:y(e.severity),children:e.severity})}),(0,a.jsx)(n.nA,{className:w.Km,children:(0,a.jsx)(w.Hp,{variant:A(e.status),children:(0,a.jsxs)("span",{className:"inline-flex items-center gap-1",children:[S(e.status),e.status.replace("_"," ")]})})}),(0,a.jsxs)(n.nA,{className:(0,_.cn)(w.Km,"hidden md:table-cell"),children:[(0,a.jsx)("div",{className:"text-xs text-muted-foreground",children:k(e.created_at)}),"resolved"===e.status&&e.resolved_at&&(0,a.jsxs)("div",{className:"text-xs text-muted-foreground mt-0.5",children:["Resolved ",k(e.resolved_at)]})]}),(0,a.jsx)(n.nA,{className:w.Km,children:(0,a.jsx)(w.L6,{size:"sm",className:"h-8 px-3 text-xs whitespace-nowrap",onClick:()=>X(e),children:"View"})})]},e.id)})})]})}),(0,a.jsx)(i.lG,{open:D,onOpenChange:H,children:L&&(0,a.jsx)(w.yf,{icon:j.A,title:L.title,de
1scription:"Review and update bug report status",size:"wide",footer:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(d.$,{variant:"outline",className:w.gT,onClick:()=>H(!1),children:"Cancel"}),(0,a.jsx)(w.Yb,{onClick:Y,disabled:E,children:E?"Updating…":"Update report"})]}),children:(0,a.jsxs)("div",{className:"space-y-5",children:[(0,a.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Category"}),(0,a.jsx)("div",{className:"mt-1.5",children:(0,a.jsx)(w.Hp,{variant:"soft",children:C[L.category]||L.category})})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Severity"}),(0,a.jsx)("div",{className:"mt-1.5",children:(0,a.jsx)(w.Hp,{variant:y(L.severity),children:L.severity})})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Status"}),(0,a.jsx)("div",{className:"mt-1.5",children:(0,a.jsx)(w.Hp,{variant:A(L.status),children:L.status.replace("_"," ")})})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Reported"}),(0,a.jsx)("p",{className:"text-sm mt-1.5 text-muted-foreground",children:k(L.created_at)})]}),"resolved"===L.status&&L.resolved_at&&(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Resolved"}),(0,a.jsx)("p",{className:"text-sm mt-1.5 text-muted-foreground",children:k(L.resolved_at)})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Assigned to"}),(0,a.jsx)("p",{className:"text-sm mt-1.5 text-muted-foreground",children:L.assigned_user?"@".concat(L.assigned_user.username):"Unassigned"})]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Description"}),(0,a.jsx)("p",{className:"text-sm mt-1.5 whitespace-pre-wrap text-muted-foreground",children:L.description})]}),L.steps_to_reproduce&&(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Steps to reproduce"}),(0,a.jsx)("p",{className:"text-sm mt-1.5 whitespace-pre-wrap text-muted-foreground",children:L.steps_to_reproduce})]}),(0,a.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[L.expected_behavior&&(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Expected behavior"}),(0,a.jsx)("p",{className:"text-sm mt-1.5 text-muted-foreground",children:L.expected_behavior})]}),L.actual_behavior&&(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Actual behavior"}),(0,a.jsx)("p",{className:"text-sm mt-1.5 text-muted-foreground",children:L.actual_behavior})]})]}),(0,a.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[L.browser&&(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Browser"}),(0,a.jsx)("p",{className:"text-sm mt-1.5 text-muted-foreground",children:L.browser})]}),L.device&&(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Device"}),(0,a.jsx)("p",{className:"text-sm mt-1.5 text-muted-foreground",children:L.device})]})]}),L.additional_info&&(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{className:"text-sm font-semibold",children:"Additional information"}),(0,a.jsx)("p",{className:"text-sm mt-1.5 whitespace-pre-wrap text-muted-foreground",children:L.additional_info})]}),(0,a.jsxs)("div",{className:"space-y-4 border-t border-border pt-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{htmlFor:"status",className:"text-sm font-semibold",children:"Update status"}),(0,a.jsxs)(o.l6,{value:K,onValueChange:T,children:[(0,a.jsx)(o.bq,{id:"status",className:(0,_.cn)("mt-1.5 w-full",w.o3),children:(0,a.jsx)(o.yv,{})}),(0,a.jsxs)(o.gC,{children:[(0,a.jsx)(o.eb,{value:"open",children:"Open"}),(0,a.jsx)(o.eb,{value:"in_progress",children:"In progress"}),(0,a.jsx)(o.eb,{value:"resolved",children:"Resolved"}),(0,a.jsx)(o.eb,{value:"closed",children:"Closed"}),(0,a.jsx)(o.eb,{value:"duplicate",children:"Duplicate"})]})]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{htmlFor:"adminNotes",className:"text-sm font-semibold",children:"Admin notes"}),(0,a.jsx)(c.T,{id:"adminNotes",value:R,onChange:e=>z(e.target.value),placeholder:"Add internal notes about this bug report…",className:(0,_.cn)("mt-1.5",w.Ym),rows:3})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(m.J,{htmlFor:"assignee",className:"text-sm font-semibold",children:"Assign to staff"}),(0,a.jsxs)(o.l6,{value:L.assigned_to||"__unassigned__",onValueChange:e=>x(L.id,"__unassigned__"===e?null:e),children:[(0,a.jsx)(o.bq,{id:"assignee",className:(0,_.cn)("mt-1.5 w-full",w.o3),children:(0,a.jsx)(o.yv,{placeholder:"Unassigned"})}),(0,a.jsxs)(o.gC,{children:[(0,a.jsx)(o.eb,{value:"__unassigned__",children:"Unassigned"}),h.map(e=>(0,a.jsxs)(o.eb,{value:e.id,children:["@",e.username]},e.id))]})]})]})]})]})})})]})})},44838:(e,s,t)=>{t.d(s,{SQ:()=>i,_2:()=>c,mB:()=>o,rI:()=>d,ty:()=>l});var a=t(95155);t(12115);var r=t(72705),n=t(59434);function d(e){let{...s}=e;return(0,a.jsx)(r.bL,{"data-slot":"dropdown-menu",...s})}function l(e){let{...s}=e;return(0,a.jsx)(r.l9,{"data-slot":"dropdown-menu-trigger",...s})}function i(e){let{className:s,sideOffset:t=4,...d}=e;return(0,a.jsx)(r.ZL,{children:(0,a.jsx)(r.UC,{"data-slot":"dropdown-menu-content",sideOffset:t,className:(0,n.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:sli
1de-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",s),...d})})}function c(e){let{className:s,inset:t,variant:d="default",...l}=e;return(0,a.jsx)(r.q7,{"data-slot":"dropdown-menu-item","data-inset":t,"data-variant":d,className:(0,n.cn)("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",s),...l})}function o(e){let{className:s,...t}=e;return(0,a.jsx)(r.wv,{"data-slot":"dropdown-menu-separator",className:(0,n.cn)("bg-border -mx-1 my-1 h-px",s),...t})}},88539:(e,s,t)=>{t.d(s,{T:()=>n});var a=t(95155);t(12115);var r=t(59434);function n(e){let{className:s,...t}=e;return(0,a.jsx)("textarea",{"data-slot":"textarea",className:(0,r.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",s),...t})}}}]);

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.