Graphite to GitHub Redirector

Redirects from graphite.dev GitHub PR page to GitHub's PR page

K instalaci tototo skriptu si budete muset nainstalovat rozšíření jako Tampermonkey, Greasemonkey nebo Violentmonkey.

K instalaci tohoto skriptu si budete muset nainstalovat rozšíření jako Tampermonkey nebo Violentmonkey.

K instalaci tohoto skriptu si budete muset nainstalovat rozšíření jako Tampermonkey nebo Violentmonkey.

K instalaci tohoto skriptu si budete muset nainstalovat rozšíření jako Tampermonkey nebo Userscripts.

You will need to install an extension such as Tampermonkey to install this script.

K instalaci tohoto skriptu si budete muset nainstalovat manažer uživatelských skriptů.

(Už mám manažer uživatelských skriptů, nechte mě ho nainstalovat!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(Už mám manažer uživatelských stylů, nechte mě ho nainstalovat!)

// ==UserScript==
// @name         Graphite to GitHub Redirector
// @namespace    http://tampermonkey.net/
// @version      0.1
// @license      MIT
// @description  Redirects from graphite.dev GitHub PR page to GitHub's PR page
// @author       Walker Hildebrand
// @match        https://app.graphite.dev/github/pr/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Function to extract information from the current URL
    function extractInfoFromURL() {
        const match = window.location.pathname.match(/^\/github\/pr\/([\w-]+)\/([\w-]+)\/(\d+)/);
        if (match) {
            const org = match[1];
            const repo = match[2];
            const prNumber = match[3];
            return { org, repo, prNumber };
        } else {
            console.log('Invalid URL format for GitHub PR.');
            return null;
        }
    }

    // Function to redirect to GitHub PR page
    function redirectToGitHub() {
        const info = extractInfoFromURL();
        if (info) {
            const { org, repo, prNumber } = info;
            const githubURL = `https://github.com/${org}/${repo}/pull/${prNumber}`;
            console.log('Redirecting to GitHub:', githubURL);
            window.location.href = githubURL;
        }
    }

    // Execute the redirect function when the page is loaded
    window.addEventListener('load', redirectToGitHub);
})();