UNPKG

@t1mmen/srtd

Version:

Supabase Repeatable Template Definitions (srtd): 🪄 Live-reloading SQL templates for Supabase DX. Make your database changes reviewable and migrations maintainable! 🚀

33 lines • 1.19 kB
import { Text } from 'ink'; import React from 'react'; import { COLOR_SUCCESS } from './customTheme.js'; export const TimeSince = ({ date }) => { const [now, setNow] = React.useState(new Date()); React.useEffect(() => { const timer = setInterval(() => setNow(new Date()), 1000); return () => clearInterval(timer); }, []); if (!date) return React.createElement(Text, null, "never"); const parsedDate = new Date(date); const diff = Math.abs(now.getTime() - parsedDate.getTime()); const seconds = Math.floor(diff / 1000); if (seconds < 5) return React.createElement(Text, { color: COLOR_SUCCESS }, "just now"); if (seconds < 60) return React.createElement(Text, null, seconds, "s ago"); if (seconds < 3600) return React.createElement(Text, null, Math.floor(seconds / 60), "m ago"); if (seconds < 86400) return React.createElement(Text, null, Math.floor(seconds / 3600), "h ago"); return React.createElement(Text, null, Math.floor(seconds / 86400), "d ago"); }; //# sourceMappingURL=TimeSince.js.map