Revert "Revert "FEATURE: Preload resources via link header (#18475)" (#18511)" (#18531)

* Revert "Revert "FEATURE: Preload resources via link header (#18475)" (#18511)"

This reverts commit 95a57f7e0c.

* put behind feature flag

* env -> global setting

* declare global setting

* forgot one spot
This commit is contained in:
Rafael dos Santos Silva
2022-10-11 20:11:44 -03:00
committed by GitHub
parent 47fa4dbef3
commit 6888eb5c2d
8 changed files with 150 additions and 20 deletions
+4 -2
View File
@@ -196,10 +196,11 @@ class Stylesheet::Manager
end.join("\n").html_safe
end
def stylesheet_link_tag(target = :desktop, media = 'all')
def stylesheet_link_tag(target = :desktop, media = 'all', preload_callback = nil)
stylesheets = stylesheet_details(target, media)
stylesheets.map do |stylesheet|
href = stylesheet[:new_href]
preload_callback.call(href, 'style') if preload_callback
theme_id = stylesheet[:theme_id]
data_theme_id = theme_id ? "data-theme-id=\"#{theme_id}\"" : ""
theme_name = stylesheet[:theme_name]
@@ -311,12 +312,13 @@ class Stylesheet::Manager
%[<link href="#{href}" rel="preload" as="style"/>].html_safe
end
def color_scheme_stylesheet_link_tag(color_scheme_id = nil, media = 'all')
def color_scheme_stylesheet_link_tag(color_scheme_id = nil, media = 'all', preload_callback = nil)
stylesheet = color_scheme_stylesheet_details(color_scheme_id, media)
return '' if !stylesheet
href = stylesheet[:new_href]
preload_callback.call(href, 'style') if preload_callback
css_class = media == 'all' ? "light-scheme" : "dark-scheme"