mirror of
https://github.com/atom/atom.git
synced 2026-02-14 08:35:11 -05:00
27 lines
597 B
CoffeeScript
27 lines
597 B
CoffeeScript
AtomPackage = require 'atom-package'
|
|
|
|
module.exports =
|
|
class DeferredAtomPackage extends AtomPackage
|
|
|
|
constructor: ->
|
|
super
|
|
|
|
@autoloadStylesheets = false
|
|
|
|
activate: (@rootView, @state) ->
|
|
@instance = null
|
|
for event in @loadEvents
|
|
@rootView.command event, (e) => @onLoadEvent(e, @getInstance())
|
|
this
|
|
|
|
deactivate: -> @instance?.deactivate?()
|
|
|
|
serialize: -> @instance?.serialize?()
|
|
|
|
getInstance: ->
|
|
unless @instance
|
|
@loadStylesheets()
|
|
InstanceClass = require @instanceClass
|
|
@instance = InstanceClass.activate(@rootView, @state)
|
|
@instance
|