Module: Repack::Helper

Defined in:
lib/repack/helper.rb

Overview

Asset path helpers for use with webpack

Instance Method Summary collapse

Instance Method Details

#webpack_asset_paths(source, extension: nil) ⇒ Object

Return asset paths for a particular webpack entry point.

Response may either be full URLs (eg localhost/…) if the dev server is in use or a host-relative URl (eg /webpack/…) if assets are precompiled.

Will raise an error if our manifest can’t be found or the entry point does not exist.



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/repack/helper.rb', line 14

def webpack_asset_paths(source, extension: nil)
  return "" unless source.present?

  paths = Repack::Manifest.asset_paths(source)
  paths = paths.select {|p| p.ends_with? ".#{extension}" } if extension

  host = ::Rails.configuration.repack.dev_server.host
  port = ::Rails.configuration.repack.dev_server.port

  if ::Rails.configuration.repack.dev_server.enabled
    paths.map! do |p|
      "//#{host}:#{port}#{p}"
    end
  end

  paths
end