feed: add formatted absolute time

Useful to see when a text note was written.
OFF0 2 years ago
parent 5d701c8767
commit d5fa2f420b
Signed by: offbyn
GPG Key ID: 94A2F643C51F37FA

@ -58,7 +58,8 @@ body {
line-height: 1.5; line-height: 1.5;
} }
small { small,
time {
font-size: var(--font-small); font-size: var(--font-small);
} }

@ -11,10 +11,9 @@ pool.addRelay('wss://nostr.x1ddos.ch', {read: true, write: true});
// pool.addRelay('wss://nostr.rocks', {read: true, write: false}); // pool.addRelay('wss://nostr.rocks', {read: true, write: false});
// pool.addRelay('wss://nostr-relay.wlvs.space', {read: true, write: false}); // pool.addRelay('wss://nostr-relay.wlvs.space', {read: true, write: false});
const dateTime = new Intl.DateTimeFormat(navigator.language, { const dateTime = new Intl.DateTimeFormat(navigator.language, {
dateStyle: 'full', dateStyle: 'short',
timeStyle: 'long', timeStyle: 'short',
}); });
const userList = []; const userList = [];
let max = 0; let max = 0;
@ -56,25 +55,28 @@ const subscription = pool.sub({
// '52155da703585f25053830ac39863c80ea6adc57b360472c16c566a412d2bc38', // quark // '52155da703585f25053830ac39863c80ea6adc57b360472c16c566a412d2bc38', // quark
// 'a6057742e73ff93b89587c27a74edf2cdab86904291416e90dc98af1c5f70cfa', // mosc // 'a6057742e73ff93b89587c27a74edf2cdab86904291416e90dc98af1c5f70cfa', // mosc
'3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d', // fiatjaf '3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d', // fiatjaf
pubkey, // me '52155da703585f25053830ac39863c80ea6adc57b360472c16c566a412d2bc38' // x1ddos
// pubkey, // me
// '32e1827635450ebb3c5a7d12c1f8e7b2b514439ac10a67eef3d9fd9c5c68e245' // jb55 // '32e1827635450ebb3c5a7d12c1f8e7b2b514439ac10a67eef3d9fd9c5c68e245' // jb55
] ],
limit: 100,
} }
}); });
// feed
const hasEventTag = tag => tag[0] === 'e'; const hasEventTag = tag => tag[0] === 'e';
const getShortTagId = tag => `${tag[1].slice(0, 7)}${tag[2] ? '@' + tag[2] : ''}`; const getShortTagId = tag => `${tag[1].slice(0, 7)}${tag[2] ? '@' + tag[2] : ''}`;
function renderTextNote(evt, relay) { function renderTextNote(evt, relay) {
if (evt.tags.length) {
console.log('has tags', evt)
}
const [host, img, time, userName] = getMetadata(evt, relay); const [host, img, time, userName] = getMetadata(evt, relay);
const isReply = evt.tags.some(hasEventTag); const isReply = evt.tags.some(hasEventTag);
const body = elem('div', {className: 'mbox-body', title: dateTime.format(time)}, [ const body = elem('div', {className: 'mbox-body'}, [
renderProfile(userName, host), renderProfile(userName, host),
elem('div', {}, isReply ? `reply to ${evt.tags.filter(hasEventTag).map(getShortTagId).join(' and ')}` : evt.id), elem('div', {}, [
evt.content // text elem('small', {}, isReply ? `reply to ${evt.tags.filter(hasEventTag).map(getShortTagId).join(' and ')}` : evt.id),
elem('time', {dateTime: time, title: time}, ` on ${dateTime.format(time)}`),
]),
evt.content, // text
]); ]);
rendernArticle([img, body], isReply && {className: 'mbox-reply'}); rendernArticle([img, body], isReply && {className: 'mbox-reply'});
} }

Loading…
Cancel
Save