1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7812],{6029:(e,t,r)=>{"use strict";e.exports.jsxRuntime=r(37876)},38836:(e,t,r)=>{"use strict";r.r(t),r.d(t,{__N_SSG:()=>h,default:()=>x});var s=r(37876),n=r(77328),o=r.n(n),a=r(48230),l=r.n(a),i=r(14232),c=r(53644),d=r(58939);function m(e){let{slug:t,title:r,url:n}=e,[o,a]=(0,i.useState)(!0),[l,c]=(0,i.useState)(!1);return(0,i.useEffect)(()=>{let e=setTimeout(()=>{o&&(a(!1),c(!0))},8e3),t=document.createElement("script");return t.src="https://cusdis.com/js/cusdis.es.js",t.async=!0,t.defer=!0,t.onload=()=>{clearTimeout(e),a(!1),c(!1),console.log("Cusdis loaded successfully")},t.onerror=()=>{clearTimeout(e),a(!1),c(!0),console.error("Cusdis failed to load")},document.head.appendChild(t),()=>{clearTimeout(e)}},[]),(0,i.useEffect)(()=>{if(!o&&!l){let e=()=>{let e=document.querySelector("#cusdis_thread iframe");if(e)try{var t;let r=null==(t=e.contentWindow)?void 0:t.document.body.scrollHeight;r&&(e.style.height=r+"px",console.log("Cusdis iframe resized to:",r+"px"))}catch(t){console.log("Could not resize iframe due to CORS:",t),e.style.height="800px"}},t=()=>{setTimeout(()=>{e()},3e3)},r=()=>{let r=document.querySelector("#cusdis_thread iframe");if(r)try{var s,n;let t=new MutationObserver(()=>{e()});(null==(n=r.contentWindow)||null==(s=n.document)?void 0:s.body)&&(t.observe(r.contentWindow.document.body,{childList:!0,subtree:!0}),e())}catch(e){console.log("Could not set up iframe observer:",e),t()}else t()},s=()=>{document.querySelector("#cusdis_thread iframe")?r():setTimeout(s,1e3)};setTimeout(s,1500),setTimeout(()=>{let e=document.querySelector("#cusdis_thread iframe");if(e)try{var t;let r=null==(t=e.contentWindow)?void 0:t.document.body.scrollHeight;r&&(e.style.height=r+"px",console.log("Backup resize applied:",r+"px"))}catch(t){e.style.height="900px",console.log("Applied fallback height: 900px")}},5e3)}},[o,l]),(0,s.jsxs)("div",{className:"mt-12 pt-8 border-t border-gray-200",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between mb-6",children:[(0,s.jsx)("h3",{className:"text-xl font-semibold text-gray-900",children:"Join the Discussion"}),(0,s.jsx)("span",{className:"text-sm text-purple-600",children:"Share your thoughts"})]}),(0,s.jsx)("div",{className:"mb-6 bg-purple-50 border border-purple-200 rounded-lg p-4",children:(0,s.jsxs)("div",{className:"flex items-start space-x-3",children:[(0,s.jsx)("div",{className:"flex-shrink-0",children:(0,s.jsx)("svg",{className:"w-5 h-5 text-purple-600 mt-0.5",fill:"currentColor",viewBox:"0 0 20 20",children:(0,s.jsx)("path",{fillRule:"evenodd",d:"M18 10c0 3.866-3.582 7-8 7a8.841 8.841 0 01-4.083-.98L2 17l1.338-3.123C2.493 12.767 2 11.434 2 10c0-3.866 3.582-7 8-7s8 3.134 8 7zM7 9H5v2h2V9zm8 0h-2v2h2V9zM9 9h2v2H9V9z",clipRule:"evenodd"})})}),(0,s.jsxs)("div",{className:"flex-1",children:[(0,s.jsx)("h4",{className:"text-sm font-medium text-purple-900",children:"Join the discussion"}),(0,s.jsx)("p",{className:"text-sm text-purple-700 mt-1",children:"I look forward to hearing your thoughts! Share your perspective, ask questions, or add to the conversation."})]})]})}),o&&(0,s.jsxs)("div",{className:"flex items-center justify-center py-12 bg-purple-50 rounded-lg border border-purple-100",children:[(0,s.jsx)("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-purple-600"}),(0,s.jsx)("span",{className:"ml-3 text-purple-700 font-medium",children:"Loading comments..."})]}),l&&(0,s.jsxs)("div",{className:"bg-purple-50 border border-purple-200 rounded-lg p-6 text-center",children:[(0,s.jsx)("div",{className:"text-purple-600 mb-4",children:(0,s.jsx)("svg",{className:"w-12 h-12 mx-auto mb-2",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M8 10h.01M12 10h.01M16 10h.01M9 16H5a2 2 0 01-2-2V6a2 2 0 012-2h14a2 2 0 012 2v8a2 2 0 01-2 2h-5l-5 5v-5z"})})}),(0,s.jsx)("h4",{className:"text-lg font-semibold text-purple-900 mb-2",children:"Comments temporarily unavailable"}),(0,s.jsx)("p",{className:"text-purple-700 mb-4",children:"Having trouble loading the comment system. Please try refreshing the page."})]}),(0,s.jsx)("div",{className:"".concat(o||l?"hidden":""," bg-white rounded-lg overflow-hidden"),id:"cusdis_thread","data-host":"https://cus
1dis.com","data-app-id":"8b1aa449-42e0-4687-95b5-5a2d78404764","data-page-id":t,"data-page-url":n,"data-page-title":r,style:{minHeight:"650px",height:"auto"}}),(0,s.jsxs)("div",{className:"mt-6 text-xs text-gray-500 text-center border-t border-gray-100 pt-4",children:["\uD83D\uDCA1 Comments are powered by"," ",(0,s.jsx)("a",{href:"https://cusdis.com",target:"_blank",rel:"noopener noreferrer",className:"text-purple-600 hover:text-purple-700 font-medium transition-colors",children:"Cusdis"})," ","â lightweight, privacy-focused, and ad-free."]})]})}var u=r(96061);let p={};var h=!0;function x(e){var t;let{post:r,mdxSource:n}=e,[a,h]=i.useState("");return i.useEffect(()=>{h("".concat(window.location.origin,"/blog/").concat(r.slug))},[r.slug]),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(u.A,{title:"".concat(r.title," - Saranyan Vigraham"),children:[(0,s.jsxs)(o(),{children:[(0,s.jsx)("meta",{name:"description",content:r.excerpt}),(0,s.jsx)("meta",{property:"og:title",content:r.title}),(0,s.jsx)("meta",{property:"og:description",content:r.excerpt}),(0,s.jsx)("meta",{property:"og:type",content:"article"}),(0,s.jsx)("meta",{property:"og:url",content:a}),r.coverImage&&(0,s.jsx)("meta",{property:"og:image",content:r.coverImage}),(0,s.jsx)("meta",{property:"article:published_time",content:r.date}),r.author&&(0,s.jsx)("meta",{property:"article:author",content:r.author.name}),(0,s.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,s.jsx)("meta",{name:"twitter:title",content:r.title}),(0,s.jsx)("meta",{name:"twitter:description",content:r.excerpt}),r.coverImage&&(0,s.jsx)("meta",{name:"twitter:image",content:r.coverImage})]}),(0,s.jsxs)("div",{className:"max-w-3xl mx-auto px-4 sm:px-6 py-12 sm:py-16",children:[(0,s.jsx)(l(),{href:"/blog",className:"inline-block text-sm mb-8",style:{color:"var(--color-text-muted)"},children:"â Back to blog"}),(0,s.jsxs)("header",{className:"mb-8",children:[(0,s.jsx)("h1",{className:"font-serif text-2xl sm:text-3xl mb-4",style:{color:"var(--color-text)",fontWeight:400,lineHeight:1.3},children:r.title}),(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-3 text-sm",style:{color:"var(--color-text-muted)"},children:[r.author&&(0,s.jsx)("span",{children:r.author.name}),(0,s.jsx)("time",{dateTime:r.date,children:new Date(r.date).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}),r.readingTime&&(0,s.jsx)("span",{children:r.readingTime})]}),r.tags&&r.tags.length>0&&(0,s.jsx)("div",{className:"flex flex-wrap gap-2 mt-3",children:r.tags.map(e=>(0,s.jsx)("span",{className:"text-xs px-2 py-0.5 rounded",style:{backgroundColor:"rgba(58, 125, 68, 0.08)",color:"var(--color-link)"},children:e},e))})]}),r.coverImage&&(0,s.jsx)("div",{className:"mb-8",children:(0,s.jsx)("img",{src:r.coverImage,alt:r.title,className:"w-full h-auto rounded-md",style:{maxHeight:"400px",objectFit:"cover"},onError:e=>{e.target.style.display="none"}})}),(0,s.jsx)("div",{className:"prose prose-lg mb-10",children:(0,s.jsx)(c.m,{...n,components:p})}),(0,s.jsx)("hr",{style:{border:"none",borderTop:"1px solid var(--color-border)",margin:"2rem 0"}}),(0,s.jsx)("div",{className:"mb-8",children:(0,s.jsx)(d.A,{url:a,title:r.title,excerpt:r.excerpt})}),(0,s.jsx)("div",{className:"mb-8",children:(0,s.jsx)(m,{slug:r.slug,title:r.title,url:a})})]})]}),(0,s.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify({"@context":"https://schema.org","@type":"BlogPosting",headline:r.title,description:r.excerpt,image:r.coverImage,datePublished:r.date,author:r.author?{"@type":"Person",name:r.author.name}:void 0,publisher:{"@type":"Organization",name:"Saranyan Vigraham"},keywords:(null==(t=r.tags)?void 0:t.join(", "))||""})}})]})}},45660:(e,t,r)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/blog/[slug]",function(){return r(38836)}])},53644:(e,t,r)=>{"use strict";r.d(t,{m:()=>d});var s={};r.r(s),r.d(s,{MDXProvider:()=>c,useMDXComponents:()=>i}),"undefined"!=typeof window&&(window.requestIdleCallback=window.requestIdleCallback||function(e){var t=Date.now();return setTimeout(function(){e({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-t))}})},1)},window.cancelIdleCallback=window.cancelIdleCallback||function(e){clearTimeout(e)});var n=r(14232),o=r(6029);let a={},l=n.createContext(a);function i(e){let t=n.useContext(l);return n.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:i(e.components),n.createElement(l.Provider,{value:t},e.children)}function d({compiledSource:e,frontmatter:t,scope:r,components:a={},lazy:l}
1){let[i,d]=(0,n.useState)(!l||"undefined"==typeof window);(0,n.useEffect)(()=>{if(l){let e=window.requestIdleCallback(()=>{d(!0)});return()=>window.cancelIdleCallback(e)}},[]);let m=(0,n.useMemo)(()=>{let n=Object.assign({opts:{...s,...o.jsxRuntime}},{frontmatter:t},r),a=Object.keys(n),l=Object.values(n),i=Reflect.construct(Function,a.concat(`${e}`));return i.apply(i,l).default},[r,e]);if(!i)return n.createElement("div",{dangerouslySetInnerHTML:{__html:""},suppressHydrationWarning:!0});let u=n.createElement(c,{components:a},n.createElement(m,null));return l?n.createElement("div",null,u):u}}},e=>{var t=t=>e(e.s=t);e.O(0,[5695,959,636,6593,8792],()=>t(45660)),_N_E=e.O()}]);
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.