From d62741e1392b1bbd68edd36f5ad6bc36405fd56b Mon Sep 17 00:00:00 2001 From: bartool Date: Thu, 13 Mar 2025 19:32:10 +0100 Subject: [PATCH] add leading 0 of every entry --- app/src/components/TimeInputComponent.vue | 26 ++++++++++------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/app/src/components/TimeInputComponent.vue b/app/src/components/TimeInputComponent.vue index 81f1fd0..ac7b356 100644 --- a/app/src/components/TimeInputComponent.vue +++ b/app/src/components/TimeInputComponent.vue @@ -39,16 +39,16 @@ const emit = defineEmits(["update:hour", "update:minute"]); const interval = ref(null); const timeout = ref(null); -const tempHour = ref(props.hour); -const tempMinute = ref(props.minute); +const tempHour = ref(String(props.hour).padStart(2, "0")); +const tempMinute = ref(String(props.minute).padStart(2, "0")); watch(() => props.hour, (newVal) => { - tempHour.value = newVal; + tempHour.value = String(newVal).padStart(2, "0"); console.log("watch") }); watch(() => props.minute, (newVal) => { - tempMinute.value = newVal; + tempMinute.value = String(newVal).padStart(2, "0"); }); @@ -65,7 +65,7 @@ const validateHour = () => { const validateMinute = () => { const minute = Number(tempMinute.value); - if (!isNaN(minute) && minute >= 0 && minute <= 59) { + if (!isNaN(minute) && minute >= 0 && minute < 60) { emit("update:minute", minute); } else { tempMinute.value = props.minute; @@ -74,29 +74,25 @@ const validateMinute = () => { const incrementValue = (type) => { if (type == "hour") { - let newHour = tempHour.value + 1; + let newHour = props.hour + 1; if (newHour >= 6 && newHour <= 18) { emit("update:hour", newHour); } } else if (type === "minute") { - let newMinute = tempMinute.value + 1; - if (newMinute >= 0 && newMinute <= 59) { - emit("update:minute", newMinute); - } + let newMinute = (props.minute + 1) % 60; + emit("update:minute", newMinute); } } const decrementValue = (type) => { if (type == "hour") { - let newHour = tempHour.value - 1; + let newHour = props.hour - 1; if (newHour >= 6 && newHour <= 18) { emit("update:hour", newHour); } } else if (type === "minute") { - let newMinute = tempMinute.value - 1; - if (newMinute >= 0 && newMinute <= 59) { - emit("update:minute", newMinute); - } + let newMinute = (props.minute + 59) % 60; + emit("update:minute", newMinute); } } const onIncrementClick = (type) => {