(log: {
modified: Date
messageCount: number
fileSize?: number
gitBranch?: string
tag?: string
agentSetting?: string
prNumber?: number
prRepository?: string
})
| 201 | * Formats log metadata for display (time, size or message count, branch, tag, PR) |
| 202 | */ |
| 203 | export function formatLogMetadata(log: { |
| 204 | modified: Date |
| 205 | messageCount: number |
| 206 | fileSize?: number |
| 207 | gitBranch?: string |
| 208 | tag?: string |
| 209 | agentSetting?: string |
| 210 | prNumber?: number |
| 211 | prRepository?: string |
| 212 | }): string { |
| 213 | const sizeOrCount = |
| 214 | log.fileSize !== undefined |
| 215 | ? formatFileSize(log.fileSize) |
| 216 | : `${log.messageCount} messages` |
| 217 | const parts = [ |
| 218 | formatRelativeTimeAgo(log.modified, { style: 'short' }), |
| 219 | ...(log.gitBranch ? [log.gitBranch] : []), |
| 220 | sizeOrCount, |
| 221 | ] |
| 222 | if (log.tag) { |
| 223 | parts.push(`#${log.tag}`) |
| 224 | } |
| 225 | if (log.agentSetting) { |
| 226 | parts.push(`@${log.agentSetting}`) |
| 227 | } |
| 228 | if (log.prNumber) { |
| 229 | parts.push( |
| 230 | log.prRepository |
| 231 | ? `${log.prRepository}#${log.prNumber}` |
| 232 | : `#${log.prNumber}`, |
| 233 | ) |
| 234 | } |
| 235 | return parts.join(' · ') |
| 236 | } |
| 237 | |
| 238 | export function formatResetTime( |
| 239 | timestampInSeconds: number | undefined, |
no test coverage detected