@@ -41,32 +41,36 @@ export default function NoteItem(props) {
4141
4242 // Format date with relative time - with error handling
4343 const formatDate = ( dateString ) => {
44- try {
45- const date = new Date ( dateString ) ;
46- // Check if date is valid
47- if ( isNaN ( date . getTime ( ) ) ) {
48- return 'Unknown date' ;
49- }
50-
51- const now = new Date ( ) ;
52- const diffTime = Math . abs ( now - date ) ;
53- const diffDays = Math . ceil ( diffTime / ( 1000 * 60 * 60 * 24 ) ) ;
54-
55- if ( diffDays === 1 ) return 'Yesterday' ;
56- if ( diffDays < 7 ) return `${ diffDays } days ago` ;
57- if ( diffDays < 30 ) return `${ Math . ceil ( diffDays / 7 ) } weeks ago` ;
58-
59- return date . toLocaleDateString ( 'en-US' , {
60- month : 'short' ,
61- day : 'numeric' ,
62- year : date . getFullYear ( ) !== now . getFullYear ( ) ? 'numeric' : undefined
63- } ) ;
64- } catch ( error ) {
65- console . error ( "Date formatting error:" , error ) ;
66- return 'Unknown date' ;
67- }
44+ try {
45+ const date = new Date ( dateString ) ;
46+ if ( isNaN ( date . getTime ( ) ) ) return 'Unknown date' ;
47+
48+ const now = new Date ( ) ;
49+
50+ // Compare calendar dates in LOCAL timezone
51+ const today = new Date ( now . getFullYear ( ) , now . getMonth ( ) , now . getDate ( ) ) ;
52+ const noteDay = new Date ( date . getFullYear ( ) , date . getMonth ( ) , date . getDate ( ) ) ;
53+
54+ const diffTime = today - noteDay ;
55+ const diffDays = Math . floor ( diffTime / ( 1000 * 60 * 60 * 24 ) ) ;
56+
57+ if ( diffDays === 0 ) return 'Today' ;
58+ if ( diffDays === 1 ) return 'Yesterday' ;
59+ if ( diffDays < 7 ) return `${ diffDays } days ago` ;
60+ if ( diffDays < 30 ) return `${ Math . floor ( diffDays / 7 ) } weeks ago` ;
61+
62+ return date . toLocaleDateString ( 'en-US' , {
63+ month : 'short' ,
64+ day : 'numeric' ,
65+ year : date . getFullYear ( ) !== now . getFullYear ( ) ? 'numeric' : undefined
66+ } ) ;
67+ } catch ( err ) {
68+ console . error ( "Date formatting error:" , err ) ;
69+ return 'Unknown date' ;
70+ }
6871 } ;
6972
73+
7074 // Calculate reading time - with error handling
7175 const getReadingTime = ( text ) => {
7276 try {
0 commit comments