Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/helpers/webpack_helper.rb')
-rw-r--r--app/helpers/webpack_helper.rb22
1 files changed, 22 insertions, 0 deletions
diff --git a/app/helpers/webpack_helper.rb b/app/helpers/webpack_helper.rb
index 170e3c45a21..0d27e07f172 100644
--- a/app/helpers/webpack_helper.rb
+++ b/app/helpers/webpack_helper.rb
@@ -1,10 +1,32 @@
# frozen_string_literal: true
module WebpackHelper
+ def prefetch_link_tag(source)
+ href = asset_path(source)
+
+ link_tag = tag.link(rel: 'prefetch', href: href)
+
+ early_hints_link = "<#{href}>; rel=prefetch"
+
+ request.send_early_hints("Link" => early_hints_link)
+
+ link_tag
+ end
+
def webpack_bundle_tag(bundle)
javascript_include_tag(*webpack_entrypoint_paths(bundle))
end
+ def webpack_preload_asset_tag(asset, options = {})
+ path = Gitlab::Webpack::Manifest.asset_paths(asset).first
+
+ if options.delete(:prefetch)
+ prefetch_link_tag(path)
+ else
+ preload_link_tag(path, options)
+ end
+ end
+
def webpack_controller_bundle_tags
chunks = []