{
  "url": "https://api.github.com/repos/peterdu1109/NotifySync/releases/340317890",
  "assets_url": "https://api.github.com/repos/peterdu1109/NotifySync/releases/340317890/assets",
  "upload_url": "https://uploads.github.com/repos/peterdu1109/NotifySync/releases/340317890/assets{?name,label}",
  "html_url": "https://github.com/peterdu1109/NotifySync/releases/tag/v5.7.3.0",
  "id": 340317890,
  "author": {
    "login": "ElieMFR",
    "id": 241441323,
    "node_id": "U_kgDODmQaKw",
    "avatar_url": "https://avatars.githubusercontent.com/u/241441323?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/ElieMFR",
    "html_url": "https://github.com/ElieMFR",
    "followers_url": "https://api.github.com/users/ElieMFR/followers",
    "following_url": "https://api.github.com/users/ElieMFR/following{/other_user}",
    "gists_url": "https://api.github.com/users/ElieMFR/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/ElieMFR/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/ElieMFR/subscriptions",
    "organizations_url": "https://api.github.com/users/ElieMFR/orgs",
    "repos_url": "https://api.github.com/users/ElieMFR/repos",
    "events_url": "https://api.github.com/users/ElieMFR/events{/privacy}",
    "received_events_url": "https://api.github.com/users/ElieMFR/received_events",
    "type": "User",
    "user_view_type": "public",
    "site_admin": false
  },
  "node_id": "RE_kwDOQ1YVy84USNbC",
  "tag_name": "v5.7.3.0",
  "target_commitish": "main",
  "name": "\ud83d\udd14 NotifySync v5.7.3.0",
  "draft": false,
  "immutable": false,
  "prerelease": false,
  "created_at": "2026-06-16T17:50:03Z",
  "updated_at": "2026-06-16T18:09:32Z",
  "published_at": "2026-06-16T17:50:14Z",
  "assets": [
    {
      "url": "https://api.github.com/repos/peterdu1109/NotifySync/releases/assets/449458409",
      "id": 449458409,
      "node_id": "RA_kwDOQ1YVy84ayjDp",
      "name": "NotifySync.zip",
      "label": "",
      "uploader": {
        "login": "ElieMFR",
        "id": 241441323,
        "node_id": "U_kgDODmQaKw",
        "avatar_url": "https://avatars.githubusercontent.com/u/241441323?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/ElieMFR",
        "html_url": "https://github.com/ElieMFR",
        "followers_url": "https://api.github.com/users/ElieMFR/followers",
        "following_url": "https://api.github.com/users/ElieMFR/following{/other_user}",
        "gists_url": "https://api.github.com/users/ElieMFR/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/ElieMFR/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/ElieMFR/subscriptions",
        "organizations_url": "https://api.github.com/users/ElieMFR/orgs",
        "repos_url": "https://api.github.com/users/ElieMFR/repos",
        "events_url": "https://api.github.com/users/ElieMFR/events{/privacy}",
        "received_events_url": "https://api.github.com/users/ElieMFR/received_events",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      "content_type": "application/zip",
      "state": "uploaded",
      "size": 99991,
      "digest": "sha256:f8d7082a23ee4490eb33755b181414a50f716babb285414c67c3d2ea6abba005",
      "download_count": 184,
      "created_at": "2026-06-16T17:50:14Z",
      "updated_at": "2026-06-16T17:50:14Z",
      "browser_download_url": "https://github.com/peterdu1109/NotifySync/releases/download/v5.7.3.0/NotifySync.zip"
    }
  ],
  "tarball_url": "https://api.github.com/repos/peterdu1109/NotifySync/tarball/v5.7.3.0",
  "zipball_url": "https://api.github.com/repos/peterdu1109/NotifySync/zipball/v5.7.3.0",
  "body": "The timestamps now complement the time sections instead of repeating them \u2014 clock time for today, day for this week, date for older.\r\n\r\n*Les horodatages compl\u00e8tent maintenant les sections temporelles au lieu de les r\u00e9p\u00e9ter \u2014 heure pour aujourd'hui, jour pour cette semaine, date pour plus ancien.*\r\n\r\n---\r\n\r\n## \ud83c\uddec\ud83c\udde7 English\r\n\r\n### \u2728 Improved\r\n\r\n- **Smarter timestamps** \u2014 With the new time sections, *\"2 hours ago\"* under a **Today** header was saying the same thing twice. Each notification now shows an absolute time that adds precision: the **clock time** for today (`2:30 PM`), the **weekday** for this week (`Mon`), and the **date** for older items (`Jun 12`). Times follow your language \u2014 12-hour with AM/PM in English, 24-hour in French.\r\n\r\n<details>\r\n<summary>\ud83d\udee0\ufe0f Under the hood</summary>\r\n\r\n- `timeAgo` replaced by an absolute formatter using `Intl.DateTimeFormat`, with boundaries mirroring the section logic (local midnight / last 7 days). Auto-localized, rebuilt on language change.\r\n- Client-side only \u2014 no server, DB, or API changes.\r\n\r\n</details>\r\n\r\n---\r\n\r\n## \ud83c\uddeb\ud83c\uddf7 Fran\u00e7ais\r\n\r\n### \u2728 Am\u00e9lior\u00e9\r\n\r\n- **Horodatages plus pertinents** \u2014 Avec les nouvelles sections temporelles, *\u00ab il y a 2 heures \u00bb* sous un en-t\u00eate **Aujourd'hui** disait deux fois la m\u00eame chose. Chaque notification affiche maintenant une heure absolue qui ajoute de la pr\u00e9cision : l'**heure** pour aujourd'hui (`14:30`), le **jour** pour cette semaine (`lun.`), et la **date** pour les \u00e9l\u00e9ments plus anciens (`12 juin`). Les heures suivent votre langue \u2014 format 12 h avec AM/PM en anglais, 24 h en fran\u00e7ais.\r\n\r\n<details>\r\n<summary>\ud83d\udee0\ufe0f Sous le capot</summary>\r\n\r\n- `timeAgo` remplac\u00e9 par un formateur absolu via `Intl.DateTimeFormat`, avec des fronti\u00e8res align\u00e9es sur la logique des sections (minuit local / 7 derniers jours). Auto-localis\u00e9, reconstruit au changement de langue.\r\n- Uniquement c\u00f4t\u00e9 client \u2014 aucun changement serveur, DB ou API.\r\n\r\n</details>\r\n\r\n---\r\n\r\n## \ud83d\udce6 Upgrading / Mise \u00e0 jour\r\n\r\nAuto-updates from the stable channel on your next Jellyfin restart. Hard-refresh your browser (`Ctrl+Shift+R`) to pick up the new client script.\r\n\r\n*Mise \u00e0 jour auto depuis le canal stable au prochain red\u00e9marrage Jellyfin. Rafra\u00eechissez votre navigateur (`Ctrl+Shift+R`) pour charger le nouveau script client.*\r\n"
}