1var e=e=>{e.style.height=`auto`,e.style.height=`${e.scrollHeight}px`},t=(t,n)=>{let r=e=>{let t=e.target;t===n||t.closest(`button, a`)||n.focus()},i=()=>e(n);return t?.addEventListener(`click`,r),window.addEventListener(`resize`,i),e(n),()=>{t?.removeEventListener(`click`,r),window.removeEventListener(`resize`,i)}},n=e=>e>200,r=e=>`${e}/500`,i=e=>e>=500,a=`conversation:pendingPrompt`,o=18e5,s=[`explore_prompt_hero`,`home_prompt_hero`],c=()=>{if(typeof window>`u`)return null;try{return window.localStorage}catch{return null}},l=e=>e.replace(/[\u0000-\u001f\u007f]/g,` `).trim().slice(0,500),u=e=>{if(!e)return null;let t;try{t=JSON.parse(e)}catch{return null}if(!t||typeof t!=`object`)return null;let n=t;if(typeof n.prompt!=`string`||typeof n.createdAt!=`number`||!Number.isFinite(n.createdAt))return null;let r=l(n.prompt);return r.length===0?null:{prompt:r,source:s.includes(n.source)?n.source:`explore_prompt_hero`,createdAt:n.createdAt,token:typeof n.token==`string`?n.token:``}},d=()=>globalThis.crypto?.randomUUID?.()??`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,f=(e,t)=>{let n=c();if(!n)return null;let r=l(e);if(r.length===0)return null;let i=d();try{n.setItem(a,JSON.stringify({prompt:r,source:t,createdAt:Date.now(),token:i}))}catch{return null}return i},p=()=>{let e=c();if(!e)return null;let t=u(e.getItem(a));try{e.removeItem(a)}catch{}if(!t)return null;let n=Date.now()-t.createdAt;return n>=0&&n<o?t:null};export{n as a,i,f as n,e as o,r,t as s,p as t}; 2//# sourceMappingURL=pending_prompt_storage-BYERtX9H.js.map
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.