GitHub Notification Right Click to Repo Page

Open the repository home page with a right click on the notification item. 右键点击 GitHub 的通知项直接跳转到项目主页。

Tính đến 28-08-2022. Xem phiên bản mới nhất.

// ==UserScript==
// @name         GitHub Notification Right Click to Repo Page
// @namespace    http://clear.studio/
// @version      0.2
// @license MIT
// @description  Open the repository home page with a right click on the notification item. 右键点击 GitHub 的通知项直接跳转到项目主页。
// @author       Kytrun
// @match        https://github.com/notifications*
// @icon         https://github.com/favicon.ico
// @grant        none
// ==/UserScript==

(function () {
  'use strict';
  const rightClickOpenRepo = () => {
    const lis = document.querySelectorAll('li.notifications-list-item');

    lis.forEach(li => {
      const notifiLink = li.querySelector('a.notification-list-item-link').href;
      const repoReg = /(https:\/\/github\.com\/[a-zA-Z0-9-]+\/[a-zA-Z0-9-\.]+)\/.+/;
      const repoLink = notifiLink.replace(repoReg, '$1');
      //console.log(repoLink);
      li.addEventListener('contextmenu', function (ev) {
        ev.preventDefault();
        window.open(repoLink);
        return false;
      }, false);
    });
  }

  rightClickOpenRepo();

// SPA reload
  window.history.pushState = new Proxy(window.history.pushState, {
    apply: (target, thisArg, argArray) => {

      setTimeout(rightClickOpenRepo, 2000);

      return target.apply(thisArg, argArray);
    },
  });
})();