PageSourceSearch

https://taxease360.ai/assets/FinleyHome-DbMSV0Sn.js

js taxease360.ai collected 2026-10-05 14:25:30 UTC 6,310 bytes, 1 lines download raw bytes

1import{j as e,O as g,n as h,K as b,G as u,W as p,J as j,Y as y,aV as f,L as l,b as N,C as k,A as v}from"./index-CfXbMZ_V.js";import{u as w,a as C}from"./useAchievements-BFLr7m49.js";import{F as A}from"./FinleyProgressRing-nbqZ2AHM.js";import{P as F}from"./PortalHeader-BREe-gcq.js";import{C as z}from"./circle-BeOP31Vt.js";import"./chevron-left-BFeklwt6.js";function R({achievements:a=[],compact:i=!1}){const n=i?a.slice(0,6):a;return e.jsx("div",{className:i?"grid grid-cols-3 gap-3":"grid grid-cols-2 sm:grid-cols-4 gap-4",children:n.map(t=>{const r=t.unlocked,d=t.total>0?Math.round(t.progress/t.total*100):0;return e.jsxs(g.div,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},transition:{duration:.25},className:`flex flex-col items-center text-center p-3 rounded-2xl border ${r?"bg-gradient-to-b from-amber-50 to-white border-amber-200":"bg-gray-50 border-gray-100 opacity-70"}`,title:t.desc,children:[e.jsx("div",{className:`w-12 h-12 rounded-full flex items-center justify-center text-2xl ${r?"bg-amber-100":"bg-gray-100 grayscale"}`,children:r?t.emoji:e.jsx(h,{size:16,className:"text-gray-300"})}),e.jsx("p",{className:`text-xs font-semibold mt-2 ${r?"text-gray-800":"text-gray-400"}`,children:t.title}),!r&&t.total>1&&e.jsx("div",{className:"w-full h-1 bg-gray-100 rounded-full mt-1.5 overflow-hidden",children:e.jsx("div",{className:"h-full bg-blue-500 rounded-full",style:{width:`${d}%`}})})]},t.id)})})}const T=[{to:"/portal/documents",emoji:"📂",label:"Documents"},{to:"/portal/receipts",emoji:"🧾",label:"Scan receipt"},{to:"/portal/appointments",emoji:"📅",label:"Book"},{to:"/portal/tax-refund-estimate",emoji:"📊",label:"Tax estimate"},{to:"/portal/messages",emoji:"💬",label:"Message"},{to:"/portal/rewards",emoji:"🎁",label:"Rewards"}];function Y(){var o,c,m,x;const a=w(),i=b(((o=a.client)==null?void 0:o.full_name)||((c=a.user)==null?void 0:c.legal_name)||((m=a.user)==null?void 0:m.full_name)),n=u(a),t=p(a),{achievements:r}=C(a),d=r.filter(s=>s.unlocked).length;return a.loading?e.jsx("div",{className:"flex items-center justify-center h-64",children:e.jsx("div",{className:"w-8 h-8 border-4 border-blue-200 border-t-blue-600 rounded-full animate-spin"})}):e.jsxs("div",{className:"space-y-5 pb-8",children:[e.jsx(F,{title:"Finley Home",subtitle:"Your personal tax coach"}),e.jsxs("div",{className:"rounded-3xl bg-gradient-to-br from-blue-600 to-cyan-500 p-5 text-white",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("img",{src:j,alt:"Finley",className:"w-16 h-16 rounded-2xl bg-white/20 p-1.5 object-contain"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-blue-100 text-sm",children:y(i)}),e.jsx("p",{className:"text-lg font-bold",children:f(Date.now()%7)})]})]}),e.jsx("div",{className:"mt-3 bg-white/15 rounded-2xl p-3.5 backdrop-blur-sm",children:e.jsxs("p",{className:"text-sm leading-snug",children:[e.jsx("span",{className:"font-semibold",children:"Today's tip: "}),(x=n[0])==null?void 0:x.body]})}),e.jsxs("div",{className:"flex gap-2 mt-3",children:[e.jsxs(l,{to:"/portal/finley",className:"flex-1 h-11 rounded-xl bg-white text-blue-700 font-bold text-sm inline-flex items-center justify-center gap-2 active:scale-95 transition-transform",children:[e.jsx(N,{size:16})," Chat with Finley"]}),e.jsx(l,{to:"/portal",className:"h-11 px-4 rounded-xl bg-white/15 text-white font-semibold text-sm inline-flex items-center justify-center active:scale-95 transition-transform",children:"Dashboard"})]})]}),e.jsxs("div",{className:"bg-white dark:bg-gray-900 rounded-2xl border border-gray-100 dark:border-gray-800 p-5",children:[e.jsxs("div",{className:"flex items-center justify-between mb-4",children:[e.jsx("h2",{className:"text-sm font-semibold text-gray-800 dark:text-gray-200",children:"Today's progress"}),e.jsx("div",{className:"bg-blue-50 rounded-xl p-1",children:e.jsx(A,{percent:t.percent,size:56,stroke:6})})]}),e.jsx("div",{className:"space-y-1.5",children:t.items.map(s=>e.jsxs(l,{to:s.to,className:"flex items-center gap-3 py-1.5",children:[s.done?e.jsx(k,{size:18,className:"text-emerald-500 shrink-0"}):e.jsx(z,{size:18,className:"text-gray-300 shrink-0"}),e.jsx("span",{className:`text-sm ${s.done?"text-gray-400 line-through":"text-gray-700 dark:text-gray-200"}`,children:s.label})]},s.label))}),t.percent===100&&e.jsx("p",{className:"text-xs text-emerald-600 font-medium mt
1-3 text-center",children:"🎉 You're Tax Ready — fantastic work!"})]}),e.jsxs("div",{className:"bg-white dark:bg-gray-900 rounded-2xl border border-gray-100 dark:border-gray-800 p-5",children:[e.jsx("h2",{className:"text-sm font-semibold text-gray-800 dark:text-gray-200 mb-3",children:"Finley's suggestions"}),e.jsx("div",{className:"space-y-2",children:n.map(s=>e.jsxs(l,{to:s.to,className:"flex items-center gap-3 p-3 bg-gray-50 dark:bg-gray-800 rounded-xl active:scale-[0.98] transition-transform",children:[e.jsx("span",{className:"text-xl shrink-0",children:s.emoji}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:"text-sm font-semibold text-gray-800 dark:text-gray-200 truncate",children:s.title}),e.jsx("p",{className:"text-xs text-gray-500 dark:text-gray-400 truncate",children:s.body})]}),e.jsx(v,{size:16,className:"text-gray-300 shrink-0"})]},s.id))})]}),e.jsxs("div",{children:[e.jsx("h2",{className:"text-sm font-semibold text-gray-500 uppercase tracking-wide mb-3",children:"Quick actions"}),e.jsx("div",{className:"grid grid-cols-3 gap-3",children:T.map(s=>e.jsxs(l,{to:s.to,className:"rounded-2xl bg-white dark:bg-gray-900 border border-gray-100 dark:border-gray-800 p-3 flex flex-col items-center gap-1.5 active:scale-95 transition-transform",style:{minHeight:84},children:[e.jsx("span",{className:"text-xl",children:s.emoji}),e.jsx("span",{className:"text-xs font-semibold text-gray-700 dark:text-gray-200",children:s.label})]},s.to))})]}),e.jsxs("div",{className:"bg-white dark:bg-gray-900 rounded-2xl border border-gray-100 dark:border-gray-800 p-5",children:[e.jsxs("div",{className:"flex items-center justify-between mb-4",children:[e.jsx("h2",{className:"text-sm font-semibold text-gray-800 dark:text-gray-200",children:"Achievements"}),e.jsxs("span",{className:"text-xs text-gray-400",children:[d,"/",r.length," unlocked"]})]}),e.jsx(R,{achievements:r})]})]})}export{Y as default};

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.