File size: 1,141 Bytes
776286d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import type Backend from '../../backend'
import type Git from '../../git'
import type Todos from '../../todos'
import type Turns from '../../turns'
import type { Bodies } from '../bodies'
import type { Source } from '../source'

/**
 * Everything one drawing of the pane reads.
 *
 * The last good fetch, what the person picked, the bodies read so far, the
 * turns and todos, how the surface seated it, whether the layout docks a
 * pane (once a drawing or `/diff` said), the dialog's view, and the docked
 * scroll in its last box.
 */
export type PaneModel = {
  words: Backend.BackendWords
  baseModes: readonly Git.BaseMode[]
  isLoading: boolean
  hasSettled: boolean
  isOutsideRepository: boolean
  data: Git.DiffData | null
  requestedMode: Git.BaseMode
  selectedPath: string | null
  isNoiseShown: boolean
  isPreSessionShown: boolean
  source: Source
  turns: readonly Turns.TurnDiff[]
  bodies: Bodies
  todos: Todos.TodoProgress
  armedPath: string | null
  placement: 'dock' | 'inline'
  isFullscreen: boolean | null
  dialogView: 'list' | 'detail'
  place: { top: number; listStart: number; columns: number; rows: number }
}