mirror of
https://github.com/umami-software/umami.git
synced 2026-02-07 22:27:16 +01:00
Lint fixes.
This commit is contained in:
parent
c948bbca12
commit
e1e6493dec
17 changed files with 41 additions and 71 deletions
|
|
@ -77,7 +77,7 @@
|
|||
"@react-spring/web": "^9.7.5",
|
||||
"@tanstack/react-query": "^5.66.11",
|
||||
"@umami/prisma-client": "^0.14.0",
|
||||
"@umami/react-zen": "link:C:/Users/mike/AppData/Local/pnpm/global/5/node_modules/@umami/react-zen",
|
||||
"@umami/react-zen": "link:../../../Library/pnpm/global/5/node_modules/@umami/react-zen",
|
||||
"@umami/redis-client": "^0.26.0",
|
||||
"bcryptjs": "^2.4.3",
|
||||
"chalk": "^4.1.2",
|
||||
|
|
@ -120,7 +120,6 @@
|
|||
"react-simple-maps": "^2.3.0",
|
||||
"react-use-measure": "^2.1.7",
|
||||
"react-window": "^1.8.11",
|
||||
"react-zen": "link:C:/Users/mike/AppData/Local/pnpm/global/5/node_modules/@umami/react-zen",
|
||||
"request-ip": "^3.3.0",
|
||||
"semver": "^7.7.1",
|
||||
"serialize-error": "^12.0.0",
|
||||
|
|
@ -197,7 +196,7 @@
|
|||
"sharp"
|
||||
],
|
||||
"overrides": {
|
||||
"react-zen": "link:C:/Users/mike/AppData/Local/pnpm/global/5/node_modules/@umami/react-zen"
|
||||
"@umami/react-zen": "link:../../../Library/pnpm/global/5/node_modules/@umami/react-zen"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
9
pnpm-lock.yaml
generated
9
pnpm-lock.yaml
generated
|
|
@ -5,7 +5,7 @@ settings:
|
|||
excludeLinksFromLockfile: false
|
||||
|
||||
overrides:
|
||||
react-zen: link:C:/Users/mike/AppData/Local/pnpm/global/5/node_modules/@umami/react-zen
|
||||
'@umami/react-zen': link:../../../Library/pnpm/global/5/node_modules/@umami/react-zen
|
||||
|
||||
importers:
|
||||
|
||||
|
|
@ -48,8 +48,8 @@ importers:
|
|||
specifier: ^0.14.0
|
||||
version: 0.14.0(@prisma/client@6.4.1(prisma@6.4.1(typescript@5.8.2))(typescript@5.8.2))(@prisma/extension-read-replicas@0.4.0(@prisma/client@6.4.1(prisma@6.4.1(typescript@5.8.2))(typescript@5.8.2)))
|
||||
'@umami/react-zen':
|
||||
specifier: link:C:/Users/mike/AppData/Local/pnpm/global/5/node_modules/@umami/react-zen
|
||||
version: link:C:/Users/mike/AppData/Local/pnpm/global/5/node_modules/@umami/react-zen
|
||||
specifier: link:../../../Library/pnpm/global/5/node_modules/@umami/react-zen
|
||||
version: link:../../../Library/pnpm/global/5/node_modules/@umami/react-zen
|
||||
'@umami/redis-client':
|
||||
specifier: ^0.26.0
|
||||
version: 0.26.0
|
||||
|
|
@ -176,9 +176,6 @@ importers:
|
|||
react-window:
|
||||
specifier: ^1.8.11
|
||||
version: 1.8.11(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
|
||||
react-zen:
|
||||
specifier: link:C:/Users/mike/AppData/Local/pnpm/global/5/node_modules/@umami/react-zen
|
||||
version: link:C:/Users/mike/AppData/Local/pnpm/global/5/node_modules/@umami/react-zen
|
||||
request-ip:
|
||||
specifier: ^3.3.0
|
||||
version: 3.3.0
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ import { useContext } from 'react';
|
|||
import { Button, Row, Label, Icon, Popover, MenuTrigger } from '@umami/react-zen';
|
||||
import { FieldSelectForm } from '../[reportId]/FieldSelectForm';
|
||||
import { ParameterList } from '../[reportId]/ParameterList';
|
||||
import { PopupForm } from '../[reportId]/PopupForm';
|
||||
import { ReportContext } from './Report';
|
||||
|
||||
export function FieldParameters() {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import { useContext } from 'react';
|
||||
import { useMessages, useFormat, useFilters, useFields } from '@/components/hooks';
|
||||
import { Icons } from '@/components/icons';
|
||||
import { Button, Text, Row, Label, Icon, Popover, MenuTrigger } from '@umami/react-zen';
|
||||
import { Button, Row, Label, Icon, Popover, MenuTrigger } from '@umami/react-zen';
|
||||
import { FilterSelectForm } from '../[reportId]/FilterSelectForm';
|
||||
import { ParameterList } from '../[reportId]/ParameterList';
|
||||
import { PopupForm } from '../[reportId]/PopupForm';
|
||||
|
|
|
|||
|
|
@ -71,14 +71,6 @@ export function GoalsAddForm({
|
|||
}
|
||||
};
|
||||
|
||||
const renderTypeValue = (value: any) => {
|
||||
return items.find(item => item.value === value)?.label;
|
||||
};
|
||||
|
||||
const renderoperatorValue = (value: any) => {
|
||||
return operators.find(item => item.value === value)?.label;
|
||||
};
|
||||
|
||||
return (
|
||||
<Column gap="3">
|
||||
<Label>{formatMessage(defaultValue ? labels.update : labels.add)}</Label>
|
||||
|
|
@ -87,7 +79,6 @@ export function GoalsAddForm({
|
|||
className={styles.dropdown}
|
||||
items={items}
|
||||
value={type}
|
||||
renderValue={renderTypeValue}
|
||||
onChange={(value: any) => setType(value)}
|
||||
>
|
||||
{({ value, label }: any) => {
|
||||
|
|
|
|||
|
|
@ -22,10 +22,6 @@ export function RetentionParameters() {
|
|||
}
|
||||
};
|
||||
|
||||
const handleDateChange = value => {
|
||||
updateReport({ parameters: { dateRange: { ...parseDateRange(value) } } });
|
||||
};
|
||||
|
||||
return (
|
||||
<Form values={parameters} onSubmit={handleSubmit} preventSubmit={true}>
|
||||
<BaseParameters showDateSelect={false} allowWebsiteSelect={!id} />
|
||||
|
|
|
|||
|
|
@ -11,7 +11,6 @@ import {
|
|||
} from '@umami/react-zen';
|
||||
import { useApi, useMessages } from '@/components/hooks';
|
||||
import { ROLES } from '@/lib/constants';
|
||||
import { messages } from '@/components/messages';
|
||||
|
||||
export function UserAddForm({ onSave, onClose }) {
|
||||
const { post, useMutation } = useApi();
|
||||
|
|
@ -51,9 +50,15 @@ export function UserAddForm({ onSave, onClose }) {
|
|||
rules={{ required: formatMessage(labels.required) }}
|
||||
>
|
||||
<Select>
|
||||
<ListItem id={ROLES.viewOnly} data-test="dropdown-item-viewOnly">{formatMessage(labels.viewOnly)}</ListItem>
|
||||
<ListItem id={ROLES.user} data-test="dropdown-item-user">{formatMessage(labels.user)}</ListItem>
|
||||
<ListItem id={ROLES.admin} data-test="dropdown-item-admin">{formatMessage(labels.admin)}</ListItem>
|
||||
<ListItem id={ROLES.viewOnly} data-test="dropdown-item-viewOnly">
|
||||
{formatMessage(labels.viewOnly)}
|
||||
</ListItem>
|
||||
<ListItem id={ROLES.user} data-test="dropdown-item-user">
|
||||
{formatMessage(labels.user)}
|
||||
</ListItem>
|
||||
<ListItem id={ROLES.admin} data-test="dropdown-item-admin">
|
||||
{formatMessage(labels.admin)}
|
||||
</ListItem>
|
||||
</Select>
|
||||
</FormField>
|
||||
<FormButtons>
|
||||
|
|
|
|||
|
|
@ -3,8 +3,7 @@ import Link from 'next/link';
|
|||
import { formatDistance } from 'date-fns';
|
||||
import { ROLES } from '@/lib/constants';
|
||||
import { useMessages, useLocale } from '@/components/hooks';
|
||||
import UserDeleteButton from './UserDeleteButton';
|
||||
import LinkButton from '@/components/common/LinkButton';
|
||||
import { UserDeleteButton } from './UserDeleteButton';
|
||||
|
||||
export function UsersTable({
|
||||
data = [],
|
||||
|
|
|
|||
|
|
@ -66,14 +66,22 @@ export function UserEditForm({ userId, onSave }: { userId: string; onSave?: () =
|
|||
rules={{ required: formatMessage(labels.required) }}
|
||||
>
|
||||
<Select defaultSelectedKey={user.role}>
|
||||
<ListItem id={ROLES.viewOnly} data-test="dropdown-item-viewOnly">{formatMessage(labels.viewOnly)}</ListItem>
|
||||
<ListItem id={ROLES.user} data-test="dropdown-item-user">{formatMessage(labels.user)}</ListItem>
|
||||
<ListItem id={ROLES.admin} data-test="dropdown-item-admin">{formatMessage(labels.admin)}</ListItem>
|
||||
<ListItem id={ROLES.viewOnly} data-test="dropdown-item-viewOnly">
|
||||
{formatMessage(labels.viewOnly)}
|
||||
</ListItem>
|
||||
<ListItem id={ROLES.user} data-test="dropdown-item-user">
|
||||
{formatMessage(labels.user)}
|
||||
</ListItem>
|
||||
<ListItem id={ROLES.admin} data-test="dropdown-item-admin">
|
||||
{formatMessage(labels.admin)}
|
||||
</ListItem>
|
||||
</Select>
|
||||
</FormField>
|
||||
)}
|
||||
<FormButtons>
|
||||
<FormSubmitButton data-test="button-submit" variant="primary">{formatMessage(labels.save)}</FormSubmitButton>
|
||||
<FormSubmitButton data-test="button-submit" variant="primary">
|
||||
{formatMessage(labels.save)}
|
||||
</FormSubmitButton>
|
||||
</FormButtons>
|
||||
</Form>
|
||||
);
|
||||
|
|
|
|||
|
|
@ -37,7 +37,6 @@ export function ShareUrl({ hostUrl, onSave }: { hostUrl?: string; onSave?: () =>
|
|||
};
|
||||
|
||||
const handleSwitch = (checked: boolean) => {
|
||||
console.log({ checked });
|
||||
const data = {
|
||||
name: website.name,
|
||||
domain: website.domain,
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import { Select, Icon, Icons, ListItem, Text, Grid, Column } from '@umami/react-zen';
|
||||
import { Icon, Icons, Text, Grid, Column } from '@umami/react-zen';
|
||||
import { LinkButton } from '@/components/common/LinkButton';
|
||||
import { useMessages, useNavigation } from '@/components/hooks';
|
||||
import { MenuNav } from '@/components/layout/MenuNav';
|
||||
|
|
@ -17,7 +17,6 @@ import { RegionsTable } from '@/components/metrics/RegionsTable';
|
|||
import { ScreenTable } from '@/components/metrics/ScreenTable';
|
||||
import { TagsTable } from '@/components/metrics/TagsTable';
|
||||
import { ChannelsTable } from '@/components/metrics/ChannelsTable';
|
||||
import Link from 'next/link';
|
||||
|
||||
const views = {
|
||||
url: PagesTable,
|
||||
|
|
@ -50,7 +49,6 @@ export function WebsiteExpandedView({
|
|||
}) {
|
||||
const { formatMessage, labels } = useMessages();
|
||||
const {
|
||||
router,
|
||||
renderUrl,
|
||||
query: { view },
|
||||
} = useNavigation();
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
import { Button, Icon, Icons, Box, MenuTrigger, Popover, Text } from '@umami/react-zen';
|
||||
import { PopupForm } from '@/app/(main)/reports/[reportId]/PopupForm';
|
||||
import { FilterSelectForm } from '@/app/(main)/reports/[reportId]/FilterSelectForm';
|
||||
import { useFields, useMessages, useNavigation, useDateRange } from '@/components/hooks';
|
||||
import { OPERATOR_PREFIXES } from '@/lib/constants';
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import { Key } from 'react';
|
||||
import { Row, Button, Flexbox } from '@umami/react-zen';
|
||||
import { Text, Row, Button, Flexbox } from '@umami/react-zen';
|
||||
|
||||
export interface FilterButtonsProps {
|
||||
items: any[];
|
||||
|
|
@ -12,7 +12,9 @@ export function FilterButtons({ items, selectedKey, onSelect }: FilterButtonsPro
|
|||
<Flexbox justifyContent="center">
|
||||
<Row>
|
||||
{items.map(({ key, label }) => (
|
||||
<Button key={key}>{label}</Button>
|
||||
<Button key={key} onPress={() => onSelect(key)}>
|
||||
<Text weight={key === selectedKey ? 'bold' : undefined}>{label}</Text>
|
||||
</Button>
|
||||
))}
|
||||
</Row>
|
||||
</Flexbox>
|
||||
|
|
|
|||
|
|
@ -1,20 +1,10 @@
|
|||
import { useState, Key } from 'react';
|
||||
import {
|
||||
Icon,
|
||||
Modal,
|
||||
Select,
|
||||
Text,
|
||||
Block,
|
||||
Row,
|
||||
ListItem,
|
||||
ListSeparator,
|
||||
Dialog,
|
||||
} from '@umami/react-zen';
|
||||
import { Icon, Modal, Select, Text, Row, ListItem, ListSeparator, Dialog } from '@umami/react-zen';
|
||||
import { endOfYear, isSameDay } from 'date-fns';
|
||||
import { DatePickerForm } from '@/components/metrics/DatePickerForm';
|
||||
import { useLocale, useMessages } from '@/components/hooks';
|
||||
import { Icons } from '@/components/icons';
|
||||
import { formatDate, parseDateValue } from '@/lib/date';
|
||||
import { formatDate } from '@/lib/date';
|
||||
import styles from './DateFilter.module.css';
|
||||
import classNames from 'classnames';
|
||||
|
||||
|
|
@ -41,7 +31,6 @@ export function DateFilter({
|
|||
}: DateFilterProps) {
|
||||
const { formatMessage, labels } = useMessages();
|
||||
const [showPicker, setShowPicker] = useState(false);
|
||||
const { locale } = useLocale();
|
||||
|
||||
const options = [
|
||||
{ label: formatMessage(labels.today), value: '0day' },
|
||||
|
|
@ -108,6 +97,7 @@ export function DateFilter({
|
|||
onChange(value.toString());
|
||||
};
|
||||
|
||||
/*
|
||||
const handleClose = () => setShowPicker(false);
|
||||
|
||||
const renderValue = (value: string) => {
|
||||
|
|
@ -133,9 +123,7 @@ export function DateFilter({
|
|||
}
|
||||
|
||||
return options.find(e => e.value === value)?.label;
|
||||
};
|
||||
|
||||
console.log({ showPicker });
|
||||
};*/
|
||||
|
||||
return (
|
||||
<>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import { useDateRange, useLocale } from '@/components/hooks';
|
||||
import { useDateRange } from '@/components/hooks';
|
||||
import { isAfter } from 'date-fns';
|
||||
import { getOffsetDateRange } from '@/lib/date';
|
||||
import { Button, Icon, Icons } from '@umami/react-zen';
|
||||
|
|
@ -13,7 +13,6 @@ export function WebsiteDateFilter({
|
|||
websiteId: string;
|
||||
showAllTime?: boolean;
|
||||
}) {
|
||||
const { dir } = useLocale();
|
||||
const { dateRange, saveDateRange } = useDateRange(websiteId);
|
||||
const { value, startDate, endDate, offset } = dateRange;
|
||||
const disableForward =
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
import { useState, Key } from 'react';
|
||||
import { Select, ListItem } from '@umami/react-zen';
|
||||
import { useWebsite, useWebsites, useMessages } from '@/components/hooks';
|
||||
import { Empty } from '@/components/common/Empty';
|
||||
import { useWebsites, useMessages } from '@/components/hooks';
|
||||
|
||||
export function WebsiteSelect({
|
||||
websiteId,
|
||||
|
|
@ -12,18 +11,12 @@ export function WebsiteSelect({
|
|||
teamId?: string;
|
||||
onSelect?: (key: any) => void;
|
||||
}) {
|
||||
const { formatMessage, labels, messages } = useMessages();
|
||||
const { formatMessage, labels } = useMessages();
|
||||
const [search, setSearch] = useState('');
|
||||
const [selectedId, setSelectedId] = useState<Key>(websiteId);
|
||||
|
||||
const { data: website } = useWebsite(selectedId as string);
|
||||
|
||||
const queryResult = useWebsites({ teamId }, { search, pageSize: 5 });
|
||||
|
||||
const renderEmpty = () => {
|
||||
return <Empty message={formatMessage(messages.noResultsFound)} />;
|
||||
};
|
||||
|
||||
const handleSelect = (value: any) => {
|
||||
setSelectedId(value);
|
||||
onSelect?.(value);
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ export function DatePickerForm({
|
|||
);
|
||||
const [singleDate, setSingleDate] = useState(defaultStartDate || new Date());
|
||||
const [startDate, setStartDate] = useState(defaultStartDate || new Date());
|
||||
const [endDate, setEndDate] = useState(defaultEndDate || new Date());
|
||||
const [endDate] = useState(defaultEndDate || new Date());
|
||||
const { formatMessage, labels } = useMessages();
|
||||
|
||||
const disabled =
|
||||
|
|
@ -35,8 +35,6 @@ export function DatePickerForm({
|
|||
}
|
||||
};
|
||||
|
||||
console.log({ minDate, maxDate, singleDate, startDate, endDate, disabled });
|
||||
|
||||
return (
|
||||
<div className={styles.container}>
|
||||
<div className={styles.filter}>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue