Flutter pub.dev 重定向到镜像站

Automatically redirect all URLs from pub.dev to pub-web.flutter-io.cn

// ==UserScript==
// @name         Flutter pub.dev 重定向到镜像站
// @namespace    https://github.com/
// @version      1.1
// @author       Maicarons
// @icon         https://pub.flutter-io.cn/favicon.ico
// @description  Automatically redirect all URLs from pub.dev to pub-web.flutter-io.cn
// @include      *://pub.dev/*
// @grant        none
// @sandbox      JavaScript
// @license      GPL-3.0 License
// @run-at       document-start
// ==/UserScript==

(function() {
    'use strict';

    const originalUrl = new URL(window.location.href);
    const newUrl = new URL(originalUrl.pathname.replace(/^\/(.*)$/, '/$1'), 'https://pub-web.flutter-io.cn');

    // 如果原始URL包含查询参数或哈希值,也要转移到新URL上
    if (originalUrl.search) {
        newUrl.search = originalUrl.search;
    }
    if (originalUrl.hash) {
        newUrl.hash = originalUrl.hash;
    }

    window.location.replace(newUrl.href);
})();