{{#if props}}
  <VirtualListItem :component
                   :offset
                   :props
                   :key
                   :index
  />
{{/if}}
<script>
  import VirtualListItem from './VirtualListItem'
  import { mark, stop } from '../../_utils/marks'

  export default {
    async oncreate() {
      // TODO: there appears to be a bug in {{#await}} that means we have to do this manually.
      // Some items may appear on top of other items because their offset is 0 and never updated.
      let makeProps = this.get('makeProps')
      let key = this.get('key')
      if (makeProps) {
        let props = await makeProps(key)
        mark('VirtualListLazyItem set props')
        this.set({props: props})
        stop('VirtualListLazyItem set props')
      }
    },
    components: {
      VirtualListItem
    }
  }
</script>