Class: RailsLiveReload::Checker

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_live_reload/checker.rb

Class Method Summary collapse

Class Method Details

.filesObject



3
4
5
# File 'lib/rails_live_reload/checker.rb', line 3

def self.files
  @files
end

.files=(files) ⇒ Object



7
8
9
# File 'lib/rails_live_reload/checker.rb', line 7

def self.files=(files)
  @files = files
end

.scan(dt, rendered_files) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/rails_live_reload/checker.rb', line 11

def self.scan(dt, rendered_files)
  temp = []

  # all changed files
  files.each do |file, fdt|
    temp << file if fdt && fdt > dt
  end

  result = []

  temp.each do |file|
    RailsLiveReload.patterns.each do |pattern, rule|
      rule_1 = file.match(pattern) && rule == :always # Used for CSS, JS, yaml, helpers, etc.
      rule_2 = file.match(pattern) && rendered_files.include?(file) # Used to check if view was rendered

      if rule_1 || rule_2
        result << file
        break
      end
    end
  end

  result
end