feat: add note width modes

This commit is contained in:
lucaronin
2026-04-27 05:34:11 +02:00
parent fb39c6679a
commit f8721f2a1b
34 changed files with 353 additions and 233 deletions

View File

@@ -1,51 +0,0 @@
import { describe, it, expect, vi, beforeEach } from 'vitest'
import { renderHook, act } from '@testing-library/react'
import { useNoteLayout } from './useNoteLayout'
import { bindVaultConfigStore, getVaultConfig, resetVaultConfigStore } from '../utils/vaultConfigStore'
describe('useNoteLayout', () => {
beforeEach(() => {
resetVaultConfigStore()
bindVaultConfigStore(
{ zoom: null, view_mode: null, editor_mode: null, note_layout: null, tag_colors: null, status_colors: null, property_display_modes: null },
vi.fn(),
)
})
it('defaults to centered note layout', () => {
const { result } = renderHook(() => useNoteLayout())
expect(result.current.noteLayout).toBe('centered')
})
it('loads persisted left note layout from vault config', () => {
resetVaultConfigStore()
bindVaultConfigStore(
{ zoom: null, view_mode: null, editor_mode: null, note_layout: 'left', tag_colors: null, status_colors: null, property_display_modes: null },
vi.fn(),
)
const { result } = renderHook(() => useNoteLayout())
expect(result.current.noteLayout).toBe('left')
})
it('sets note layout and persists it to vault config', () => {
const { result } = renderHook(() => useNoteLayout())
act(() => result.current.setNoteLayout('left'))
expect(result.current.noteLayout).toBe('left')
expect(getVaultConfig().note_layout).toBe('left')
})
it('toggles between centered and left note layout', () => {
const { result } = renderHook(() => useNoteLayout())
act(() => result.current.toggleNoteLayout())
expect(result.current.noteLayout).toBe('left')
act(() => result.current.toggleNoteLayout())
expect(result.current.noteLayout).toBe('centered')
})
})