2018-01-19 00:51:51 -08:00
|
|
|
<div class="lazy-timeline">
|
2018-05-01 17:05:36 -07:00
|
|
|
{#await importTimeline}
|
2018-04-29 22:13:41 -07:00
|
|
|
<!-- awaiting promise -->
|
2018-05-01 17:05:36 -07:00
|
|
|
{:then constructor}
|
|
|
|
<svelte:component this={constructor} {timeline} />
|
|
|
|
{:catch error}
|
|
|
|
<div>Component failed to load. Try refreshing! {error}</div>
|
|
|
|
{/await}
|
2018-01-14 23:24:27 -08:00
|
|
|
</div>
|
|
|
|
<style>
|
2018-01-19 00:51:51 -08:00
|
|
|
.lazy-timeline {
|
2018-01-14 23:24:27 -08:00
|
|
|
width: 100%;
|
2018-01-19 00:51:51 -08:00
|
|
|
}
|
2018-01-14 23:24:27 -08:00
|
|
|
</style>
|
|
|
|
<script>
|
2018-01-27 16:35:44 -08:00
|
|
|
import { importTimeline } from '../../_utils/asyncModules'
|
2018-01-28 13:09:39 -08:00
|
|
|
import { store } from '../../_store/store'
|
2018-01-14 23:24:27 -08:00
|
|
|
|
|
|
|
export default {
|
2018-04-19 21:38:01 -07:00
|
|
|
oncreate () {
|
2018-04-19 09:37:05 -07:00
|
|
|
let { currentInstance } = this.store.get()
|
|
|
|
let { timeline } = this.get()
|
2018-08-29 21:42:57 -07:00
|
|
|
this.store.set({ currentTimeline: timeline })
|
|
|
|
this.store.setForTimeline(currentInstance, timeline, { runningUpdate: false })
|
2018-01-27 10:46:52 -08:00
|
|
|
},
|
|
|
|
store: () => store,
|
2018-01-14 23:24:27 -08:00
|
|
|
data: () => ({
|
2018-03-12 22:13:51 -07:00
|
|
|
importTimeline: importTimeline()
|
2018-01-30 22:21:31 -08:00
|
|
|
})
|
2018-01-14 23:24:27 -08:00
|
|
|
}
|
|
|
|
</script>
|