• Lyza Danger Gardner's avatar
    Don't show edited timestamps if annotations haven't been updated · 81a45e4a
    Lyza Danger Gardner authored
    Previously, the `AnnotationHeader` component checked the equivalency
    of `annotation.created` and `annotation.updated` to determine if an
    annotation had been updated subsequent to its creation. This is
    problematic if an annotation has a very small difference between its
    `created` and `updated` dates.
    
    `created` and `updated` are returned by the API as ISO-8601 date strings
    with microsecond resolution. These days, annotations created by the `h`
    service will have exactly equivalent `created` and `updated` timestamps
    (assuming they haven't actually been edited subsequently, of course). In
    the past, however, annotations often had negligible (sub-second)
    differences in their `created` and `updated` dates. This resulted in
    an edited timestamp misleadingly appearing in the UI for older
    annotations.
    
    These changes add a `hasBeenEdited` function to the
    `annotation-metadata` util module that considers an annotation edited
    only if `created` and `updated` differ by at least 2 seconds.
    
    Tests for `annotation-metadata` have also been modernized somewhat here.
    
    Fixes #2684
    81a45e4a
annotation-header-test.js 9.4 KB