| @@ -7,6 +7,7 @@ import { VNode, h } from 'vue'; | ||||
| import * as mfm from 'mfm-js'; | ||||
| import * as Misskey from 'misskey-js'; | ||||
| import MkUrl from '@/components/global/MkUrl.vue'; | ||||
| import MkTime from '@/components/global/MkTime.vue'; | ||||
| import MkLink from '@/components/MkLink.vue'; | ||||
| import MkMention from '@/components/MkMention.vue'; | ||||
| import MkEmoji from '@/components/global/MkEmoji.vue'; | ||||
| @@ -249,6 +250,19 @@ export default function(props: MfmProps) { | ||||
| 							return h('ruby', {}, [...genEl(token.children.slice(0, token.children.length - 1), scale), h('rt', text.trim())]); | ||||
| 						} | ||||
| 					} | ||||
| 					case 'unixtime': { | ||||
| 						const child = token.children[0]; | ||||
| 						const unixtime = parseInt(child.type === 'text' ? child.props.text : ''); | ||||
| 						return h('span', { | ||||
| 							style: 'display: inline-block; font-size: 90%; border: solid 1px var(--divider); border-radius: 999px; padding: 4px 10px 4px 6px;', | ||||
| 						}, [ | ||||
| 							h('i', { | ||||
| 								class: 'ti ti-clock', | ||||
| 								style: 'margin-right: 0.25em;', | ||||
| 							}), | ||||
| 							h(MkTime, { time: unixtime * 1000, mode: 'detail' }), | ||||
| 						]); | ||||
| 					} | ||||
| 				} | ||||
| 				if (style == null) { | ||||
| 					return h('span', {}, ['$[', token.props.name, ' ', ...genEl(token.children, scale), ']']); | ||||
|   | ||||
| @@ -50,7 +50,15 @@ const relative = $computed<string>(() => { | ||||
| 		ago >= 60 ? i18n.t('_ago.minutesAgo', { n: (~~(ago / 60)).toString() }) : | ||||
| 		ago >= 10 ? i18n.t('_ago.secondsAgo', { n: (~~(ago % 60)).toString() }) : | ||||
| 		ago >= -1 ? i18n.ts._ago.justNow : | ||||
| 		i18n.ts._ago.future); | ||||
| 		ago < -31536000 ? i18n.t('_timeIn.years', { n: Math.round(-ago / 31536000).toString() }) : | ||||
| 		ago < -2592000 ? i18n.t('_timeIn.months', { n: Math.round(-ago / 2592000).toString() }) : | ||||
| 		ago < -604800 ? i18n.t('_timeIn.weeks', { n: Math.round(-ago / 604800).toString() }) : | ||||
| 		ago < -86400 ? i18n.t('_timeIn.days', { n: Math.round(-ago / 86400).toString() }) : | ||||
| 		ago < -3600 ? i18n.t('_timeIn.hours', { n: Math.round(-ago / 3600).toString() }) : | ||||
| 		ago < -60 ? i18n.t('_timeIn.minutes', { n: (~~(-ago / 60)).toString() }) : | ||||
| 		ago < -10 ? i18n.t('_timeIn.seconds', { n: (~~(-ago % 60)).toString() }) : | ||||
| 		'?' | ||||
| 	); | ||||
| }); | ||||
|  | ||||
| let tickId: number; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 syuilo
					syuilo