habitica-sync/src/view/Components/Taskview/Dailiesview/index.tsx

108 lines
4.6 KiB
TypeScript
Raw Normal View History

2021-10-19 10:54:06 +05:30
import * as React from "react";
import DailyItem from "./DailyItem"
import { Tab, Tabs, TabList, TabPanel } from "react-tabs";
export default function Index(props: any){
2022-01-14 15:53:03 -08:00
2021-10-19 10:54:06 +05:30
if(props.dailys == undefined) {
return <div id="classDisplay">No Dailies Present</div>
}
else {
2022-01-14 15:53:03 -08:00
const notDueDailies = props.dailys.map((daily: any) => {
2022-01-14 15:53:03 -08:00
if (!daily.isDue) {
let daily_notes = '';
let daily_subtasks = '';
if (props.settings.showTaskDescription) {
daily_notes = daily.notes;
}
if (props.settings.showSubTasks) {
daily_subtasks = daily.checklist;
}
return <DailyItem key={daily.id} id={daily.id} daily_text={daily.text}
daily_notes={daily_notes} daily_subtasks={daily_subtasks}
onChange={props.onChange} completed={daily.completed} onChangeChecklistItem={props.onChangeChecklistItem}/>
}
})
2022-01-14 15:53:03 -08:00
2021-10-19 10:54:06 +05:30
const incompleteDailies = props.dailys.map((daily: any) => {
if (!daily.completed&&daily.isDue) {
let daily_notes = '';
let daily_subtasks = '';
2021-11-20 23:39:09 -08:00
if (props.settings.showTaskDescription) {
daily_notes = daily.notes;
2021-11-20 23:39:09 -08:00
}
if (props.settings.showSubTasks) {
daily_subtasks = daily.checklist;
}
return <DailyItem key={daily.id} id={daily.id} daily_text={daily.text}
daily_notes={daily_notes} daily_subtasks={daily_subtasks}
onChange={props.onChange} completed={daily.completed} onChangeChecklistItem={props.onChangeChecklistItem}/>
}
})
2021-10-19 10:54:06 +05:30
const completedDailies = props.dailys.map((daily: any) => {
// if(daily.completed)
// return <DailyItem key={daily.id} id={daily.id} daily_text={daily.text} daily_notes={daily.notes} onChange={props.onChange} completed={daily.completed}/>
2022-01-14 15:53:03 -08:00
if (daily.completed) {
let daily_notes = '';
let daily_subtasks = '';
if (props.settings.showTaskDescription) {
daily_notes = daily.notes;
}
if (props.settings.showSubTasks) {
daily_subtasks = daily.checklist;
}
return <DailyItem key={daily.id} id={daily.id} daily_text={daily.text}
daily_notes={daily_notes} daily_subtasks={daily_subtasks}
onChange={props.onChange} completed={daily.completed} onChangeChecklistItem={props.onChangeChecklistItem}/>
}
2021-10-19 10:54:06 +05:30
})
2022-01-14 15:53:03 -08:00
2022-04-13 16:36:56 +02:00
const allDailies = props.dailys.map((daily: any) => {
// if(daily.completed)
// return <DailyItem key={daily.id} id={daily.id} daily_text={daily.text} daily_notes={daily.notes} onChange={props.onChange} completed={daily.completed}/>
let daily_notes = '';
let daily_subtasks = '';
if (props.settings.showTaskDescription) {
daily_notes = daily.notes;
}
if (props.settings.showSubTasks) {
daily_subtasks = daily.checklist;
}
return <DailyItem key={daily.id} id={daily.id} daily_text={daily.text}
daily_notes={daily_notes} daily_subtasks={daily_subtasks}
onChange={props.onChange} completed={daily.completed} onChangeChecklistItem={props.onChangeChecklistItem}/>
})
2021-10-19 10:54:06 +05:30
const display = <div id="classDisplay">
<Tabs>
<TabList>
<Tab>Active</Tab>
<Tab>Completed</Tab>
<Tab>Not Due</Tab>
2022-04-13 16:36:56 +02:00
<Tab>All</Tab>
2021-10-19 10:54:06 +05:30
</TabList>
<TabPanel>
<ul>{incompleteDailies}</ul>
</TabPanel>
<TabPanel>
<ul>{completedDailies}</ul>
</TabPanel>
<TabPanel>
<ul>{notDueDailies}</ul>
</TabPanel>
2022-04-13 16:36:56 +02:00
<TabPanel>
<ul>{allDailies}</ul>
</TabPanel>
2021-10-19 10:54:06 +05:30
</Tabs>
</div>
return(display);
}
}