Module: RailsCriticalCss::Actions

Extended by:
ActiveSupport::Concern
Defined in:
lib/rails_critical_css/actions.rb,
lib/rails_critical_css/actions/after_render.rb,
lib/rails_critical_css/actions/before_render.rb

Defined Under Namespace

Modules: Helpers Classes: AfterRender, BeforeRender

Instance Method Summary collapse

Instance Method Details

#append_critical_css_asset(file:, critical: false) ⇒ Object



27
28
29
30
31
32
# File 'lib/rails_critical_css/actions.rb', line 27

def append_critical_css_asset(file:, critical: false)
  (@critical_css_assets ||= []) << {
    file: file,
    critical: critical,
  }
end

#append_css_tags_assets(str) ⇒ Object



34
35
36
37
38
# File 'lib/rails_critical_css/actions.rb', line 34

def append_css_tags_assets(str)
  extract_assets_from_css_tags(str).each do |asset|
    append_critical_css_asset file: asset
  end
end

#extract_assets_from_css_tags(str) ⇒ Object



18
19
20
21
22
23
24
25
# File 'lib/rails_critical_css/actions.rb', line 18

def extract_assets_from_css_tags(str)
  return [] unless str.present?

  str
    .scan(/assets\/([^?"]*)-[^?-]+.css/)
    .flatten
    .map { |i| i.sub('.self', '') }
end

#full_html_responseObject



40
41
42
# File 'lib/rails_critical_css/actions.rb', line 40

def full_html_response
  response.body
end