mirror of
https://github.com/TheRealOwenRees/chess-scribe-website.git
synced 2026-07-23 01:46:57 +00:00
update text for importing study via login or link
This commit is contained in:
@@ -10,6 +10,4 @@
|
||||
- react query on for study and chapter load, to allow caching
|
||||
- https://specification.website/checklist/
|
||||
|
||||
- Custom headers do not work - the subtitle is appearing above every thing on first page, and the game starts 2nd page
|
||||
|
||||
- react query to cache the study and chapters
|
||||
@@ -28,6 +28,8 @@ const LichessStudyLinkInput = ({ setSelectedStudyId }: IProps) => {
|
||||
return;
|
||||
}
|
||||
|
||||
console.log(result.data);
|
||||
|
||||
setSelectedStudyId(result.data);
|
||||
toast.success("Study loaded — pick a chapter");
|
||||
};
|
||||
|
||||
@@ -2,11 +2,11 @@ import {
|
||||
type Dispatch,
|
||||
useActionState,
|
||||
useEffect,
|
||||
useRef,
|
||||
// useRef,
|
||||
useState,
|
||||
} from "react";
|
||||
import { toast } from "react-toastify";
|
||||
import { useClickOutside } from "#/hooks/useClickOutside.ts";
|
||||
// import { useClickOutside } from "#/hooks/useClickOutside.ts";
|
||||
import { useLichess } from "#/hooks/useLichess.ts";
|
||||
import type { IUserStudyChapter } from "#/interfaces.ts";
|
||||
import type { GameAction } from "#/reducers/gameReducer.ts";
|
||||
@@ -31,7 +31,7 @@ const initialChapterState: ChapterState = {
|
||||
const SelectStudyChapter = ({ selectedStudyId, gameDispatch }: IProps) => {
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
const [search, setSearch] = useState("");
|
||||
const dropdownRef = useRef<HTMLDivElement>(null);
|
||||
// const dropdownRef = useRef<HTMLDivElement>(null);
|
||||
|
||||
const { getLichessStudyChapters, loadLichessStudyChapter } = useLichess();
|
||||
|
||||
@@ -47,6 +47,9 @@ const SelectStudyChapter = ({ selectedStudyId, gameDispatch }: IProps) => {
|
||||
const result = await getLichessStudyChapters({
|
||||
studyId: selectedStudyId,
|
||||
});
|
||||
|
||||
console.log(result);
|
||||
|
||||
if (result.ok) {
|
||||
return {
|
||||
status: "success",
|
||||
@@ -54,6 +57,7 @@ const SelectStudyChapter = ({ selectedStudyId, gameDispatch }: IProps) => {
|
||||
error: null,
|
||||
} satisfies ChapterState;
|
||||
}
|
||||
|
||||
return {
|
||||
status: "error",
|
||||
chapters: [],
|
||||
@@ -67,7 +71,7 @@ const SelectStudyChapter = ({ selectedStudyId, gameDispatch }: IProps) => {
|
||||
chapter.name.toLowerCase().includes(search.toLowerCase()),
|
||||
);
|
||||
|
||||
useClickOutside({ isOpen, setIsOpen, setSearch, ref: dropdownRef });
|
||||
// useClickOutside({ isOpen, setIsOpen, setSearch, ref: dropdownRef });
|
||||
|
||||
useEffect(() => {
|
||||
if (isPending || chapterState.status === "success") {
|
||||
|
||||
@@ -65,7 +65,10 @@ const Chessboard = () => {
|
||||
/>
|
||||
) : null}
|
||||
{user ? (
|
||||
<div className="flex flex-col">
|
||||
<p className="text-center">or</p>
|
||||
<LichessStudyLinkInput setSelectedStudyId={setSelectedStudyId} />
|
||||
</div>
|
||||
) : null}
|
||||
</Section>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user