Module: Sentiero::Web::Manifest

Defined in:
lib/sentiero/web/manifest.rb

Constant Summary collapse

ASSETS_DIR =
File.expand_path("assets", __dir__).freeze

Class Method Summary collapse

Class Method Details

.asset_path(logical_name, base_path = "") ⇒ Object



23
24
25
26
27
28
29
# File 'lib/sentiero/web/manifest.rb', line 23

def self.asset_path(logical_name, base_path = "")
  filename = manifest[logical_name]
  unless filename
    raise Sentiero::Error, "Unknown asset: #{logical_name}. Run 'cd frontend && npm run build' first."
  end
  "#{base_path}/assets/#{filename}"
end

.auto_reload!Object

Re-read manifest from disk on every access (dev, for npm run watch).



19
20
21
# File 'lib/sentiero/web/manifest.rb', line 19

def self.auto_reload!
  @auto_reload = true
end

.manifestObject



10
11
12
13
14
15
16
# File 'lib/sentiero/web/manifest.rb', line 10

def self.manifest
  if @auto_reload
    load_manifest
  else
    @manifest ||= load_manifest
  end
end

.reset!Object



31
32
33
34
# File 'lib/sentiero/web/manifest.rb', line 31

def self.reset!
  @manifest = load_manifest
  @auto_reload = false
end