1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[33010],{1626:(e,t,r)=>{r.d(t,{H6:()=>p,fn:()=>a});var o=r(95155),i=r(76908),n=r(154);r(12115);let a={SPONSOR:"Sponsor Authorized Representative",SITE_ADMIN:"Site/Institution Representative",PI:"Principal Investigator",IRB_CHAIR:"IRB Chairperson",WITNESS:"Witness"},l={SPONSOR:"#6366f1",SITE_ADMIN:"#10b981",PI:"#f59e0b",IRB_CHAIR:"#8b5cf6",WITNESS:"#06b6d4"};function s(e){var t;let{node:r,editor:i,getPos:s}=e,p=r.attrs,d=null!=(t=l[p.role])?t:"#6366f1",c=p.label||a[p.role]||p.role;return(0,o.jsx)(n.VR,{as:"div",style:{display:"block",margin:"10px 0"},children:(0,o.jsxs)("div",{contentEditable:!1,style:{display:"flex",alignItems:"center",gap:12,padding:"10px 14px",border:"2px dashed ".concat(d),background:"".concat(d,"10"),borderRadius:6,cursor:"default",position:"relative"},children:[(0,o.jsx)("span",{style:{fontSize:10,fontWeight:700,color:d,letterSpacing:"0.08em",textTransform:"uppercase"},children:"\\u270D Signature Field"}),(0,o.jsx)("span",{style:{flex:1,fontSize:12,color:"#475569",borderBottom:"1px solid ".concat(d,"55"),paddingBottom:4},children:"________________________________"}),(0,o.jsx)("span",{style:{fontSize:11,fontWeight:600,color:d},children:c}),i.isEditable?(0,o.jsx)("button",{type:"button",onMouseDown:e=>e.preventDefault(),onClick:()=>{if("function"==typeof s&&i){let e=s();i.chain().focus().deleteRange({from:e,to:e+r.nodeSize}).run()}},title:"Remove signature field",style:{position:"absolute",top:2,right:4,background:"transparent",border:"none",color:"#ef4444",cursor:"pointer",fontSize:12,padding:2,lineHeight:1},children:"\\u2715"}):null]})})}let p=i.bP.create({name:"signatureField",group:"block",atom:!0,selectable:!0,draggable:!0,addAttributes:()=>({role:{default:"SPONSOR"},label:{default:null}}),parseHTML:()=>[{tag:'span[data-signature-field="true"]',getAttrs:e=>({role:e.getAttribute("data-role")||"SPONSOR",label:e.getAttribute("data-label")})},{tag:'div[data-signature-field="true"]',getAttrs:e=>({role:e.getAttribute("data-role")||"SPONSOR",label:e.getAttribute("data-label")})}],renderHTML(e){let{HTMLAttributes:t}=e;return["div",(0,i.KV)(t,{"data-signature-field":"true","data-role":t.role,"data-label":t.label||a[t.role]||""}),"[SIGNATURE â ".concat(t.label||a[t.role]||t.role,"]")]},addNodeView:()=>(0,n.gu)(s)})},33010:(e,t,r)=>{r.r(t),r.d(t,{default:()=>m});var o=r(95155),i=r(154),n=r(99862),a=r(43419),l=r(63660),s=r(75699),p=r(78336),d=r(22984),c=r(79371),u=r(12115),g=r(68209),b=r(4373),f=r(1626);let h={padding:"4px 8px",fontSize:11,fontWeight:600,background:"transparent",border:"none",borderRadius:4,color:"#94a3b8",cursor:"pointer",fontFamily:"inherit",lineHeight:1};function x(e){let{editor:t,accent:r,uploadImages:i,richMode:n}=e,[a,l]=(0,u.useState)(!1),s=(0,u.useRef)(null);if(!t)return null;let p=async e=>{if(!e)return;if(i){let o=new FormData;o.append("file",e);try{let i=await (0,g.apiFetch)("/api/org-files",{method:"POST",body:o});if(i.ok){var r;let o=await i.json(),n=(null==o||null==(r=o.file)?void 0:r.url)||(null==o?void 0:o.url);if(n)return void t.chain().focus().setImage({src:n,alt:e.name}).run()}}catch(e){}}let o=new FileReader;o.onload=r=>{var o;let i=null==(o=r.target)?void 0:o.result;"string"==typeof i&&t.chain().focus().setImage({src:i,alt:e.name}).run()},o.readAsDataURL(e)},d=(e,t,i,n)=>(0,o.jsx)("button",{type:"button",onMouseDown:e=>e.preventDefault(),onClick:t,title:n,style:{...h,background:i?"".concat(r,"22"):"transparent",color:i?r:"#94a3b8"},children:e});return(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:2,padding:"4px 6px",borderBottom:"1px solid ".concat(b.C.border),background:b.C.bg,borderTopLeftRadius:6,borderTopRightRadius:6,flexWrap:"wrap"},children:[d((0,o.jsx)("strong",{children:"B"}),()=>t.chain().focus().toggleBold().run(),t.isActive("bold"),"Bold (Ctrl+B)"),d((0,o.jsx)("em",{children:"I"}),()=>t.chain().focus().toggleItalic().run(),t.isActive("italic"),"Italic (Ctrl+I)"),d((0,o.jsx)("u",{children:"U"}),()=>t.chain().focus().toggleUnderline().run(),t.isActive("underline"),"Underline (Ctrl+U)"),d((0,o.jsx)("s",{children:"S"}),()=>t.chain().focus().toggleStrike().run(),t.isActive("strike"),"Strikethrough"),(0,o.jsx)("div",{style:{width:1,height:14,background:b.C.border,margin:"0 4px"}}),d("H1",()=>t.chain().focus().toggleHeading({level:1}).run(),t.isActive("heading",{level:1}),"Heading 1"),d("H2",()=>t.chain().focus().toggleHeading({level:2}).run(),t.isActive("heading",{level:2}),"Heading 2"),d("\xb6",()=>t.chain().focus().setParagraph().run(),t.isActive("paragraph"),"Paragraph"),(0,o.jsx)("div",{style:{width:1,height:14,background:b.C.border,margin:"0 4px"}}),d("⢠List",()=>t.chain().focus().toggleBulletList().run(),t.isActive("bulletList"),"Bulleted list"),d("1. List",()=>t.chain().focus().toggleOrderedList().run(),t.isActive("orderedList"),"Numbered list"),d('"',()=>t.chain().focus().toggleBlockquote().run(),t.isActive("blockquote"),"Block quote"),(0,o.jsx)("div",{style:{width:1,height:14,background:b.C.border,margin:"0 4px"}}
1),(0,o.jsx)("input",{ref:s,type:"file",accept:"image/*",style:{display:"none"},onChange:e=>{var t;let r=null==(t=e.target.files)?void 0:t[0];r&&p(r),s.current&&(s.current.value="")}}),d("\uD83D\uDDBC Image",()=>{var e;return null==(e=s.current)?void 0:e.click()},!1,"Insert image"),n&&d("â Table",()=>t.chain().focus().insertTable({rows:3,cols:3,withHeaderRow:!0}).run(),t.isActive("table"),"Insert table"),n&&t.isActive("table")&&(0,o.jsxs)(o.Fragment,{children:[d("+ Row",()=>t.chain().focus().addRowAfter().run(),!1,"Add row below"),d("+ Col",()=>t.chain().focus().addColumnAfter().run(),!1,"Add column right"),d("â Row",()=>t.chain().focus().deleteRow().run(),!1,"Delete row"),d("â Col",()=>t.chain().focus().deleteColumn().run(),!1,"Delete column")]}),(0,o.jsx)("div",{style:{width:1,height:14,background:b.C.border,margin:"0 4px"}}),(0,o.jsxs)("div",{style:{position:"relative",display:"inline-block"},children:[(0,o.jsx)("button",{type:"button",onMouseDown:e=>e.preventDefault(),onClick:()=>l(e=>!e),title:"Insert signature field",style:{...h,background:a?"".concat(r,"22"):"transparent",color:r,fontWeight:700},children:"\\u270D Sig Field \\u25BE"}),a&&(0,o.jsx)("div",{style:{position:"absolute",top:"110%",left:0,background:b.C.card,border:"1px solid ".concat(b.C.border),borderRadius:6,padding:4,zIndex:20,minWidth:220,boxShadow:"0 4px 16px rgba(0,0,0,0.4)"},children:Object.entries(f.fn).map(e=>{let[i,n]=e;return(0,o.jsxs)("button",{type:"button",onMouseDown:e=>e.preventDefault(),onClick:()=>{var e;t.chain().focus().insertContent({type:"signatureField",attrs:{role:i,label:null!=(e=f.fn[i])?e:i}}).run(),l(!1)},style:{display:"block",width:"100%",textAlign:"left",padding:"6px 10px",background:"transparent",border:"none",color:b.C.text,fontSize:12,cursor:"pointer",borderRadius:4,fontFamily:"inherit"},onMouseEnter:e=>{e.currentTarget.style.background="".concat(r,"18")},onMouseLeave:e=>{e.currentTarget.style.background="transparent"},children:[(0,o.jsx)("span",{style:{fontWeight:600},children:i}),(0,o.jsx)("span",{style:{color:b.C.muted,fontSize:10,marginLeft:8},children:n})]},i)})})]}),(0,o.jsx)("div",{style:{width:1,height:14,background:b.C.border,margin:"0 4px"}}),d("â¶",()=>t.chain().focus().undo().run(),!1,"Undo (Ctrl+Z)"),d("â·",()=>t.chain().focus().redo().run(),!1,"Redo (Ctrl+Shift+Z)")]})}function m(e){let{value:t,onChange:r,readOnly:g,minHeight:h=80,accent:m="#8b5cf6",uploadImages:v,richMode:M,pageMode:y}=e,w=(0,i.hG)({extensions:[n.A.configure({heading:{levels:[1,2,3]}}),a.A,l.Ay.configure({inline:!1,allowBase64:!0,HTMLAttributes:{style:"max-width: 100%; height: auto;"}}),...M?[s.XI.configure({resizable:!0,HTMLAttributes:{class:"tiptap-table"}}),p.H,c.A,d.n]:[],f.H6],content:t||"",editable:!g,onUpdate:e=>{let{editor:t}=e;r(t.getHTML())},immediatelyRender:!1});return((0,u.useEffect)(()=>{w&&t!==w.getHTML()&&w.commands.setContent(t||"")},[t,w]),w)?y?(0,o.jsxs)("div",{style:{border:"1px solid ".concat(b.C.border),borderRadius:8,background:"#e5e7eb",overflow:"hidden"},children:[!g&&(0,o.jsx)(x,{editor:w,accent:m,uploadImages:v,richMode:M}),(0,o.jsx)("div",{style:{padding:"24px 24px 32px",minHeight:Math.max(h,600),display:"flex",justifyContent:"center",cursor:g?"default":"text"},onClick:()=>!g&&w.commands.focus(),children:(0,o.jsxs)("div",{style:{background:"#ffffff",color:"#1f2937",width:"100%",maxWidth:816,minHeight:1056,padding:"96px 96px",boxShadow:"0 2px 8px rgba(0,0,0,0.12), 0 0 0 1px rgba(0,0,0,0.04)",borderRadius:2,fontFamily:'"Georgia", "Cambria", "Times New Roman", serif',fontSize:14,lineHeight:1.6},children:[(0,o.jsx)("style",{children:"\n .tiptap-proseMirror { outline: none; }\n .tiptap-proseMirror p { margin: 0 0 12px 0; color: #1f2937; }\n .tiptap-proseMirror ul, .tiptap-proseMirror ol { padding-left: 28px; margin: 0 0 12px 0; }\n .tiptap-proseMirror li { margin-bottom: 4px; }\n /* Heading sizes calibrated to common PDF output (Word default style cascade). */\n .tiptap-proseMirror h1 { font-size: 22px; font-weight: 700; margin: 18px 0 10px; color: #111827; letter-spacing: -0.01em; }\n .tiptap-proseMirror h2 { font-size: 18px; font-weight: 700; margin: 16px 0 8px; color: #111827; }\n .tiptap-proseMirror h3 { font-size: 15px; font-weight: 700; margin: 12px 0 6px; color: #111827; }\n .tiptap-proseMirror blockquote { border-left: 4px solid #d1d5db; padding: 4px 14px; color: #4b5563; margin: 12px 0; font-style: italic; }\n .tiptap-proseMirror strong { color: #111827; font-weight: 700; }\n .tiptap-proseMirror em { font-style: italic; }\n .tiptap-proseMirror u { text-decoration: underline; }\n .tiptap-proseMirror s { text-decoration: line-through; }\n .tiptap-proseMirror p:empty::before { content: '\\00a0'; }\n .tiptap-proseMirror img { display: block; margin: 14px auto; max-width: 100%; height: auto; border-radius: 2px; box-shadow: 0 1px 4px rgba(0,0,0,0.15); }\n .tiptap-proseMirror img.ProseMirror-selectednode { outline: 2px solid ".concat(m,"; }\n .tiptap-proseMirror table { border-collapse: collapse; table-layout: fixed; width: 100%; margin: 14px 0; }\n .tiptap-proseMirror table td, .tiptap-proseMirror table th { border: 1px solid #cbd5e1; padding: 8px 12px; vertical-align: top; box-sizing: border-box; min-width: 1em; position: relative; }\n .tiptap-proseMirror table th { background: #f3f4f6; font-weight: 700; text-align: left; }\n .tiptap-proseMirror table .selectedCell:after { background: ").concat(m,"22; content: ''; left: 0; right: 0; top: 0; bottom: 0; pointer-events: none; position: absolute; z-index: 2; }\n .tiptap-proseMirror table .column-resize-handle { position: absolute; right: -2px; top: 0; bottom: 0; width: 4px; background-color: ").concat(m,"66; pointer-events: none; }\n .tiptap-proseMirror .tableWrapper { overflow-x: auto; }\n /* Merge-field placeholders ({{FIELD_NAME}}) get a subtle highlight in page mode */\n .tiptap-proseMirror p code, .tiptap-proseMirror span code { background: ").concat(m,"18; color: ").concat(m,'; padding: 1px 4px; border-radius: 3px; font-family: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, monospace; font-size: 12px; }\n ')}),(0,o.jsx)(i.$Z,{editor:w,className:"tiptap-proseMirror"})]})})]}):(0,o.jsxs)("div",{style:{border:"1px solid ".concat(b.C.border),borderRadius:6,background:"transparent",overflow:"hidden"},children:[!g&&(0,o.jsx)(x,{editor:w,accent:m,uploadImages:v,richMode:M}),(0,o.jsxs)("div",{style:{padding:10,minHeight:h,fontSize:13,color:b.C.textSec,lineHeight:1.7,fontFamily:"inherit",curs
1or:g?"default":"text"},onClick:()=>!g&&w.commands.focus(),children:[(0,o.jsx)("style",{children:"\n .tiptap-proseMirror { outline: none; }\n .tiptap-proseMirror p { margin: 0 0 8px 0; }\n .tiptap-proseMirror ul, .tiptap-proseMirror ol { padding-left: 22px; margin: 0 0 8px 0; }\n .tiptap-proseMirror h1 { font-size: 18px; font-weight: 700; margin: 10px 0; }\n .tiptap-proseMirror h2 { font-size: 15px; font-weight: 700; margin: 8px 0; }\n .tiptap-proseMirror h3 { font-size: 13px; font-weight: 700; margin: 6px 0; }\n .tiptap-proseMirror blockquote { border-left: 3px solid ".concat(b.C.border,"; padding-left: 10px; color: ").concat(b.C.muted,"; margin: 6px 0; }\n .tiptap-proseMirror strong { color: ").concat(b.C.text,"; }\n .tiptap-proseMirror p:empty::before { content: '\\00a0'; }\n .tiptap-proseMirror img { display: block; margin: 10px auto; max-width: 100%; height: auto; border-radius: 4px; box-shadow: 0 2px 6px rgba(0,0,0,0.3); }\n .tiptap-proseMirror img.ProseMirror-selectednode { outline: 2px solid ").concat(m,"; }\n .tiptap-proseMirror table { border-collapse: collapse; table-layout: fixed; width: 100%; margin: 12px 0; overflow: hidden; }\n .tiptap-proseMirror table td, .tiptap-proseMirror table th { border: 1px solid ").concat(b.C.border,"; padding: 6px 10px; vertical-align: top; box-sizing: border-box; min-width: 1em; position: relative; }\n .tiptap-proseMirror table th { background: ").concat(b.C.bg,"; font-weight: 700; text-align: left; }\n .tiptap-proseMirror table .selectedCell:after { background: ").concat(m,"22; content: ''; left: 0; right: 0; top: 0; bottom: 0; pointer-events: none; position: absolute; z-index: 2; }\n .tiptap-proseMirror table .column-resize-handle { position: absolute; right: -2px; top: 0; bottom: 0; width: 4px; background-color: ").concat(m,"66; pointer-events: none; }\n .tiptap-proseMirror .tableWrapper { overflow-x: auto; }\n ")}),(0,o.jsx)(i.$Z,{editor:w,className:"tiptap-proseMirror"})]})]}):null}}}]);
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.