mirror of
https://github.com/urosran/cally.git
synced 2025-11-26 16:34:54 +00:00
- Added the repeat days selected for the created todos in the edit dialog
This commit is contained in:
@ -123,7 +123,8 @@ const AddChoreDialog = (addChoreDialogProps: IAddChoreDialog) => {
|
|||||||
updateToDo({
|
updateToDo({
|
||||||
...todo,
|
...todo,
|
||||||
points: points,
|
points: points,
|
||||||
assignees: selectedAssignees
|
assignees: selectedAssignees,
|
||||||
|
repeatDays: selectedDays,
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
addToDo({
|
addToDo({
|
||||||
@ -213,7 +214,7 @@ const AddChoreDialog = (addChoreDialogProps: IAddChoreDialog) => {
|
|||||||
))}
|
))}
|
||||||
</Picker>
|
</Picker>
|
||||||
</View>
|
</View>
|
||||||
{todo.repeatType == "Every week" && <RepeatFreq handleRepeatDaysChange={handleRepeatDaysChange}/>}
|
{todo.repeatType == "Every week" && <RepeatFreq handleRepeatDaysChange={handleRepeatDaysChange} repeatDays={todo.repeatDays ?? []}/>}
|
||||||
</View>
|
</View>
|
||||||
<View style={styles.divider} />
|
<View style={styles.divider} />
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,7 @@ import { View, Text, TouchableOpacity, Picker } from "react-native-ui-lib";
|
|||||||
import React, { useEffect, useState } from "react";
|
import React, { useEffect, useState } from "react";
|
||||||
import {DAYS_OF_WEEK_ENUM} from "@/hooks/firebase/types/todoData";
|
import {DAYS_OF_WEEK_ENUM} from "@/hooks/firebase/types/todoData";
|
||||||
|
|
||||||
const RepeatFreq = ({ handleRepeatDaysChange }: { handleRepeatDaysChange: Function }) => {
|
const RepeatFreq = ({ repeatDays, handleRepeatDaysChange }: { repeatDays: string[], handleRepeatDaysChange: Function }) => {
|
||||||
const [weeks, setWeeks] = useState<number>(1);
|
const [weeks, setWeeks] = useState<number>(1);
|
||||||
const weekOptions: number[] = Array.from({ length: 52 }, (_, i) => i + 1);
|
const weekOptions: number[] = Array.from({ length: 52 }, (_, i) => i + 1);
|
||||||
|
|
||||||
@ -10,21 +10,21 @@ const RepeatFreq = ({ handleRepeatDaysChange }: { handleRepeatDaysChange: Functi
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<View row centerV spread marginR-30>
|
<View row centerV spread marginR-30>
|
||||||
<RepeatOption value={DAYS_OF_WEEK_ENUM.MONDAY} handleRepeatDaysChange={handleRepeatDaysChange} />
|
<RepeatOption value={DAYS_OF_WEEK_ENUM.MONDAY} handleRepeatDaysChange={handleRepeatDaysChange} repeatDays={repeatDays}/>
|
||||||
<RepeatOption value={DAYS_OF_WEEK_ENUM.TUESDAY} handleRepeatDaysChange={handleRepeatDaysChange} />
|
<RepeatOption value={DAYS_OF_WEEK_ENUM.TUESDAY} handleRepeatDaysChange={handleRepeatDaysChange} repeatDays={repeatDays}/>
|
||||||
<RepeatOption value={DAYS_OF_WEEK_ENUM.WEDNESDAY} handleRepeatDaysChange={handleRepeatDaysChange} />
|
<RepeatOption value={DAYS_OF_WEEK_ENUM.WEDNESDAY} handleRepeatDaysChange={handleRepeatDaysChange} repeatDays={repeatDays}/>
|
||||||
<RepeatOption value={DAYS_OF_WEEK_ENUM.THURSDAY} handleRepeatDaysChange={handleRepeatDaysChange} />
|
<RepeatOption value={DAYS_OF_WEEK_ENUM.THURSDAY} handleRepeatDaysChange={handleRepeatDaysChange} repeatDays={repeatDays}/>
|
||||||
<RepeatOption value={DAYS_OF_WEEK_ENUM.FRIDAY} handleRepeatDaysChange={handleRepeatDaysChange} />
|
<RepeatOption value={DAYS_OF_WEEK_ENUM.FRIDAY} handleRepeatDaysChange={handleRepeatDaysChange} repeatDays={repeatDays}/>
|
||||||
<RepeatOption value={DAYS_OF_WEEK_ENUM.SATURDAY} handleRepeatDaysChange={handleRepeatDaysChange} />
|
<RepeatOption value={DAYS_OF_WEEK_ENUM.SATURDAY} handleRepeatDaysChange={handleRepeatDaysChange} repeatDays={repeatDays}/>
|
||||||
<RepeatOption value={DAYS_OF_WEEK_ENUM.SUNDAY} handleRepeatDaysChange={handleRepeatDaysChange} />
|
<RepeatOption value={DAYS_OF_WEEK_ENUM.SUNDAY} handleRepeatDaysChange={handleRepeatDaysChange} repeatDays={repeatDays}/>
|
||||||
</View>
|
</View>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default RepeatFreq;
|
export default RepeatFreq;
|
||||||
|
|
||||||
const RepeatOption = ({ value, handleRepeatDaysChange }: { value: string, handleRepeatDaysChange: Function }) => {
|
const RepeatOption = ({ value, handleRepeatDaysChange, repeatDays }: { value: string, handleRepeatDaysChange: Function, repeatDays: string[] }) => {
|
||||||
const [isSet, setisSet] = useState(false);
|
const [isSet, setisSet] = useState(repeatDays.includes(value));
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
handleRepeatDaysChange(value, isSet);
|
handleRepeatDaysChange(value, isSet);
|
||||||
|
|||||||
Reference in New Issue
Block a user