1import{p as f}from"./pageData-B3nQg5j2.js";import{s as c}from"./ai-core-MTYXcks9.js";const m=f("ai-upload-data","isChat",!1),x=f("ai-upload-data","pdfIconUrl"),P=f("ai-upload-data","fileLimtMessage","Please upload only one file at a time."),L=f("ai-upload-data","webpErrorMessage",".webp file is not supported"),q=f("ai-upload-data","invalidFileTypeMessage","Invalid file type. Only JPG, JPEG, PNG, and PDF files are allowed."),D=f("ai-upload-data","pdfExceedMessage","Your file is too large"),A=f("ai-upload-data","noImageUploadedMessage","Please upload or paste an image first."),_=f("ai-upload-data","unsupportFileMessage","Unsupported File"),T=f("ai-upload-data","imgPdfAllowMessage","Only Images or PDF files are allowed."),S=document.createElement("style");S.textContent=` 2 .preview-loader { 3 position: absolute; 4 top: 0; 5 left: 0; 6 right: 0; 7 bottom: 0; 8 background-color: rgba(255, 255, 255, 0.8); 9 display: flex; 10 justify-content: center; 11 align-items: center; 12 z-index: 10; 13 border-radius: 8px; 14 } 15 16 .loader-spinner { 17 width: 40px; 18 height: 40px; 19 border: 4px solid #f3f3f3;
20 border-top: 4px solid #3498db; 21 border-radius: 50%; 22 animation: spin 1s linear infinite; 23 } 24 25 @keyframes spin { 26 0% { transform: rotate(0deg); } 27 100% { transform: rotate(360deg); } 28 } 29 30 .previewImage { 31 position: relative; 32 } 33 34 .send-btn:disabled { 35 opacity: 0.6; 36 cursor: not-allowed; 37 } 38 `;document.head.appendChild(S);const y=document.createElement("div");y.className="preview-loader d-none";y.innerHTML='<div class="loader-spinner"></div>';const E=document.querySelector(".previewImage");E&&(E.style.position="relative",E.appendChild(y));function g(){y.classList.remove("d-none");const e=document.querySelector(".send");e&&(e.disabled=!0)}function t(){y.classList.add("d-none");const e=document.querySelector(".send");e&&(e.disabled=!1)}document.querySelector('input[type="file"]').addEventListener("change",function(e){const n=e.target.files[0],r=document.querySelector(".previewImage"),o=document.getElementById("cropBtn"),s=document.getElementById("pdfIndicator"),i=document.getElementById("imagePreview");if(n){if(n.type==="application/pdf")o.classList.add("d-none"),s.classList.remove("d-none"),document.querySelectorAll(".edit-image-btn").forEach(function(d){d.classList.add("d-none")}),i.src=x,i.alt="PDF document";else if(n.type.startsWith("image/")){o.classList.remove("d-none"),s.classList.add("d-none"),document.querySelectorAll(".edit-image-btn").forEach(function(p){p.classList.remove("d-none")});const d=new FileReader;d.onload=function(p){i.src=p.target.result},d.readAsDataURL(n)}r.classList.remove("d-none")}});const l=document.getElementById("fileInput"),z=document.getElementById("cropperModal"),b=document.getElementById("cropperImage");let a=null,v=1,C=1,k=!1;function F(){return new Promise((e,n)=>{if(k)return e();if(!document.querySelector('link[href*="cropper.min.css"]')){const o=document.createElement("link");o.rel="stylesheet",o.href="https://cdnjs.cloudflare.com/ajax/libs/cropperjs/1.5.13/cropper.min.css",document.head.appendChild(o)}const r=document.createElement("script");r.src="https://cdnjs.cloudflare.com/ajax/libs/cropperjs/1.5.13/cropper.min.js",r.onload=()=>{k=!0,e()},r.onerror=n,document.body.appendChild(r)})}function M(e){const n=Date.now(),o=(e&&e.name?e.name:"file").split("."),s=o.length>1?o.pop().toLowerCase():e.type?e.type.split("/").pop():"";return`${n}${s?"."+s:""}`}l.addEventListener("change",function(){if(this.files.length>1){$("#imagePreview").attr("src",""),$("#fileName").val(""),$(".previewImage").addClass("d-none"),$(".controlImage").removeClass("d-none"),$(".examples").removeClass("d-none"),m&&($(".drag_drop").addClass("d-none"),$(".examples").addClass("d-none")),t(),c(P,"danger"),l.value="";return}const e=l.files[0];if(!e)return;if(e.type=="image/webp"){$("#imagePreview").attr("src",""),$("#fileName").val(""),$(".previewImage").addClass("d-none"),$(".controlImage").removeClass("d-none"),$(".examples").removeClass("d-none"),m&&($(".drag_drop").addClass("d-none"),$(".examples").addClass("d-none")),t(),c(L,"danger"),l.value="";return}const n=["jpg","jpeg","png","pdf"],r=["image/jpeg","image/png","application/pdf"],o=(e.name.split(".").pop()||"").toLowerCase();if(!n.includes(o)||e.type&&!r.includes(e.type)){$("#imagePreview").attr("src",""),$("#fileName").val(""),$(".previewImage").addClass("d-none"),$(".controlImage").removeClass("d-none"),$(".examples").removeClass("d-none"),m&&($(".drag_drop").addClass("d-none"),$(".examples").addClass("d-none")),t(),c(q,"danger"),l.value="";return}if(g(),a&&(a.destroy(),a=null),e.type==="application/pdf"){if(e.type==="application/pdf"&&e.size>20*1024*1024){$("#imagePreview").attr("src",""),$("#fileName").val(""),$(".previewImage").addClass("d-none"),$(".controlImage").removeClass("d-none"),$(".examples").removeClass("d-none"),m&&($(".drag_drop").addClass("d-none"),$(".examples").addClass("d-none")),t(),c(D,"danger"),l.value="";return}const s=M(e),i=new File([e],s,{type:e.type}),d=new FileReader;d.onload=function(p){document.getElementById("imagePreview").src=x,$(".controlImage").addClass("d-none"),$(".previewImage").removeClass("d-none"),$("#fileName").val(e.name);const I=new FormData;I.append("file",i),I.append("_token",document.querySelector('meta[name="csrf-token"]').content),fetch("/uploadImage",{method:"POST",body:I}).then(w=>
38w.json()).then(w=>{$("#fileName").val(w.fileName),l.value="",t()}).catch(w=>{console.error("Error uploading PDF:",w),t()})},d.readAsDataURL(e)}else F().then(()=>{N(e)}).catch(s=>{console.error("Failed to load CropperJS:",s),t()})});function N(e){if(!e||!e.type.startsWith("image/")){console.error("Invalid file format"),t();return}const n=new FileReader;n.onload=function(r){const o=r.target.result;document.getElementById("imagePreview").src=o,$(".controlImage").addClass("d-none"),$(".examples").addClass("d-none"),$(".previewImage").removeClass("d-none");const s=M(e),i=new File([e],s,{type:e.type}),d=new FormData;d.append("file",i),d.append("_token",document.querySelector('meta[name="csrf-token"]').content),fetch("/uploadImage",{method:"POST",body:d}).then(p=>p.json()).then(p=>{$("#fileName").val(p.fileName),l.value="",t()}).catch(p=>{console.error("Error uploading image:",p),t()})},n.readAsDataURL(e)}function B(e){a&&(a.destroy(),a=null),v=1,C=1,b.src=e,z.style.display="block",$(".cropper-container").addClass("d-none"),$("#loader").removeClass("d-none"),F().then(()=>{b.onload=()=>{$(".cropper-container").removeClass("d-none"),$("#loader").addClass("d-none"),a=new Cropper(b,{viewMode:0,autoCropArea:1,zoomable:!0,zoomOnWheel:!0,zoom(n){n.detail.ratio<.1&&n.preventDefault(),n.detail.ratio>10&&n.preventDefault()}}),t()}}).catch(n=>{console.error("Failed to load CropperJS:",n),t()})}document.getElementById("cropBtn").addEventListener("click",function(){const e=document.getElementById("imagePreview").src;if(!e){c(A,"danger");return}g(),B(e)});function U(){a&&(g(),$("#loader").removeClass("d-none"),$(".cropper-container").addClass("d-none"),a.getCroppedCanvas().toBlob(function(e){const n=l.files[0]?.name.replace(/\s+/g,"-")||"crop-image.jpg",r=new FormData;r.append("file",e,n),r.append("_token",document.querySelector('meta[name="csrf-token"]').content),fetch("/uploadImage",{method:"POST",body:r}).then(o=>o.json()).then(o=>{document.getElementById("imagePreview").src=URL.createObjectURL(e),$(".controlImage").addClass("d-none"),$(".previewImage").removeClass("d-none"),$("#fileName").val(o.fileName),$("#cropperModal").hide(),l.value="",t()}).catch(o=>{console.error("Error:",o),t()})},"image/jpeg"))}document.getElementById("cropImageButton").addEventListener("click",function(){U()});function R(){a&&(a.destroy(),a=null),v=1,C=1,$("#cropperModal").hide(),$("#fileName").val()||($("#imagePreview").attr("src",""),$(".previewImage").addClass("d-none"),$(".controlImage").removeClass("d-none"),$(".examples").removeClass("d-none"),m&&($(".drag_drop").addClass("d-none"),$(".examples").addClass("d-none")),l.value=""),t()}document.querySelectorAll(".removeShare").forEach(function(e){e.addEventListener("click",R)});$(".close-preview").on("click",function(e){e.stopPropagation(),$("#imagePreview").attr("src",""),$("#fileName").val(""),$(".previewImage").addClass("d-none"),$(".controlImage").removeClass("d-none"),$(".examples").removeClass("d-none"),m&&($(".drag_drop").addClass("d-none"),$(".examples").addClass("d-none")),l.value="",t()});document.addEventListener("paste",function(e){if(e.clipboardData.files.length>1){$("#imagePreview").attr("src",""),$("#fileName").val(""),$(".previewImage").addClass("d-none"),$(".controlImage").removeClass("d-none"),$(".examples").removeClass("d-none"),m&&($(".drag_drop").addClass("d-none"),$(".examples").addClass("d-none")),t(),c(P,"danger"),l.value="";return}const r=e.clipboardData?.items||[];for(let o=0;o<r.length;o++){const s=r[o],i=s.type;if(i.startsWith("image/")){const d=s.getAsFile();if(d.type=="image/webp"){$("#imagePreview").attr("src",""),$("#fileName").val(""),$(".previewImage").addClass("d-none"),$(".controlImage").removeClass("d-none"),$(".examples").removeClass("d-none"),m&&($(".drag_drop").addClass("d-none"),$(".examples").addClass("d-none")),t(),c(L,"danger"),l.value="";return}if(!d)return;console.log("Image file found on paste:",d),g(),a&&(a.destroy(),a=null),N(d);return}if(i==="application/pdf"){const d=s.getAsFile();if(!d)return;console.log("PDF file found on paste:",d),g(),j(d);return}}console.log("No image or PDF found in clipboard.")});function j(e){if(e.size>20*1024*1024){c(D,"danger"),t();return}const n=new FileReader;n.onload=function(r){document.getElementById("imagePreview").src=x,$(".controlImage").addClass("d-none"),$(".previewImage").removeClass("d-none"),$("#fileName").val(e.name);const o=new FormData;o.append("file",e),o.append("_token",document.querySelector('meta[name="csrf-token"]').content),fetch("/uploadImage",{method:"POST",body:o}).then(s=>s.json()).then(s=>{$("#fileName").val(s.fileName),t()}).catch(s=>{console.error("Error uploading PDF:",s),t()})},n.readAsDataURL(e)}const u=document.querySelector(".dropArea");let h=0;u&&(u.addEventListener("dragenter",function(e){e.preventDefault(),h++,u.classList.add("dragover")}),u.addEventListener("dragover",function(e){e.preventDefault()}),u.addEventListener("dragleave",function(e){h--,h===0&&u.classList.remove("dragover")}),u.addEventListener("drop",function(e){e.preventDefault(),h=0,u.classList.remove("dragover");const n=e.dataTransfer.files[0];if(e.dataTransfer.files.length>1){$("#imagePreview").attr("src",""),$("#fileName").val(""),$(".previewImage").addClass("d-none"),$(".controlImage").removeClass("d-none"),$(".examples").removeClass("d-none"),m&&($(".drag_drop").addClass("d-none"),$(".examples").addClass("d-none")),t(),c(P,"danger"),l.value="";return}if(n.type=="image/webp"){$("#imagePreview").attr("src",""),$("#fileName").val(""),$(".previewImage").addClass("d-none"),$(".controlImage").removeClass("d-none"),$(".examples").removeClass("d-none"),m&&($(".drag_drop").addClass("d-none"),$(".examples").addClass("d-none")),t(),c(L,"danger"),l.value="";return}if(!n)return;const o=n.type.startsWith("image/"),s=n.type==="application/pdf";if(!o&&!s){t(),c(`â ${_}<br> ${T}`,"danger");return}if(s&&n.size>20*1024*1024){c(D,"danger"),t();return}g(),a&&(a.destroy(),a=null),s?j(n):F().then(()=>N(n)).catch(i=>{console.error("Error loading CropperJS:",i),t()})}));$("#rotate-left").on("click",function(){a&&a.rotate(-90)});$("#rotate-right").on("click",function(){a&&a.rotate(90)});$(document).on("click","#flip-h",function(){a&&(v=-v,a.scaleX(v))});$(document).on("click","#flip-v",function(){a&&(C=-C,a.scaleY(C))});$(document).on("click","#zoom-in",function(){a&&a.zoom(.2)});$(document).on("click","#zoom-out",function(){a&&a.zoom(-.2)});$(document).on("click","#reset-crop",function(){a&&(v=1,C=1,a.reset())});$(".edit-image-btn").on("click",function(e){e.preventDefault(),e.stopPropagation();const r=$(this).siblings("img").first().attr("src");r&&(g(),B(r))});document.getElementById("statement").addEventListener("paste",function(e){e.preventDefault();const r=(e.clipboardData||window.clipboardData).getData("text").replace(/\n/g,"<br>");document.execCommand("insertHTML",!1,r)});
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.