import React from 'react'; import { Text, Switch, TextInput, Stack, PasswordInput, Group, Grid, } from '@mantine/core'; import type { Workspace } from '@/types/models'; interface GitSettingsProps { gitEnabled: boolean; gitUrl: string; gitUser: string; gitToken: string; gitAutoCommit: boolean; gitCommitMsgTemplate: string; gitCommitName: string; gitCommitEmail: string; onInputChange: (key: keyof Workspace, value: string | boolean) => void; } const GitSettings: React.FC = ({ gitEnabled, gitUrl, gitUser, gitToken, gitAutoCommit, gitCommitMsgTemplate, gitCommitName, gitCommitEmail, onInputChange, }) => { return ( Enable Git Repository onInputChange('gitEnabled', event.currentTarget.checked) } /> Git URL onInputChange('gitUrl', event.currentTarget.value) } disabled={!gitEnabled} placeholder="Enter Git URL" /> Username onInputChange('gitUser', event.currentTarget.value) } disabled={!gitEnabled} placeholder="Enter Git username" /> Access Token onInputChange('gitToken', event.currentTarget.value) } disabled={!gitEnabled} placeholder="Enter Git token" /> Commit on Save onInputChange('gitAutoCommit', event.currentTarget.checked) } disabled={!gitEnabled} /> Commit Message Template onInputChange('gitCommitMsgTemplate', event.currentTarget.value) } disabled={!gitEnabled} placeholder="Enter commit message template" /> Commit Author onInputChange('gitCommitName', event.currentTarget.value) } disabled={!gitEnabled} placeholder="Enter commit author name." /> Commit Author Email onInputChange('gitCommitEmail', event.currentTarget.value) } disabled={!gitEnabled} placeholder="Enter commit author email." /> ); }; export default GitSettings;