iCloud customizations

Customizations for iCloud website.

当前为 2024-12-15 提交的版本,查看 最新版本

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

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

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

/* ==UserStyle==
@name           iCloud customizations
@version        1.0.1
@description    Customizations for iCloud website.
@author         BreatFR (https://breat.fr)
@namespace      https://gitlab.com/breatfr
@homepageURL    https://gitlab.com/breatfr/icloud
@supportURL     https://discord.gg/Q8KSHzdBxs
@license        AGPL-3.0-or-later; https://www.gnu.org/licenses/agpl-3.0.txt
@preprocessor   stylus

@var    checkbox    hidebanner          "Hide banner"                   1
@var    checkbox    hidemail            "Hide mail"                     0
@var    checkbox    hidecontacts        "Hide contacts"                 0
@var    checkbox    hidecalendar        "Hide calendar"                 0
@var    checkbox    hidephotos          "Hide photos"                   0
@var    checkbox    hidedrive           "Hide drive"                    0
@var    checkbox    hidenotes           "Hide notes"                    0
@var    checkbox    hidereminders       "Hide reminders"                0
@var    checkbox    hidepages           "Hide pages"                    0 
@var    checkbox    hidenumbers         "Hide numbers"                  0
@var    checkbox    hidekeynote         "Hide keynote"                  0
@var    checkbox    hidefind            "Hide find"                     0
@var    checkbox    hidecalendarsidebar "Hide calendar sidebar"         0
@var    checkbox    monthyearright      "Set month and year on right"   0
==/UserStyle== */

/* === Credits ===
Website         https://breat.fr
facebook        https://www.facebook.com/breatfroff
mastodon        https://mastodon.social/@breat_fr
telegram        https://t.me/breatfr
vk              https://vk.com/breatfroff
X (twitter)     https://x.com/breatfroff
=== Credits === */

@-moz-document domain("icloud.com") {
    /* iCloud */
    if hidebanner {
        .banner-content {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    
    /* Hide elements you don't use */
    if hidemail {
        [href="https://www.icloud.com/mail"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    if hidecontacts {
        [href="https://www.icloud.com/contacts"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    if hidecalendar {
        [href="https://www.icloud.com/calendar"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    if hidephotos {
        [href="https://www.icloud.com/photos"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    if hidedrive {
        [href="https://www.icloud.com/iclouddrive"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    if hidenotes {
        [href="https://www.icloud.com/notes"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    if hidereminders {
        [href="https://www.icloud.com/reminders"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    if hidepages {
        [href="https://www.icloud.com/pages"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    if hidenumbers {
        [href="https://www.icloud.com/numbers"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    if hidekeynote {
        [href="https://www.icloud.com/keynote"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    if hidefind {
        [href="https://www.icloud.com/find"] {
            display: none !important;
            height: 0;
            width: 0;
        }
    }
    
    [dir=ltr] .navigation-drawer {
        padding: 45px 20px;
    }
}

@-moz-document url-prefix("https://www.icloud.com/applications/calendar/") {
    /* Calendar */
    if hidecalendarsidebar {
        ui-split[style="width: 250px;"],
        ui-split-divider[style="left: 250px;"] {
            display: none;
            width: 0;
        }
    }
    
    /* Something focused */
    *:not(.css-rhsj15):focus {
        background: rgba(255, 255, 255, 0.2);
    }

    .event-button * {
        font-size: 1rem;
        line-height: 1.5;
    }
    .col-color,
    .event-button svg {
        height: 1rem !important;
        width: 1rem !important;
    }
    
    /* Today */
    .css-107fxrr > span,
    .css-8ts4xs,
    .css-6k0qnq {
        color: var(--theme-color-systemWhite);
    }
    
    /* Birthday better view */
    .event-button:has(.birthday) {
        background-color: transparent;
    }
    .birthday > div {
        color: var(--theme-color-systemRed);
        fill: var(--theme-color-systemRed);
    }
    
    /* Month view */
    /* Full events */
    .css-6310j7 {
        height: auto;
    }    
    .css-1opsrsm {
        grid-auto-rows: auto;
    }
    .css-6pogpz {
        white-space: wrap;
    }
    
    /* Passed days */
    .css-swsj24 {
        color: var(--theme-color-labelTertiary)
    }
    
    /* Set month and year on right */
    if monthyearright {
        .css-10udamb {
            order: 3;
        }
        .css-xcsuj9 {
            margin-inline-start: auto;
        }
        .css-t7kvo9 {
            order: 2;
        }
        .css-iwyx1e {
            flex-direction: row-reverse;
            justify-content: flex-start;
            order: 1;
        }
    }
}