Added loaders

This commit is contained in:
Pijus Kamandulis
2024-10-19 11:58:02 +03:00
parent 3f04eabfd6
commit 56c0275db0
13 changed files with 141 additions and 31 deletions

View File

@@ -4,7 +4,7 @@ import { getRouteApi } from '@tanstack/react-router';
import TaskSidebar from './components/TaskSidebar';
import VoteSelection from './components/VoteSelection';
import VoteList from './components/VoteList';
import { Drawer } from '../../components';
import { Drawer, Loader } from '../../components';
import EditTicketForm from './components/EditTicketForm';
import PlayerList from './components/PlayerList';
import HtmlEmbed from '../../components/HtmlEmbed';
@@ -22,8 +22,8 @@ const Estimation: React.FC = () => {
useEffect(() => estimationState?.setSessionId(sessionId), [sessionId]);
if (!estimationState?.currentSessionData) {
return null; // TODO: Add a loader
if (estimationState?.currentSessionData?.id !== sessionId) {
return <Loader fullHeight center />;
}
const {

View File

@@ -81,9 +81,16 @@ const EditTicketForm: React.FC<EditTicketFormProps> = ({
/>
)}
</form.Field>
<form.Subscribe selector={(state) => [state.canSubmit]}>
{([canSubmit]) => (
<Button type="submit" disabled={!canSubmit} fullWidth>
<form.Subscribe
selector={(state) => [state.canSubmit, state.isSubmitting]}
>
{([canSubmit, isSubmitting]) => (
<Button
type="submit"
disabled={!canSubmit}
isLoading={isSubmitting}
fullWidth
>
Update
</Button>
)}

View File

@@ -81,9 +81,15 @@ const EstimationResult: React.FC<VoteListProps> = ({
/>
)}
</form.Field>
<form.Subscribe selector={(state) => [state.canSubmit]}>
{([canSubmit]) => (
<Button type="submit" disabled={!canSubmit}>
<form.Subscribe
selector={(state) => [state.canSubmit, state.isSubmitting]}
>
{([canSubmit, isSubmitting]) => (
<Button
type="submit"
disabled={!canSubmit}
isLoading={isSubmitting}
>
Save
</Button>
)}

View File

@@ -5,6 +5,7 @@ import {
SessionInviteInfo,
} from '../lib/functions/estimationSessionInvite';
import { getRouteApi } from '@tanstack/react-router';
import { Loader } from '../components';
const route = getRouteApi('/_authenticated/join/$sessionId');
@@ -40,8 +41,7 @@ const Join = () => {
};
if (!sessionInfo || isLoading) {
// TODO: add loader
return <p>Loading...</p>;
return <Loader fullHeight center />;
}
if (!sessionInfo.success) {

View File

@@ -65,13 +65,14 @@ const Login = () => {
)}
</form.Field>
<form.Subscribe selector={(state) => [state.canSubmit]}>
{([canSubmit]) => (
<form.Subscribe
selector={(state) => [state.canSubmit, state.isSubmitting]}
>
{([canSubmit, isSubmitting]) => (
<div>
{/* TODO: Add loader when [state.isSubmitting] */}
<div className="flex items-center justify-between gap-4">
<Button
disabled={!canSubmit}
disabled={!canSubmit || isSubmitting}
onClick={(e) => {
e.preventDefault();
e.stopPropagation();
@@ -85,7 +86,7 @@ const Login = () => {
</Button>
<Button
disabled={!canSubmit}
disabled={!canSubmit || isSubmitting}
color={ButtonColor.Secondary}
onClick={(e) => {
e.preventDefault();

View File

@@ -50,9 +50,16 @@ const Profile = () => {
);
}}
</updateUsernameForm.Field>
<updateUsernameForm.Subscribe selector={(state) => [state.canSubmit]}>
{([canSubmit]) => (
<Button type="submit" disabled={!canSubmit} fullWidth>
<updateUsernameForm.Subscribe
selector={(state) => [state.canSubmit, state.isSubmitting]}
>
{([canSubmit, isSubmitting]) => (
<Button
type="submit"
disabled={!canSubmit}
isLoading={isSubmitting}
fullWidth
>
Update
</Button>
)}