From 486ee68ca8da60f6b87191e674552bde5100425d Mon Sep 17 00:00:00 2001 From: Uku Taht Date: Thu, 20 Jun 2024 17:32:08 +0300 Subject: [PATCH] Browser icon improvements (#4246) * Use png for Safari icon * Fix spacing for screen sizes * Add browser icon to version drilldown --- assets/js/dashboard/stats/devices/index.js | 36 +++++++++++++++------ priv/static/images/icon/browser/safari.png | Bin 0 -> 3164 bytes priv/static/images/icon/browser/safari.svg | 1 - 3 files changed, 26 insertions(+), 11 deletions(-) create mode 100644 priv/static/images/icon/browser/safari.png delete mode 100644 priv/static/images/icon/browser/safari.svg diff --git a/assets/js/dashboard/stats/devices/index.js b/assets/js/dashboard/stats/devices/index.js index ccf142d33..7fd8ec58e 100644 --- a/assets/js/dashboard/stats/devices/index.js +++ b/assets/js/dashboard/stats/devices/index.js @@ -10,7 +10,7 @@ import ImportedQueryUnsupportedWarning from '../imported-query-unsupported-warni // Icons copied from https://github.com/alrra/browser-logos const BROWSER_ICONS = { 'Chrome': 'chrome.svg', - 'Safari': 'safari.svg', + 'Safari': 'safari.png', 'Firefox': 'firefox.svg', 'Microsoft Edge': 'edge.svg', 'Vivaldi': 'vivaldi.svg', @@ -28,6 +28,17 @@ const BROWSER_ICONS = { 'vivo Browser': 'vivo.png' } +function browserIconFor(browser) { + const filename = BROWSER_ICONS[browser] || 'fallback.svg' + + return ( + + ) +} + function Browsers({ query, site, afterFetchData }) { function fetchData() { return api.get(url.apiPath(site, '/browsers'), query) @@ -41,14 +52,7 @@ function Browsers({ query, site, afterFetchData }) { } function renderIcon(listItem) { - const filename = BROWSER_ICONS[listItem.name] || 'fallback.svg' - - return ( - - ) + return browserIconFor(listItem.name) } return ( @@ -67,6 +71,15 @@ function Browsers({ query, site, afterFetchData }) { function BrowserVersions({ query, site, afterFetchData }) { function fetchData() { return api.get(url.apiPath(site, '/browser-versions'), query) + .then(res => { + return {...res, results: res.results.map((row => { + return {...row, name: `${row.browser} ${row.name}`} + }))} + }) + } + + function renderIcon(listItem) { + return browserIconFor(listItem.browser) } function getFilterFor(listItem) { @@ -86,6 +99,7 @@ function BrowserVersions({ query, site, afterFetchData }) { getFilterFor={getFilterFor} keyLabel="Browser version" metrics={maybeWithCR([VISITORS_METRIC, PERCENTAGE_METRIC], query)} + renderIcon={renderIcon} query={query} /> ) @@ -150,7 +164,9 @@ function ScreenSizes({ query, site, afterFetchData }) { } function renderIcon(screenSize) { - return iconFor(screenSize.name) + return ( + {iconFor(screenSize.name)} + ) } function getFilterFor(listItem) { diff --git a/priv/static/images/icon/browser/safari.png b/priv/static/images/icon/browser/safari.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec59640dbeb5fb0662ebace25a870225c4af628 GIT binary patch literal 3164 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