summaryrefslogtreecommitdiff
path: root/animism-align/frontend/app/constants.js
blob: a9f51ec9e3a4d4d0e86ec52e70c553deebd58c71 (plain)
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
export const URLS = {
  audio: '/static/data_store/peaks/animism_episode_01_0910.mp3',
  peaks: '/static/data_store/peaks/peaks.json',
  text: '/static/data_store/peaks/text.txt',
}

export const WAVEFORM_SIZE = 300

export const ZOOM_STEPS = [
  1,
  2,
  3,
  10,
  20,
  30,
  60,
]

export const ZOOM_LABEL_STEPS = [
  20,
  60,
  60,
  300,
  600,
  600,
  1200,
]

export const ZOOM_TICK_STEPS = [
  5,
  10,
  30,
  60,
  60,
  60,
  600,
]

export const HEADER_MARGIN = 50
export const INNER_HEIGHT = window.innerHeight - HEADER_MARGIN

export const ROMAN_NUMERALS = [
  'I', 'II', 'III', 'IV', 'V', 'VI', 'VII', 'VIII', 'IX', 'X',
  'XI', 'XII', 'XIII', 'XIV', 'XV', 'XVI', 'XVII', 'XVIII', 'XIX', 'XX',
]

export const TEXT_ANNOTATION_TYPES = new Set([
  'section_heading', 'heading_text', 'sentence', 'paragraph_end', 'pullquote_credit',
])

export const MEDIA_ANNOTATION_TYPES = new Set([
  'image', 'carousel', 'grid', 'gallery',
  'video',
  'vitrine',
])

export const MEDIA_LABEL_TYPES = {
  image: 'Image Gallery',
  gallery: 'Image Gallery',
  carousel: 'Image Gallery',
  grid: 'Image Gallery',
  video: 'Video',
  vitrine: 'Vitrine',
}

export const INLINE_UTILITY_ANNOTATION_TYPES = new Set([
  'intro', 'schedule',
])

export const FULLSCREEN_UTILITY_ANNOTATION_TYPES = new Set([
  'curtain',
])

export const GALLERY_UTILITY_ANNOTATION_TYPES = new Set([
  'gallery_advance',
])

export const CURTAIN_COLORS = [
  { label: 'white', backgroundColor: '#ffffff', textColor: '#000000' },
  { label: 'light gray', backgroundColor: '#eeeeee', textColor: '#000000' },
  { label: 'dark blue', backgroundColor: '#1a1f33', textColor: '#ffffff' },
  { label: 'dark gray', backgroundColor: '#222222', textColor: '#ffffff' },
  { label: 'black', backgroundColor: '#000000', textColor: '#ffffff' },
]

export const BLACK_WHITE_SELECT_OPTIONS = [
  { label: 'white', name: 'white'},
  { label: 'black', name: 'black'},
]

export const CURTAIN_COLOR_SELECT_OPTIONS = CURTAIN_COLORS.map(color => ({
  label: color.label,
  name: color.label,
}))

export const CURTAIN_COLOR_LOOKUP = CURTAIN_COLORS.reduce((a,b) => {
  a[b.label] = b
  return a
}, {})

export const DISPLAY_SIZE = 2000
export const DISPLAY_QUALITY= 80
export const THUMBNAIL_SIZE = 320
export const THUMBNAIL_QUALITY = 80

export const GROWL = {
  OPENING_MESSAGE: "Start the episode by clicking play or scroll to browse on your own.",
  REACHED_END_OF_FIRST_SECTION: "Click \"Next\" to advance the exhibition.",
}

export const VIDEO_SCRUBBER_HIDE_DELAY = 2000