mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-11-04 04:57:51 +00:00 
			
		
		
		
	Feat: Display out of office message based on business hours Co-authored-by: Pranav Raj Sreepuram <pranavrajs@gmail.com>
		
			
				
	
	
		
			30 lines
		
	
	
		
			985 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			985 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import fromUnixTime from 'date-fns/fromUnixTime';
 | 
						|
import format from 'date-fns/format';
 | 
						|
import isToday from 'date-fns/isToday';
 | 
						|
import isYesterday from 'date-fns/isYesterday';
 | 
						|
import parseISO from 'date-fns/parseISO';
 | 
						|
 | 
						|
export const formatUnixDate = (date, dateFormat = 'MMM dd, yyyy') => {
 | 
						|
  const unixDate = fromUnixTime(date);
 | 
						|
  return format(unixDate, dateFormat);
 | 
						|
};
 | 
						|
 | 
						|
export const formatDate = ({ date, todayText, yesterdayText }) => {
 | 
						|
  const dateValue = new Date(date);
 | 
						|
  if (isToday(dateValue)) return todayText;
 | 
						|
  if (isYesterday(dateValue)) return yesterdayText;
 | 
						|
  return date;
 | 
						|
};
 | 
						|
 | 
						|
export const formatDigitToString = val => {
 | 
						|
  return val > 9 ? `${val}` : `0${val}`;
 | 
						|
};
 | 
						|
 | 
						|
export const buildDateFromTime = (hr, min, utcOffset, date = new Date()) => {
 | 
						|
  const today = format(date, 'yyyy-MM-dd');
 | 
						|
  const hour = formatDigitToString(hr);
 | 
						|
  const minute = formatDigitToString(min);
 | 
						|
  const timeString = `${today}T${hour}:${minute}:00${utcOffset}`;
 | 
						|
  return parseISO(timeString);
 | 
						|
};
 |