このコミットが含まれているのは:
2026-07-05 11:27:45 +09:00
コミット ca92c62049
11個のファイルの変更1137行の追加92行の削除
+10 -3
ファイルの表示
@@ -8,6 +8,7 @@ import Label from '@/components/common/Label'
import PageTitle from '@/components/common/PageTitle'
import MainArea from '@/components/layout/MainArea'
import TagLink from '@/components/TagLink'
import BehaviorSettingsSection from '@/components/users/BehaviorSettingsSection'
import KeyboardSettingsSection from '@/components/users/KeyboardSettingsSection'
import InheritDialogue from '@/components/users/InheritDialogue'
import UserCodeDialogue from '@/components/users/UserCodeDialogue'
@@ -48,7 +49,7 @@ type Props = {
type UserFormField = 'name'
type SettingsFormField = 'theme'
type SettingsTab = 'account' | 'theme' | 'keyboard'
type SettingsTab = 'account' | 'theme' | 'keyboard' | 'behavior'
type TabSpec = {
id: SettingsTab
@@ -79,7 +80,8 @@ type SharedSectionProps = {
const tabs: TabSpec[] = [
{ id: 'account', label: 'アカウント' },
{ id: 'theme', label: 'テーマ' },
{ id: 'keyboard', label: 'キーボード' } ]
{ id: 'keyboard', label: 'キーボード' },
{ id: 'behavior', label: '動作' } ]
const sectionClassName =
'space-y-4 rounded-xl border border-border bg-background/80 p-4'
@@ -379,7 +381,8 @@ const SettingPage: FC<Props> = ({ user, setUser }) => {
() => (
{ account: Boolean (userFieldErrors.name?.length),
theme: Boolean (settingsFieldErrors.theme?.length),
keyboard: conflictActionIds.size > 0 }),
keyboard: conflictActionIds.size > 0,
behavior: false }),
[conflictActionIds.size, settingsFieldErrors.theme, userFieldErrors.name])
const applyDraftThemeSelection = (
@@ -689,6 +692,8 @@ const SettingPage: FC<Props> = ({ user, setUser }) => {
{sectionProps && activeTab === 'theme' && <ThemeSection {...sectionProps}/>}
{activeTab === 'keyboard' && (
<KeyboardSettingsSection sectionClassName={sectionClassName}/>)}
{activeTab === 'behavior' && (
<BehaviorSettingsSection sectionClassName={sectionClassName}/>)}
</div>)}
</div>
@@ -736,6 +741,8 @@ const SettingPage: FC<Props> = ({ user, setUser }) => {
{activeTab === 'theme' && <ThemeSection {...sectionProps}/>}
{activeTab === 'keyboard' && (
<KeyboardSettingsSection sectionClassName={sectionClassName}/>)}
{activeTab === 'behavior' && (
<BehaviorSettingsSection sectionClassName={sectionClassName}/>)}
</>)}
</div>)}
</div>