mirror of
https://github.com/umami-software/umami.git
synced 2026-02-07 14:17:13 +01:00
Fixed metrics display.
This commit is contained in:
parent
2172dddd1c
commit
9dd35b3766
20 changed files with 345 additions and 808 deletions
|
|
@ -1,27 +1,32 @@
|
|||
import { Icon, Icons } from 'react-basics';
|
||||
import classNames from 'classnames';
|
||||
import Link from 'next/link';
|
||||
import { safeDecodeURI } from 'next-basics';
|
||||
import usePageQuery from 'hooks/usePageQuery';
|
||||
import { Icon, Icons } from 'react-basics';
|
||||
import useMessages from 'hooks/useMessages';
|
||||
import styles from './FilterLink.module.css';
|
||||
|
||||
export default function FilterLink({ id, value, label, externalUrl }) {
|
||||
const { formatMessage, labels } = useMessages();
|
||||
const { resolveUrl, query } = usePageQuery();
|
||||
const active = query[id] !== undefined;
|
||||
const selected = query[id] === value;
|
||||
|
||||
return (
|
||||
<div className={styles.row}>
|
||||
<Link
|
||||
href={resolveUrl({ [id]: value })}
|
||||
className={classNames(styles.label, {
|
||||
[styles.inactive]: active && !selected,
|
||||
[styles.active]: active && selected,
|
||||
})}
|
||||
replace
|
||||
>
|
||||
{safeDecodeURI(label || value)}
|
||||
</Link>
|
||||
{!value && <span className={styles.empty}>{label || formatMessage(labels.unknown)}</span>}
|
||||
{value && (
|
||||
<Link
|
||||
href={resolveUrl({ [id]: value })}
|
||||
className={classNames(styles.label, {
|
||||
[styles.inactive]: active && !selected,
|
||||
[styles.active]: active && selected,
|
||||
})}
|
||||
replace
|
||||
>
|
||||
{safeDecodeURI(label || value)}
|
||||
</Link>
|
||||
)}
|
||||
{externalUrl && (
|
||||
<a className={styles.link} href={externalUrl} target="_blank" rel="noreferrer noopener">
|
||||
<Icon className={styles.icon}>
|
||||
|
|
|
|||
|
|
@ -30,3 +30,7 @@
|
|||
.icon {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.empty {
|
||||
color: var(--base400);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
.tag {
|
||||
padding: 2px 4px;
|
||||
border: 1px solid var(--base300);
|
||||
padding: 4px 6px;
|
||||
border-radius: 4px;
|
||||
margin-right: 10px;
|
||||
color: var(--primary400);
|
||||
background: var(--blue100);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue