Mailspring/internal_packages/file-list/lib/file-frame-store.coffee
Evan Morikawa 4619871e8d refactor(utils): switch to regular underscore
Summary:
Fixes: T1334

remove final InboxApp references

move out all underscore-plus methods

Mass find and replace of underscore-plus

sed -i '' -- 's/underscore-plus/underscore/g' **/*.coffee
sed -i '' -- 's/underscore-plus/underscore/g' **/*.cjsx

Test Plan: edgehill --test

Reviewers: bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D1534
2015-05-19 16:06:59 -07:00

56 lines
1.2 KiB
CoffeeScript

Reflux = require 'reflux'
_ = require 'underscore'
fs = require 'fs'
{WorkspaceStore,
FocusedContentStore,
FileDownloadStore,
Actions} = require 'nylas-exports'
module.exports =
FileFrameStore = Reflux.createStore
init: ->
@_resetInstanceVars()
@_afterViewUpdate = []
@listenTo FocusedContentStore, @_onFocusedContentChange
@listenTo FileDownloadStore, @_onFileDownloadChange
file: ->
@_file
ready: ->
@_ready
download: ->
@_download
_resetInstanceVars: ->
@_file = null
@_download = null
@_ready = false
_update: ->
_onFileDownloadChange: ->
@_download = FileDownloadStore.downloadForFileId(@_file.id) if @_file
if @_file and @_ready is false and not @_download
@_ready = true
@trigger()
_onFocusedContentChange: (change) ->
return unless change.impactsCollection('file')
@_file = FocusedContentStore.focused('file')
if @_file
filepath = FileDownloadStore.pathForFile(@_file)
fs.exists filepath, (exists) =>
Actions.fetchFile(@_file) if not exists
@_download = FileDownloadStore.downloadForFileId(@_file.id)
@_ready = not @_download
@trigger()
else
@_ready = false
@_download = null
@trigger()