Updated component library build.

This commit is contained in:
Mike Cao 2023-08-23 12:50:18 -07:00
parent 280f6a9113
commit 89db57a380
14 changed files with 146 additions and 99 deletions

View file

@ -3,7 +3,7 @@ import { useRouter } from 'next/router';
import useApi from 'components/hooks/useApi';
import useUser from 'components/hooks/useUser';
export function useRequireLogin() {
export function useRequireLogin(handler: (data?: object) => void) {
const router = useRouter();
const { get } = useApi();
const { user, setUser } = useUser();
@ -11,9 +11,9 @@ export function useRequireLogin() {
useEffect(() => {
async function loadUser() {
try {
const { user } = await get('/auth/verify');
const data = await get('/auth/verify');
setUser(user);
setUser(typeof handler === 'function' ? handler(data) : (data as any)?.user);
} catch {
await router.push('/login');
}

View file

@ -12,14 +12,12 @@ export function WebsiteDateFilter({ websiteId }) {
const isFutureDate =
value !== 'all' && isAfter(incrementDateRange(dateRange, -1).startDate, new Date());
const handleChange = async value => {
const handleChange = value => {
setDateRange(value);
};
const handleIncrement = async value => {
const newValue = incrementDateRange(dateRange, value);
setDateRange(newValue);
const handleIncrement = value => {
setDateRange(incrementDateRange(dateRange, value));
};
return (

View file

@ -4,7 +4,6 @@ import Link from 'next/link';
import { Button, Icon, Icons, Text } from 'react-basics';
import TeamWebsiteRemoveButton from './TeamWebsiteRemoveButton';
import SettingsTable from 'components/common/SettingsTable';
import useConfig from 'components/hooks/useConfig';
export function TeamWebsitesTable({
data = [],
@ -13,9 +12,9 @@ export function TeamWebsitesTable({
onFilterChange,
onPageChange,
onPageSizeChange,
openExternal = false,
}) {
const { formatMessage, labels } = useMessages();
const { openExternal } = useConfig();
const { user } = useUser();
const columns = [

View file

@ -10,12 +10,10 @@ import TrackingCode from 'components/pages/settings/websites/TrackingCode';
import ShareUrl from 'components/pages/settings/websites/ShareUrl';
import useApi from 'components/hooks/useApi';
import useMessages from 'components/hooks/useMessages';
import useConfig from 'components/hooks/useConfig';
export function WebsiteSettings({ websiteId }) {
export function WebsiteSettings({ websiteId, openExternal = false }) {
const router = useRouter();
const { formatMessage, labels, messages } = useMessages();
const { openExternal } = useConfig();
const { get, useQuery } = useApi();
const { showToast } = useToasts();
const { data, isLoading } = useQuery(

View file

@ -3,7 +3,6 @@ import { Button, Text, Icon, Icons } from 'react-basics';
import SettingsTable from 'components/common/SettingsTable';
import Empty from 'components/common/Empty';
import useMessages from 'components/hooks/useMessages';
import useConfig from 'components/hooks/useConfig';
import useUser from 'components/hooks/useUser';
export function WebsitesTable({
@ -14,12 +13,12 @@ export function WebsitesTable({
onPageSizeChange,
showTeam,
showEditButton,
openExternal = false,
}) {
const { formatMessage, labels } = useMessages();
const { openExternal } = useConfig();
const { user } = useUser();
const showTable = data && (filterValue || data?.data.length !== 0);
const showTable = data && (filterValue || data?.data?.length !== 0);
const teamColumns = [
{ name: 'teamName', label: formatMessage(labels.teamName) },