1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,85496,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return l},searchParamsToUrlQuery:function(){return i},urlQueryToSearchParams:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function i(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function o(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function s(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,o(e));else t.set(r,o(n));return t}function l(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},13944,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return x},MiddlewareNotFoundError:function(){return k},MissingStaticPage:function(){return y},NormalizeError:function(){return b},PageNotFoundError:function(){return v},SP:function(){return m},ST:function(){return g},WEB_VITALS:function(){return i},execOnce:function(){return o},getDisplayName:function(){return d},getLocationOrigin:function(){return c},getURL:function(){return u},isAbsoluteUrl:function(){return l},isResSent:function(){return f},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return j}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let i=["CLS","FCP","FID","INP","LCP","TTFB"];function o(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let s=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>s.test(e);function c(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function u(){let{href:e}=window.location,t=c();return e.substring(t.length)}function d(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${d(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return n}let m="u">typeof performance,g=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class x extends Error{}class b extends Error{}class v extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class y extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class k extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function j(e){return JSON.stringify({message:e.message,stack:e.stack})}},75256,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},93928,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return s},formatWithValidation:function(){return c},urlObjectKeys:function(){return l}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let i=e.r(44066)._(e.r(85496)),o=/https?|ftp|gopher|file/;function s(e){let{auth:t,hostname:r}=e,n=e.protocol||"",a=e.pathname||"",s=e.hash||"",l=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:r&&(c=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(c+=":"+e.port)),l&&"object"==typeof l&&(l=String(i.urlQueryToSearchParams(l)));let u=e.search||l&&`?${l}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||o.test(n))&&!1!==c?(c="//"+(c||""),a&&"/"!==a[0]&&(a="/"+a)):c||(c=""),s&&"#"!==s[0]&&(s="#"+s),u&&"?"!==u[0]&&(u="?"+u),a=a.replace(/[?#]/g,encodeURIComponent),u=u.replace("#","%23"),`${n}${c}${a}${u}${s}`}let l=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return s(e)}},49155,(e,t,r)=>{"use strict";
1Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return a}});let n=e.r(98603);function a(e,t){let r=(0,n.useRef)(null),a=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=a.current;t&&(a.current=null,t())}else e&&(r.current=i(e,n)),t&&(a.current=i(t,n))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},81146,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return i}});let n=e.r(13944),a=e.r(97705);function i(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,a.hasBasePath)(r.pathname)}catch(e){return!1}}},27045,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},37456,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return x},useLinkStatus:function(){return v}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let i=e.r(44066),o=e.r(52734),s=i._(e.r(98603)),l=e.r(93928),c=e.r(9362),u=e.r(49155),d=e.r(13944),f=e.r(33803);e.r(75256);let p=e.r(16705),h=e.r(6301),m=e.r(81146),g=e.r(18736);function x(t){var r,n;let a,i,x,[v,y]=(0,s.useOptimistic)(h.IDLE_LINK_STATUS),k=(0,s.useRef)(null),{href:j,as:z,children:w,prefetch:N=null,passHref:E,replace:P,shallow:C,scroll:S,onClick:_,onMouseEnter:L,onTouchStart:O,legacyBehavior:T=!1,onNavigate:$,transitionTypes:A,ref:R,unstable_dynamicOnHover:M,...I}=t;a=w,T&&("string"==typeof a||"number"==typeof a)&&(a=(0,o.jsx)("a",{children:a}));let D=s.default.useContext(c.AppRouterContext),U=!1!==N,B=!1!==N?null===(n=N)||"auto"===n?g.FetchStrategy.PPR:g.FetchStrategy.Full:g.FetchStrategy.PPR,F="string"==typeof(r=z||j)?r:(0,l.formatUrl)(r);if(T){if(a?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});i=s.default.Children.only(a)}let W=T?i&&"object"==typeof i&&i.ref:R,K=s.default.useCallback(e=>(null!==D&&(k.current=(0,h.mountLinkInstance)(e,F,D,B,U,y)),()=>{k.current&&((0,h.unmountLinkForCurrentNavigation)(k.current),k.current=null),(0,h.unmountPrefetchableInstance)(e)}),[U,F,D,B,y]),q={ref:(0,u.useMergedRef)(K,W),onClick(t){T||"function"!=typeof _||_(t),T&&i.props&&"function"==typeof i.props.onClick&&i.props.onClick(t),!D||t.defaultPrevented||function(t,r,n,a,i,o,l){if("u">typeof window){let c,{nodeName:u}=t.currentTarget;if("A"===u.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){a&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),o){let e=!1;if(o({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:d}=e.r(84118);s.default.startTransition(()=>{d(r,a?"replace":"push",!1===i?p.ScrollBehavior.NoScroll:p.ScrollBehavior.Default,n.current,l)})}}(t,F,k,P,S,$,A)},onMouseEnter(e){T||"function"!=typeof L||L(e),T&&i.props&&"function"==typeof i.props.onMouseEnter&&i.props.onMouseEnter(e),D&&U&&(0,h.onNavigationIntent)(e.currentTarget,!0===M)},onTouchStart:function(e){T||"function"!=typeof O||O(e),T&&i.props&&"function"==typeof i.props.onTouchStart&&i.props.onTouchStart(e),D&&U&&(0,h.onNavigationIntent)(e.currentTarget,!0===M)}};return(0,d.isAbsoluteUrl)(F)?q.href=F:T&&!E&&("a"!==i.type||"href"in i.props)||(q.href=(0,f.addBasePath)(F)),x=T?s.default.cloneElement(i,q):(0,o.jsx)("a",{...I,...q,children:a}),(0,o.jsx)(b.Provider,{value:v,children:x})}e.r(27045);let b=(0,s.createContext)(h.IDLE_LINK_STATUS),v=()=>(0,s.useContext)(b);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esMo
1dule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},84834,e=>{"use strict";var t=e.i(52734),r=e.i(37456),n=e.i(98603),a=e.i(73799),i=e.i(24433);let o=[{slug:"flowchart-template",label:{en:"Flowchart",zh:"æµç¨å¾"},tagline:{en:"8 fully-branched process flows â open one and edit",zh:"8 å¼ åæ¯ç»æ»¡çæµç¨å¾ ââ æå¼å°±è½æ¹"},footerLabel:{en:"Flowchart templates",zh:"æµç¨å¾æ¨¡æ¿"}},{slug:"sequence-diagram-template",label:{en:"Sequence diagram",zh:"æ¶åºå¾"},tagline:{en:"8 interaction flows, responses and all",zh:"8 æ®µäº¤äºæµç¨,è¿è¿åé½ç»äº"},footerLabel:{en:"Sequence diagram templates",zh:"æ¶åºå¾æ¨¡æ¿"}},{slug:"class-diagram-template",label:{en:"Class diagram",zh:"ç±»å¾"},tagline:{en:"8 ready-made class diagrams â open one and edit",zh:"8 å¼ ç°æç±»å¾ ââ æå¼å°±è½æ¹"},footerLabel:{en:"Class diagram templates",zh:"ç±»å¾æ¨¡æ¿"}},{slug:"erd-template",label:{en:"ER diagram",zh:"ER å¾"},tagline:{en:"8 keyed database schemas with cardinality",zh:"8 å¥å¸¦ä¸»é®ååºæ°çè¡¨ç»æ"},footerLabel:{en:"ER diagram templates",zh:"ER 徿¨¡æ¿"}}];var s=e.i(29121),l=e.i(31166),c=e.i(61885);let u="viztext:signed-in",d=()=>()=>{};function f(){try{return"1"===localStorage.getItem(u)}catch{return!1}}function p({auth:e}){let{data:r,status:a}=(0,l.useSession)(),{open:i}
1=(0,c.useSignInModal)(),[o,s]=(0,n.useState)(!1),h=(0,n.useSyncExternalStore)(d,f,()=>!1),m=(0,n.useRef)(null);if((0,n.useEffect)(()=>{try{"authenticated"===a?localStorage.setItem(u,"1"):"unauthenticated"===a&&localStorage.removeItem(u)}catch{}},[a]),(0,n.useEffect)(()=>{if(!o)return;let e=e=>{m.current&&(m.current.contains(e.target)||s(!1))},t=e=>{"Escape"===e.key&&s(!1)};return document.addEventListener("click",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("click",e),document.removeEventListener("keydown",t)}},[o]),"loading"===a&&h)return(0,t.jsx)("div",{className:"h-8 w-10 animate-pulse rounded-md bg-zinc-100 dark:bg-zinc-800","aria-hidden":"true"});if("authenticated"!==a||!r?.user)return(0,t.jsx)("button",{type:"button",onClick:()=>i({source:"nav"}),className:"rounded-md border border-zinc-200 bg-white px-3 py-1.5 text-sm font-medium text-zinc-700 shadow-sm transition-colors hover:bg-zinc-50 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-violet-500 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-200 dark:hover:bg-zinc-800",children:e.signIn});let g=r.user,x=(g.name??g.email??"?").trim().charAt(0).toUpperCase();return(0,t.jsxs)("div",{className:"relative",ref:m,children:[(0,t.jsxs)("button",{type:"button","aria-haspopup":"menu","aria-expanded":o,onClick:()=>s(e=>!e),className:"flex items-center gap-1.5 rounded-md border border-zinc-200 bg-white px-2 py-1 text-sm font-medium text-zinc-700 shadow-sm transition-colors hover:bg-zinc-50 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-violet-500 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-200 dark:hover:bg-zinc-800",children:[g.image?(0,t.jsx)("img",{src:g.image,alt:"",width:22,height:22,className:"h-[22px] w-[22px] rounded-full",referrerPolicy:"no-referrer"}):(0,t.jsx)("span",{className:"grid h-[22px] w-[22px] place-items-center rounded-full bg-gradient-to-br from-violet-500 to-cyan-500 text-xs font-semibold text-white",children:x}),g.isPremium&&(0,t.jsx)("span",{className:"rounded bg-gradient-to-r from-violet-500 to-fuchsia-500 px-1.5 py-0.5 text-[10px] font-bold uppercase leading-none tracking-wider text-white",children:e.proBadge})]}),o&&(0,t.jsxs)("div",{role:"menu",className:"absolute right-0 top-full z-30 mt-1 w-56 rounded-md border border-zinc-200 bg-white py-1 text-sm shadow-lg dark:border-zinc-700 dark:bg-zinc-900",children:[(0,t.jsxs)("div",{className:"border-b border-zinc-100 px-3 py-2 dark:border-zinc-800",children:[(0,t.jsx)("div",{className:"truncate font-medium text-zinc-900 dark:text-zinc-100",children:g.name??g.email??e.accountMenu}),g.email&&g.name&&(0,t.jsx)("div",{className:"truncate text-xs text-zinc-500 dark:text-zinc-400",children:g.email})]}),(0,t.jsx)("button",{type:"button",role:"menuitem",onClick:()=>{s(!1),(0,l.signOut)()},className:"block w-full px-3 py-2 text-left text-zinc-700 transition-colors hover:bg-zinc-50 dark:text-zinc-300 dark:hover:bg-zinc-800",children:e.signOut})]})]})}var h=e.i(2483);function m({quota:e}){let{quota:r}=(0,h.useQuota)();if(!r)return null;let{remaining:n,limit:a}=r,i=n<=50&&n>0,o=n<=0;return(0,t.jsxs)("span",{className:`inline-flex items-center gap-1 rounded-md border px-2 py-1 text-xs font-medium tabular-nums transition-colors ${o?"border-rose-300 bg-rose-50 text-rose-700 dark:border-rose-800 dark:bg-rose-950/50 dark:text-rose-300":i?"border-amber-300 bg-amber-50 text-amber-800 dark:border-amber-800 dark:bg-amber-950/50 dark:text-amber-300":"border-violet-200 bg-violet-50 text-violet-700 dark:border-violet-800 dark:bg-violet-950/50 dark:text-violet-300"}`,title:`${n} / ${a} ${e.label}`,"aria-label":`${n} of ${a} ${e.label}`,children:[(0,t.jsx)("span",{children:n}),(0,t.jsxs)("span",{className:"opacity-60",children:["/ ",a]}),(0,t.jsxs)("span",{className:"hidden sm:inline opacity-80",children:[" · ",e.label]})]})}function g({className:e}){return(0,t.jsxs)("svg",{viewBox:"0 0 72 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:e,"aria-hidden":"true",children:[(0,t.jsx)("path",{d:"M7 8.5h28a7 7 0 0 1 7 7v13a7 7 0 0 1-7 7H18l-9 6v-6.7a7 7 0 0 1-6-6.9V15.5a7 7 0 0 1 7-7Z",stroke:"#7C3AED",strokeWidth:"4",strokeLinejoin:"round"}),(0,t.jsx)("path",{d:"M13 17h19M13 23h15M13 29h18",stroke:"#C026D3",strokeWidth:"3",strokeLinecap:"round"}),(0,t.jsx)("path",{d:"M45 24h7m-3-3 3 3-3 3",stroke:"#C026D3",strokeWidth:"2.8",strokeLinecap:"round",strokeLinejoin:"round"}),(0,t.jsx)("path",{d:"M57 24 64 16M57 24l7 8",stroke:"#7C3AED",strokeWidth:"2.8",strokeLinecap:"round"}),(0,t.jsx)("circle",{cx:"57",cy:"24",r:"3.5",fill:"white",stroke:"#7C3AED",strokeWidth:"2.8"}),(0,t.jsx)("circle",{cx:"66",cy:"14",r:"3.5",fill:"white",stroke:"#7C3AED",strokeWidth:"2.8"}),(0,t.jsx)("circle",{cx:"66",cy:"34",r:"3.5",fill:"white",stroke:"#7C3AED",strokeWidth:"2.8"})]})}let x={en:"EN",zh:"䏿"},b="flex items-center gap-1 sm:gap-1.5 whitespace-nowrap cursor-pointer select-none list-none [&::-webkit-details-marker]:hidden text-sm font-medium text-zinc-700 dark:text-zinc-300 hover:text-zinc-900 dark:hover:text-white py-1.5 rounded-md hover:bg-zinc-100 dark:hover:bg-zinc-900 transition-colors",v="absolute right-0 top-full mt-1 z-50 bg-white dark:bg-zinc-900 border border-zinc-200 dark:border-zinc-800 rounded-lg shadow-lg py-1";function y({size:e=12}){return(0,t.jsx)("svg",{width:e,height:e,viewBox:"0 0 12 12",fill:"none","aria-hidden":"true",className:"text-zinc-400 transition-transform group-open:rotate-180",children:(0,t.jsx)("path",{d:"M3 4.5l3 3 3-3",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}e.s(["default",0,function({locale:e,messages:l}
1){let[c,u]=(0,n.useState)(!1),[d,f]=(0,n.useState)(!1),[h,k]=(0,n.useState)(!1),j=(0,n.useRef)(null),z=(0,n.useRef)(null),w=(0,n.useRef)(null),N=(0,a.usePathname)()??"/";(0,n.useEffect)(()=>{if(!c&&!d&&!h)return;let e=e=>{c&&j.current&&!j.current.contains(e.target)&&u(!1),d&&z.current&&!z.current.contains(e.target)&&f(!1),h&&w.current&&!w.current.contains(e.target)&&k(!1)},t=e=>{"Escape"===e.key&&(u(!1),f(!1),k(!1))};return document.addEventListener("click",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("click",e),document.removeEventListener("keydown",t)}},[c,d,h]);let E=(0,s.localizedPath)(e,"/");return(0,t.jsx)("header",{className:"border-b border-zinc-200 dark:border-zinc-800 bg-white dark:bg-zinc-950 sticky top-0 z-20",children:(0,t.jsxs)("div",{className:"max-w-[clamp(320px,96vw,1600px)] mx-auto px-2 sm:px-4 py-3 flex items-center justify-between",children:[(0,t.jsxs)(r.default,{href:E,className:"flex items-center gap-2 text-lg font-semibold tracking-tight hover:opacity-80 transition-opacity",children:[(0,t.jsx)(g,{className:"h-7 w-10 sm:h-8 sm:w-12 shrink-0"}),(0,t.jsx)("span",{className:"hidden sm:inline",children:"VizText"}),(0,t.jsx)("span",{className:"hidden sm:inline-flex items-center px-1.5 py-0.5 rounded text-[10px] font-semibold tracking-wider uppercase bg-gradient-to-r from-blue-500 to-purple-500 text-white",children:"AI"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-0.5 sm:gap-2",children:[(0,t.jsx)(r.default,{href:(0,s.localizedPath)(e,"/diagram-tutorials"),className:"hidden sm:inline-flex items-center px-3 py-1.5 text-sm font-medium text-zinc-700 dark:text-zinc-300 hover:text-zinc-900 dark:hover:text-white rounded-md hover:bg-zinc-100 dark:hover:bg-zinc-900 transition-colors",children:l.blog.navLabel}),(0,t.jsxs)("details",{ref:w,open:h,onToggle:e=>k(e.currentTarget.open),className:"relative group",children:[(0,t.jsxs)("summary",{className:`${b} px-1.5 sm:px-3`,children:[l.nav.templates,(0,t.jsx)(y,{})]}),(0,t.jsx)("div",{className:`${v} w-64`,children:o.map(n=>(0,t.jsxs)(r.default,{href:(0,s.localizedPath)(e,`/${n.slug}`),onClick:()=>k(!1),className:"block px-4 py-2 text-sm text-zinc-700 dark:text-zinc-300 hover:bg-zinc-100 dark:hover:bg-zinc-800 hover:text-zinc-900 dark:hover:text-white transition-colors",children:[(0,t.jsx)("div",{className:"font-medium",children:n.label[e]}),(0,t.jsx)("div",{className:"text-xs text-zinc-500 mt-0.5 line-clamp-1",children:n.tagline[e]})]},n.slug))})]}),(0,t.jsxs)("details",{ref:j,open:c,onToggle:e=>u(e.currentTarget.open),className:"relative group",children:[(0,t.jsxs)("summary",{className:`${b} px-1.5 sm:px-3`,children:[(0,t.jsx)("span",{className:"sm:hidden",children:l.nav.diagramTypesShort}),(0,t.jsx)("span",{className:"hidden sm:inline",children:l.nav.diagramTypes}),(0,t.jsx)(y,{})]}),(0,t.jsx)("div",{className:`${v} w-64`,children:i.DIAGRAM_TYPES.map(n=>{let a=(0,i.getDiagramType)(n.slug,e);return a?(0,t.jsxs)(r.default,{href:(0,s.localizedPath)(e,`/${n.slug}`),onClick:()=>u(!1),className:"block px-4 py-2 text-sm text-zinc-700 dark:text-zinc-300 hover:bg-zinc-100 dark:hover:bg-zinc-800 hover:text-zinc-900 dark:hover:text-white transition-colors",children:[(0,t.jsx)("div",{className:"font-medium",children:function(e){if(/[ä¸-é¿¿]/.test(e))return e.replace(/^AI\s+/,"");var t=e.replace(/^AI\s+/,"").replace(/\s+from\s+(text|description)$/i,"").replace(/\bgenerator\b/i,"").replace(/\s+/g," ").trim();if(/[ä¸-é¿¿]/.test(t))return t;let r={chatgpt:"ChatGPT",gpt:"GPT",openai:"OpenAI",github:"GitHub",javascript:"JavaScript",typescript:"TypeScript"},n=new Set(["a","an","the","and","or","but","nor","of","to","in","on","at","by","for","with","from","as","is","are"]);return t.split(/\s+/).map((e,t)=>{if(!e||/^[A-Z]{2,}$/.test(e))return e;let a=e.toLowerCase();return r[a]?r[a]:t>0&&n.has(a)?a:"ai"===a?"AI":e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}).join(" ")}(a.keyword)}),(0,t.jsx)("div",{className:"text-xs text-zinc-500 mt-0.5 line-clamp-1",children:a.tagline})]},n.slug):null})})]}),(0,t.jsxs)("details",{ref:z,open:d,onToggle:e=>f(e.currentTarget.open),className:"relative group",children:[(0,t.jsxs)("summary",{className:`${b} px-1.5 sm:px-2.5`,"aria-label":l.nav.language,children:[x[e],(0,t.jsx)(y,{size:10})]}),(0,t.jsx)("div",{className:`${v} w-32`,children:s.LOCALES.map(n=>(0,t.jsx)(r.default,{href:(e=>{let t=N;for(let e of s.LOCALES)if("en"!==e){if(t.startsWith(`/${e}/`)){t=t.slice(e.length+1);break}if(t===`/${e}`){t="/";break}}return(0,s.localizedPath)(e,t)})(n),onClick:()=>f(!1),hrefLang:n,className:`block px-4 py-2 text-sm transition-colors ${n===e?"font-semibold text-blue-600 dar
1k:text-blue-400 bg-zinc-50 dark:bg-zinc-800":"text-zinc-700 dark:text-zinc-300 hover:bg-zinc-100 dark:hover:bg-zinc-800"}`,children:x[n]},n))})]}),(0,t.jsx)(m,{quota:l.quota}),(0,t.jsx)(p,{auth:l.auth})]})]})})}],84834)},73262,e=>{"use strict";var t=e.i(52734),r=e.i(75679);let n=e=>`https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=1216603&theme=${e}&t=1786074863333`,a="VizText - AI Diagram Generator â from Prompt or Chat | Product Hunt";e.s(["default",0,function({locale:e,placement:i}){return(0,t.jsxs)("a",{href:"https://www.producthunt.com/products/text2mermaid?embed=true&utm_source=badge-featured&utm_medium=badge&utm_campaign=badge-text2diagram",target:"_blank",rel:"noopener noreferrer",onClick:()=>(0,r.track)("ph_badge_click",{locale:e,placement:i}),className:"inline-block transition-opacity hover:opacity-80",children:[(0,t.jsx)("img",{src:n("light"),alt:a,width:"250",height:"54",className:"dark:hidden"}),(0,t.jsx)("img",{src:n("dark"),alt:a,width:"250",height:"54",className:"hidden dark:block"})]})}])}]);
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.