module OpenStax::Utilities::Assets

Public Class Methods

digest_for(asset) click to toggle source
# File lib/openstax/utilities/assets.rb, line 25
def self.digest_for(asset)
  Digest::MD5.hexdigest tags_for(asset)
end
manifest() click to toggle source
# File lib/openstax/utilities/assets.rb, line 15
def self.manifest
  RequestStore.store[:assets_manifest] ||= OpenStax::Utilities::Assets::Manifest.new
end
tags_for(asset) click to toggle source
# File lib/openstax/utilities/assets.rb, line 19
def self.tags_for(asset)
  manifest[asset].map do |chunk|
    "<script type='text/javascript' src='#{chunk}' crossorigin='anonymous' async></script>"
  end.join("\n").html_safe
end
url() click to toggle source
# File lib/openstax/utilities/assets.rb, line 6
def self.url
  url = Rails.application.secrets.assets_url
  url.ends_with?('/') ? url : "#{url}/"
end
url_for(asset) click to toggle source
# File lib/openstax/utilities/assets.rb, line 11
def self.url_for(asset)
  "#{url}#{asset}"
end