1import{_ as ue,r as o,m as pe,W as fe,f as W,o as ve,a2 as r,K as ge,c as l,k as be,F as V,v as J,D as me,e as h,b as e,d as y,N as he,t as d,n as I,B as xe,l as K,i as q,x as j,y as H,w as ye,T as we,O as ke,a as i,ar as _e,ac as Ce,a1 as Ie}from"./index-BiDzv_XD.js";import{s as je}from"./index-dN7sb-iu.js";import{s as Ae}from"./index-DcsmtM91.js";import{s as Se}from"./index-BblntyLU.js";import"./index-DSgNPVLy.js";import"./index-Cn5DzftV.js";import"./index-Bna06bUG.js";import"./index-CiVQnkqS.js";import"./index-_-Tc6y63.js";import"./index-B5JdfvFK.js";const Me=["onClick","aria-label"],Ne={class:"min-h-screen bg-gray-50 dark:bg-slate-900"},Te={key:0,class:"bg-white dark:bg-gray-900 border-b border-gray-200 shadow-sm px-4 py-2"},Ve={class:"max-w-sm mx-auto relative"},Ee={class:"mx-auto p-6"},Be={class:"flex gap-6 h-[calc(100vh-140px)]"},De={class:"w-[25%] relative bg-white dark:bg-surface-800 rounded-xl shadow-lg border border-gray-200 dark:border-surface-700 overflow-hidden"},Le={class:"bg-brand text-white px-4 py-3 font-semibold"},Re={class:"p-4 h-full overflow-y-auto"},$e={class:"flex items-start justify-between"},Fe={class:"flex-1"},Ue={class:"text-sm text-gray-600 dark:text-surface-200 leading-relaxed"},ze={key:1,class:"flex flex-col border p-4 rounded-xl border-slate-200 dark:border-slate-600 animate-pulse"},Oe={class:"bg-brand absolute bottom-0 w-full text-white px-4 py-3 font-semibold"},Pe={class:"w-[70%] bg-white relative rounded-xl shadow-lg border border-gray-200 overflow-hidden"},We={class:"bg-gradient-to-r from-gray-50 to-gray-100 px-6 py-4 border-b border-gray-200"},Je={class:"flex items-center justify-between"},Ke={class:"text-sm text-gray-500 mt-1"},qe={class:"h-full overflow-hidden"},He={class:"h-full bg-white",style:{"background-size":"100% 32px"}},Ye=["innerHTML"],Ge={key:0,class:"absolute inset-0 bg-white/80 dark:bg-slate-800/80 backdrop-blur-sm rounded-xl flex items-center justify-center"},Qe={class:"text-center"},Xe={class:"w-[25%] relative bg-white rounded-xl shadow-lg border border-gray-200 dark:border-surface-700 overflow-hidden"},Ze={class:"bg-brand text-white px-4 py-3 font-semibold"},et={class:"text-xs text-center opacity-90"},tt={class:"p-4 dark:bg-surface-800 h-full overflow-y-auto pb-40"},st={class:"space-y-3"},at={class:"p-3 bg-g"},ot={class:"flex items-start gap-3"},rt={class:"flex-shrink-0 mt-1"},it=["id","onUpdate:modelValue"],lt={class:"flex-1 min-w-0"},nt=["for"],dt={class:"font-medium text-sm text-gray-800 dark:text-surface-200 0 mb-1"},ct={class:"text-xs text-gray-600 dark:text-surface-400 leading-relaxed mb-2"},ut={class:"bg-brand absolute bottom-0 w-full text-white px-4 py-3 font-semibold"},pt=["disabled"],ft={key:2,class:"fixed inset-0 bg-black/50 backdrop-blur-sm z-50 flex items-center justify-center"},vt={class:"bg-white rounded-xl shadow-2xl max-w-2xl w-full mx-4"},gt={class:"p-6"},bt={class:"mb-4"},mt={class:"mb-6"},ht={key:0,class:"fixed inset-0 z-[100] flex items-center justify-center bg-black/50 backdrop-blur-sm"},xt=10,yt={__name:"SpecificationAnalysisStage",props:{selectedClaims:{required:!1,default:Array}},setup(Y){const v=o(null),G=pe(),E=o(!1),A=o(!1),B=o("");function Q(s){if(s?.type==="INSUFFICIENT_CREDITS"||s?.code===4003||s?.error?.includes?.("Insufficient")||s?.result?.type==="INSUFFICIENT_CREDITS"||s?.result?.data?.type==="INSUFFICIENT_CREDITS"){const t=s?.error||s?.result?.error||s?.result?.data?.error||"Insufficient credits to perform this action.";return B.value=t,A.value=!0,_.value=!1,C.value=!1,!0}return!1}function S(){A.value=!1,B.value=""}function X(){S(),F.push({path:"/payments",query:{from:F.currentRoute.value.fullPath}})}const Z=o([{name:"magicClean",label:"Magic Clean",icon:"pi pi-sparkles",primary:!0,show:!0},{name:"adjustScope",label:"Adjust Scope",icon:"pi pi-sliders-h",primary:!1,show:!0}]),D=o(!1),L=Y,w=o(null),k=o(5),R=o(!1),g=o(""),$=o("2 minutes ago"),c=o(""),_=o(!1),C=o(!1),F=fe(),U=W(()=>{const t=(w.value?.textContent||"").trim().split(/\s+/).filter(p=>p.length>0).length,n=(g.value.match(/Claim \d+:/g)||[]).length;return{words:t,claims:n}}),M=o([{title:"Source Reliability",content:"Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.",confidence:92},{title:"Statistical Validity",content:"Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.",confidence:88},{title:"Context Relevance",content:"Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.Medical journals and peer-reviewed studies provide strong foundational support for AI healthcare claims.",confidence:85}]),u=o([]),N=o(!1),b=o({}),z=o(""),T=o(-1),ee=s=>{switch(s.name){case"magicClean":break;case"adjustScope":R.value=!0;break}},te=()=>{const s=window.getSelection();s.rangeCount>0&&s.getRangeAt(0)},se=s=>{if(s.ctrlKey||s.metaKey)switch(s.key){case"s":s.preventDefault(),$.value="just now";break}},ae=(s,t)=>{console.log(`Selected ${s} analysis item ${t}`)},oe=(s,t)=>{z.value=s,T.value=t;const n=M.value;b.value={...n[t]},N.value=!0},O=()=>{N.value=!1,b.value={},z.value="",T.value=-1},re=()=>{const s=M.value;s[T.value]={...b.value},O()},ie=()=>{console.log("Regenerating left analysis...")},x=W(()=>u.value.filter(s=>s.checked));async function le(){C.value=!0;const s=x.value;if(s.length===0){alert("Please select at least one change to integrate.");return}let t={integrations:s,claimset:g.value};await v.value.send(JSON.stringify(t)),u.value.forEach(n=>
1{n.checked&&(n.checked=!1)})}ve(async()=>{E.value=!0,await r.open();const s=await r.specification_analysis_stage.orderBy("id").first();s&&(u.value=s.integrations,c.value=s.matrix),w.value&&w.value.focus(),L.selectedClaims&&console.log("Selected claim",L.selectedClaims);const t=await ge("last-stage-plan","last_stage_plan");v.value=t.socket,v.value.onopen=()=>{console.log("Connected to WebSocket")},v.value.onmessage=async p=>{const f=JSON.parse(p.data);if(!Q(f))if(f.type==="left_analysis_response"){u.value=f.content,_.value=!1,await r.open();let m=await r.specification_analysis_stage.orderBy("id").first();m?await r.specification_analysis_stage.update(m.id,{integrations:f.content}):await r.specification_analysis_stage.add({integrations:f.content})}else{g.value=f.content,await r.open();const m=await r.claimsets.orderBy("id").first();m?await r.claimsets.update(m.id,{content:g.value}):console.warn("No claimset entry found to update."),C.value=!1}},v.value.onerror=p=>{console.error(" WebSocket error:",p)},v.value.onclose=p=>{console.log("Disconnected from WebSocket")},await r.open();const n=await r.claimsets.orderBy("id").first();if(!n){G.add({severity:"warn",summary:"Claimset Not Found",detail:"Claimset was not found. Please select the prefered claimset in the last step.",life:3e3});return}g.value=n.content});async function ne(){_.value=!0;let s={claimset:g.value,analysis:c.value};await r.open();let t=await r.specification_analysis_stage.orderBy("id").first();t?await r.specification_analysis_stage.update(t.id,{matrix:c.value}):await r.specification_analysis_stage.add({matrix:c.value}),await v.value.send(JSON.stringify(s))}async function de(){await r.open();const s=await r.specification_analysis_stage.orderBy("id").first(),t=JSON.parse(JSON.stringify(u.value));s?await r.specification_analysis_stage.update(s.id,{integrations:t}):await r.specification_analysis_stage.add({integrations:u.value})}return(s,t)=>{const n=Se,p=Ae,f=ke,m=je,ce=Ie;return i(),l(V,null,[E.value?(i(),be(me,{key:0,to:"#patent-page-actions",defer:""},[(i(!0),l(V,null,J(Z.value,a=>j((i(),l("button",{key:a.name,type:"button",onClick:P=>ee(a),"aria-label":a.label,class:"patent-rail-btn"},[e("i",{class:I([a.icon,"text-sm"]),"aria-hidden":"true"},null,2)],8,Me)),[[_e,a.show],[ce,a.label,void 0,{left:!0}]])),128))])):h("",!0),e("div",Ne,[R.value?(i(),l("div",Te,[e("div",Ve,[y(n,{modelValue:k.value,"onUpdate:modelValue":t[0]||(t[0]=a=>k.value=a),step:1,max:11,min:1,class:"w-full"},null,8,["modelValue"]),e("div",{class:"absolute w-7 -top-10 text-[10px] font-medium text-white bg-blue-500 rounded px-2 py-1 transition-all",style:he({left:`calc(${k.value/xt*100}% - 29px)`})}," V"+d(k.value),5)])])):h("",!0),D.value?(i(),l("div",{key:1,class:"fixed inset-0 z-20 lg:hidden",onClick:t[1]||(t[1]=a=>D.value=!1)})):h("",!0),e("div",Ee,[e("div",Be,[e("div",De,[e("div",Le,[t[8]||(t[8]=e("div",{class:"flex items-center justify-center mb-2"},[e("span",null,"Left Analysis")],-1)),y(p,{modelValue:c.value,"onUpdate:modelValue":t[2]||(t[2]=a=>c.value=a),options:M.value,onChange:ne,optionLabel:"title",placeholder:"Select a Analysis",class:I(["w-full md:w-14rem","border-white !text-white !bg-transparent rounded-xl"]),optionValue:"content"},null,8,["modelValue","options"])]),e("div",Re,[_.value?(i(),l("div",ze,t[10]||(t[10]=[K('<div class="flex-1 space-y-6 py-1" data-v-cf691cb2><div class="h-2 rounded bg-gray-200" data-v-cf691cb2></div><div class="space-y-3" data-v-cf691cb2><div class="grid grid-cols-3 gap-4" data-v-cf691cb2><div class="col-span-2 h-2 rounded bg-gray-200" data-v-cf691cb2></div><div class="col-span-1 h-2 rounded bg-gray-200" data-v-cf691cb2></div></div><div class="h-2 rounded bg-gray-200" data-v-cf691cb2></div></div><div class="h-2 rounded bg-gray-200" data-v-cf691cb2></div><div class="space-y-3" data-v-cf691cb2><div class="grid grid-cols-3 gap-4" data-v-cf691cb2><div class="col-span-2 h-2 rounded bg-gray-200" data-v-cf691cb2></div><div class="col-span-1 h-2 rounded bg-gray-200" data-v-cf691cb2></div></div><div class="h-2 rounded bg-gray-200" data-v-cf691cb2></div></div><div class="h-2 rounded bg-gray-200" data-v-cf691cb2></div><div class="space-y-3" data-v-cf691cb2><div class="grid grid-cols-3 gap-4" data-v-cf691cb2><div class="col-span-2 h-2 rounded bg-gray-200" data-v-cf691cb2></div><div class="col-span-1 h-2 rounded bg-gray-200" data-v-cf691cb2></div></div><div class="h-2 rounded bg-gray-200" data-v-cf691cb2></div></div></div>',1)]))):(i(),l("div",{key:0,class:"mb-4 p-3 bg-gray-50 dark:bg-surface-700 rounded-lg border border-gray-200 dark:border-surface-700 hover:border-brand/30 transition-colors cursor-pointer group",onClick:t[4]||(t[4]=a=>ae("left",s.index))},[e("div",$e,[e("div",Fe,[e("p",Ue,d(c.value),1)]),e("button",{onClick:t[3]||(t[3]=xe(a=>oe("left",c.value),["stop"])),class:"opacity-0 group-hover:opacity-100 p-1 hover:bg-gray-200 rounded transition-all"},t[9]||(t[9]=[e("i",{class:"pi pi-pencil text-xs text-gray-500 dark:text-surface-200"},null,-1)]))])]))]),e("div",Oe,[y(f,{onClick:t[5]||(t[5]=a=>s.selectPreferred(s.claimset.id)),icon:"pi pi-refresh",label:"Regenerate",class:I([ie,"w-full py-3 !bg-[#0f172a] !shadow-lg font-semibold rounded-xl dark:!text-surface-200 transition-all !border-brand duration-300 hover:shadow-md !border-[#0f172ar]"])})])]),e("div",Pe,[e("div",We,[e("div",Je,[e("div",null,[t[11]||(t[11]=e("h2",{class:"text-xl font-semibold text-gray-800"},"Claimset Document",-1)),e("p",Ke,d(U.value.words)+" words ⢠"+d(U.value.claims)+" claims ⢠Last saved "+d($.value),1)]),t[12]||(t[12]=K('<div class="flex items-center space-x-3" data-v-cf691cb2><div class="flex items-center space-x-2" data-v-cf691cb2><i class="pi pi-save text-sm text-gray-400" data-v-cf691cb2></i><span class="text-sm text-gray-500" data-v-cf691cb2>Auto-saved</span></div><button class="p-2 hover:bg-gray-200 rounded-lg transition-colors" data-v-cf691cb2><i class="pi pi-ellipsis-v text-sm text-gray-500" data-v-cf691cb2></i></button></div>',1))])]),e("div",qe,[e("div",He,[e("div",{ref_key:"documentEditor",ref:w,contenteditable:"true",onInput:te,onKeydown:se,class:"h-full p-8 outline-none font-sans text-gray-800 leading-8 text-lg resize-none overflow-y-auto",style:{"line-height":"32px","min-height":"calc(100% - 32px)"},innerHTML:g.value},null,40,Ye)])]),C.value?(i(),l("div",Ge,[e("div",Qe,[y(m,{class:"w-8 h-8 mb-3"}
1),t[13]||(t[13]=e("p",{class:"text-sm text-slate-600 dark:text-slate-400 font-medium"}," Integrating claimsets... ",-1))])])):h("",!0)]),e("div",Xe,[e("div",Ze,[t[14]||(t[14]=e("div",{class:"flex items-center justify-center mb-2"},[e("span",null,"Specification Changes")],-1)),e("div",et,d(x.value.length)+" of "+d(u.value.length)+" selected ",1)]),e("div",tt,[e("div",st,[(i(!0),l(V,null,J(u.value,a=>(i(),l("div",{key:a.id,class:"bg-gray-50 dark:bg-surface-700 rounded-lg border border-gray-200 dark:!border-gray-800 hover:border-brand/30 transition-colors"},[e("div",at,[e("div",ot,[e("div",rt,[j(e("input",{type:"checkbox",onChange:de,id:"change-"+a.id,"onUpdate:modelValue":P=>a.checked=P,class:"w-4 h-4 text-blue-600 bg-gray-100 border-gray-300 rounded focus:ring-blue-500 focus:ring-2"},null,40,it),[[Ce,a.checked]])]),e("div",lt,[e("label",{for:"change-"+a.id,class:"cursor-pointer"},[e("div",dt,d(a.title),1),e("div",ct,d(a.description),1)],8,nt)])])])]))),128))])]),e("div",ut,[e("button",{onClick:le,disabled:x.value.length===0,class:I([x.value.length===0?"opacity-50 cursor-not-allowed":"hover:shadow-md","w-full py-3 bg-[#0f172a] shadow-lg font-semibold rounded-xl transition-all border-brand duration-300 border-[#0f172a] flex items-center justify-center gap-2"])},[t[15]||(t[15]=e("i",{class:"pi pi-plus"},null,-1)),q(" Integrate to Spec ("+d(x.value.length)+") ",1)],10,pt)])])])]),N.value?(i(),l("div",ft,[e("div",vt,[t[18]||(t[18]=e("div",{class:"bg-brand text-white px-6 py-4 rounded-t-xl"},[e("h3",{class:"text-lg font-semibold"},"Edit Analysis")],-1)),e("div",gt,[e("div",bt,[t[16]||(t[16]=e("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Title",-1)),j(e("input",{"onUpdate:modelValue":t[6]||(t[6]=a=>b.value.title=a),class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-brand/20 focus:border-brand outline-none"},null,512),[[H,b.value.title]])]),e("div",mt,[t[17]||(t[17]=e("label",{class:"block text-sm font-medium text-gray-700 mb-2"},"Content",-1)),j(e("textarea",{"onUpdate:modelValue":t[7]||(t[7]=a=>b.value.content=a),rows:"6",class:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-brand/20 focus:border-brand outline-none resize-none"},null,512),[[H,b.value.content]])]),e("div",{class:"flex justify-end space-x-3"},[e("button",{onClick:O,class:"px-4 py-2 text-gray-600 hover:bg-gray-100 rounded-lg transition-colors"}," Cancel "),e("button",{onClick:re,class:"px-4 py-2 bg-brand text-white rounded-lg hover:bg-brand/90 transition-colors"}," Save Changes ")])])])])):h("",!0)]),y(we,{name:"modal-fade"},{default:ye(()=>[A.value?(i(),l("div",ht,[e("div",{class:"bg-white dark:bg-slate-800 rounded-2xl shadow-2xl w-full max-w-md mx-4 overflow-hidden border border-slate-200 dark:border-slate-700"},[e("div",{class:"flex items-center justify-between px-6 py-4 border-b border-red-200 dark:border-red-800 bg-red-50 dark:bg-red-900/30"},[t[20]||(t[20]=e("div",{class:"flex items-center gap-3"},[e("div",{class:"w-10 h-10 rounded-full bg-red-100 dark:bg-red-900/50 flex items-center justify-center"},[e("i",{class:"pi pi-exclamation-triangle text-red-600 dark:text-red-400 text-xl"})]),e("h2",{class:"text-lg font-semibold text-red-800 dark:text-red-200"},"Insufficient Credits")],-1)),e("button",{onClick:S,class:"w-8 h-8 rounded-lg bg-red-100 dark:bg-red-900/50 text-red-600 dark:text-red-400 flex items-center justify-center hover:bg-red-200 dark:hover:bg-red-800 transition-colors"},t[19]||(t[19]=[e("i",{class:"pi pi-times text-sm"},null,-1)]))]),t[22]||(t[22]=e("div",{class:"p-6 space-y-4"},[e("p",{class:"text-slate-700 dark:text-slate-300 text-sm leading-relaxed"}," Your account does not have enough credits to perform this action. Please recharge your credits to continue using this feature. "),e("div",{class:"flex items-center gap-2 p-3 bg-blue-50 dark:bg-blue-900/20 rounded-lg border border-blue-100 dark:border-blue-800"},[e("i",{class:"pi pi-info-circle text-blue-600 dark:text-blue-400"}),e("p",{class:"text-sm text-blue-700 dark:text-blue-300"}," Need help? Contact the Esgenix team for assistance. ")])],-1)),e("div",{class:"flex items-center justify-end gap-3 px-6 py-4 border-t border-slate-200 dark:border-slate-700 bg-slate-50 dark:bg-slate-800/50"},[e("button",{onClick:S,class:"px-6 py-2.5 rounded-xl border border-slate-300 dark:border-slate-600 text-slate-700 dark:text-slate-300 hover:bg-slate-100 dar
1k:hover:bg-slate-700 transition-colors"}," Close "),e("button",{onClick:X,class:"px-6 py-2.5 rounded-xl bg-gradient-to-r from-blue-600 to-indigo-600 text-white font-medium hover:from-blue-700 hover:to-indigo-700 transition-colors flex items-center gap-2"},t[21]||(t[21]=[e("i",{class:"pi pi-credit-card"},null,-1),q(" Recharge Credits ")]))])])])):h("",!0)]),_:1})],64)}}},Tt=ue(yt,[["__scopeId","data-v-cf691cb2"]]);export{Tt 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.