1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="2461ef6d-3964-4882-89d8-1b56d3986890",e._sentryDebugIdIdentifier="sentry-dbid-2461ef6d-3964-4882-89d8-1b56d3986890")}catch(e){}}(),(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5480],{63558:function(e,t,a){(window.__NEXT_P=window.__NEXT_P||[]).push(["/dashboard/features/analytics",function(){return a(64285)}])},19550:function(e,t,a){"use strict";a.d(t,{Z:function(){return Location}});var r=a(85893);function Location(e){return(0,r.jsx)("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",...e,"data-sentry-element":"svg","data-sentry-component":"Location","data-sentry-source-file":"Location.tsx",children:(0,r.jsx)("path",{d:"M12 20.8995L16.9497 15.9497C19.6834 13.2161 19.6834 8.78392 16.9497 6.05025C14.2161 3.31658 9.78392 3.31658 7.05025 6.05025C4.31658 8.78392 4.31658 13.2161 7.05025 15.9497L12 20.8995ZM12 23.7279L5.63604 17.364C2.12132 13.8492 2.12132 8.15076 5.63604 4.63604C9.15076 1.12132 14.8492 1.12132 18.364 4.63604C21.8787 8.15076 21.8787 13.8492 18.364 17.364L12 23.7279ZM12 13C13.1046 13 14 12.1046 14 11C14 9.89543 13.1046 9 12 9C10.8954 9 10 9.89543 10 11C10 12.1046 10.8954 13 12 13ZM12 15C9.79086 15 8 13.2091 8 11C8 8.79086 9.79086 7 12 7C14.2091 7 16 8.79086 16 11C16 13.2091 14.2091 15 12 15Z","data-sentry-element":"path","data-sentry-source-file":"Location.tsx"})})}a(67294)},64285:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return Analytics}});var r=a(85893),s=a(17864),l=a(87163),n=a(54053),i=a(42950),d=a(22756);let o="/admin/db-chat",sendDbChatMessage=async e=>{let{data:t}=await d.tc.post("".concat(o,"/chat"),e,{timeout:12e4});return t.body},getDbChatBusinesses=async()=>{let{data:e}=await d.tc.get("".concat(o,"/businesses"));return e.body};var c=a(36492),x=a(48228),m=a(65400),u=a.n(m),h=a(1825),y=a(64749),p=a(89552),g=a(2307),f=a(94055),v=a(16318),b=a(5152),j=a.n(b),N=a(57460),w=a.n(N),k=a(67294);let C=j()(()=>a.e(4635).then(a.bind(a,74635)),{loadableGenerated:{webpack:()=>[74635]},ssr:!1}),D=["How many enquiries were created this month?","What are the top 10 customers by total spend?","Show me all enquiry counts by location in the last 3 months","Reviews requests sent vs received, separated by month, since Jan 2025. Return both sent and returned in the final CSV"];function CsvPreview(e){let{dataset:t}=e,[a,s]=(0,k.useState)(!1);if(!a)return(0,r.jsxs)(u(),{size:"small",type:"link",onClick:()=>s(!0),className:"mt-1 p-0 text-xs",children:[(0,r.jsx)("i",{className:"ri-table-line mr-1"}),"Preview data (",t.row_count," rows)"]});let l=t.columns.map(e=>({title:e,dataIndex:e,key:e,ellipsis:!0,width:150,render:e=>null==e?"â":String(e)}));return(0,r.jsxs)("div",{className:"mt-2","data-sentry-component":"CsvPreview","data-sentry-source-file":"DbChatDrawer.tsx",children:[(0,r.jsxs)("div",{className:"mb-1 flex items-center justify-between",children:[(0,r.jsxs)("span",{className:"text-[10px] text-gray-500 dark:text-gray-400",children:["Showing ",Math.min(t.rows.length,25)," of"," ",t.row_count," rows",t.truncated&&" (truncated)"]}),(0,r.jsx)(u(),{size:"small",type:"link",onClick:()=>s(!1),className:"p-0 text-xs","data-sentry-element":"Button","data-sentry-source-file":"DbChatDrawer.tsx",children:"Hide"})]}),(0,r.jsx)(g.Z,{columns:l,dataSource:t.rows,rowKey:(e,t)=>String(t),size:"small",scroll:{x:"max-content"},pagination:{pageSize:25,size:"small",showSizeChanger:!1},className:"text-xs [&_.ant-table-cell]:!px-2 [&_.ant-table-cell]:!py-1","data-sentry-element":"Table","data-sentry-source-file":"DbChatDrawer.tsx"})]})}function DbChatDrawer(){let{isSuperAdmin:e,business:t}=(0,n.Z)(),[a,d]=(0,k.useState)(!1),[o,m]=(0,k.useState)(""),[g,b]=(0,k.useState)([]),[j,N]=(0,k.useState)(null),_=(0,k.useRef)(null),S=(null==t?void 0:t.id)===l.vX,{data:L}=(0,c.a)({queryKey:["db-chat-businesses"],queryFn:getDbChatBusinesses,enabled:a&&e&&S});(0,k.useEffect)(()=>{var e;a&&(null===(e=_.current)||void 0===e||e.scrollIntoView({behavior:"smooth"}))},[g,a]);let F=(0,x.D)({mutationFn:sendDbChatMessage,onSuccess:e=>{b(t=>[...t,{role:"assistant",content:e.reply,csv_data:e.csv_data,timestamp:Date.now()}])},onError:e=>{var t;v.ZP.error({message:"Chat failed",description:(null==e?void 0:null===(t=e.data)||void 0===t?void 0:t.message)||(null==e?void 0:e.message)||"Unknown error"})}}),sendMessage=(e,a)=>{var r;let s=a.map(e=>({role:e.role,content:e.content}));F.mutate({message:e,history:s,business_db_name:j,business_id:null!==(r=null==t?void 0:t.id)&&void 0!==r?r:null})},send=e=>{let t=(null!=e?e:o).trim();t&&!F.isLoading&&(m(""),b(e=>[...e,{role:"user",content:t,timestamp:Date.now()}]),sendMessage(t,g))},retryLastMessage=()=>{if(F.isLoading)return;let e=[...g].reverse().findIndex(e=>"user"===e.role);if(-1===e)return;let t=g.length-1-e,a=g[t],r=g.slice(0,t+1);b(r);let s=g.slice(0,t);sendMessage(a.content,s)},clearConversation=()=>{b([]),m("")},K=(()=>{for(let e=g.length-1;e>=0;e-=1)if("user"===g[e].role)return e;return -1})();return e?(0,r.jsxs)(r.Fragment,{children:[!a&&(0,r.jsx)(f.default,{title:"DB Chat",placement:"left",children:(0,r.jsx)("button",{onClick:()=>d(!0),className:(0,i.cn)("fixed bottom-6 right-6 z-50 flex h-14 w-14","items-center justify-center rounded-full","bg-gradient-to-br from-primary to-primary-700","text-white shadow-lg shadow-primary-200","transition-transform hover:scale-105 active:scale-95"),"aria-label":"Open DB Chat",children:(0,r.jsx)("i",{className:"ri-sparkling-2-fill text-xl"})})}),(0,r.jsx)(h.Z,{open:a,onClose:()=>d(!1),title:null,placement:"right",width:"50%",closable:!1,destroyOnClose:!1,bodyStyle:{padding:0,display:"flex",flexDirection:"column"},"data-sentry-element":"Drawer","data-sentry-source-file":"DbChatDrawer.tsx",children:(0,r.jsxs)("div",{className:"flex h-full flex-col",children:[(0,r.jsxs)("div",{className:(0,i.cn)("flex items-center justify-between","border-b border-gray-200 dark:border-darkBorder","bg-gradient-to-r from-primary-50 to-[#F3F8FF]","dark:from-dark dark:to-dark","px-4 py-3"),children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("div",{className:(0,i.cn)("flex h-8 w-8 items-center justify-center","rounded-lg bg-gradient-to-br","from-primary to-primary-700 text-white"),children:(0,r.jsx)("i",{className:"ri-sparkling-2-fill text-sm"})}),(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-sm font-semibold text-gray-900 dark:text-white",children:"DB Chat"}),(0,r.jsx)("div",{className:"text-[10px] text-gray-500 dark:text-gray-400",children:"Ask questions about your data"})]})]}),(0,r.jsxs)("div",{className:"flex items-center gap-1",children:[g.length>0&&(0,r.jsx)(f.default,{title:"Clear conversation",children:(0,r.jsx)("button",{onClick:clearConversation,className:(0,i.cn)("flex h-7 w-7 items-center justify-center","rounded-md text-gray-500","hover:bg-white hover:text-gray-700","dark:hover:bg-gray-800 dark:hover:text-gray-300"),children:(0,r.jsx)("i",{className:"ri-eraser-line"})})}),(0,r.jsx)(f.default,{title:"Close","data-sentry-element":"Tooltip","data-sentry-source-file":"DbChatDrawer.tsx",children:(0,r.jsx)("button",{onClick:()=>d(!1),className:(0,i.cn)("flex h-7 w-7 items-center justify-center","rounded-md text-gray-500","hover:bg-white hover:text-gray-700","dark:hover:bg-gray-800 dark:hover:text-gray-300"),children:(0,r.jsx)("i",{className:"ri-close-line"})})})]})]}),S&&L&&(0,r.jsx)("div",{className:"border-b border-gray-100 px-4 py-2 dark:border-darkBorder",children:(0,r.jsx)(y.default,{showSearch:!0,placeholder:"Select a business",value:j,onChange:e=>{N(e),clearConversation()},options:L.map(e=>({value:e.db_name,label:e.name})),filterOption:(e,t)=>{var a,r;return null!==(r=null===(a=null==t?void 0:t.label)||void 0===a?void 0:a.toLowerCase().includes(e.toLowerCase()))&&void 0!==r&&r},className:"w-full",size:"small",allowClear:!0})}),(0,r.jsxs)("div",{className:"flex-1 overflow-y-auto px-4 py-3 text-sm",children:[0===g.length&&!F.isLoading&&(0,r.jsxs)("div",{className:"flex h-full flex-col items-center justify-center text-center",children:[(0,r.jsx)("div",{className:"mb-3 flex h-12 w-12 items-center justify-center rounded-full bg-primary-50 text-primary dark:bg-primary/20",children:(0,r.jsx)("i",{className:"ri-sparkling-2-fill text-2xl"})}),(0,r.jsx)("div",{className:"mb-1 text-base font-semibold text-gray-800 dark:text-white",children:"Ask about your data"}),(0,r.jsx)("p",{className:"mb-5 max-w-xs text-xs text-gray-500 dark:text-gray-400",children:"I can query the database and answer questions about your business data. Results are downloadable as CSV."}),(0,r.jsx)("div",{className:"flex w-full flex-col gap-2",children:D.map(e=>(0,r.jsxs)("button",{onClick:()=>send(e),disabled:S&&!j,className:(0,i.cn)("rounded-lg border border-gray-200","bg-gray-50 px-3 py-2 text-left text-xs","text-gray-700 transition-colors","hover:border-primary hover:bg-primary-50","hover:text-primary","dark:border-darkBorder dark:bg-dark","dark:text-gray-300","dark:hover:border-primary dark:hover:bg-primary/10","disabled:cursor-not-allowed disabled:opacity-50"),children:[(0,r.jsx)("i",{className:"ri-arrow-right-up-line mr-1 text-[10px]"}),e]},e))})]}),g.map((e,t)=>{var a;return(0,r.jsxs)("div",{className:(0,i.cn)("mb-3 flex flex-col","user"===e.role?"items-end":"items-start"),children:[(0,r.jsxs)("div",{className:(0,i.cn)("max-w-[90%] rounded-2xl px-3 py-2","user"===e.role?"bg-primary text-white":"bg-primary-50 text-gray-800 dark:bg-gray-800 dark:text-gray-200"),children:["assistant"===e.role?(0,r.jsx)("div",{className:"space-y-2 break-words text-[13px] leading-relaxed",children:(0,r.jsx)(C,{components:{p:e=>{let{children:t}=e;return(0,r.jsx)("p",{className:"my-1",children:t})},strong:e=>{let{children:t}=e;return(0,r.jsx)("strong",{className:"font-semibold",children:t})},em:e=>{let{children:t}=e;return(0,r.jsx)("em",{className:"italic",children:t})},ul:e=>{let{children:t}=e;return(0,r.jsx)("ul",{className:"my-1 list-disc space-y-1 pl-5",children:t})},ol:e=>{let{children:t}=e;return(0,r.jsx)("ol",{className:"my-1 list-decimal space-y-1 pl-5",children:t})},li:e=>{let{children:t}=e;return(0,r.jsx)("li",{children:t})},h1:e=>{let{children:t}=e;return(0,r.jsx)("h1",{className:"my-2 text-base font-bold",children:t})},h2:e=>{let{children:t}=e;return(0,r.jsx)("h2",{className:"my-2 text-sm font-bold",children:t})},h3:e=>{let{children:t}=e;return(0,r.jsx)("h3",{className:"my-1 text-sm font-semibold",children:t})},code:e=>{let{children:t}=e;return(0,r.jsx)("code",{className:"rounded bg-gray-200 px-1 py-0.5 text-[12px] dark:bg-gray-700",children:t})},pre:e=>{let{children:t}=e;return(0,r.jsx)("pre",{className:"my-1 overflow-x-auto rounded bg-gray-200 p-2 text-[12px] dark:bg-gray-700",children:t})},a:e=>{let{href:t,children:a}=e;return(0,r.jsx)("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:"text-primary underline hover:opacity-80",children:a})},blockquote:e=>{let{children:t}=e;return(0,r.jsx)("blockquote",{className:"my-1 border-l-2 border-gray-300 pl-2 italic text-gray-600 dark:border-gray-600 dark:text-gray-400",children:t})}},children:e.content})}):(0,r.jsx)("div",{className:"whitespace-pre-wrap break-words text-[13px] leading-relaxed",children:e.content}),"assistant"===e.role&&e.csv_data&&e.csv_data.length>0&&e.csv_data.map((e,t)=>(0,r.jsxs)("div",{className:"mt-2 border-t border-gray-200 pt-2 dark:border-gray-700",children:[(0,r.jsxs)(u(),{size:"small",type:"primary",ghost:!0,icon:(0,r.jsx)("i",{className:"ri-download-l
1ine"}),onClick:()=>(function(e,t){let a=w().unparse({fields:e.columns,data:e.rows.map(t=>e.columns.map(e=>{var a;return null!==(a=t[e])&&void 0!==a?a:""}))}),r=new Blob([a],{type:"text/csv;charset=utf-8;"}),s=URL.createObjectURL(r),l=document.createElement("a");l.href=s,l.setAttribute("download","query-result-".concat(t+1,".csv")),document.body.appendChild(l),l.click(),l.remove(),URL.revokeObjectURL(s)})(e,t),children:["Download CSV (",e.row_count," ","rows)"]}),(0,r.jsx)(CsvPreview,{dataset:e})]},t))]}),(0,r.jsxs)("div",{className:(0,i.cn)("mt-1 flex items-center gap-1.5 px-1 text-[10px] text-gray-400 dark:text-gray-500","user"===e.role?"flex-row-reverse":"flex-row"),children:[(0,r.jsx)("span",{children:(a=e.timestamp,new Date(a).toLocaleTimeString([],{hour:"numeric",minute:"2-digit"}))}),(0,r.jsx)(f.default,{title:"user"===e.role?"Copy message":"Copy reply",children:(0,r.jsx)("button",{onClick:()=>{var t;return t=e.content,void(navigator.clipboard.writeText(t),v.ZP.success({message:"Copied to clipboard",duration:2}))},className:"flex h-4 w-4 items-center justify-center rounded text-gray-400 hover:text-gray-600 dark:hover:text-gray-300","aria-label":"Copy",children:(0,r.jsx)("i",{className:"ri-clipboard-line text-[10px]"})})}),"user"===e.role&&t===K&&!F.isLoading&&(0,r.jsx)(f.default,{title:"Retry",children:(0,r.jsx)("button",{onClick:retryLastMessage,className:"flex h-4 w-4 items-center justify-center rounded text-gray-400 hover:text-primary dark:hover:text-primary","aria-label":"Retry",children:(0,r.jsx)("i",{className:"ri-refresh-line text-[10px]"})})})]})]},t)}),F.isLoading&&(0,r.jsx)("div",{className:"mb-3 flex justify-start",children:(0,r.jsxs)("div",{className:"rounded-2xl bg-primary-50 px-3 py-2 text-gray-500 dark:bg-gray-800 dark:text-gray-400",children:[(0,r.jsx)(p.default,{size:"small"}),(0,r.jsx)("span",{className:"ml-2 text-xs",children:"Querying databaseâ¦"})]})}),(0,r.jsx)("div",{ref:_})]}),(0,r.jsxs)("div",{className:"border-t border-gray-200 p-3 dark:border-darkBorder",children:[(0,r.jsxs)("div",{className:"flex items-end gap-2",children:[(0,r.jsx)(s.default.TextArea,{value:o,onChange:e=>m(e.target.value),onPressEnter:e=>{e.shiftKey||(e.preventDefault(),send())},placeholder:S&&!j?"Select a business firstâ¦":"Ask a question about your dataâ¦",disabled:F.isLoading||S&&!j,autoSize:{minRows:1,maxRows:4},className:"text-[13px]","data-sentry-element":"unknown","data-sentry-source-file":"DbChatDrawer.tsx"}),(0,r.jsx)(u(),{type:"primary",icon:(0,r.jsx)("i",{className:"ri-send-plane-fill"}),onClick:()=>send(),disabled:!o.trim()||F.isLoading||S&&!j,"data-sentry-element":"Button","data-sentry-source-file":"DbChatDrawer.tsx"})]}),(0,r.jsxs)("div",{className:"mt-1.5 flex items-center justify-between text-[10px] text-gray-400 dark:text-gray-500",children:[(0,r.jsx)("span",{children:"Enter to send \xb7 Shift+Enter for newline"}),(0,r.jsx)("span",{children:"Read-only queries only"})]})]})]})})]}):null}var _=a(70302),S=a(36671),L=a(20838),F=a(46888),K=a(14195),R=a(3023),A=a(75358),P=a(89541),q=a(98687),E=a(82799),z=a(2763),M=a(1752),T=a(75268),Z=a(98321),B=a(39277),I=a(89687),O=a(89709),V=a(1516),Y=a(32087),Q=a(41481),H=a(29557),G=a(76224),U=a(41700);let W={light:"",dark:".dark"},X=k.createContext(null);function ChartContainer(e){let{id:t,className:a,children:s,config:l,...n}=e,d=k.useId(),o="chart-".concat(t||d.replace(/:/g,""));return(0,r.jsx)(X.Provider,{value:{config:l},"data-sentry-element":"unknown","data-sentry-component":"ChartContainer","data-sentry-source-file":"Chart.tsx",children:(0,r.jsxs)("div",{"data-slot":"chart","data-chart":o,className:(0,i.cn)("[&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-surface]:outline-hidden flex aspect-video justify-center text-xs [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-sector[stroke='#fff']]:stroke-transparent",a),...n,children:[(0,r.jsx)(Ch
1artStyle,{id:o,config:l,"data-sentry-element":"ChartStyle","data-sentry-source-file":"Chart.tsx"}),(0,r.jsx)(H.h,{"data-sentry-element":"unknown","data-sentry-source-file":"Chart.tsx",children:s})]})})}let ChartStyle=e=>{let{id:t,config:a}=e,s=Object.entries(a).filter(e=>{let[,t]=e;return t.theme||t.color});return s.length?(0,r.jsx)("style",{dangerouslySetInnerHTML:{__html:Object.entries(W).map(e=>{let[a,r]=e;return"\n".concat(r," [data-chart=").concat(t,"] {\n").concat(s.map(e=>{var t;let[r,s]=e,l=(null===(t=s.theme)||void 0===t?void 0:t[a])||s.color;return l?" --color-".concat(r,": ").concat(l,";"):null}).join("\n"),"\n}\n")}).join("\n")},"data-sentry-component":"ChartStyle","data-sentry-source-file":"Chart.tsx"}):null},$=G.u;function ChartTooltipContent(e){let{active:t,payload:a,className:s,indicator:l="dot",hideLabel:n=!1,hideIndicator:d=!1,label:o,labelFormatter:c,labelClassName:x,formatter:m,color:u,nameKey:h,labelKey:y}=e,{config:p}=function(){let e=k.useContext(X);if(!e)throw Error("useChart must be used within a <ChartContainer />");return e}(),g=k.useMemo(()=>{var e;if(n||!(null==a?void 0:a.length))return null;let[t]=a,s="".concat(y||(null==t?void 0:t.dataKey)||(null==t?void 0:t.name)||"value"),l=getPayloadConfigFromPayload(p,t,s),d=y||"string"!=typeof o?null==l?void 0:l.label:(null===(e=p[o])||void 0===e?void 0:e.label)||o;return c?(0,r.jsx)("div",{className:(0,i.cn)("font-medium",x),children:c(d,a)}):d?(0,r.jsx)("div",{className:(0,i.cn)("font-medium capitalize",x),children:d}):null},[o,c,a,n,x,p,y]);if(!t||!(null==a?void 0:a.length))return null;let f=1===a.length&&"dot"!==l;return(0,r.jsxs)("div",{className:(0,i.cn)("grid min-w-[12rem] items-start gap-1.5 rounded-lg border border-gray-200 bg-white px-2.5 py-1.5 text-xs shadow-xl dark:border-darkBorder dark:bg-dark",s),"data-sentry-component":"ChartTooltipContent","data-sentry-source-file":"Chart.tsx",children:[f?null:g,(0,r.jsx)("div",{className:"grid gap-1.5",children:a.filter(e=>"none"!==e.type).map((e,t)=>{let a="".concat(h||e.name||e.dataKey||"value"),s=getPayloadConfigFromPayload(p,e,a),n=u||e.payload.fill||e.color;return(0,r.jsx)("div",{className:(0,i.cn)("[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5","dot"===l&&"items-center"),children:m&&(null==e?void 0:e.value)!==void 0&&e.name?m(e.value,e.name,e,t,e.payload):(0,r.jsxs)(r.Fragment,{children:[(null==s?void 0:s.icon)?(0,r.jsx)(s.icon,{}):!d&&(0,r.jsx)("div",{className:(0,i.cn)("border-(--color-border) bg-(--color-bg) shrink-0 rounded-[2px]",{"h-2.5 w-2.5":"dot"===l,"w-1":"line"===l,"w-0 border-[1.5px] border-dashed bg-transparent":"dashed"===l,"my-0.5":f&&"dashed"===l}),style:{backgroundColor:n,"--color-bg":n,"--color-border":n}}),(0,r.jsxs)("div",{className:(0,i.cn)("flex flex-1 justify-between capitalize leading-none",f?"items-end":"items-center"),children:[(0,r.jsxs)("div",{className:"grid gap-1.5 leading-4",children:[f?g:null,(0,r.jsx)("span",{className:"text-muted-foreground",children:(null==s?void 0:s.label)||e.name})]}),e.value&&(0,r.jsx)("span",{className:"text-foreground font-mono font-medium tabular-nums",children:e.value.toLocaleString()})]})]})},e.dataKey)})})]})}function getPayloadConfigFromPayload(e,t,a){if("object"!=typeof t||null===t)return;let r="payload"in t&&"object"==typeof t.payload&&null!==t.payload?t.payload:void 0,s=a;return a in t&&"string"==typeof t[a]?s=t[a]:r&&a in r&&"string"==typeof r[a]&&(s=r[a]),s in e?e[s]:e[a]}function HorizontalBarChart(e){var t;let{chartConfig:a}=e,s=a.data,l=a.xKey,n=a.yKeys||[],i=n.length>1,d=i?null:(null===(t=n[0])||void 0===t?void 0:t.key)||a.valueKey||"value",o=i?Math.max(...s.flatMap(e=>n.map(t=>Number(e[t.key])||0)),1):Math.max(...s.map(e=>Number(e[d])||0),1);return(0,r.jsx)("div",{className:"w-full space-y-6 py-2","data-sentry-component":"HorizontalBarChart","data-sentry-source-file":"DynamicChart.tsx",children:s.map((e,t)=>{var s,c,x,m;let u=e[l],h=e.previousValue||e.previous_value||e.previous||e.change||0;if(0!==h||e.previousValue,i)return(0,r.jsxs)("div",{className:"space-y-3",children:[(0,r.jsx)("div",{className:"text-sm font-normal text-gray-700 dark:text-gray-300",children:u}),(0,r.jsx)("div",{className:"space-y-2.5",children:n.map((t,s)=>{var l,n,i,d;let c=Number(e[t.key])||0,x=o>0?c/o*100:0,m=(null===(i=a.metadata)||void 0===i?void 0:null===(n=i.chart_config)||void 0===n?void 0:null===(l=n[t.key])||void 0===l?void 0:l.color)||t.color||"#60A5FA",u=(null===(d=a.config[t.key])||void 0===d?void 0:d.label)||t.key;return(0,r.jsxs)("div",{className:"space-y-1",children:[(0,r.jsx)("div",{className:"text-xs capitalize text-gray-500 dark:text-gray-400",children:u}),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("div",{className:"relative flex-1",children:(0,r.jsx)("div",{className:"h-5 rounded-md rounded-bl-none rounded-tl-none transition-all duration-300",style:{width:x>0?"".concat(x,"%"):"0.5%",backgroundColor:m,minWidth:c>0?"4px":"0"}})}),(0,r.jsx)("div",{className:"min-w-[2rem] text-right text-sm font-medium text-gray-700 dark:text-gray-300",children:Number.isInteger(c)?c:c.toFixed(2)})]})]},s)})})]},t);let y=Number(e[d])||0,p=o>0?y/o*100:0,g=(null===(x=a.metadata)||void 0===x?void 0:null===(c=x.chart_config)||void 0===c?void 0:null===(s=c[d])||void 0===s?void 0:s.color)||(null===(m=n[0])||void 0===m?void 0:m.color)||"#60A5FA";return(0,r.jsxs)("div",{className:"space-y-1.5",children:[(0,r.jsx)("div",{className:"text-sm font-normal capitalize text-gray-700 dark:text-gray-300",children:u}),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsx)("div",{className:"relative flex-1",children:(0,r.jsx)("div",{className:"h-6 rounded-md rounded-bl-none rounded-tl-none transition-all duration-300",style:{width:p>0?"".concat(p,"%"):"0.5%",backgroundColor:g,minWidth:y>0?"4px":"0"}})}),(0,r.jsx)("div",{className:"min-w-[2rem] text-right text-sm font-medium text-gray-700 dark:text-gray-300",children:y})]})]},t)})})}function DynamicChart(e){var t,a,s,l;let{chartConfig:n}=e,i=n.type;if(0===n.data.length)return(0,r.jsx)(_.Z,{title:(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)("h3",{className:"mb-1 font-medium text-primary",children:n.title}),(0,r.jsx)("p",{className:"text-[13px] font-normal text-gray-500",children:n.explanation})]}),className:"h-full",bodyStyle:{height:"100%"},children:(0,r.jsx)("div",{className:"flex w-full items-center justify-center",children:(0,r.jsx)(S.default,{description:"No data available",image:S.default.PRESENTED_IMAGE_SIMPLE})})});switch(i){case"kpi":return(0,r.jsx)(_.Z,{title:(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)("h3",{className:"mb-1 font-medium text-primary",children:n.title}),(0,r.jsx)("p",{className:"whitespace-pre-wrap text-[13px] font-normal text-gray-500",children:n.explanation})]}),className:"h-full",children:(0,r.jsx)("div",{className:"flex h-full flex-col items-center justify-center gap-4",children:n.data.map(e=>(0,r.jsx)("div",{className:"flex items-center justify-center gap-2 text-2xl text-primary",children:Object.entries(e).map(e=>
1{let[t,a]=e;return(0,r.jsx)("div",{children:(0,r.jsx)("span",{className:"text-primary",children:a||"--"})},t)})},e.key))})});case"table":let d=Object.keys((null===(t=n.data)||void 0===t?void 0:t[0])||{}).map(e=>({title:(0,Q.kC)(null==e?void 0:e.replaceAll("_"," ")),dataIndex:e,key:e,className:"whitespace-nowrap min-w-[200px]",render:e=>(0,r.jsx)("span",{className:"truncate",children:(null==e?void 0:e.toString())||"--"})}));return(0,r.jsx)(_.Z,{title:(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)("h3",{className:"mb-1 font-medium text-primary",children:n.title}),(0,r.jsx)("p",{className:"whitespace-pre-wrap text-[13px] font-normal text-gray-500",children:n.explanation})]}),children:(0,r.jsx)(g.Z,{dataSource:n.data,size:"large",className:"[&_tr:nth-child(odd)]:bg-gray-200/70 dark:[&_tr:nth-child(odd)]:bg-gray-800/70",columns:d,scroll:{x:!0,y:500},pagination:{showTotal:(e,t)=>(0,r.jsx)("span",{className:"text-xs text-gray-500",children:"".concat(t[0],"-").concat(t[1]," of ").concat(e," items")})}})});case"area":return(0,r.jsx)(_.Z,{title:(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)("h3",{className:"mb-1 font-medium text-primary",children:n.title}),(0,r.jsx)("p",{className:"whitespace-pre-wrap text-[13px] font-normal text-gray-500",children:n.explanation})]}),bodyStyle:{height:"100%",paddingTop:0},className:"h-full",children:(0,r.jsx)(L.default,{items:[{key:"area",label:"Graph",className:"pt-5",children:(0,r.jsx)(ChartContainer,{className:"aspect-square max-h-full w-full",config:n.config,children:(0,r.jsxs)(F.T,{accessibilityLayer:!0,data:n.data,children:[(0,r.jsx)(K.q,{vertical:!1}),(0,r.jsx)(R.K,{interval:0,dataKey:n.xKey,tickLine:!1,axisLine:!1,tickMargin:13,angle:45,tickFormatter:e=>(0,Q.kC)(e.length>4?"".concat(e.slice(0,4),"..."):e)}),(0,r.jsx)($,{cursor:!1,content:(0,r.jsx)(ChartTooltipContent,{indicator:"line"})}),null===(a=n.yKeys)||void 0===a?void 0:a.map(e=>(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(A.B,{dataKey:e.key,tickLine:!1,axisLine:!1,tickMargin:13}),(0,r.jsx)(P.uN,{dataKey:e.key,type:"natural",fill:e.color,fillOpacity:.4,stroke:e.color},e.key)]}))]})})},{key:"table",label:"Table",className:"pt-5",children:(0,r.jsx)(TableView,{chartConfig:n})}]})});case"bar":return(0,r.jsx)(_.Z,{title:(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)("h3",{className:"mb-1 font-medium text-primary",children:n.title}),(0,r.jsx)("p",{className:"whitespace-pre-wrap text-[13px] font-normal text-gray-500",children:n.explanation})]}),bodyStyle:{height:"100%",paddingTop:0},className:"h-full",children:(0,r.jsx)(L.default,{items:[{key:"bar",label:"Graph",className:"pt-5",children:(0,r.jsx)(HorizontalBarChart,{chartConfig:n})},{key:"table",label:"Table",className:"pt-5",children:(0,r.jsx)(TableView,{chartConfig:n})}]})});case"line":return(0,r.jsx)(_.Z,{title:(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)("h3",{className:"mb-1 font-medium text-primary",children:n.title}),(0,r.jsx)("p",{className:"whitespace-pre-wrap text-[13px] font-normal text-gray-500",children:n.explanation})]}),bodyStyle:{height:"100%"},children:(0,r.jsx)(ChartContainer,{config:n.config,className:"aspect-square max-h-[350px] w-full overflow-hidden",children:(0,r.jsxs)(q.w,{accessibilityLayer:!0,data:n.data,margin:{top:20,left:12,right:12},children:[(0,r.jsx)(K.q,{vertical:!1}),(0,r.jsx)(R.K,{interval:0,dataKey:n.xKey,tickLine:!1,axisLine:!1,tickMargin:13,angle:45,tickFormatter:e=>(0,Q.kC)(e.length>4?"".concat(e.slice(0,4),"..."):e)}),(0,r.jsx)($,{cursor:!1,content:(0,r.jsx)(ChartTooltipContent,{className:"w-[150px]",indicator:"line"})}),null===(s=n.yKeys)||void 0===s?void 0:s.map(e=>(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(A.B,{dataKey:e.key,tickLine:!1,axisLine:!1,tickMargin:13}),(0,r.jsx)(E.x1,{dataKey:e.key,type:"natural",stroke:e.color,strokeWidth:2,dot:{fill:e.color},activeDot:{r:6},children:(0,r.jsx)(z.e3,{position:"top",offset:12,className:"fill-foreground",fontSize:12})},e.key)]}))]})})});case"pie":return(0,r.jsx)(_.Z,{title:(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)("h3",{className:"mb-1 font-medium text-primary",children:n.title}),(0,r.jsx)("p",{className:"whitespace-pre-wrap text-[13px] font-normal text-gray-500",children:n.explanation})]}),bodyStyle:{height:"100%"}
1,children:(0,r.jsx)(ChartContainer,{config:n.config,className:"[&_.recharts-text]:fill-background mx-auto aspect-square max-h-[350px] overflow-hidden",children:(0,r.jsxs)(M.u,{children:[(0,r.jsx)($,{content:(0,r.jsx)(ChartTooltipContent,{nameKey:n.nameKey,hideLabel:!0})}),(0,r.jsx)(T.by,{data:n.data,dataKey:n.valueKey,children:(0,r.jsx)(z.e3,{dataKey:n.nameKey,className:"fill-amber-100",stroke:"none",fontSize:12,formatter:e=>{var t;return null===(t=n.config[e])||void 0===t?void 0:t.label}})})]})})});case"radar":return(0,r.jsx)(_.Z,{title:(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)("h3",{className:"mb-1 font-medium text-primary",children:n.title}),(0,r.jsx)("p",{className:"whitespace-pre-wrap text-[13px] font-normal text-gray-500",children:n.explanation})]}),bodyStyle:{height:"100%"},children:(0,r.jsx)(ChartContainer,{config:n.config,className:"mx-auto aspect-square max-h-[350px] overflow-hidden",children:(0,r.jsxs)(Z.H,{data:n.data,children:[(0,r.jsx)($,{cursor:!1,content:(0,r.jsx)(ChartTooltipContent,{})}),(0,r.jsx)(B.I,{dataKey:n.xKey}),(0,r.jsx)(I.n,{}),null===(l=n.yKeys)||void 0===l?void 0:l.map(e=>(0,r.jsx)(O.Fk,{dataKey:e.key,fill:e.color,fillOpacity:.1,dot:{r:3,fillOpacity:1}},e.key))]})})});case"radial":return(0,r.jsx)(_.Z,{title:(0,r.jsxs)("div",{className:"py-4",children:[(0,r.jsx)("h3",{className:"mb-1 font-medium text-primary",children:n.title}),(0,r.jsx)("p",{className:"whitespace-pre-wrap text-[13px] font-normal text-gray-500",children:n.explanation})]}),bodyStyle:{height:"100%"},children:(0,r.jsx)(ChartContainer,{config:n.config,className:"mx-auto aspect-square max-h-[350px] overflow-hidden",children:(0,r.jsxs)(V.B,{data:n.data,startAngle:-90,endAngle:380,innerRadius:50,children:[(0,r.jsx)($,{cursor:!1,content:(0,r.jsx)(ChartTooltipContent,{hideLabel:!0,nameKey:n.nameKey})}),(0,r.jsx)(Y.Gm,{dataKey:n.valueKey,background:!0,children:(0,r.jsx)(z.e3,{position:"insideStart",dataKey:n.nameKey,className:"fill-white capitalize mix-blend-luminosity",fontSize:11})})]})})});default:return(0,r.jsx)(r.Fragment,{})}}function TableView(e){var t;let{chartConfig:a}=e,s=Object.keys((null===(t=a.data)||void 0===t?void 0:t[0])||{}).map(e=>({title:(0,Q.kC)(null==e?void 0:e.replaceAll("_"," ")),dataIndex:e,key:e,className:"whitespace-nowrap min-w-[200px]"}));return(0,r.jsx)(g.Z,{dataSource:a.data,size:"large",className:"[&_tr:nth-child(odd)]:bg-gray-200/70 dark:[&_tr:nth-child(odd)]:bg-gray-800/70",columns:s,scroll:{x:!0,y:500},"data-sentry-element":"Table","data-sentry-component":"TableView","data-sentry-source-file":"DynamicChart.tsx"})}U.D;var J=a(65295),ee=a(4836),et=a(85945),ea=a(74253),er=a(10149),es=a(74048),el=a(59361),en=a(27484),ei=a.n(en),ed=a(11163),eo=a(62443),ec=a(60872),ex=a(30286);let em=(0,ex.$z)([{label:"Today",range:()=>({startDate:new Date,endDate:new Date}),value:"0"},{label:"Last 7 Days",range:()=>({startDate:ei()().subtract(7,"day").toDate(),endDate:new Date}),value:"7"},{label:"Last 14 Days",range:()=>({startDate:ei()().subtract(14,"day").toDate(),endDate:new Date}),value:"14"},{label:"Last 30 Days",range:()=>({startDate:ei()().subtract(30,"day").toDate(),endDate:new Date}),value:"30"},{label:"Last 45 Days",range:()=>({startDate:ei()().subtract(45,"day").toDate(),endDate:new Date}),value:"45"},{label:"Last 3 Months",range:()=>({startDate:ei()().subtract(3,"months").toDate(),endDate:new Date}),value:"90"},{label:"Last 6 Months",range:()=>({startDate:ei()().subtract(6,"months").toDate(),endDate:new Date}),value:"180"},{label:"Last Year",range:()=>({startDate:ei()().subtract(1,"year").toDate(),endDate:new Date}),value:"365"},{label:"All Time",range:()=>({startDate:void 0,endDate:new Date})}]);function DateRangeFilter(e){var t;let{dateRange:a,setDateRange:s}=e,[l,n]=(0,k.useState)(!1),i=(0,ec.default)(),[d,o]=(0,k.useState)([{endDate:new Date,startDate:ei()().subtract(30,"day").toDate(),key:"selection"}]),c=ei()(a[0].endDate).diff(a[0].startDate,"day"),x=isNaN(c)?"All Time":(null===(t=em.find(e=>e.value==c))||void 0===t?void 0:t.label)||"".concat(ei()(d[0].startDate).format("DD/MM/YYYY")," to ").concat(ei()(d[0].endDate).format("DD/MM/YYYY")),m=(0,k.useCallback)(()=>{o([{endDate:new Date,startDate:ei()().subtract(30,"day").toDate(),key:"selection"}]),s([{endDate:new Date,startDate:ei()().subtract(30,"day").toDate(),key:"selection"}]),n(!1)},[]);return(0,k.useEffect)(()=>{o(a)},[a]),(0,r.jsx)("div",{className:"flex flex-col gap-1.5","data-sentry-component":"DateRangeFilter","data-sentry-source-file":"DateRangeFilter.tsx",children:(0,r.jsx)(eo.default,{open:l,onOpenChange:n,placement:"bottomLeft",autoAdjustOverflow:!0,trigger:["click"],content:(0,r.jsxs)("section",{className:"space-y-4",children:[(0,r.jsx)("div",{className:"flex items-center justify-between px-4 pt-3",children:(0,r.jsx)("h1",{className:"text-base font-medium text-primary",children:"Filter"})}),(0,r.jsx)(ea.default,{className:"border-[#D2E3FF] dark:border-darkBorder"}),(0,r.jsx)(ex.Dw,{className:"coax-date-range-picker",onChange:e=>{o([e.selection])}
1,maxDate:ei()().toDate(),preventSnapRefocus:!0,moveRangeOnFirstSelection:!1,showMonthAndYearPickers:!1,months:2,ranges:d,direction:i.xl?"horizontal":"vertical",showDateDisplay:!1,staticRanges:em,inputRanges:[],rangeColors:["#1E75FF"],fixedHeight:!0}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(u(),{size:"large",type:"primary",className:"px-7",onClick:()=>{s(d),n(!1)},children:"Apply"}),(0,r.jsx)(u(),{onClick:m,size:"large",className:"px-7",children:"Reset"})]})]}),"data-sentry-element":"Popover","data-sentry-source-file":"DateRangeFilter.tsx",children:(0,r.jsxs)("div",{className:"flex items-center gap-4",children:[(0,r.jsx)("p",{className:"flex items-center gap-2 text-sm text-gray-600 dark:text-gray-200",children:x}),(0,r.jsx)(y.default,{size:"large",className:"text-[#445668]",open:!1,placeholder:(0,r.jsxs)("p",{className:"flex items-center gap-2 dark:text-gray-200",children:[(0,r.jsx)("i",{className:"ri-filter-line"}),"Filter"]}),"data-sentry-element":"Select","data-sentry-source-file":"DateRangeFilter.tsx"},x)]})})})}var eu=a(19550);function LocationFilter(e){var t;let{selectedLocations:a,setSelectedLocations:s}=e,[l,d]=(0,k.useState)(!1),{business:o}=(0,n.Z)(),[c,x]=(0,k.useState)([]);return(0,k.useEffect)(()=>{x(a)},[a]),(0,r.jsx)(eo.default,{open:l,onOpenChange:d,trigger:["click"],placement:"bottom",content:(0,r.jsxs)("section",{className:"space-y-3",children:[(0,r.jsxs)("section",{className:(0,i.cn)("h-[212px] w-[300px] space-y-3 overflow-y-auto overflow-x-hidden",(null==o?void 0:o.locations)&&(null==o?void 0:o.locations.length)>2&&"h-[250px]",(null==o?void 0:o.locations)&&(null==o?void 0:o.locations.length)>3&&"h-[300px]"),children:[(null==o?void 0:o.locations)&&(null==o?void 0:o.locations.length)>1&&(0,r.jsxs)(u(),{size:"large",block:!0,onClick:()=>{x([])},ghost:!0,className:"justify-start gap-2 bg-gray-100 text-black hover:bg-primary-200 disabled:cursor-not-allowed dark:bg-gray-800 dark:hover:bg-gray-700 ".concat(0===c.length?"bg-primary-200 text-primary":"hover:text-primary disabled:hover:bg-gray-100 disabled:hover:text-gray-600 dark:text-gray-200 dark:hover:text-primary"),children:[(0,r.jsx)(eu.Z,{className:"h-[18px] w-[18px]"})," ",(0,r.jsx)("span",{className:"w-[90%] truncate text-left",children:"All Locations"})]}),null==o?void 0:null===(t=o.locations)||void 0===t?void 0:t.map(e=>(0,r.jsx)("div",{className:"flex items-center gap-2",children:(0,r.jsxs)(u(),{size:"large",block:!0,onClick:()=>{x(t=>{let a=t.includes(e.id);return a?t.filter(t=>t!==e.id):[...t,e.id]})},ghost:!0,className:"justify-start gap-2 truncate bg-gray-100 text-black disabled:cursor-not-allowed dark:bg-gray-800 dark:hover:bg-gray-700 ".concat(c.includes(e.id)?"bg-primary-200 text-primary":"hover:text-primary disabled:hover:bg-gray-100 disabled:hover:text-gray-600 dark:text-gray-200 dark:hover:text-primary"),children:[c.includes(e.id)?(0,r.jsx)("i",{className:"ri-check-line text-lg text-primary"}):(0,r.jsx)(eu.Z,{className:"h-[18px] w-[18px]"}),(0,r.jsx)("span",{className:"flex-1 truncate text-left",children:e.name})]})},e.id))]}),(0,r.jsx)(ea.default,{className:"border-[#D2E3FF] dark:border-darkBorder"}),(0,r.jsx)("div",{className:"flex items-center gap-2",children:(0,r.jsx)(u(),{size:"small",type:"primary",className:"rounded-base p-4",block:!0,onClick:()=>{s(c),d(!1)},children:"Apply"})})]}),"data-sentry-element":"Popover","data-sentry-component":"LocationFilter","data-sentry-source-file":"LocationFilter.tsx",children:(0,r.jsxs)(u(),{size:"large",type:"default",className:"flex items-center gap-1 bg-white text-gray-600 dark:bg-transparent dark:text-gray-200","data-sentry-element":"Button","data-sentry-source-file":"LocationFilter.tsx",children:[(0,r.jsx)("i",{className:"ri-map-pin-line"}),a.length?"".concat(a.length," locations"):"All locations"]})})}let eh=/specialty\s+role\s+bar/i;function Analytics(){let{replace:e,query:{page:t}}=(0,ed.useRouter)(),a=(0,et.NL)(),[s,l]=(0,k.useState)(null),[n,d]=(0,k.useState)([]),[o,x]=(0,k.useState)([{endDate:new Date,startDate:ei()().subtract(30,"day").toDate(),key:"selection"}]),{data:m,isLoading:u}=(0,c.a)({queryKey:["analytics-pages"],queryFn:()=>(0,ee.CU)(),onSuccess:e=>{let a=e.find(e=>e.page===t);if(a){l(a);return}l(e[0]||null)}});return(0,k.useEffect)(()=>
1{if(!s)return;e("/dashboard/features/analytics?page=".concat(s.page),"",{shallow:!0});let t=s.parameters.start_date,a=s.parameters.end_date;t&&a&&x([{endDate:ei()(new Date(a)).toDate(),startDate:ei()(new Date(t)).toDate(),key:"selection"}]);let r=s.parameters.business_location_id;r&&d("all"===r?[]:r.split(","))},[null==s?void 0:s.page]),(0,k.useEffect)(()=>{var e,t;if(!s)return;let r={start_date:s.parameters.start_date,end_date:s.parameters.end_date,business_location_id:s.parameters.business_location_id};r.start_date=(null===(e=o[0].startDate)||void 0===e?void 0:e.toISOString())||s.parameters.start_date,r.end_date=(null===(t=o[0].endDate)||void 0===t?void 0:t.toISOString())||s.parameters.end_date,r.business_location_id=n.join(",")||"all",l({...s,parameters:r}),a.setQueryData(["analytics-pages"],e=>e?e.map(e=>e.page===s.page?{...e,parameters:r}:e):e)},[o,n]),(0,r.jsxs)("div",{className:"min-h-[100vh] w-full px-4 py-6 sm:px-6 lg:px-8","data-sentry-component":"Analytics","data-sentry-source-file":"analytics.tsx",children:[(0,r.jsx)("div",{className:"mb-8",children:(0,r.jsxs)("div",{className:"mb-6 flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("h1",{className:"text-lg font-bold text-primary md:text-[28px]",children:"Analytics"}),(0,r.jsx)("p",{className:"mt-1.5 text-sm text-gray-600 dark:text-gray-400",children:"Track and analyze your business performance"})]}),(0,r.jsxs)(es.default,{split:(0,r.jsx)(ea.default,{type:"vertical",className:"border-gray-300 dark:border-gray-600"}),wrap:!0,"data-sentry-element":"Space","data-sentry-source-file":"analytics.tsx",children:[(0,r.jsx)(LocationFilter,{selectedLocations:n,setSelectedLocations:d,"data-sentry-element":"LocationFilter","data-sentry-source-file":"analytics.tsx"}),(0,r.jsx)(DateRangeFilter,{dateRange:o,setDateRange:x,"data-sentry-element":"DateRangeFilter","data-sentry-source-file":"analytics.tsx"})]})]})}),u?(0,r.jsx)("div",{className:"space-y-6",children:(0,r.jsx)(_.Z,{className:"shadow-sm",children:(0,r.jsx)(er.default.Button,{active:!0,block:!0,className:"h-[50vh]"})})}):m&&0!==m.length?(0,r.jsxs)("div",{className:"space-y-8",children:[(0,r.jsx)("div",{className:"space-y-3",children:m.map(e=>(0,r.jsx)(el.Z,{className:(0,i.cn)("cursor-pointer rounded-full bg-transparent px-4 py-1 text-sm hover:border-primary hover:bg-primary-50 hover:text-primary",(null==s?void 0:s.page)===e.page&&"bg-primary text-white hover:bg-primary-600 hover:text-white"),onClick:()=>l(e),children:(0,Q.kC)(e.page)},e.page))}),s&&(0,r.jsx)(AnalyticsPageSection,{page:s},s.page)]}):(0,r.jsx)(_.Z,{className:"shadow-sm",children:(0,r.jsx)(S.default,{description:"No analytics pages available",image:S.default.PRESENTED_IMAGE_SIMPLE})}),(0,r.jsx)(DbChatDrawer,{"data-sentry-element":"DbChatDrawer","data-sentry-source-file":"analytics.tsx"})]})}function AnalyticsPageSection(e){let{page:t}=e,a=(0,et.NL)(),{data:s,isLoading:l,refetch:n,isRefetching:i}=(0,c.a)({queryKey:["analytics-page-queries",t],queryFn:()=>(0,ee.xb)({page:t.page,parameters:t.parameters}),select:e=>e.sort((e,t)=>{var a,r,s,l;let n=(null===(r=t.latestResult)||void 0===r?void 0:null===(a=r.data)||void 0===a?void 0:a.type)==="table"?1:0,i=(null===(l=e.latestResult)||void 0===l?void 0:null===(s=l.data)||void 0===s?void 0:s.type)==="table"?1:0;return i-n}),onError:e=>{a.invalidateQueries({queryKey:["analytics-pages"]}),(0,J.n$)(e)}});return(0,r.jsxs)("section",{className:"duration-500 animate-in fade-in slide-in-from-top-5","data-sentry-component":"AnalyticsPageSection","data-sentry-source-file":"analytics.tsx",children:[(0,r.jsxs)("div",{className:"mb-6 flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",children:[(0,r.jsxs)("div",{className:"flex items-start gap-4",children:[(0,r.jsx)("div",{className:"flex h-12 w-12 shrink-0 items-center justify-center rounded-lg bg-gradient-to-br from-primary/20 to-primary/10 dark:from-primary/30 dark:to-primary/20",children:(0,r.jsx)("i",{className:"ri-line-chart-line text-xl text-primary"})}),(0,r.jsxs)("div",{children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("h2",{className:"text-xl font-semibold text-gray-900 dark:text-white",children:(0,Q.kC)(t.page)}),(0,r.jsx)(el.Z,{color:"blue",className:"rounded-full","data-sentry-element":"Tag","data-sentry-source-file":"analytics.tsx",children:t.count})]}),(0,r.jsxs)("p",{className:"mt-1 text-sm text-gray-500 dark:text-gray-400",children:[t.count," ",1===t.count?"analytics query":"analytics queries"]})]})]}),(0,r.jsx)(u(),{type:"default",size:"large",icon:(0,r.jsx)("i",{className:"ri-refresh-line"}),onClick:()=>n(),loading:i,className:"shrink-0","data-sentry-element":"Button","data-sentry-source-file":"analytics.tsx",children:"Refresh Data"})]}),(0,r.jsx)(ea.default,{className:"my-6 border-gray-200 dark:border-gray-700","data-sentry-element":"Divider","data-sentry-source-file":"analytics.tsx"}),(0,r.jsx)(PageQuery,{queries:s||[],isLoading:l,"data-sentry-element":"PageQuery","data-sentry-source-file":"analytics.tsx"})]})}function PageQuery(e){let{queries:t,isLoading:a}=e,{business:s}=(0,n.Z)();return a?(0,r.jsx)("div",{className:"grid grid-cols-2 gap-6",children:[,,,,].fill(0).map((e,t)=>(0,r.jsx)(_.Z,{className:"shadow-sm",children:(0,r.jsx)(er.default.Button,{active:!0,block:!0,className:"h-[350px]"})},t))}):t&&0!==t.length?(0,r.jsx)("div",{className:"grid items-stretch gap-6 lg:grid-cols-2","data-sentry-component":"PageQuery","data-sentry-source-file":"analytics.tsx",children:t.map(e=>{var t,a;let l=function(e,t){var a,r;if(!eh.test(e))return e;let s=null==t?void 0:null===(a=t.name)||void 0===a?void 0:a.trim(),l=null==t?void 0:null===(r=t.id)||void 0===r?void 0:r.trim(),n=[s,l?"business_id: ".concat(l):void 0].filter(
1Boolean).join(" | ");return n?"".concat(e," - ").concat(n):e}(e.name,s);return(0,r.jsx)("div",{className:(0,i.cn)("h-full grow-0",(null===(a=e.latestResult)||void 0===a?void 0:null===(t=a.data)||void 0===t?void 0:t.type)==="table"?"col-span-2":""),children:e.latestResult?(0,r.jsx)("div",{className:"h-full transition-all duration-200",children:(0,r.jsx)(DynamicChart,{chartConfig:{...e.latestResult.data,explanation:e.description||e.latestResult.data.explanation,title:l,metadata:e.metadata}})}):(0,r.jsx)(_.Z,{className:"h-full shadow-sm",children:(0,r.jsxs)("div",{className:"flex h-full min-h-[200px] flex-col items-center justify-center py-8 text-center",children:[(0,r.jsx)("div",{className:"mb-4 flex h-16 w-16 items-center justify-center rounded-full bg-gray-100 dark:bg-gray-700",children:(0,r.jsx)("i",{className:"ri-bar-chart-2-line text-2xl text-gray-400 dark:text-gray-500"})}),(0,r.jsx)("p",{className:"text-sm font-medium text-gray-700 dark:text-gray-300",children:l}),(0,r.jsx)("p",{className:"mt-1 text-xs text-gray-500 dark:text-gray-400",children:"No data available"})]})})},e.id)})}):(0,r.jsx)("div",{className:"py-8",children:(0,r.jsx)(S.default,{description:(0,r.jsx)("span",{className:"text-gray-500 dark:text-gray-400",children:"No queries available for this page"}),image:S.default.PRESENTED_IMAGE_SIMPLE})})}},4836:function(e,t,a){"use strict";a.d(t,{CU:function(){return getAnalyticsPages},xV:function(){return getShortLinkAnalytics},xb:function(){return getAnalyticsPageQueries}});var r=a(22756),s=a(27484),l=a.n(s);let getAnalyticsPages=async()=>{let{data:e}=await r.tc.get("/business/analytics-queries/page/list");return e.body.map(e=>({...e,parameters:e.parameters||{start_date:l()().subtract(30,"day").toISOString(),end_date:l()().toISOString(),business_location_id:"all"}}))},getAnalyticsPageQueries=async e=>{await refreshAnalyticsPage({page:e.page,parameters:e.parameters,parameters_by_query_id:e.parameters_by_query_id});let{data:t}=await r.tc.get("/business/analytics-queries/page/".concat(e.page,"/list"));return t.body},refreshAnalyticsPage=async e=>{let{data:t}=await r.tc.post("/business/analytics-queries/page/".concat(e.page,"/refresh"),e.parameters?{parameters:e.parameters}:{});return t},getShortLinkAnalytics=async e=>{let{data:t}=await r.tc.get("/message/short-link",{params:{search:e}});return t}}},function(e){e.O(0,[5055,5400,4737,3217,7206,4104,4055,149,1828,1024,4653,4749,5518,1059,6375,9843,1350,2307,302,286,6891,4849,451,9774,2888,179],function(){return e(e.s=63558)}),_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.