chore: upgrade to react 19 rc

This commit is contained in:
reya
2024-08-12 10:32:20 +07:00
parent da8162069b
commit be16d5c21d
11 changed files with 682 additions and 626 deletions

View File

@@ -3,7 +3,7 @@ import { Column } from "@/components/column";
import { Toolbar } from "@/components/toolbar";
import { NostrQuery } from "@/system";
import type { ColumnEvent, LumeColumn } from "@/types";
import { createFileRoute } from "@tanstack/react-router";
import { createLazyFileRoute } from "@tanstack/react-router";
import { listen } from "@tauri-apps/api/event";
import { getCurrentWindow } from "@tauri-apps/api/window";
import useEmblaCarousel from "embla-carousel-react";
@@ -11,11 +11,7 @@ import { nanoid } from "nanoid";
import { useCallback, useEffect, useState } from "react";
import { useDebouncedCallback } from "use-debounce";
export const Route = createFileRoute("/$account/home")({
loader: async () => {
const columns = await NostrQuery.getColumns();
return columns;
},
export const Route = createLazyFileRoute("/$account/home")({
component: Screen,
});

View File

@@ -0,0 +1,9 @@
import { NostrQuery } from "@/system";
import { createFileRoute } from "@tanstack/react-router";
export const Route = createFileRoute("/$account/home")({
loader: async () => {
const columns = await NostrQuery.getColumns();
return columns;
},
});

View File

@@ -6,23 +6,14 @@ import {
SearchIcon,
} from "@/components";
import { User } from "@/components/user";
import { LumeWindow, NostrAccount, NostrQuery } from "@/system";
import { Outlet, createFileRoute } from "@tanstack/react-router";
import { LumeWindow, NostrAccount } from "@/system";
import { Outlet, createLazyFileRoute } from "@tanstack/react-router";
import { Menu, MenuItem, PredefinedMenuItem } from "@tauri-apps/api/menu";
import { getCurrentWindow } from "@tauri-apps/api/window";
import { message } from "@tauri-apps/plugin-dialog";
import { memo, useCallback, useState } from "react";
export const Route = createFileRoute("/$account")({
beforeLoad: async ({ params }) => {
const settings = await NostrQuery.getUserSettings();
const accounts = await NostrAccount.getAccounts();
const otherAccounts = accounts.filter(
(account) => account !== params.account,
);
return { otherAccounts, settings };
},
export const Route = createLazyFileRoute("/$account/")({
component: Screen,
});

View File

@@ -0,0 +1,14 @@
import { NostrAccount, NostrQuery } from "@/system";
import { createFileRoute } from "@tanstack/react-router";
export const Route = createFileRoute("/$account/")({
beforeLoad: async ({ params }) => {
const settings = await NostrQuery.getUserSettings();
const accounts = await NostrAccount.getAccounts();
const otherAccounts = accounts.filter(
(account) => account !== params.account,
);
return { otherAccounts, settings };
},
});

View File

@@ -12,7 +12,7 @@ import { Kind } from "@/types";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import * as Tabs from "@radix-ui/react-tabs";
import { useQuery } from "@tanstack/react-query";
import { createFileRoute } from "@tanstack/react-router";
import { createLazyFileRoute } from "@tanstack/react-router";
import { invoke } from "@tauri-apps/api/core";
import { Menu, MenuItem, PredefinedMenuItem } from "@tauri-apps/api/menu";
import { getCurrentWindow } from "@tauri-apps/api/window";
@@ -20,10 +20,7 @@ import { open } from "@tauri-apps/plugin-shell";
import { type ReactNode, useCallback, useEffect, useRef } from "react";
import { Virtualizer } from "virtua";
export const Route = createFileRoute("/panel/$account")({
beforeLoad: async ({ context }) => {
console.log(context);
},
export const Route = createLazyFileRoute("/$account/panel")({
component: Screen,
});
@@ -33,7 +30,6 @@ function Screen() {
const { isLoading, data } = useQuery({
queryKey: ["notification", account],
queryFn: async () => {
console.log(queryClient);
const events = await NostrQuery.getNotifications();
return events;
},
@@ -72,6 +68,7 @@ function Screen() {
return { texts, zaps, reactions };
},
refetchOnWindowFocus: false,
});
const showContextMenu = useCallback(async (e: React.MouseEvent) => {
@@ -125,7 +122,7 @@ function Screen() {
return () => {
unlisten.then((f) => f());
};
}, []);
}, [account]);
if (isLoading) {
return (