UNPKG

@zenithui/time-picker

Version:

A ZenithUi Time Picker is React component enables users to select a time from a predefined list of options.

37 lines (36 loc) 1.37 kB
function getInitialHour(time) { const [inputHour] = time.split(":"); const hour = parseInt(inputHour); return 0 === hour ? "12" : hour > 12 ? (hour - 12).toString().padStart(2, "0") : inputHour; } function getInitialPeriod(time) { const [inputHour] = time.split(":"); return parseInt(inputHour) >= 12 ? "PM" : "AM"; } function convertTo24Hour(hour, period) { const intHour = parseInt(hour); if ("PM" === period && 12 !== intHour) return intHour + 12; if ("AM" === period && 12 === intHour) return "00"; return hour; } function convertTo12Hour(hour) { const intHour = parseInt(hour); const period = intHour >= 12 ? "PM" : "AM"; const formattedHour = 0 === intHour ? 12 : intHour > 12 ? intHour - 12 : intHour; return { hour: formattedHour.toString(), period }; } function formatTime24To12(time24) { const [hours24, minutes] = time24.split(":").map(Number); const period = hours24 >= 12 ? "PM" : "AM"; const hours12 = hours24 % 12 || 12; return `${hours12}:${minutes.toString().padStart(2, "0")} ${period}`; } function generateTimeOptions(start, end) { return Array.from({ length: end - start + 1 }, (_, i)=>(i + start).toString().padStart(2, "0")); } export { convertTo12Hour, convertTo24Hour, formatTime24To12, generateTimeOptions, getInitialHour, getInitialPeriod };