PageSourceSearch

https://www.resumefreepro.com/assets/mobile-notes-screen-ogqvg2x9.js

js resumefreepro.com collected 2026-10-01 23:45:52 UTC 10,526 bytes, 1 lines download raw bytes

1import{j as e}from"./animation-vendor-DM9NoQ8i.js";import{r as s,R as E}from"./redux-vendor-D-J5X8g1.js";import{d as P}from"./routes-C9XFjxRc.js";import{a as v}from"./use-auth-listener-DmdI3kCz.js";import{M as A,a as M}from"./mobile-more-drawer-u1X9HgDA.js";import{A as R}from"./auth-modal-rsQ65lP1.js";import{f as F,M as D,N as L}from"./index-DKkw8J_7.js";import{y as I,N as b,z as O}from"./editor-thCL1Uub.js";import"./analytics-vendor-Z1tTTUF2.js";import{c as g}from"./className-eRD5igEx.js";import{i as G,C as j,a1 as U,f as k,a2 as V,a3 as C,g as H,X as q,a4 as B,R as W,T as X,b as Y}from"./icons-vendor-D9UUiJ3N.js";import"./firebase-vendor-BqpthRBP.js";import"./firebase-config-JWmoEzIa.js";import"./api-services-DU1tQrP6.js";import"./utils-vendor-v3JLwDjO.js";import"./index-ldQP_Rvc.js";import"./alertify-services-BBsku4al.js";import"./api-constants-7I-_EE0T.js";import"./device-detect-Dab6wIyq.js";import"./templates-iBcA2cnB.js";import"./analytics-B5bovHSi.js";import"./use-import-gate-5UA8Wxyg.js";import"./dialog-BHMTmEym.js";import"./button-QUcm8SfM.js";import"./contact-modal-rVijDz-4.js";import"./logo-DpLHEgWh.js";import"./editor-vendor-BDHtE-4n.js";import"./pricing-data-DxxV_0QL.js";import"./use-quota-wall-DF-JxTvm.js";import"./pdf-upload-modal-NEiEM8Cj.js";import"./linkedin-import-modal-CsTGh_2c.js";import"./use-mobile-detection-M--V_cSR.js";import"./sentry-vendor-DMXgzOuK.js";try{let t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},l=new t.Error().stack;l&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[l]="d7c099dd-8899-4f35-972b-d058d1cd8b03",t._sentryDebugIdIdentifier="sentry-dbid-d7c099dd-8899-4f35-972b-d058d1cd8b03")}catch{}const S=s.memo(({creating:t,onCreate:l})=>{const[i,n]=s.useState(""),[x,a]=s.useState(!1),d=()=>{const c=i.trim();c&&(l(c),n(""),a(!1))};return x?e.jsxs("div",{className:"flex flex-col gap-2 rounded-2xl border border-gray-200 bg-white p-3",children:[e.jsx("textarea",{autoFocus:!0,value:i,onChange:c=>n(c.target.value),maxLength:b,rows:4,placeholder:"Jot down something to remember…",className:"min-h-[88px] w-full resize-none border-0 p-0 text-[14px] leading-relaxed text-gray-800 outline-none placeholder:text-gray-400"}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("span",{className:"text-[11px] text-gray-400",children:[i.length,"/",b]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("button",{type:"button",onClick:()=>{n(""),a(!1)},className:"rounded-lg px-3 py-1.5 text-[12px] font-semibold text-gray-500",children:"Cancel"}),e.jsxs("button",{type:"button",disabled:t||!i.trim(),onClick:d,className:"flex items-center gap-1.5 rounded-lg bg-primary px-3.5 py-1.5 text-[12px] font-semibold text-white disabled:opacity-50",children:[t?e.jsx(k,{size:12,className:"animate-spin"}):e.jsx(j,{size:12}),"Save"]})]})]})]}):e.jsxs("button",{type:"button",onClick:()=>a(!0),className:"flex w-full items-center gap-2 rounded-2xl border border-dashed border-gray-300 bg-white px-4 py-3.5 text-left text-[13px] font-medium text-gray-500",children:[e.jsx(H,{size:16,className:"text-gray-400"}),"Add a note"]})});S.displayName="AddNoteCard";const y=s.memo(({note:t,onUpdate:l,onDelete:i,onPin:n})=>{const[x,a]=s.useState(!1),[d,c]=s.useState(t.text),[m,p]=s.useState(!1),[u,f]=s.useState(!1),[h,r]=s.useState(!1),N=s.useRef(null),w=s.useRef();s.useEffect(()=>{const o=N.current;o&&r(o.scrollHeight>o.clientHeight)},[t.text,u]),s.useEffect(()=>()=>clearTimeout(w.current),[]);const z=s.useCallback(()=>{const o=d.trim();o&&o!==t.text&&l(t._id,{text:o}),a(!1)},[d,t._id,t.text,l]),_=s.useCallback(()=>{if(m){i(t._id),p(!1);return}p(!0),w.current=setTimeout(()=>p(!1),3e3)},[m,t._id,i]);return e.jsx("div",{className:g("flex flex-col gap-2 rounded-2xl border bg-white p-3",t.isPinned?"border-primary/30 bg-[#FFF8F5]":"border-gray-200"),children:x?e.jsxs(e.Fragment,{children:[e.jsx("textarea",{autoFocus:!0,value:d,onChange:o=>c(o.target.value),maxLength:b,rows:4,className:"min-h-[88px] w-full resize-none border-0 p-0 text-[14px] leading-relaxed text-gray-800 outline-none"}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("span",{className:"text-[11px] text-gray-400",children:[d.length,"/",b]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("button",{type:"button",onClick:()=>{c(t.text),a(!1)},className:"flex h-8 w-8 items-center justify-center rounded-lg text-gray-500",children:e.jsx(q,{size:14})}),e.jsx("button",{type:"button",onClick:z,className:"flex h-8 w-8 items-center justify-center rounded-lg bg-primary text-white",children:e.jsx(j,{size:14})})]})]})]}):e.jsxs(e.Fragment,{children:[e.jsx("p",{ref:N,className:g("whitespace-pre-wrap text-[14px] leading-relaxed text-gray-800",!u&&"overflow-hidden [-webkit-box-orient:vertical] [-webkit-line-clamp:8] [display:-webkit-box]"),children:t.text}),h&&e.jsx("button",{type:"button",onClick:()=>f(o=>!o),className:"text-left text-[12px] font-semibold text-primary",children:u?"Show less":"Read more"}),e.jsxs("div",{className:"flex items-center justify-between pt-1",children:[e.jsx("span",{className:"text-[11px] text-gray-400",children:O(t.createdAt)}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("button",{type:"button",onClick:()=>n(t._id),"aria-label":t.isPinned?"Unpin note":"Pin note",className:g("flex h-8 w-8 items-center justify-center rounded-lg",t.isPinned?"text-primary":"text-gray-400"),children:t.isPinned?e.jsx(B,{size:14}):e.jsx(C,{size:14})}),e.jsx("button",{type:"button",onClick:()=>{c(t.text),a(!0)},"aria-label":"Edit note",className:"flex h-8 w-8 items-center justify-center rounded-lg text-gray-400",children:e.jsx(W,{size:14})}),e.jsxs("button",{type:"button",onClick:_,"aria-label":m?"Confirm delete":"Delete note",className:g("flex h-8 items-center justify-center rounded-lg px-2 text-[12px] font-semibold",m?"bg-red-50 text-red-600":"w-8 text-gray-400"),children:[e.jsx(X,{size:14}),m&&e.jsx("span",{className:"ml-1",children:"Confirm?"})]})]})]})]})})});y.displayName="NoteRow";const J=["Pin notes for quick access","Sync across every resume","Private to your account"],T=()=>{const t=v(F),[l,i]=s.useState(!1),{notes:n,loading:x,creating:a,fetchNotes:d,createNote:c,updateNote:m,deleteNote:p,pinNote:u}=I();if(s.useEffect(()=>{t&&d()},[t,d]),s.useEffect(()=>{t||D()},[t]),!t)return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center gap-4 px-5 pt-10",children:[e.jsx("div",{className:"flex h-[52px] w-[52px] items-center justify-center rounded-full border border-gray-200",style:{background:"linear-gradient(225deg, hsl(var(--primary) / 0.08) 0%, hsl(var(--primary) / 0.2) 100%)"},children:e.jsx(G,{size:22,className:"text-primary"})}),e.jsxs("div",{className:"flex flex-col items-center gap-1.5 text-center",children:[e.jsx("h3",{className:"text-lg font-bold text-gray-900",children:"Save Resume Notes"}),e.jsx("p",{className:"max-w-[320px] text-[13px] leading-[1.5] text-gray-500",children:"Your private space to capture ideas, track changes, and stay organized while building your resume."})]}),e.jsx("ul",{className:"flex w-full max-w-[340px] flex-col gap-2 rounded-xl bg-primary/5 px-4 py-3.5",children:J.map(r=>e.jsxs("li",{className:"flex items-center gap-2.5 text-[13px] text-gray-700",children:[e.jsx(j,{size:13,className:"shrink-0 text-primary",strokeWidth:2.5}),e.jsx("span",{children:r})]},r))}),e.jsxs("button",{type:"button",onClick:()=>{L(),i(!0)},className:"flex h-11 w-full max-w-[340px] items-center justify-center gap-2 rounded-xl bg-primary text-sm font-semibold text-white shadow-[0_3px_10px_hsl(var(--primary)/0.3)] active:scale-[0.99]",children:[e.jsx(U,{size:16}),e.jsx("span",{children:"Sign in to save notes"})]}),e.jsx("p",{className:"text-[11px] text-gray-400",children:"Free forever — no credit card needed"})]}),e.jsx(R,{open:l,onClose:()=>i(!1),authSource:"notes_gate",title:"Sign in to save notes",subtitle:"Your private space to capture ideas while building your resume."})]});const f=n.filter(r=>r.isPinned),h=n.filter(r=>!r.isPinned);return e.jsxs("div",{className:"flex flex-col gap-3 px-4 pb-6",children:[e.jsx(S,{creating:a,onCreate:c}),x&&n.length===0&&e.jsxs("div",{className:"flex items-center justify-center gap-2 py-8 text-xs text-gray-500",children:[e.jsx(k,{size:14,className:"animate-spin"}),"Loading your notes…"]}),!x&&n.length===0&&e.jsxs("div",{className:"flex flex-col items-center gap-2 rounded-2xl border border-dashed border-gray-200 bg-white px-6 py-10 text-center",children:[e.jsx(V,{size:22,className:"text-gray-300"}),e.jsx("p",{className:"text-[14px] font-semibold text-gray-700",children:"No notes yet"}),e.jsx("p",{className:"max-w-[240px] text-[12px] text-gray-500",children:"Capture quick reminders, follow-ups, or lessons you’ve learned while editing resumes."})]}),f.length>0&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center gap-1.5 px-0.5 pt-1",children:[e.jsx(C,{size:11,className:"text-primary"}),e.jsx("p",{className:"text-[10px] font-bold uppercase tracking-[0.8px] text-gray-400",children:"Pinned"})]}),f.map(r=>e.jsx(y,{note:r,onUpdate:m,onDelete:p,onPin:u}
1,r._id))]}),h.length>0&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"px-0.5 pt-1 text-[10px] font-bold uppercase tracking-[0.8px] text-gray-400",children:"Recent"}),h.map(r=>e.jsx(y,{note:r,onUpdate:m,onDelete:p,onPin:u},r._id))]})]})};T.displayName="MobileNotesView";const $=s.memo(T),K=E.memo(()=>{const[,t]=P(),[l,i]=s.useState(!1),n=v(a=>a.ui_store.notesCount),x=s.useCallback(a=>{if(a==="home"){t("/app/");return}if(a==="tracker"){t("/app/job-tracker");return}if(a==="more"){i(!0);return}},[t]);return e.jsxs("div",{className:"relative flex min-h-dvh flex-col bg-gray-50 font-body",children:[e.jsxs("header",{className:"flex h-[52px] flex-none items-center gap-3 px-5 pt-1",children:[e.jsx("button",{type:"button","aria-label":"Back",onClick:()=>t("/app/"),className:"-ml-1 flex h-9 w-9 items-center justify-center rounded-full text-gray-900 transition-colors hover:bg-gray-100",children:e.jsx(Y,{className:"h-5 w-5",strokeWidth:2.25})}),e.jsx("h1",{className:"flex-1 font-heading text-[18px] font-bold text-gray-900",children:"Notes"})]}),e.jsx("main",{className:"flex flex-1 flex-col pb-[120px]",children:e.jsx($,{})}),e.jsx(A,{activeTab:"notes",onTabChange:x,notesCount:n}),e.jsx(M,{open:l,onOpenChange:i,onNavigate:a=>t(a)})]})});K.displayName="MobileNotesScreen";export{K 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.