1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
|
- page_description brand_title unless page_description
- site_name = _('GitLab')
- omit_og = sign_in_with_redirect?
-# This is a temporary place for the page specific style migrations to be included on all pages like page_specific_files
- if Feature.disabled?(:page_specific_styles, current_user)
- add_page_specific_style('page_bundles/commit_description')
- add_work_items_stylesheet
%head{ omit_og ? { } : { prefix: "og: http://ogp.me/ns#" } }
%meta{ charset: "utf-8" }
%meta{ 'http-equiv' => 'X-UA-Compatible', content: 'IE=edge' }
%meta{ name: 'viewport', content: 'width=device-width, initial-scale=1' }
%title= page_title(site_name)
= Gon::Base.render_data(nonce: content_security_policy_nonce)
= yield :project_javascripts
= render 'layouts/application_color_mode_js'
= render 'layouts/startup_js'
= yield :startup_js
- if page_canonical_link
%link{ rel: 'canonical', href: page_canonical_link }
= yield :prefetch_asset_tags
- diffs_colors = user_diffs_colors
= render 'layouts/diffs_colors_css', diffs_colors if diffs_colors.present? || request.path == profile_preferences_path
- if user_application_dark_mode?
%meta{ name: 'color-scheme', content: 'dark light' }
= universal_stylesheet_link_tag "application_dark"
= yield :page_specific_styles
= universal_stylesheet_link_tag "application_utilities_dark"
- elsif user_application_system_mode?
%meta{ name: 'color-scheme', content: 'light dark' }
= universal_stylesheet_link_tag "application", media: "(prefers-color-scheme: light)"
= universal_stylesheet_link_tag "application_dark", media: "(prefers-color-scheme: dark)"
= yield :page_specific_styles
= universal_stylesheet_link_tag "application_utilities", media: "(prefers-color-scheme: light)"
= universal_stylesheet_link_tag "application_utilities_dark", media: "(prefers-color-scheme: dark)"
- else
= universal_stylesheet_link_tag "application"
= yield :page_specific_styles
= universal_stylesheet_link_tag 'application_utilities'
= universal_stylesheet_link_tag 'tailwind'
= universal_stylesheet_link_tag "disable_animations", media: "all" if Rails.env.test? || Gitlab.config.gitlab['disable_animations']
= universal_stylesheet_link_tag "test_environment", media: "all" if Rails.env.test?
= universal_stylesheet_link_tag "fonts"
= universal_stylesheet_link_tag "highlight/themes/#{user_color_scheme}"
= universal_stylesheet_link_tag 'performance_bar' if performance_bar_enabled?
= render 'layouts/snowplow'
= render 'layouts/loading_hints'
= render_if_exists 'layouts/header/translations'
- if Gitlab::CurrentSettings.sentry_enabled
= webpack_bundle_tag 'sentry'
= webpack_bundle_tag 'performance_bar' if performance_bar_enabled?
= webpack_bundle_tag 'super_sidebar'
- if vite_enabled?
= render 'layouts/vite_main'
- else
= webpack_controller_bundle_tags
= yield :page_specific_javascripts
- unless omit_og
-# Open Graph - http://ogp.me/
%meta{ property: 'og:type', content: "object" }
%meta{ property: 'og:site_name', content: site_name }
%meta{ property: 'og:title', content: page_title }
%meta{ property: 'og:description', content: page_description }
%meta{ property: 'og:image', content: page_image }
%meta{ property: 'og:image:width', content: '64' }
%meta{ property: 'og:image:height', content: '64' }
%meta{ property: 'og:url', content: request.base_url + request.fullpath }
-# Twitter Card - https://dev.twitter.com/cards/types/summary
%meta{ property: 'twitter:card', content: "summary" }
%meta{ property: 'twitter:title', content: page_title }
%meta{ property: 'twitter:description', content: page_description }
%meta{ property: 'twitter:image', content: page_image }
= page_card_meta_tags
= csrf_meta_tags
= csp_meta_tag
= action_cable_meta_tag
%link{ rel: 'manifest', href: manifest_path(format: :json) }
= favicon_link_tag favicon, id: 'favicon', data: { original_href: favicon }, type: 'image/png'
-# Apple Safari/iOS home screen icons
= appearance_apple_touch_icon
-# OpenSearch
%link{ href: search_opensearch_path(format: :xml), rel: 'search', title: 'Search GitLab', type: 'application/opensearchdescription+xml' }
= yield :meta_tags
= render 'layouts/google_analytics' if extra_config.has_key?('google_analytics_id')
= render 'layouts/matomo' if extra_config.has_key?('matomo_url') && extra_config.has_key?('matomo_site_id')
-# This is needed by [GitLab JH](https://gitlab.com/gitlab-jh/gitlab/-/issues/184)
= render_if_exists "layouts/frontend_monitor"
%meta{ name: "description", content: page_description }
%meta{ name: 'theme-color', content: user_theme_primary_color }
- if Gitlab.config.gitlab.respond_to?(:custom_html_header_tags)
- unless Gitlab.config.gitlab.custom_html_header_tags.empty?
= Gitlab.config.gitlab.custom_html_header_tags.html_safe
|