text: import Ember from 'ember';
  import uploader from 'ghost/assets/lib/uploader';
  
  var Preview = Ember.Component.extend({
      config: Ember.inject.service(),
  
      didInsertElement: function () {
          this.set('scrollWrapper', this.$().closest('.entry-preview-content'));
          Ember.run.scheduleOnce('afterRender', this, this.dropzoneHandler);
      },
  
      adjustScrollPosition: Ember.observer('scrollPosition', function () {
          var scrollWrapper = this.get('scrollWrapper'),
              scrollPosition = this.get('scrollPosition');
  
          if (scrollWrapper) {
              scrollWrapper.scrollTop(scrollPosition);
          }
      }),
  
      dropzoneHandler: function () {
          var dropzones = $('.js-drop-zone');
  
          uploader.call(dropzones, {
              editor: true,
              fileStorage: this.get('config.fileStorage')
          });
  
          dropzones.on('uploadstart', Ember.run.bind(this, 'sendAction', 'uploadStarted'));
          dropzones.on('uploadfailure', Ember.run.bind(this, 'sendAction', 'uploadFinished'));
          dropzones.on('uploadsuccess', Ember.run.bind(this, 'sendAction', 'uploadFinished'));
          dropzones.on('uploadsuccess', Ember.run.bind(this, 'sendAction', 'uploadSuccess'));
  
          // Set the current height so we can listen
          this.sendAction('updateHeight', this.$().height());
      },
  
      // fire off 'enable' API function from uploadManager
      // might need to make sure markdown has been processed first
      reInitDropzones: Ember.observer('markdown', function () {
          Ember.run.scheduleOnce('afterRender', this, this.dropzoneHandler);
      })
  });
  
  export default Preview;
  