chromium/chrome/browser/resources/conflicts/about_conflicts.html

<!--
This is an internal only page meant for debugging. It is not intended for
general use and is not localized.
-->
<!doctype html>
<html dir="ltr" lang="en">
<head>
<meta charset="utf-8">
<meta name="color-scheme" content="light dark">
<link rel="stylesheet" href="chrome://resources/css/text_defaults.css">
<style>
:root {
  --color-row-hover: rgb(255, 255, 170);
}
@media (prefers-color-scheme: dark) {
  :root {
    --color-row-hover: rgb(3, 220, 176);
  }
}
body {
  margin: 10px;
  min-width: 47em;
}

#header {
  background: url(./warning.svg) left center / 48px no-repeat;
  box-sizing: border-box;
  margin-bottom: 1.05em;
  overflow: hidden;
  padding-inline-start: 0;
  position: relative;
}

html[dir=rtl] #header {
  background-position-x: right;
}

#header h1 {
  line-height: 48px;
  padding-inline-start: 51px;
}

h1 {
  font-size: 156%;
  font-weight: bold;
  margin: 0;
  padding: 0;
}

#blurb-container {
  font-size: 120%;
  padding-bottom: 1.5em;
}

#third-party-conflicts-status {
  padding-bottom: 1.5em;
}

div.content {
  margin-top: 5px;
}

.section-header {
  background: rgb(235, 239, 249);
  border-top: 1px solid rgb(181, 199, 222);
  color: black;
  padding-bottom: 2px;
  padding-inline-start: 5px;
  padding-top: 3px;
  width: 100%;
}

.section-header-title {
  font-weight: bold;
}

.vbox-container {
  -webkit-box-orient: vertical;
  display: -webkit-box;
}

.wbox {
  -webkit-box-align: stretch;
  -webkit-box-flex: 1;
  display: -webkit-box;
}

#top {
  padding-inline-end: 5px;
}

.module-loaded > td {
  padding-bottom: 4px;
  padding-top: 5px;
}

.module:hover {
  background: var(--color-row-hover);
}

.module-name {
  font-weight: bold;
}

.no-modules {
  font-size: 1.2em;
  margin: 6em 0 0;
  text-align: center;
}

.nowrap {
  white-space: nowrap;
}

.clearing {
  clear: left;
  float: left;
}

html[dir=rtl] .clearing {
  clear: right;
  float: right;
}

.datacell {
  border-bottom: 1px solid #aaa;
}
</style>
</head>
<body>
<div id="loading-message">Loading…</div>

<div id="body-container" style="visibility:hidden">

  <div id="header"><h1>Modules loaded</h1></div>

  <div id="blurb-container">
    <span>This page lists <a href="#">all</a> modules loaded into the
       <a href="#B">browser</a> and <a href="#R">renderer</a> processes and
       modules registered to load at a <a href="#None">later</a> point.</span>
  </div>

  <dom-bind>
    <template>
      <div id="third-party-conflicts-status">
        Third-Party Module Features Status
        <div>
          <span>[[data.thirdPartyFeatureStatus]]</span>
        </div>
      </div>

      <div id="container" class="vbox-container">
        <div id="top" class="wbox">
          <div class="section-header">
            <span class="section-header-title">[[data.moduleCount]]</span>
            <span>modules</span>
          </div>
        </div>
      </div>

      <div class="content">
        <div class="module-name no-modules" hidden$="[[data.hasModules]]">
          <div>Unable to detect any modules loaded.</div>
        </div>

        <div hidden$="[[!data.hasModules]]">
          <table width="100%" cellpadding="0" cellspacing="0">
            <tr class="module-loaded">
              <td valign="top">
                <table cellpadding="2" cellspacing="0" border="0">
                  <tr>
                    <th role="columnheader">
                      <span dir="ltr">Software</span>
                    </th>
                    <th role="columnheader">
                      <span dir="ltr">Signed by</span>
                    </th>
                    <th role="columnheader">
                      <span dir="ltr">Version</span>
                    </th>
                    <th role="columnheader">
                      <span dir="ltr">Code Id</span>
                    </th>

                    <th role="columnheader">
                      <span dir="ltr">Process types</span>
                    </th>
                    <th role="columnheader">
                      <span dir="ltr">Location</span>
                    </th>
                    <th role="columnheader" hidden$="[[!data.thirdPartyFeatureEnabled]]">
                      <span dir="ltr">Conflicts Status</span>
                    </th>
                  </tr>

                  <template is="dom-repeat" items="[[data.moduleList]]">
                    <tr data-process$="[[item.process_types]]"
                        class="module">
                      <td valign="top" class="datacell">
                        <span dir="ltr" class="clearing nowrap">
                          [[item.description]]
                        </span>
                      </td>
                      <td valign="top" class="datacell">
                        <span dir="ltr" class="nowrap">
                          [[item.digital_signer]]
                        </span>
                      </td>
                      <td valign="top" class="datacell">
                        <span dir="ltr" class="nowrap">[[item.version]]</span>
                      </td>
                      <td valign="top" class="datacell">
                        <span dir="ltr"class="nowrap">[[item.code_id]]</span>
                      </td>
                      <td valign="top" class="datacell">
                        <span dir="ltr" class="nowrap">
                          [[item.process_types]]
                        </span>
                      </td>
                      <td valign="top" class="datacell">
                        <span class="nowrap">
                          <span dir="ltr">[[item.location]]</span>
                          <strong>
                            <span dir="ltr">[[item.name]]</span>
                          </strong>
                          <span dir="ltr"
                              hidden$="[[!item.type_description.length]]">
                              (
                              <span dir="ltr">[[item.type_description]]</span>
                              )
                          </span>
                        </span>
                      </td>
                      <td valign="top" class="datacell nowrap"
                          hidden$="[[!item.third_party_module_status.length]]">
                        <span>[[item.third_party_module_status]]</span>
                      </td>
                    </tr>
                  </template>
                </table>
              </td>
            </tr>
          </table>
        </div>
      </div> <!-- content -->
    </template>
  </dom-bind>
</div>
<script type="module" src="chrome://conflicts/conflicts.js"></script>
</body>
</html>