Skip to content

Force format to absolute iso8601 #293

Open
@ericslaw

Description

@ericslaw

This code runs on github.com and displays timestamps in relative formatting...
but I really NEVER want to see timestamps in relative form.

I'd so much rather that 'last week' show up as '2024-09-26 19:05:24' or anything similar to iso8601.

Perhaps this just needs a new format string (for non-duration timestamps) of 'iso8601' ?

I can convince github pages to reveal an absolute timestamp with the following snippet pasted into the console.

document.querySelectorAll('relative-time[datetime]')
    .forEach( item => {
        item.setAttribute('format','datetime')
        item.setAttribute('formatStyle','long')
        item.setAttribute('precision','minute')
    });

... but I get 'Thu, Sep 26' which is way too short.

I can use this snippet to update the title to show what I want but I still have to hover

document.querySelectorAll('relative-time[datetime]')
    .forEach( item =>
        item.setAttribute(
            "title",
            new Date(
                Math.round(
                    Date.parse( item.getAttribute("datetime") )
                    / 60000 ) * 60000
            )
                .toISOString()
                .replace(/T/," ")
                .replace(/[.].*/,"")
                +" UTC"
        )
    )

perhaps I should be looking to convince Intl.DateTimeFormat with a Locale that emits iso8601 instead?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions