// Primus IQ — Add Sources Modal const SourceBtn = ({ icon, label, onClick }) => ( ); const UploadIcon = () => ( ); const TextIcon = () => ( ); const UrlIcon = () => ( ); const SharepointIcon = () => ( ); const AddSourcesModal = ({ open, onClose, onFilesSelected, onSharePoint, onTextInput, onUrlInput, sourceContext = 'library' }) => { const [dragHover, setDragHover] = React.useState(false); if (!open) return null; const subtitle = sourceContext === 'library' ? 'Add to the firm-wide Library — everything is searchable across projects.' : 'Add to this project. Files only chat inside this project unless you share them.'; const handleFiles = (files) => { onClose(); onFilesSelected(files); }; return (
} label="Upload" onClick={() => { const inp = document.createElement('input'); inp.type = 'file'; inp.multiple = true; inp.onchange = e => handleFiles(Array.from(e.target.files)); inp.click(); }}/> } label="Text input" onClick={() => { onClose(); onTextInput && onTextInput(); }}/> } label="URL" onClick={() => { onClose(); onUrlInput && onUrlInput(); }}/> } label="SharePoint" onClick={() => { onClose(); onSharePoint && onSharePoint(); }}/>
Next: You'll set Confidentiality status and Practice for each file before it's saved.
); }; Object.assign(window, { SourceBtn, UploadIcon, TextIcon, UrlIcon, SharepointIcon, AddSourcesModal, });