2018-02-10 22:57:04 +01:00
|
|
|
|
2018-02-11 18:37:13 +01:00
|
|
|
function computeForTimeline (store, key) {
|
2018-02-10 22:57:04 +01:00
|
|
|
store.compute(key, ['currentTimelineData'], (currentTimelineData) => currentTimelineData[key])
|
|
|
|
}
|
|
|
|
|
2018-02-09 07:29:29 +01:00
|
|
|
export function timelineComputations (store) {
|
2018-01-28 22:09:39 +01:00
|
|
|
store.compute('currentTimelineData', ['currentInstance', 'currentTimeline', 'timelines'],
|
|
|
|
(currentInstance, currentTimeline, timelines) => {
|
|
|
|
return ((timelines && timelines[currentInstance]) || {})[currentTimeline] || {}
|
|
|
|
})
|
|
|
|
|
2018-02-10 22:57:04 +01:00
|
|
|
computeForTimeline(store, 'timelineItemIds')
|
|
|
|
computeForTimeline(store, 'runningUpdate')
|
|
|
|
computeForTimeline(store, 'initialized')
|
|
|
|
computeForTimeline(store, 'lastFocusedElementSelector')
|
|
|
|
computeForTimeline(store, 'ignoreBlurEvents')
|
|
|
|
|
2018-02-10 23:19:10 +01:00
|
|
|
store.compute('firstTimelineItemId', ['timelineItemIds'], (timelineItemIds) => timelineItemIds && timelineItemIds.length && timelineItemIds[0])
|
2018-02-09 03:54:48 +01:00
|
|
|
store.compute('lastTimelineItemId', ['timelineItemIds'], (timelineItemIds) => timelineItemIds && timelineItemIds.length && timelineItemIds[timelineItemIds.length - 1])
|
2018-02-09 07:29:29 +01:00
|
|
|
}
|