PageSourceSearch

https://app.vibey.im/_next/static/chunks/8436-0c93e53854fbcdd6.js

js vibey.im collected 2026-10-04 14:33:40 UTC 35,304 bytes, 14 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8436],{7278:(e,t,r)=>{r.d(t,{c:()=>o.c5});var o=r(48414)},34556:(e,t,r)=>{r.d(t,{F:()=>u});var o=r(10831),n=r(48647),a=r(12038),i=r(92291),d=r(90509),s=r(75467),l=r(1256),c=r(34622);function u({title:e,getDocBody:t,visualHtml:r,campaignId:u,customData:p,className:f,buttonClassName:g,menuPlacement:m="below",showLabel:h=!1,label:b="Export"}){let x=(0,n.useRef)(null),v=(0,n.useRef)(null),[y,w]=(0,n.useState)(!1),[k,M]=(0,n.useState)(null),[P,A]=(0,n.useState)(!1),[z,E]=(0,n.useState)(!1),[L,j]=(0,n.useState)(!1),C=(0,n.useMemo)(()=>(0,c.JD)({customData:p,docBody:t(),visualHtml:r}),[p,t,r]),N=(0,n.useCallback)(()=>{let e=v.current;if(!e)return;let t=e.getBoundingClientRect();M({top:t.bottom+4,left:t.right})},[]);(0,n.useLayoutEffect)(()=>y&&"below"===m?(N(),window.addEventListener("scroll",N,!0),window.addEventListener("resize",N),()=>{window.removeEventListener("scroll",N,!0),window.removeEventListener("resize",N)}):void M(null),[y,m,N]),(0,n.useEffect)(()=>{if(!y)return;let e=e=>{let t=e.target;!(t instanceof Node)||x.current?.contains(t)||t instanceof Element&&t.closest("[data-doc-export-menu-panel]")||w(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[y]);let T=e.trim()||"Untitled",B=(0,n.useCallback)(async()=>{if(C.canExportDocBody&&!P){A(!0);try{await (0,c.Tw)({title:T,docBody:t(),campaignId:u??null})}finally{A(!1),w(!1)}}},[C.canExportDocBody,u,P,t,T]),H=(0,n.useCallback)(async()=>{if(C.canExportDocBody&&!z){E(!0);try{await (0,c.b9)(T,t())}finally{E(!1),w(!1)}}},[C.canExportDocBody,z,t,T]),R=(0,n.useCallback)(async()=>{if(C.hasVisualHtml&&r&&!L){j(!0);try{await (0,c.BZ)({title:T,visualHtml:r})}finally{j(!1),w(!1)}}},[C.hasVisualHtml,L,T,r]);if(!C.canExport)return null;let D="flex w-full items-center gap-2 px-3 py-1.5 text-xs text-[var(--foreground)] transition-colors hover:bg-[var(--color-hover-subtle)] disabled:opacity-50",S=(0,l.cn)("dropdown-menu-solid min-w-[9rem] overflow-hidden rounded-xl py-1 shadow-xl","left"===m?"absolute right-full top-0 z-dropdown mr-1":"above"===m?"absolute bottom-full right-0 z-dropdown mb-1":k?"fixed z-dropdown -translate-x-full":"absolute right-0 top-full z-dropdown mt-1"),I="below"===m&&k?{top:k.top,left:k.left}:void 0,O=y?(0,o.jsxs)("div",{"data-doc-export-menu-panel":!0,className:S,style:I,role:"menu",children:[C.canExportDocBody?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("button",{type:"button",onClick:()=>void B(),disabled:P,className:D,children:[(0,o.jsx)(i.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--color-muted-foreground)]"}),(0,o.jsx)("span",{children:P?"Exporting…":"PDF"})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>{(0,c.mX)(T,t()),w(!1)},className:D,children:[(0,o.jsx)(d.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--color-muted-foreground)]"}),(0,o.jsx)("span",{children:"Markdown"})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>{(0,c.Gd)(T,t()),w(!1)},className:D,children:[(0,o.jsx)(i.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--color-muted-foreground)]"}),(0,o.jsx)("span",{children:"HTML"})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>void H(),disabled:z,className:D,children:[(0,o.jsx)(i.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--color-muted-foreground)]"}),(0,o.jsx)("span",{children:z?"Exporting…":"DOCX"})]})]}):null,C.hasVisualHtml&&r?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("button",{type:"button",onClick:()=>void R(),disabled:L,className:D,children:[(0,o.jsx)(i.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--color-muted-foreground)]"}),(0,o.jsx)("span",{children:L?"Exporting…":"Visual PDF"})]}),(0,o.jsxs)("button",{type:"button",onClick:()=>{(0,c.Wv)(T,r),w(!1)},className:D,children:[(0,o.jsx)(d.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--color-muted-foreground)]"}),(0,o.jsx)("span",{children:"Visual HTML"})]})]}):null]}):null,F="below"===m&&O&&k&&"u">typeof document?(0,a.createPortal)(O,document.body):O;return(0,o.jsxs)("div",{ref:x,"data-doc-export-menu":!0,className:(0,l.cn)("relative z-[280] shrink-0",f),children:[(0,o.jsxs)("button",{ref:v,type:"button",onClick:()=>w(e=>!e),className:(0,l.cn)(h?"flex items-center gap-1 text-[11px] text-[var(--color-muted-foreground)] transition-colors hover:text-[var(--foreground)]":"rounded-md p-1 text-[var(--color-muted-foreground)] transition-colors hover:bg-[var(--color-hover-subtle)] hover:text-[var(--foreground)]",g),"aria-label":"Export document","aria-haspopup":"menu","aria-expanded":y,children:[(0,o.jsx)(s.A,{className:(0,l.cn)("shrink-0",h?"h-3.5 w-3.5":"h-4 w-4")}),h?(0,o.jsx)("span",{children:b}):null]}),"below"===m?F:O]})}},34622:(e,t,r)=>{r.d(t,{JD:()=>d,b9:()=>u,Gd:()=>c,mX:()=>l,Tw:()=>s,Wv:()=>p,BZ:()=>i.B});var o=r(80774),n=r(20687),a=r(79540),i=r(8295);function d(e){let t=e.customData??{},r="folder"===t._doc_kind,o="drive"===t._doc_source,n=e.docBody?.trim()??"",a="str
1ing"==typeof e.visualHtml&&e.visualHtml.trim()?e.visualHtml.trim():null,i=!!n?.trim(),d=!!a;return{canExport:!r&&!o&&(i||d),canExportDocBody:i,hasVisualHtml:d}}async function s(e){var t,r;let n,i,d,s=document.createElement("div");s.style.cssText="position:fixed;left:-100000px;top:0;width:186mm;opacity:0;pointer-events:none",s.setAttribute("aria-hidden","true");let l=(t=e.title,r=e.docBody,(n=document.createElement("div")).style.cssText="font-family:system-ui,sans-serif;color:#111;line-height:1.6",(i=document.createElement("h1")).style.cssText="font-size:22px;font-weight:700;margin:0 0 16px",i.textContent=t.trim()||"Untitled",n.appendChild(i),(d=document.createElement("div")).style.cssText="font-size:14px",d.innerHTML=r,n.appendChild(d),n);s.appendChild(l),document.body.appendChild(s);try{await new Promise(e=>setTimeout(e,200)),await (0,a.l0D)({contentElement:l,campaignId:e.campaignId??null,filenameBase:(0,a.Nze)(e.title,"doc"),preferPrintPipeline:!1})}catch{o.oR.error("Failed to export doc as PDF")}finally{s.parentNode?.removeChild(s)}}function l(e,t){let r=(0,n.gp)(t),o=e.trim()||"Untitled",i=r?`# ${o}
2
3${r}`:`# ${o}
4`;(0,a.iie)(i,o,"doc")}function c(e,t){let r,o=e.trim()||"Untitled";(0,a.Sml)((r=(o.trim()||"Untitled").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),`<!DOCTYPE html>
5<html lang="en">
6<head>
7<meta charset="utf-8" />
8<title>${r}</title>
9</head>
10<body>
11<h1>${r}</h1>
12${t}
13</body>
14</html>`),o)}async function u(e,t){let r=e.trim()||"Untitled";try{let e=await fetch("/api/spaces/export-docx",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:r,docBody:t})});if(!e.ok)throw Error("DOCX export failed");let o=await e.blob();(0,a.HiO)(o,r,"doc")}catch{o.oR.error("Failed to export doc as DOCX")}}function p(e,t){(0,a.Sml)(t,`${e.trim()||"Untitled"}-visual`)}},44849:(e,t,r)=>{r.d(t,{z:()=>ef});var o=r(48647),n=r(94046),a=r(44577),i=r(83777),d=r(63696),s=r(85080),l=r(56),c=r(55506),u=r(6524),p=r(12161),f=r(63091),g=r(1256),m=r(18419),h=r(98575),b=r(12490),x=r(60374);r(67934);let v=m.YY.create({name:"docTextStyleClipFill",addGlobalAttributes:()=>[{types:["textStyle"],attributes:{clipTextFill:{default:null,parseHTML:e=>{let t=e.getAttribute("data-clip-text");return t?(0,x.oJ)(t):null},renderHTML:e=>{let t=e.clipTextFill;return t&&t.startsWith("linear-gradient")?{"data-clip-text":(0,x._E)(t),style:"background-image: "+t+"; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent;"}:{}}}}}]}),y=b.Ay.extend({addOptions(){return{...this.parent?.(),multicolor:!0,HTMLAttributes:{}}},addAttributes(){return this.options.multicolor?{color:{default:null,parseHTML:e=>{let t=e.getAttribute("data-color");if(t)try{return decodeURIComponent(t)}catch{return t}return e.style.background||e.style.backgroundColor||null},renderHTML:e=>{let t=e.color;if(!t)return{};let r=(0,x.jb)(t);return{"data-color":(0,x._E)(t),style:`background: ${r}; color: inherit`}}}}:{}}}),w=m.bP.create({name:"docBanner",content:"block+",group:"block",defining:!0,isolating:!0,addAttributes:()=>({docBackground:{default:"blue",parseHTML:e=>{let t=e.getAttribute("data-doc-bg");if(t)return(0,x.oJ)(t);let r=e.getAttribute("data-surface");return r||"blue"}}}),parseHTML:()=>[{tag:"div[data-doc-banner]",getAttrs:e=>{let t=e.getAttribute("data-doc-bg");if(t)return{docBackground:(0,x.oJ)(t)};let r=e.getAttribute("data-surface");return r?{docBackground:r}:{docBackground:"blue"}}}],renderHTML({HTMLAttributes:e,node:t}){let r=t.attrs.docBackground??"blue";return["div",(0,m.KV)(e,{"data-doc-banner":"","data-doc-bg":(0,x._E)(r),style:`background: ${(0,x.bN)(r)}`}),0]}}),k=m.bP.create({name:"docPullQuote",content:"block+",group:"block",defining:!0,isolating:!0,parseHTML:()=>[{tag:"div[data-doc-pull-quote]"}],renderHTML:({HTMLAttributes:e})=>["div",(0,m.KV)(e,{"data-doc-pull-quote":""}),0]}),M=m.CU.create({name:"docBadge",inclusive:!1,addAttributes:()=>({docBackground:{default:"blue",parseHTML:e=>{let t=e.getAttribute("data-doc-bg");if(t)return(0,x.oJ)(t);let r=e.getAttribute("data-surface");return r||"blue"}}}),parseHTML:()=>[{tag:"span[data-doc-badge]",getAttrs:e=>{let t=e.getAttribute("data-doc-bg");
14if(t)return{docBackground:(0,x.oJ)(t)};let r=e.getAttribute("data-surface");return r?{docBackground:r}:{docBackground:"blue"}}}],renderHTML({mark:e,HTMLAttributes:t}){let r=e.attrs.docBackground??"blue";return["span",(0,m.KV)(t,{"data-doc-badge":"","data-doc-bg":(0,x._E)(r),style:`background: ${(0,x.bN)(r)}`}),0]}}),P=m.YY.create({name:"docIndent",addGlobalAttributes:()=>[{types:["paragraph","heading"],attributes:{indent:{default:0,parseHTML:e=>parseInt(e.getAttribute("data-indent")||"0",10),renderHTML:e=>{let t=e.indent;return t?{"data-indent":String(t),style:`margin-left: ${24*t}px`}:{}}}}}],addCommands:()=>({increaseIndent:()=>({tr:e,state:t,dispatch:r})=>{let{from:o,to:n}=t.selection,a=!1;return t.doc.nodesBetween(o,n,(t,r)=>{if("paragraph"===t.type.name||"heading"===t.type.name){let o=t.attrs.indent||0;o<8&&(e.setNodeMarkup(r,void 0,{...t.attrs,indent:o+1}),a=!0)}}),r&&a&&r(e),a},decreaseIndent:()=>({tr:e,state:t,dispatch:r})=>{let{from:o,to:n}=t.selection,a=!1;return t.doc.nodesBetween(o,n,(t,r)=>{if("paragraph"===t.type.name||"heading"===t.type.name){let o=t.attrs.indent||0;o>0&&(e.setNodeMarkup(r,void 0,{...t.attrs,indent:o-1}),a=!0)}}),r&&a&&r(e),a}})}),A=[h.Q,v,y,w,k,M,P],z=r(41064).Ay.extend({addNodeView(){if(!this.options.resize||!this.options.resize.enabled||"u"<typeof document)return null;let{directions:e,minWidth:t,minHeight:r,alwaysPreserveAspectRatio:o}=this.options.resize;return({node:n,getPos:a,HTMLAttributes:i,editor:d})=>{let s=document.createElement("img");Object.entries(i).forEach(([e,t])=>{if(null!=t)switch(e){case"width":case"height":break;default:s.setAttribute(e,t)}}),s.src=i.src,s.setAttribute("data-drag-handle","");let l=new m.Nz({element:s,editor:d,node:n,getPos:a,onResize:(e,t)=>
14{s.style.width=`${e}px`,s.style.height=`${t}px`},onCommit:(e,t)=>{let r=a();void 0!==r&&this.editor.chain().setNodeSelection(r).updateAttributes(this.name,{width:e,height:t}).run()},onUpdate:e=>e.type===n.type,options:{directions:e,min:{width:t,height:r},preserveAspectRatio:!0===o}}),c=l.dom;return c.style.visibility="hidden",c.style.pointerEvents="none",c.setAttribute("draggable","true"),s.draggable=!1,s.onload=()=>{c.style.visibility="",c.style.pointerEvents=""},{dom:l.dom,contentDOM:l.contentDOM,update:l.update.bind(l),destroy:l.destroy.bind(l),stopEvent(e){let t=e.target;return t instanceof Element&&!!t.closest("[data-resize-handle]")}}}}});var E=r(71415),L=r(49305),j=r(4e4),C=r(18627),N=r(56274),T=r(64551),B=r(77235),H=r(50919),R=r(35684),D=r(71729),S=r(38598),I=r(7405),O=r(35829),F=r(7396),U=r(57413),q=r(88504),$=r(88983),_=r(51525),V=r(6322),X=r(29193),Y=r(46500),G=r(95134);function J(e){return(t,r)=>{t.chain().focus().deleteRange(r).run();let o={...t.getAttributes("textStyle"),fontSize:null};(0,f.Fe)(t,e,o,!0)}}let K=[{id:"paragraph",label:"Normal text",section:"text",keywords:["text","paragraph","plain"],icon:E.A,run:J("paragraph")},{id:"heading1",label:"Heading 1",section:"text",keywords:["h1","title"],icon:L.A,run:J("heading1")},{id:"heading2",label:"Heading 2",section:"text",keywords:["h2","subtitle"],icon:j.A,run:J("heading2")},{id:"heading3",label:"Heading 3",section:"text",keywords:["h3"],icon:C.A,run:J("heading3")},{id:"heading4",label:"Heading 4",section:"text",keywords:["h4"],icon:N.A,run:J("heading4")},{id:"taskList",label:"Checklist",section:"text",keywords:["todo","checkbox","task","check"],icon:T.A,run:J("taskList")},{id:"bulletList",label:"Bulleted list",section:"text",keywords:["bullet","unordered","ul"],icon:B.A,run:J("bulletList")},{id:"orderedList",label:"Numbered list",section:"text",keywords:["numbered","ordered","ol","1"],icon:H.A,run:J("orderedList")},{id:"toggleList",label:"Toggle list",section:"text",keywords:["toggle","collapse","details","accordion"],icon:R.A,run:J("toggleList")},{id:"docBanner",label:"Banners",section:"text",keywords:["banner","callout","info","alert"],icon:D.A,run:J("docBanner")},{id:"codeBlock",label:"Code block",section:"text",keywords:["code","pre","snippet"],icon:S.A,run:J("codeBlock")},{id:"blockquote",label:"Block quote",section:"text",keywords:["quote","blockquote","cite"],icon:I.A,run:J("blockquote")},{id:"docPullQuote",label:"Pull quote",section:"text",keywords:["pull","quote","pullquote","featured"],icon:I.A,run:J("docPullQuote")},{id:"table",label:"Table",section:"text",keywords:["table","grid","rows","columns"],icon:O.A,run:(e,t)=>{e.chain().focus().deleteRange(t).insertTable({rows:3,cols:3,withHeaderRow:!0}).run()}},{id:"image",label:"Image",section:"text",keywords:["image","photo","picture","media"],icon:F.A,run:(e,t)=>{(0,G.e)({slashRange:{from:t.from,to:t.to},getAnchorRect:()=>{let r=e.view.coordsAtPos(t.from);return new DOMRect(r.left,r.top,0,Math.max(r.bottom-r.top,1))}})}},{id:"divider",label:"Divider",section:"text",keywords:["divider","line","rule","separator","hr"],icon:U.A,run:(e,t)=>{e.chain().focus().deleteRange(t).setHorizontalRule().run()}},{id:"bold",label:"Bold",section:"formatting",keywords:["strong","b"],icon:q.A,run:(e,t)=>{e.chain().focus().deleteRange(t).toggleBold().run()}},{id:"italic",label:"Italic",section:"formatting",keywords:["em","i"],icon:$.A,run:(e,t)=>{e.chain().focus().deleteRange(t).toggleItalic().run()}},{id:"underline",label:"Underline",section:"formatting",keywords:["u"],icon:_.A,run:(e,t)=>{e.chain().focus().deleteRange(t).toggleUnderline().run()}},{id:"strikethrough",label:"Strikethrough",section:"formatting",keywords:["strike","s","del"],icon:V.A,run:(e,t)=>{e.chain().focus().deleteRange(t).toggleStrike().run()}},{id:"inlineCode",label:"Inline code",section:"formatting",keywords:["code","mono","inline"],icon:S.A,run:(e,t)=>{e.chain().focus().deleteRange(t).toggleCode().run()}},{id:"clearFormat",label:"Clear format",section:"formatting",keywords:["remove","clear","reset","plain"],icon:X.A,run:(e,t)=>{e.chain().focus().deleteRange(t).unsetAllMarks().run()}},{id:"link",label:"Website Link",section:"formatting",keywords:["url","href","link","website"],icon:Y.A,run:(e,t)=>{e.chain().focus().deleteRange(t).run();let r=window.prompt("Enter URL");if(r){let t=r.startsWith("http")?r:`https://${r}`;e.chain().focus().setLink({href:t}).run()}}}],W=["text","formatting"],Q={text:"TEXT",formatting:"FORMATTING"};var Z=r(30945),ee=r(46616);let et=new Z.hs("docSlashCommand"),er=m.YY.create({name:"docSlashCommand",addOptions:()=>({suggestion:{char:"/",pluginKey:et,allowSpaces:!1,startOfLine:!1}}),addProseMirrorPlugins(){return[(0,ee.V0)({editor:this.editor,...this.options.suggestion})]}});var eo=r(10831),en=r(12038),ea=r(7321);let ei=(0,o.forwardRef)(function({items:e,query:t,command:r,clientRect:n},a){let[i,d]=(0,o.useState)(0),s=(0,o.useRef)(null),l=(0,o.useRef)(null);(0,o.useEffect)(()=>{d(0)},[e]),(0,o.useEffect)(()=>{l.current?.scrollIntoView({block:"nearest"})},[i]);let c=(0,o.useCallback)(t=>{let o=e[t];o&&r(o)},[e,r]);(0,o.useImperativeHandle)(a,()=>({onKeyDown:t=>"ArrowDown"===t.key?(t.preventDefault(),d(t=>(t+1)%e.length),!0):"ArrowUp"===t.key?(t.preventDefault(),d(t=>(t-1+e.length)%e.length),!0):"Enter"===t.key&&(t.preventDefault(),c(i),!0)}),[e.length,i,c]);let[u,p]=(0,o.useState)(null);(0,o.useLayoutEffect)(()=>
14{if(!n)return;let e=n();if(!e)return;let t=s.current,r=t?.offsetHeight??320,o=t?.offsetWidth??340,a=window.innerHeight,i=window.innerWidth,d=e.bottom+4,l=e.left;d+r>a-12&&(d=e.top-r-4),l+o>i-12&&(l=i-o-12),l<12&&(l=12),p({top:d,left:l})},[n,e]);let f=[],g=0,m=new Map;for(let t of W){let r=e.filter(e=>e.section===t);if(r.length>0)for(let e of(f.push({section:t,sectionItems:r}),r))m.set(e.id,g),g+=1}return 0===e.length?(0,en.createPortal)((0,eo.jsx)("div",{ref:s,"data-doc-slash-menu":"",className:"border-border bg-card fixed z-[100] min-w-[200px] rounded-xl border p-3 shadow-xl",style:u?{top:u.top,left:u.left}:{visibility:"hidden"},children:(0,eo.jsx)("p",{className:"text-muted-foreground text-xs",children:"No results"})}),document.body):(0,en.createPortal)((0,eo.jsxs)("div",{ref:s,"data-doc-slash-menu":"",className:"border-border bg-card fixed z-[100] max-h-[min(400px,60vh)] min-w-[340px] overflow-y-auto rounded-xl border shadow-xl",style:u?{top:u.top,left:u.left}:{visibility:"hidden"},children:[f.map(({section:e,sectionItems:t})=>(0,eo.jsxs)("div",{className:"p-1",children:[(0,eo.jsxs)("div",{className:"flex items-center justify-between px-2 pb-0.5 pt-1.5",children:[(0,eo.jsx)("span",{className:"text-muted-foreground text-[10px] font-medium uppercase tracking-wide",children:Q[e]}),e===f[0]?.section&&(0,eo.jsx)("span",{className:"text-muted-foreground/60 text-[10px]",children:"PRESS ESC TO EXIT"})]}),(0,eo.jsx)("div",{className:"grid grid-cols-2 gap-0.5",children:t.map(e=>{let t=m.get(e.id)??-1,r=t===i,o=e.icon;return(0,eo.jsxs)("button",{ref:r?l:void 0,type:"button",onClick:()=>c(t),onMouseEnter:()=>d(t),className:(0,ea.A)("flex items-center gap-2 rounded-lg px-2 py-1.5 text-left text-xs transition-colors",r?"bg-secondary text-foreground":"text-muted-foreground hover:bg-secondary/60 hover:text-foreground"),children:[(0,eo.jsx)("span",{className:"border-border flex h-6 w-6 flex-shrink-0 items-center justify-center rounded border",children:(0,eo.jsx)(o,{className:"h-3.5 w-3.5"})}),(0,eo.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e.label})]},e.id)})})]},e)),t&&(0,eo.jsx)("div",{className:"border-border border-t px-3 py-1.5",children:(0,eo.jsxs)("span",{className:"text-muted-foreground text-[11px]",children:["/",t]})})]}),document.body)}),ed=null,es=null,el=null;async function ec(){if(ed||((ed=document.createElement("div")).setAttribute("data-doc-slash-menu",""),document.body.appendChild(ed)),!es){let{createRoot:e}=await Promise.resolve().then(r.t.bind(r,94801,19));es=e(ed)}}function eu(e,t,r,o){es&&es.render((0,eo.jsx)(ei,{ref:e=>{el=e},items:e,query:t,command:r,clientRect:o}))}function ep(){return{onStart:e=>{ec().then(()=>{eu(e.items,e.query,e.command,e.clientRect??null)})},onUpdate:e=>{eu(e.items,e.query,e.command,e.clientRect??null)},onKeyDown:e=>"Escape"===e.event.key||(el?.onKeyDown(e.event)??!1),onExit:()=>{el=null,es&&(es.unmount(),es=null),ed&&(ed.remove(),ed=null)}}}function ef({initialItemId:e,initialDocBodyContent:t,docBodyHydrationResumeNonce:r,inline:m,docLocked:h,isDriveDoc:b,docBodyHydrationBlockedRef:x,handleDocBodyChange:v,onInitialContentReady:y}){let w=(0,o.useRef)(e),k=(0,u.hG)({immediatelyRender:!1,extensions:[p.A.configure({heading:{levels:[1,2,3,4]},dropcursor:{color:!1,width:2,class:"doc-editor-dropcursor"}}),i._0,i.L2,n.B_,n.sM,n.$M,s.XI.configure({resizable:!0,HTMLAttributes:{class:"doc-editor-table"}}),s.Hj,s.A0,s.nA,c.A,f.VH,l.A.configure({types:["heading","paragraph"]}),a.Ay.configure({openOnClick:!1,HTMLAttributes:{class:"text-primary underline hover:no-underline cursor-pointer"}}),z.configure({inline:!1,allowBase64:!1,HTMLAttributes:{class:"doc-editor-image"},resize:{enabled:!0,directions:["top","right","bottom","left","top-left","top-right","bottom-left","bottom-right"],minWidth:48,minHeight:48,alwaysPreserveAspectRatio:!0}}),d.A.configure({placeholder:"Type / for commands…",showOnlyCurrent:!0}),er.configure({suggestion:{char:"/",pluginKey:et,allowSpaces:!1,startOfLine:!1,items:({query:e})=>(function(e,t){if(!t)return e;let r=t.toLowerCase();return e.filter(e=>e.label.toLowerCase().includes(r)||e.keywords.some(e=>e.includes(r)))})(K,e),command:({editor:e,range:t,props:r})=>{r.run(e,t)},render:ep}}),...A],content:t,editorProps:{attributes:{class:(0,g.cn)("prose prose-sm dark:prose-invert max-w-none min-h-[200px] outline-none py-3 text-[var(--foreground)] cursor-text",!m&&"px-4",m&&"px-0")}},onUpdate:({editor:e})=>{v(e.getHTML(),{userIntent:e.isFocused})}});return(0,o.useEffect)(()=>{k&&k.setEditable(!h&&!b)},[k,h,b]),(0,o.useEffect)(()=>
14{if(!k)return;let r=w.current!==e;w.current=e,r&&(x.current=!1);let o=k.getHTML(),n=t&&"<p></p>"!==t?t:"";if(n===o)return void y?.();if(!r){if(x.current)return;if(!n)return void y?.()}(n||"<p></p>"!==o&&""!==o)&&k.commands.setContent(n,{emitUpdate:!1}),y?.()},[k,t,e,x,r,y]),k}},46049:(e,t,r)=>{r.d(t,{G:()=>d});var o=r(10831),n=r(48647),a=r(12038),i=r(96277);function d({editor:e}){let[t,r]=(0,n.useState)(null);return((0,n.useEffect)(()=>{if(!e)return;let t=e.view,o=t.dom;function n(){r(null)}function a(e){if(!t.dragging?.slice)return void n();let a=t.posAtCoords({left:e.clientX,top:e.clientY});if(!a)return void n();let d=a.pos,s=(0,i.Um)(t.state.doc,d,t.dragging.slice);null!=s&&(d=s);let l=t.state.doc.resolve(d);if(l.parent.inlineContent)return void n();let c=l.nodeBefore,u=l.nodeAfter,p=0,f=0,g=0;if(c||u){let e=d-(c?c.nodeSize:0),r=t.nodeDOM(e);if(!(r instanceof HTMLElement))return void n();let o=r.getBoundingClientRect();if(p=c?o.bottom:o.top,c&&u){let e=t.nodeDOM(d);e instanceof HTMLElement&&(p=(p+e.getBoundingClientRect().top)/2)}f=o.left,g=o.width}else{let e=t.coordsAtPos(d),r=o.getBoundingClientRect();p=e.top,f=r.left,g=r.width}r({top:p,left:f,width:g})}return o.addEventListener("dragover",a),o.addEventListener("dragleave",n),o.addEventListener("drop",n),o.addEventListener("dragend",n),()=>{o.removeEventListener("dragover",a),o.removeEventListener("dragleave",n),o.removeEventListener("drop",n),o.removeEventListener("dragend",n)}},[e]),!t||"u"<typeof document)?null:(0,a.createPortal)((0,o.jsx)("div",{"data-doc-drop-indicator":"",className:"pointer-events-none fixed z-[100050] h-[2px]",style:{top:t.top,left:t.left,width:t.width,background:"linear-gradient(90deg, transparent 0%, rgb(59 130 246) 8%, rgb(59 130 246) 92%, transparent 100%)",transform:"translateY(-1px)"},"aria-hidden":!0}),document.body)}},48376:(e,t,r)=>{r.d(t,{R:()=>l});var o=r(10831),n=r(48647),a=r(64906),i=r(7396),d=r(73504),s=r(1256);let l=(0,n.forwardRef)(({className:e,onUpload:t,onLibrary:r,onGenerate:n},l)=>(0,o.jsxs)("div",{ref:l,className:(0,s.cn)("dropdown-menu-solid absolute z-[280] w-44 overflow-hidden rounded-xl py-1 shadow-xl",e??"left-0 top-full mt-1"),children:[(0,o.jsxs)("button",{type:"button",onClick:t,className:"flex w-full items-center gap-2 px-3 py-1.5 text-xs text-[var(--foreground)] transition-colors hover:bg-[var(--color-hover-subtle)]",children:[(0,o.jsx)(a.A,{className:"h-3.5 w-3.5 text-[var(--color-muted-foreground)]"}),"Upload"]}),(0,o.jsxs)("button",{type:"button",onClick:r,className:"flex w-full items-center gap-2 px-3 py-1.5 text-xs text-[var(--foreground)] transition-colors hover:bg-[var(--color-hover-subtle)]",children:[(0,o.jsx)(i.A,{className:"h-3.5 w-3.5 text-[var(--color-muted-foreground)]"}),"Media library"]}),(0,o.jsx)("div",{className:"my-0.5 border-t border-[var(--border)]"}),(0,o.jsxs)("button",{type:"button",onClick:n,className:"flex w-full items-center gap-2 px-3 py-1.5 text-xs text-[var(--foreground)] transition-colors hover:bg-[var(--color-hover-subtle)]",children:[(0,o.jsx)(d.A,{className:"h-3.5 w-3.5 text-[var(--color-muted-foreground)]"}),"Generate with AI"]})]}));l.displayName="CoverDropdown"},64776:(e,t,r)=>{r.d(t,{F:()=>o.F});var o=r(64790)},64790:(e,t,r)=>{r.d(t,{F:()=>i});var o=r(10831),n=r(89465),a=r.n(n);function i({editorFontSizePx:e,editorFontFamily:t,docFullWidth:r}){return(0,o.jsx)(a(),{id:"f65b513fa8293a04",dynamic:[e,t,r?"padding-left: 48px; padding-right: 48px;":"max-width: 720px; margin-left: auto; margin-right: auto;"],children:`.doc-editor-surface .ProseMirror{min-height:200px;outline:none;font-size:${e};font-family:${t};line-height:1.6;color:var(--color-foreground);caret-color:var(--color-foreground);cursor:text;${r?"padding-left: 48px; padding-right: 48px;":"max-width: 720px; margin-left: auto; margin-right: auto;"}}.doc-editor-surface .ProseMirror:focus{outline:none}.doc-editor-surface .ProseMirror p{margin:8px 0}.doc-editor-surface .ProseMirror p:first-child{margin-top:0}.doc-editor-surface .ProseMirror h1{font-size:1.5rem;font-weight:700;line-height:1.3;margin:16px 0 8px}.doc-editor-surface .ProseMirror h2{font-size:1.25rem;font-weight:600;line-height:1.3;margin:12px 0 8px}.doc-editor-surface .ProseMirror h3{font-size:1.1rem;font-weight:500;line-height:1.3;margin:12px 0 8px}.doc-editor-surface .ProseMirror h4{font-size:1rem;font-weight:600;line-height:1.3;margin:10px 0 6px}.doc-editor-surface .ProseMirror [data-type="details"]{margin:10px 0;border-radius:8px;border:1px solid var(--color-border)}.doc-editor-surface .ProseMirror [data-type="details"]>button{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;margin:4px 4px 0 8px;border-radius:4px;flex-shrink:0}.doc-editor-surface .ProseMirror [data-type="details"] [data-type="detailsSummary"]{font-weight:500;font-size:.875rem;padding:4px 8px}.doc-editor-surface .ProseMirror [data-type="details"] [data-type="detailsContent"]{padding:0 8px 8px 2.25rem}.doc-editor-surface .ProseMirror ul[data-type="taskList"]{list-style:none;padding-left:0}.doc-editor-surface .ProseMirror li[data-type="taskItem"]{display:flex;flex-direction:row;align-items:flex-start;gap:.4rem}.doc-editor-surface .ProseMirror li[data-type="taskItem"] label{display:flex;align-items:center}.doc-editor-surface .ProseMirror li[data-type="taskItem"]>div{flex:1}.doc-editor-surface .ProseMirror [data-doc-pull-quote]{margin:12px 0;text-align:center;font-size:1.15rem;line-height:1.45;font-style:italic}.doc-editor-surface .ProseMirror [data-doc-pull-quote] p{margin:.4em 0}.doc-editor-surface .ProseMirror blockquote{border-left:3px solid var(--color-border);padding-left:16px;margin:12px 0;color:var(--color-muted-foreground);font-style:italic}.doc-editor-surface .ProseMirror pre{background:var(--color-secondary);border-radius:8px;padding:12px;margin:12px 0;overflow-x:auto}.doc-editor-surface .ProseMirror code{font-family:monospace;font-size:.85em;background:var(--color-secondary);padding:.2em .4em;border-radius:3px}.doc-editor-surface .ProseMirror pre code{background:none;padding:0}.doc-editor-surface .ProseMirror hr{border:0;border-top:1px solid var(--color-border);margin:18px 0}.doc-editor-surface .ProseMirror a{color:var(--color-primary);text-decoration:underline}.doc-editor-surface .ProseMirror a:hover{text-decoration:none}.doc-editor-surface .ProseMirror ul{list-style-type:disc;padding-left:24px;margin:8px 0}.doc-editor-surface .ProseMirror ol{list-style-type:decimal;padding-left:24px;margin:8px 0}.doc-editor-surface .ProseMirror li{margin:4px 0}.doc-editor-surface .ProseMirror li p{margin:0}.doc-editor-surface .ProseMirror img.doc-editor-image{max-width:100%;height:auto;border-radius:8px;margin:16px 0;display:block}.doc-editor-surface .ProseMirror img.doc-editor-image.ProseMirror-selectednode{outline:2px solid var(--color-primary);outline-offset:2px}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"]{display:block;max-width:100%;margin:16px 0}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] img.doc-editor-image{margin:0;display:block}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"].ProseMirror-selectednode [data-resize-wrapper]{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:8px}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle]{position:absolute;z-index:2;opacity:0;pointer-events:none;touch-action:none}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"].ProseMirror-selectednode [data-resize-handle],.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"][data-resize-state="true"] [data-resize-handle]{opacity:1;pointer-events:auto}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="top"],.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="bottom"]{left:0;right:0;height:8px;
14cursor:ns-resize}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="left"],.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="right"]{top:0;bottom:0;width:8px;cursor:ew-resize}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="top-left"],.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="top-right"],.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="bottom-left"],.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="bottom-right"]{width:10px;height:10px;background:var(--color-primary);border-radius:2px;box-shadow:0 0 0 1px var(--background)}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="top-left"]{cursor:nwse-resize}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="top-right"]{cursor:nesw-resize}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="bottom-left"]{cursor:nesw-resize}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"] [data-resize-handle="bottom-right"]{cursor:nwse-resize}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"]:hover img.doc-editor-image[data-drag-handle],.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"].ProseMirror-selectednode img.doc-editor-image[data-drag-handle]{cursor:grab!important}.doc-editor-surface .ProseMirror [data-resize-container][data-node="image"].ProseMirror-selectednode img.doc-editor-image[data-drag-handle]:active,.doc-editor-surface .ProseMirror.ProseMirror-dragging{cursor:grabbing!important}.doc-editor-surface .ProseMirror.ProseMirror-dragging [data-resize-container][data-node="image"].ProseMirror-selectednode{opacity:.12}.doc-editor-dropcursor{display:none!important}.doc-editor-surface .ProseMirror [data-doc-banner]{border-radius:8px;padding:10px 12px;margin:10px 0;box-sizing:border-box}.doc-editor-surface .ProseMirror [data-doc-badge]{border-radius:9999px;padding:.12em .55em;display:inline;vertical-align:baseline}.doc-editor-surface .ProseMirror mark{border-radius:2px;padding:.05em 0}.doc-editor-surface .ProseMirror p.is-empty::before{content:attr(data-placeholder);float:left;color:var(--color-muted-foreground);pointer-events:none;height:0}.doc-editor-surface .ProseMirror table{border-collapse:collapse;margin:12px 0;table-layout:fixed;width:100%;overflow:hidden;font-size:.95em}.doc-editor-surface .ProseMirror table th,.doc-editor-surface .ProseMirror table td{border:1px solid var(--color-border);padding:8px 10px;vertical-align:top;text-align:left;position:relative;box-sizing:border-box;min-width:1em}.doc-editor-surface .ProseMirror table th{background:var(--color-secondary);font-weight:600}.doc-editor-surface .ProseMirror table .selectedCell{background:color-mix(in srgb,var(--color-primary)12%,transparent)}.doc-editor-surface .ProseMirror table .column-resize-handle{position:absolute;right:-2px;top:0;bottom:0;width:4px;background:var(--color-primary);opacity:0;pointer-events:none}.doc-editor-surface .ProseMirror.resize-cursor{cursor:col-resize}`})}},73084:(e,t,r)=>{r.d(t,{R:()=>l});var o=r(10831),n=r(48647),a=r(12038),i=r(13727),d=r(1256);function s(e,t){let r=t.querySelectorAll("th, td"),o=r[r.length-1];if(!o)return!1;try{let t=e.view.posAtDOM(o,0);if(t<0)return!1;return e.chain().focus().setTextSelection(t+1).run(),!0}catch{return!1}}function l({editor:e}){let[t,r]=(0,n.useState)([]),[l,c]=(0,n.useState)(null);if((0,n.useEffect)(()=>{if(!e)return;let t=e.view.dom;if(!t)return;function o(e){let r=e.target.closest("table");r&&t.contains(r)&&c(r)}function n(e){let r=e.target,o=e.relatedTarget,n=r.closest("table");!n||!t.contains(n)||o&&(n.contains(o)||o.closest("[data-doc-table-controls]"))||c(e=>e===n?null:e)}function a(){r(Array.from(t.querySelectorAll("table")).map(e=>({el:e,rect:e.getBoundingClientRect()})).filter(({rect:e})=>e.width>0&&e.height>0))}t.addEventListener("mouseover",o),t.addEventListener("mouseout",n);let i=0;function d(){cancelAnimationFrame(i),i=requestAnimationFrame(a)}a(),e.on("transaction",d),e.on("selectionUpdate",d),window.addEventListener("resize",d),document.addEventListener("scroll",d,!0);let s=new MutationObserver(d);return s.observe(t,{childList:!0,subtree:!0,attributes:!0}),()=>{cancelAnimationFrame(i),e.off("transaction",d),e.off("selectionUpdate",d),window.removeEventListener("resize",d),document.removeEventListener("scroll",d,!0),t.removeEventListener("mouseover",o),t.removeEventListener("mouseout",n),s.disconnect()}},[e]),!e||!e.isEditable||"u"<typeof document||0===t.length)return null;let u="flex items-center justify-center rounded-md border border-[var(--border)] bg-[var(--background)] text-[var(--foreground)] shadow-sm transition-[opacity,background-color] duration-200 ease-out hover:bg-[var(--secondary)]",p=e=>l===e?"pointer-events-auto opacity-100":"pointer-events-none opacity-0";return(0,a.createPortal)((0,o.jsx)("div",{"data-doc-table-control
14s":"",children:t.map(({el:t,rect:r},n)=>(0,o.jsxs)("div",{onMouseEnter:()=>c(t),onMouseLeave:e=>{var r;!((r=e.relatedTarget)&&(t.contains(r)||r.closest("table")===t))&&c(e=>e===t?null:e)},children:[(0,o.jsx)("button",{type:"button","aria-label":"Add column",title:"Add column",onPointerDown:e=>{e.preventDefault(),e.stopPropagation()},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:r=>{r.preventDefault(),r.stopPropagation(),s(e,t)&&e.chain().focus().addColumnAfter().run()},className:(0,d.cn)(u,p(t)),style:{position:"fixed",top:r.top+r.height/2-10,left:r.right+4,width:20,height:20,zIndex:100045},children:(0,o.jsx)(i.A,{className:"h-3 w-3"})}),(0,o.jsx)("button",{type:"button","aria-label":"Add row",title:"Add row",onPointerDown:e=>{e.preventDefault(),e.stopPropagation()},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:r=>{r.preventDefault(),r.stopPropagation(),s(e,t)&&e.chain().focus().addRowAfter().run()},className:(0,d.cn)(u,p(t)),style:{position:"fixed",top:r.bottom+4,left:r.left+r.width/2-10,width:20,height:20,zIndex:100045},children:(0,o.jsx)(i.A,{className:"h-3 w-3"})})]},n))}),document.body)}},95134:(e,t,r)=>{r.d(t,{e:()=>a,m:()=>n});let o=null;function n(e){o=e}function a(e){o?.(e)}}}]);

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.