@@ -35,15 +35,24 @@
Loading
35 35
36 36
    const iconURL = useMemo(() => {
37 37
        let iconURL: URL | undefined
38 +
38 39
        try {
39 -
            if (manifest?.icon) {
40 +
            if (props.isLightTheme) {
41 +
                if (manifest?.icon && isEncodedImage(manifest.icon)) {
42 +
                    iconURL = new URL(manifest.icon)
43 +
                }
44 +
            } else if (manifest?.iconDark && isEncodedImage(manifest.iconDark)) {
45 +
                iconURL = new URL(manifest.iconDark)
46 +
            } else if (manifest?.icon && isEncodedImage(manifest.icon)) {
47 +
                // fallback: show default icon on dark theme if dark icon isn't specified
40 48
                iconURL = new URL(manifest.icon)
41 49
            }
42 50
        } catch {
43 51
            // noop
44 52
        }
53 +
45 54
        return iconURL
46 -
    }, [manifest])
55 +
    }, [manifest?.icon, manifest?.iconDark, props.isLightTheme])
47 56
48 57
    const isWorkInProgress = props.extension.registryExtension?.isWorkInProgress
49 58
@@ -85,12 +94,7 @@
Loading
85 94
                        <div className="extension-area-header__wrapper">
86 95
                            <div className="mb-3">
87 96
                                <div className="d-flex align-items-start">
88 -
                                    {manifest?.icon &&
89 -
                                        iconURL &&
90 -
                                        iconURL.protocol === 'data:' &&
91 -
                                        isEncodedImage(manifest.icon) && (
92 -
                                            <img className="extension-area-header__icon mr-2" src={manifest.icon} />
93 -
                                        )}
97 +
                                    {iconURL && <img className="extension-area-header__icon mr-2" src={iconURL.href} />}
94 98
                                    <div>
95 99
                                        <h1 className="d-flex align-items-center mb-0 font-weight-normal">{name}</h1>
96 100
                                        {manifest && (manifest.description || isWorkInProgress) && (
@@ -149,7 +153,7 @@
Loading
149 153
                                            <li key={label} className="nav-item">
150 154
                                                <NavLink
151 155
                                                    to={props.url + to}
152 -
                                                    className="nav-link btn-sm extension-area-link"
156 +
                                                    className="nav-link extension-area-link"
153 157
                                                    activeClassName="active"
154 158
                                                    exact={exact}
155 159
                                                >
Files Coverage
browser/src 48.96%
cmd 44.70%
dev/src-expose 21.12%
docker-images/prometheus/cmd/prom-wrapper 15.94%
enterprise 62.60%
internal 53.62%
shared/src 59.30%
web/src 48.37%
Project Totals (1536 files) 51.73%
74911
typescript unit
74911
typescript unit
74911
typescript unit
74911
typescript storybook
74911
typescript integration
1
coverage:
2
  range: 50...75
3
  status:
4
    project:
5
      default:
6
        informational: true
7
      codeintel:
8
        informational: true
9
        paths:
10
          - cmd/symbols
11
          - enterprise/cmd/precise-code-intel-*
12
          - enterprise/internal/codeintel
13
      campaigns:
14
        informational: true
15
        paths:
16
          - cmd/frontend/graphqlbackend/campaigns.go
17
          - enterprise/cmd/frontend/internal/campaigns
18
          - internal/campaigns
19
          - enterprise/internal/campaigns
20
          - web/src/enterprise/campaigns
21
      typescript:
22
        informational: true
23
        flags:
24
          - typescript
25
      go:
26
        informational: true
27
        flags:
28
          - go
29
    patch:
30
      default:
31
        only_pulls: true
32
        target: 5%
33
comment:
34
  require_changes: yes
35
  layout: 'diff, flags, files'
36
  show_carryforward_flags: true
37
ignore:
38
  - '**/bindata.go'
39

40
flags:
41
  typescript:
42
    carryforward: true
43

44
github_checks:
45
    annotations: false
Sunburst
The inner-most circle is the entire project, moving away from the center are folders then, finally, a single file. The size and color of each slice is representing the number of statements and the coverage, respectively.
Icicle
The top section represents the entire project. Proceeding with folders and finally individual files. The size and color of each slice is representing the number of statements and the coverage, respectively.
Grid
Each block represents a single file in the project. The size and color of each block is represented by the number of statements and the coverage, respectively.
Loading