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) },

View file

@ -64,6 +64,31 @@ export * from 'components/layout/SettingsLayout';
export * from 'components/layout/ShareLayout';
export * from 'components/layout/SideNav';
*/
export * from 'components/hooks/useApi';
export * from 'components/hooks/useConfig';
export * from 'components/hooks/useCountryNames';
export * from 'components/hooks/useDateRange';
export * from 'components/hooks/useDocumentClick';
export * from 'components/hooks/useEscapeKey';
export * from 'components/hooks/useFilters';
export * from 'components/hooks/useForceUpdate';
export * from 'components/hooks/useFormat';
export * from 'components/hooks/useLanguageNames';
export * from 'components/hooks/useLocale';
export * from 'components/hooks/useMessages';
export * from 'components/hooks/usePageQuery';
export * from 'components/hooks/useReport';
export * from 'components/hooks/useReports';
export * from 'components/hooks/useRequireLogin';
export * from 'components/hooks/useShareToken';
export * from 'components/hooks/useSticky';
export * from 'components/hooks/useTheme';
export * from 'components/hooks/useTimezone';
export * from 'components/hooks/useUser';
export * from 'components/hooks/useWebsite';
export * from 'components/hooks/useWebsiteReports';
export * from 'components/pages/settings/teams/TeamAddForm';
export * from 'components/pages/settings/teams/TeamAddWebsiteForm';
export * from 'components/pages/settings/teams/TeamDeleteForm';

View file

@ -60,7 +60,7 @@ export const useAuth = createMiddleware(async (req, res, next) => {
}
if (process.env.NODE_ENV === 'development') {
log({ token, shareToken, payload, user });
log({ token, shareToken, payload, user, grant });
}
if (!user?.id && !shareToken) {

View file

@ -1,5 +1,5 @@
import { create } from 'zustand';
import produce from 'immer';
import { produce } from 'immer';
import semver from 'semver';
import { CURRENT_VERSION, VERSION_CHECK, UPDATES_URL } from 'lib/constants';
import { getItem } from 'next-basics';

View file

@ -1,5 +1,5 @@
import { create } from 'zustand';
import produce from 'immer';
import { produce } from 'immer';
import { DateRange } from 'lib/types';
const store = create(() => ({}));