class VueApp::Core::Listener

Listen file modification

Public Class Methods

call() click to toggle source

Base class method

# File lib/vueapp/core/listener.rb, line 10
def self.call
  new.run
end

Public Instance Methods

run() click to toggle source

Listener main method

# File lib/vueapp/core/listener.rb, line 15
def run
  log('Run Listener: ' + vueapp_path)
  slim_listener
  js_listener
  scss_listener
  sleep
end

Private Instance Methods

js_listener() click to toggle source

Listener for .js files

# File lib/vueapp/core/listener.rb, line 37
def js_listener
  listener = Listen.to(vueapp_path, only: /.js$/) do |modified, added, removed|
    log("Modified: #{modified}") if modified
    log("Added: #{added}") if added
    log("Removed: #{removed}") if removed
    VueApp::Core::Builders::JsBuilder.new(:development).build
  end
  listener.start
end
scss_listener() click to toggle source

Listener for .scss files

# File lib/vueapp/core/listener.rb, line 48
def scss_listener
  listener = Listen.to(vueapp_path, only: /.scss$/) do |modified, added, removed|
    log("Modified: #{modified}") if modified
    log("Added: #{added}") if added
    log("Removed: #{removed}") if removed
    VueApp::Core::Builders::ScssBuilder.new(:development).build
  end
  listener.start
end
slim_listener() click to toggle source

Listener for .slim files

# File lib/vueapp/core/listener.rb, line 26
def slim_listener
  listener = Listen.to(vueapp_path, only: /.slim$/) do |modified, added, removed|
    log("Modified: #{modified}") if modified
    log("Added: #{added}") if added
    log("Removed: #{removed}") if removed
    VueApp::Core::Builders::SlimBuilder.new(:development).build
  end
  listener.start
end
vueapp_path() click to toggle source

Path for listener

# File lib/vueapp/core/listener.rb, line 59
def vueapp_path
  Pathname.new(Dir.pwd).join('src').to_s
end