({
isOpen,
onClose,
repositoryInput,
selectedLanguage,
setSelectedLanguage,
supportedLanguages,
isComprehensiveView,
setIsComprehensiveView,
provider,
setProvider,
model,
setModel,
isCustomModel,
setIsCustomModel,
customModel,
setCustomModel,
selectedPlatform,
setSelectedPlatform,
accessToken,
setAccessToken,
excludedDirs,
setExcludedDirs,
excludedFiles,
setExcludedFiles,
includedDirs,
setIncludedDirs,
includedFiles,
setIncludedFiles,
onSubmit,
isSubmitting,
authRequired,
authCode,
setAuthCode,
isAuthLoading
}: ConfigurationModalProps)
| 61 | } |
| 62 | |
| 63 | export default function ConfigurationModal({ |
| 64 | isOpen, |
| 65 | onClose, |
| 66 | repositoryInput, |
| 67 | selectedLanguage, |
| 68 | setSelectedLanguage, |
| 69 | supportedLanguages, |
| 70 | isComprehensiveView, |
| 71 | setIsComprehensiveView, |
| 72 | provider, |
| 73 | setProvider, |
| 74 | model, |
| 75 | setModel, |
| 76 | isCustomModel, |
| 77 | setIsCustomModel, |
| 78 | customModel, |
| 79 | setCustomModel, |
| 80 | selectedPlatform, |
| 81 | setSelectedPlatform, |
| 82 | accessToken, |
| 83 | setAccessToken, |
| 84 | excludedDirs, |
| 85 | setExcludedDirs, |
| 86 | excludedFiles, |
| 87 | setExcludedFiles, |
| 88 | includedDirs, |
| 89 | setIncludedDirs, |
| 90 | includedFiles, |
| 91 | setIncludedFiles, |
| 92 | onSubmit, |
| 93 | isSubmitting, |
| 94 | authRequired, |
| 95 | authCode, |
| 96 | setAuthCode, |
| 97 | isAuthLoading |
| 98 | }: ConfigurationModalProps) { |
| 99 | const { messages: t } = useLanguage(); |
| 100 | |
| 101 | // Show token section state |
| 102 | const [showTokenSection, setShowTokenSection] = useState(false); |
| 103 | |
| 104 | if (!isOpen) return null; |
| 105 | |
| 106 | return ( |
| 107 | <div className="fixed inset-0 z-50 overflow-y-auto"> |
| 108 | <div className="flex min-h-screen items-center justify-center p-4 text-center bg-black/50"> |
| 109 | <div className="relative transform overflow-hidden rounded-lg bg-[var(--card-bg)] text-left shadow-xl transition-all sm:my-8 sm:max-w-2xl sm:w-full"> |
| 110 | {/* Modal header with close button */} |
| 111 | <div className="flex items-center justify-between px-6 py-4 border-b border-[var(--border-color)]"> |
| 112 | <h3 className="text-lg font-medium text-[var(--accent-primary)]"> |
| 113 | <span className="text-[var(--accent-primary)]">{t.form?.configureWiki || 'Configure Wiki'}</span> |
| 114 | </h3> |
| 115 | <button |
| 116 | type="button" |
| 117 | onClick={onClose} |
| 118 | className="text-[var(--muted)] hover:text-[var(--foreground)] focus:outline-none transition-colors" |
| 119 | > |
| 120 | <svg className="h-5 w-5" fill="none" viewBox="0 0 24 24" stroke="currentColor"> |
nothing calls this directly
no test coverage detected