// ==UserScript== // @name GitHub Plus // @name:ru GitHub Plus // @name:zh-CN GitHub Plus // @name:es GitHub Plus // @name:pt-BR GitHub Plus // @name:de GitHub Plus // @name:fr GitHub Plus // @name:ja GitHub Plus // @name:ko GitHub Plus // @name:pl GitHub Plus // @namespace https://github.com/NemoKing1210/github-plus // @version 0.3.2 // @author NemoKing1210 // @description Improves GitHub functionality // @description:ru Улучшает функционал GitHub // @description:zh-CN 改善 GitHub 的功能 // @description:es Mejora la funcionalidad de GitHub // @description:pt-BR Melhora a funcionalidade do GitHub // @description:de Verbessert die Funktionalität von GitHub // @description:fr Améliore les fonctionnalités de GitHub // @description:ja GitHub の機能を改善 // @description:ko GitHub 기능 개선 // @description:pl Poprawia funkcjonalność GitHub // @license MIT // @icon https://github.com/favicon.ico // @homepage https://github.com/NemoKing1210/github-plus // @homepageURL https://github.com/NemoKing1210/github-plus // @source https://github.com/NemoKing1210/github-plus.git // @supportURL https://github.com/NemoKing1210/github-plus/issues // @downloadURL https://raw.githubusercontent.com/NemoKing1210/github-plus/main/github-plus.user.js // @updateURL https://raw.githubusercontent.com/NemoKing1210/github-plus/main/github-plus.user.js // @match https://github.com/* // @match https://gist.github.com/* // @tag github // @tag gallery // @grant GM_addStyle // @grant GM_getValue // @grant GM_info // @grant GM_registerMenuCommand // @grant GM_setValue // @run-at document-idle // @noframes // ==/UserScript== (e=>{if(typeof GM_addStyle=="function"){GM_addStyle(e);return}const t=document.createElement("style");t.textContent=e,document.head.append(t)})(' :root{--gp-font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--gp-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--gp-radius: 6px;--gp-radius-lg: 12px;--gp-accent: var(--fgColor-accent, #0969da);--gp-accent-soft: var(--bgColor-accent-muted, #ddf4ff);--gp-bg-1: var(--bgColor-default, #ffffff);--gp-bg-2: var(--bgColor-muted, #f6f8fa);--gp-text: var(--fgColor-default, #1f2328);--gp-text-muted: var(--fgColor-muted, #59636e);--gp-success: var(--fgColor-success, #1a7f37);--gp-danger: var(--fgColor-danger, #d1242f);--gp-attention: var(--fgColor-attention, #9a6700);--gp-border: var(--borderColor-default, #d1d9e0);--gp-line: var(--borderColor-muted, #d1d9e0b3);--gp-highlight: var(--bgColor-neutral-muted, rgba(129, 139, 152, .12));--gp-shadow: var(--shadow-large, 0 8px 24px rgba(140, 149, 159, .2));--gp-scrim: var(--overlay-backdrop-bgColor, rgba(31, 35, 40, .5));--gp-focus: var(--focus-outlineColor, #0969da)}.gp-header-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--gp-border);border-radius:var(--gp-radius);background:var(--gp-bg-2);color:var(--gp-text);cursor:pointer;position:relative}.gp-header-btn:hover{background:var(--gp-highlight);border-color:var(--gp-text-muted);color:var(--gp-text)}.gp-header-btn:focus-visible{outline:2px solid var(--gp-focus);outline-offset:1px}.gp-header-btn svg{display:block;width:16px;height:16px}.gp-header-btn--custom:after{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:var(--gp-accent)}.gp-user-menu-item{display:block}.gp-user-menu-item__btn{display:flex;align-items:center;gap:8px;width:100%;min-height:32px;padding:6px 8px;border:0;border-radius:var(--gp-radius);background:transparent;color:var(--gp-text);font-family:var(--gp-font);font-size:14px;line-height:1.4;text-align:left;cursor:pointer}.gp-user-menu-item__btn:hover{background:var(--gp-highlight)}.gp-user-menu-item__btn:focus-visible{outline:2px solid var(--gp-focus);outline-offset:-2px}.gp-user-menu-item__icon{display:inline-flex;flex:0 0 auto;color:var(--gp-text-muted)}.gp-user-menu-item__icon svg{display:block;width:16px;height:16px}.gp-user-menu-item__label{flex:1 1 auto;min-width:0}.gp-user-menu-item__dot{display:none;flex:0 0 auto;width:6px;height:6px;border-radius:50%;background:var(--gp-accent)}.gp-user-menu-item--custom .gp-user-menu-item__dot{display:block}.gp-panel-overlay{position:fixed;inset:0;z-index:1000000;display:flex;align-items:center;justify-content:center;padding:24px 16px;box-sizing:border-box;background:var(--gp-scrim);backdrop-filter:blur(8px) saturate(120%);-webkit-backdrop-filter:blur(8px) saturate(120%);font-family:var(--gp-font);color:var(--gp-text);animation:gp-overlay-in .16s ease-out}.gp-panel-overlay[hidden]{display:none}.gp-panel-overlay.is-closing{pointer-events:none;animation:gp-overlay-out .14s ease-in forwards}.gp-panel [hidden]{display:none}html.gp-modal-open,html.gp-modal-open body{overflow:hidden;overscroll-behavior:none}html.gp-modal-open body{position:fixed;left:0;right:0;width:100%}.gp-panel{position:relative;display:flex;flex-direction:column;width:min(860px,100%);height:min(86vh,680px);overflow:hidden;background:var(--gp-bg-1);border:1px solid var(--gp-border);border-radius:var(--gp-radius-lg);box-shadow:var(--gp-shadow);color:var(--gp-text);font:14px/1.5 var(--gp-font);outline:none;animation:gp-panel-in .2s cubic-bezier(.2,.8,.2,1)}.gp-panel-overlay.is-closing .gp-panel{animation:gp-panel-out .14s ease-in forwards}.gp-panel__header{display:flex;align-items:center;gap:12px;flex-shrink:0;padding:14px 16px;border-bottom:1px solid var(--gp-border);background:var(--gp-bg-2)}.gp-panel__brand{flex:1 1 auto;min-width:0}.gp-panel__title-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.gp-panel__title{margin:0;color:var(--gp-text);font-size:16px;font-weight:600}.gp-panel__version,.gp-badge{padding:1px 7px;border:1px solid var(--gp-line);border-radius:999px;background:var(--gp-bg-1);color:var(--gp-text-muted);font:500 11px/1.6 var(--gp-mono)}.gp-panel__subtitle{margin:2px 0 0;color:var(--gp-text-muted);font-size:12px}.gp-panel__close{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:var(--gp-radius);background:transparent;color:var(--gp-text-muted);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.gp-panel__close svg{display:block;width:16px;height:16px}.gp-panel__close:hover{background:var(--gp-highlight);border-color:var(--gp-border);color:var(--gp-text)}.gp-panel__close:focus-visible{outline:2px solid var(--gp-focus);outline-offset:1px}.gp-panel__main{display:flex;flex:1 1 auto;min-height:0}.gp-panel__body{flex:1 1 auto;min-width:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px 24px}.gp-panel__footer{display:flex;align-items:center;gap:8px;flex-shrink:0;padding:12px 16px;border-top:1px solid var(--gp-border);background:var(--gp-bg-2)}.gp-panel__footer-note{display:flex;align-items:center;margin:0 auto 0 0;color:var(--gp-text-muted);font-size:12px}.gp-panel__dirty-dot{flex:0 0 auto;width:0;height:8px;margin-right:0;border-radius:50%;background:var(--gp-accent);transform:scale(0);transition:width .18s ease,margin .18s ease,transform .18s ease}.gp-panel-overlay.is-dirty .gp-panel__dirty-dot{width:8px;margin-right:8px;transform:scale(1)}.gp-panel-overlay.is-dirty .gp-panel__footer-note{color:var(--gp-text)}.gp-panel__nav{display:flex;flex:0 0 208px;flex-direction:column;gap:2px;overflow-y:auto;padding:12px 8px 12px 16px;border-right:1px solid var(--gp-border);background:var(--gp-bg-2)}.gp-nav-item{position:relative;display:flex;align-items:center;gap:8px;width:100%;min-height:32px;padding:6px 10px;border:0;border-radius:var(--gp-radius);background:transparent;color:var(--gp-text);font:14px/1.4 var(--gp-font);text-align:left;cursor:pointer}.gp-nav-item:before{content:"";position:absolute;top:8px;bottom:8px;left:-8px;width:3px;border-radius:2px;background:var(--gp-accent);transform:scaleY(0);transition:transform .18s cubic-bezier(.2,.8,.2,1)}.gp-nav-item:focus-visible{outline:2px solid var(--gp-focus);outline-offset:-2px}.gp-nav-item.is-active{font-weight:600}.gp-nav-item.is-active:before{transform:scaleY(1)}.gp-nav-item__icon{display:inline-flex;flex:0 0 auto;color:var(--gp-text-muted);transition:color .12s ease}.gp-nav-item.is-active .gp-nav-item__icon{color:var(--gp-accent)}.gp-nav-item__icon svg{display:block;width:16px;height:16px}.gp-nav-item__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gp-page__head{margin:0 0 16px;padding:0 0 12px;border-bottom:1px solid var(--gp-line)}.gp-page__title{margin:0;color:var(--gp-text);font-size:20px;font-weight:600;line-height:1.3}.gp-page__desc{margin:4px 0 0;color:var(--gp-text-muted);font-size:13px}.gp-page__head,.gp-page>*,.gp-about>*{animation:gp-rise .24s ease-out both}.gp-page>:nth-child(2),.gp-about>:nth-child(2){animation-delay:40ms}.gp-page>:nth-child(3),.gp-about>:nth-child(3){animation-delay:80ms}.gp-page>:nth-child(n+4),.gp-about>:nth-child(n+4){animation-delay:.12s}.gp-card{margin:0 0 14px;border:1px solid var(--gp-border);border-radius:var(--gp-radius);background:var(--gp-bg-1)}.gp-card:last-child{margin-bottom:0}.gp-card__head{padding:12px 14px;border-bottom:1px solid var(--gp-line)}.gp-card__title{color:var(--gp-text);font-size:13px;font-weight:600}.gp-card__hint{margin:3px 0 0;color:var(--gp-text-muted);font-size:12px}.gp-card__body{display:flex;flex-direction:column}.gp-row{display:flex;align-items:center;gap:14px;padding:12px 14px;border-bottom:1px solid var(--gp-line)}.gp-row:last-child{border-bottom:0}.gp-row__text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.gp-row__label{color:var(--gp-text);font-size:13px}.gp-row__hint{color:var(--gp-text-muted);font-size:12px}.gp-row__control{flex:0 0 auto;display:flex;align-items:center;gap:8px}.gp-hint{margin:0;color:var(--gp-text-muted);font-size:12px;line-height:1.5}.gp-field{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-bottom:1px solid var(--gp-line)}.gp-field:last-child{border-bottom:0}.gp-field__label{color:var(--gp-text);font-size:13px;font-weight:600}.gp-switch{position:relative;display:inline-flex;flex:0 0 auto;align-items:center;width:40px;height:24px;cursor:pointer}.gp-switch__input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.gp-switch__track{position:absolute;inset:0;border-radius:999px;background:var(--gp-bg-2);border:1px solid var(--gp-border);transition:background .15s ease,border-color .15s ease;pointer-events:none}.gp-switch__track:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--gp-text-muted);transition:transform .2s cubic-bezier(.2,.8,.2,1),width .12s ease,background .15s ease}.gp-switch:active .gp-switch__track:after{width:20px}.gp-switch:active .gp-switch__input:checked+.gp-switch__track:after{transform:translate(12px)}.gp-switch__input:checked+.gp-switch__track{background:var(--gp-accent);border-color:var(--gp-accent)}.gp-switch__input:checked+.gp-switch__track:after{background:var(--gp-bg-1);transform:translate(16px)}.gp-switch__input:focus-visible+.gp-switch__track{outline:2px solid var(--gp-focus);outline-offset:2px}.gp-select,.gp-input{appearance:none;min-height:32px;padding:4px 10px;border:1px solid var(--gp-border);border-radius:var(--gp-radius);background:var(--gp-bg-1);color:var(--gp-text);font:14px/1.4 var(--gp-font);transition:border-color .12s ease,background-color .12s ease}.gp-select:hover,.gp-input:hover,.gp-textarea:hover{border-color:var(--gp-text-muted)}.gp-select{padding-right:28px;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;cursor:pointer}.gp-input{box-sizing:border-box;width:88px}.gp-input--wide{width:100%;font-family:var(--gp-mono);font-size:12px}.gp-select:focus-visible,.gp-input:focus-visible,.gp-textarea:focus-visible{outline:2px solid var(--gp-focus);outline-offset:-1px}.gp-textarea{width:100%;min-height:128px;padding:8px 10px;border:1px solid var(--gp-border);border-radius:var(--gp-radius);background:var(--gp-bg-1);color:var(--gp-text);font:12px/1.5 var(--gp-mono);box-sizing:border-box;resize:vertical;transition:border-color .12s ease}.gp-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:5px 14px;border:1px solid var(--gp-border);border-radius:var(--gp-radius);background:var(--gp-bg-2);color:var(--gp-text);font:500 14px/1.4 var(--gp-font);cursor:pointer;transition:background .12s ease,border-color .12s ease,filter .12s ease}.gp-button:hover{background:var(--gp-highlight);border-color:var(--gp-text-muted)}.gp-button:focus-visible{outline:2px solid var(--gp-focus);outline-offset:1px}.gp-button--primary{background:var(--gp-accent);border-color:var(--gp-accent);color:#fff}.gp-button--primary:hover{filter:brightness(1.06);border-color:var(--gp-accent)}.gp-button--danger{background:var(--gp-danger);border-color:var(--gp-danger);color:#fff}.gp-button--ghost{background:transparent}.gp-button:not([disabled]):active{filter:brightness(.94)}.gp-button--block{width:100%}.gp-button[disabled]{opacity:.55;cursor:default}.gp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;padding:12px 14px}.gp-grid__cell{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--gp-line);border-radius:var(--gp-radius);background:var(--gp-bg-2);cursor:pointer;transition:background .12s ease,border-color .12s ease}.gp-grid__cell:hover{border-color:var(--gp-border)}.gp-grid__cell:has(.gp-switch__input:checked){border-color:var(--gp-accent);background:var(--gp-accent-soft)}.gp-grid__text{display:flex;flex-direction:column;gap:2px;min-width:0}.gp-confirm-overlay{position:fixed;inset:0;z-index:1000001;display:flex;align-items:center;justify-content:center;padding:24px 16px;box-sizing:border-box;background:var(--gp-scrim);font-family:var(--gp-font);animation:gp-overlay-in .14s ease-out}.gp-confirm{display:flex;flex-direction:column;gap:10px;width:min(400px,100%);padding:18px;border:1px solid var(--gp-border);border-radius:var(--gp-radius-lg);background:var(--gp-bg-1);box-shadow:var(--gp-shadow);color:var(--gp-text);font:14px/1.5 var(--gp-font);animation:gp-panel-in .18s cubic-bezier(.2,.8,.2,1)}.gp-confirm__title{color:var(--gp-text);font-size:15px;font-weight:600}.gp-confirm__message{color:var(--gp-text-muted);font-size:13px}.gp-confirm__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.gp-about{display:flex;flex-direction:column;gap:14px}.gp-about__hero{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--gp-border);border-radius:var(--gp-radius);background:var(--gp-bg-2)}.gp-about__logo{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--gp-radius);background:var(--gp-accent-soft);color:var(--gp-accent)}.gp-about__logo svg{display:block;width:24px;height:24px}.gp-about__name{display:flex;align-items:center;gap:8px;color:var(--gp-text);font-size:16px;font-weight:600}.gp-about__tagline{margin:4px 0 0;color:var(--gp-text-muted);font-size:12px}.gp-about__row{display:flex;align-items:baseline;gap:12px;padding:10px 14px;border-bottom:1px solid var(--gp-line);font-size:13px}.gp-about__row:last-child{border-bottom:0}.gp-about__label{flex:0 0 120px;color:var(--gp-text-muted)}.gp-about__value{color:var(--gp-text)}.gp-about__value a{color:var(--gp-accent);text-decoration:none}.gp-about__value a:hover{text-decoration:underline}@keyframes gp-overlay-in{0%{opacity:0}}@keyframes gp-overlay-out{to{opacity:0}}@keyframes gp-panel-in{0%{opacity:0;transform:translateY(10px) scale(.98)}}@keyframes gp-panel-out{to{opacity:0;transform:translateY(6px) scale(.99)}}@keyframes gp-rise{0%{opacity:0;transform:translateY(6px)}}.gp-toasts{position:fixed;right:16px;bottom:16px;z-index:1000002;display:flex;flex-direction:column;gap:8px;width:min(340px,calc(100vw - 32px));pointer-events:none;font-family:var(--gp-font)}.gp-toasts--top-right{top:16px;bottom:auto}.gp-toasts--top-left{inset:16px auto auto 16px}.gp-toasts--bottom-left{left:16px;right:auto}.gp-toasts--top-left .gp-toast,.gp-toasts--bottom-left .gp-toast{animation-name:gp-toast-in-left}.gp-toasts--top-left .gp-toast--leaving,.gp-toasts--bottom-left .gp-toast--leaving{transform:translate(-24px)}@keyframes gp-toast-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}@keyframes gp-toast-in-left{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:none}}.gp-toast{position:relative;display:flex;gap:10px;align-items:flex-start;padding:12px 12px 14px;overflow:hidden;border:1px solid var(--gp-border);border-radius:var(--gp-radius);background:var(--gp-bg-1);box-shadow:var(--gp-shadow);color:var(--gp-text);font:13px/1.45 var(--gp-font);pointer-events:auto;animation:gp-toast-in .2s ease-out}.gp-toast--leaving{opacity:0;transform:translate(24px);transition:opacity .18s ease,transform .18s ease}.gp-toast--clickable{cursor:pointer}.gp-toast__icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:18px;height:18px;margin-top:1px;color:var(--gp-accent)}.gp-toast__icon svg{width:18px;height:18px}.gp-toast__icon--success{color:var(--gp-success)}.gp-toast__icon--warning{color:var(--gp-attention)}.gp-toast__icon--error{color:var(--gp-danger)}.gp-toast__body{min-width:0;flex:1 1 auto}.gp-toast__title{color:var(--gp-text);font-size:13px;font-weight:600}.gp-toast__message{margin-top:2px;color:var(--gp-text-muted);font-size:12px}.gp-toast__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.gp-toast__action{appearance:none;min-height:26px;padding:0 10px;border:1px solid var(--gp-border);border-radius:var(--gp-radius);background:var(--gp-bg-2);color:var(--gp-text);font:500 12px/24px var(--gp-font);cursor:pointer}.gp-toast__action:hover{background:var(--gp-highlight)}.gp-toast__action--ghost{background:transparent;color:var(--gp-text-muted)}.gp-toast__action--danger{background:var(--gp-danger);border-color:var(--gp-danger);color:#fff}.gp-toast__close{flex:0 0 auto;padding:0 0 0 4px;border:0;background:transparent;color:var(--gp-text-muted);font-size:16px;line-height:1;cursor:pointer}.gp-toast__close:hover{color:var(--gp-text)}.gp-toast__progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gp-line)}.gp-toast__progress span{display:block;width:100%;height:100%;background:var(--gp-accent);transform-origin:left center;animation-name:gp-toast-progress;animation-timing-function:linear;animation-fill-mode:forwards}.gp-toast--success .gp-toast__progress span{background:var(--gp-success)}.gp-toast--warning .gp-toast__progress span{background:var(--gp-attention)}.gp-toast--error .gp-toast__progress span{background:var(--gp-danger)}.gp-toast:hover .gp-toast__progress span{animation-play-state:paused}@keyframes gp-toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.gp-viewer-overlay{position:fixed;inset:0;z-index:1000002;display:flex;font-family:var(--gp-font);color:var(--gp-text);background:var(--gp-bg-1)}.gp-viewer-overlay[hidden]{display:none}.gp-viewer{display:flex;flex:1 1 auto;flex-direction:column;min-width:0;outline:none}.gp-viewer__bar{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--gp-bg-2);border-bottom:1px solid var(--gp-border)}.gp-viewer__meta{display:flex;align-items:baseline;gap:10px;min-width:0}.gp-viewer__title{overflow:hidden;color:var(--gp-text);font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.gp-viewer__counter{color:var(--gp-text-muted);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.gp-viewer__tools{display:flex;align-items:center;gap:4px;margin-left:auto}.gp-viewer__tool{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--gp-border);border-radius:var(--gp-radius);background:var(--gp-bg-1);color:var(--gp-text);font:600 14px/1 var(--gp-font);text-decoration:none;cursor:pointer}.gp-viewer__tool:hover{background:var(--gp-highlight);border-color:var(--gp-text-muted)}.gp-viewer__tool:focus-visible{outline:2px solid var(--gp-focus);outline-offset:1px}.gp-viewer__tool--close:hover{background:var(--gp-danger);border-color:var(--gp-danger);color:#fff}.gp-viewer__sep{width:1px;height:18px;background:var(--gp-line)}.gp-viewer__stage{position:relative;display:flex;flex:1 1 auto;align-items:center;justify-content:center;min-height:0;overflow:hidden;background:var(--gp-bg-1);cursor:grab;touch-action:none}.gp-viewer.is-dragging .gp-viewer__stage{cursor:grabbing}.gp-viewer__image{max-width:100%;max-height:100%;opacity:1;transform-origin:center center;transition:opacity .15s ease;user-select:none;-webkit-user-drag:none}.gp-viewer__image.is-loading{opacity:.25}.gp-viewer__nav{position:absolute;top:50%;z-index:2;display:flex;align-items:center;justify-content:center;width:44px;height:44px;transform:translateY(-50%);border:1px solid var(--gp-border);border-radius:50%;background:var(--gp-bg-1);color:var(--gp-text);font-size:22px;line-height:1;cursor:pointer}.gp-viewer__nav[hidden]{display:none}.gp-viewer__nav--prev{left:16px}.gp-viewer__nav--next{right:16px}.gp-viewer__nav:hover:not([disabled]){background:var(--gp-highlight);border-color:var(--gp-text-muted)}.gp-viewer__nav:focus-visible{outline:2px solid var(--gp-focus);outline-offset:1px}.gp-viewer__nav[disabled]{opacity:.5;cursor:default}.gp-viewer__spinner{position:absolute;width:32px;height:32px;border:3px solid var(--gp-line);border-top-color:var(--gp-accent);border-radius:50%;animation:gp-viewer-spin .8s linear infinite}.gp-viewer__spinner[hidden]{display:none}@keyframes gp-viewer-spin{to{transform:rotate(360deg)}}.gp-viewer__status{position:absolute;margin:0;padding:10px 14px;border:1px solid var(--gp-danger);border-radius:var(--gp-radius);background:var(--gp-bg-1);color:var(--gp-text);box-shadow:var(--gp-shadow);font-size:13px}.gp-viewer__status[hidden]{display:none}.gp-viewer__hint{margin:0;padding:8px 14px;border-top:1px solid var(--gp-border);background:var(--gp-bg-2);color:var(--gp-text-muted);font-size:12px;text-align:center}.gp-viewer__thumbs{display:flex;align-items:center;justify-content:safe center;gap:6px;padding:10px 14px;overflow-x:auto;overflow-y:hidden;background:var(--gp-bg-2);border-top:1px solid var(--gp-border);scrollbar-width:thin}.gp-viewer__thumbs[hidden]{display:none}.gp-viewer__thumb{position:relative;flex:0 0 auto;width:68px;height:48px;padding:0;overflow:hidden;border:1px solid var(--gp-line);border-radius:var(--gp-radius);background:var(--gp-bg-1);cursor:pointer}.gp-viewer__thumb:hover{border-color:var(--gp-text-muted)}.gp-viewer__thumb.is-active{border-color:var(--gp-accent);box-shadow:0 0 0 1px var(--gp-accent)}.gp-viewer__thumb-img{display:block;width:100%;height:100%;object-fit:cover}@media(prefers-reduced-motion:reduce){.gp-panel-overlay,.gp-panel,.gp-confirm-overlay,.gp-confirm,.gp-page__head,.gp-page>*,.gp-about>*,.gp-nav-item,.gp-nav-item:before,.gp-panel__dirty-dot,.gp-toast,.gp-toast--leaving,.gp-switch__track,.gp-switch__track:after,.gp-viewer__image{animation:none;transition:none}}@media(max-width:640px){.gp-panel-overlay{padding:0;align-items:stretch}.gp-panel{width:100%;height:100%;border-radius:0;border-left:0;border-right:0}.gp-panel__subtitle{display:none}.gp-panel__main{flex-direction:column}.gp-panel__nav{flex:0 0 auto;flex-direction:row;gap:4px;overflow-x:auto;overflow-y:hidden;padding:8px 12px;border-right:0;border-bottom:1px solid var(--gp-border)}.gp-nav-item{width:auto;flex:0 0 auto;white-space:nowrap}.gp-nav-item:before{inset:auto 10px -8px;width:auto;height:2px;transform:scaleX(0)}.gp-nav-item.is-active:before{transform:scaleX(1)}.gp-panel__body{padding:16px 14px 20px}.gp-panel__footer{flex-wrap:wrap}.gp-panel__footer-note{flex:1 1 100%}} '); (function () { 'use strict'; const e=["en","ru","de","es","fr","pt-BR","zh-CN","ja","ko","pl"],t={en:"en","en-us":"en","en-gb":"en",ru:"ru","ru-ru":"ru",de:"de","de-de":"de",es:"es","es-es":"es","es-419":"es",fr:"fr","fr-fr":"fr","pt-br":"pt-BR",pt:"pt-BR","pt-pt":"pt-BR","zh-cn":"zh-CN","zh-sg":"zh-CN",zh:"zh-CN",ja:"ja","ja-jp":"ja",ko:"ko","ko-kr":"ko",pl:"pl","pl-pl":"pl"},a={en:"English",ru:"Русский",de:"Deutsch",es:"Español",fr:"Français","pt-BR":"Português (Brasil)","zh-CN":"简体中文",ja:"日本語",ko:"한국어",pl:"Polski"},o={en:{"menu.settings":"GitHub Plus settings","settings.open":"GitHub Plus settings","panel.subtitle":"Markdown image gallery · interface · backup","panel.unsaved":"Unsaved changes","common.auto":"Auto","common.close":"Close","common.cancel":"Cancel","common.save":"Save","common.reset":"Reset to defaults","tab.general":"General","tab.gallery":"Gallery","tab.backup":"Backup","tab.about":"About","tab.general.desc":"Interface language and notifications.","tab.gallery.desc":"Browse markdown images in the built-in viewer.","tab.backup.desc":"Export settings to a file and import them back.","tab.about.desc":"Version, author and source code.","reset.confirm":"Reset all settings to their defaults?","general.language":"Interface language","general.languageDesc":"Language of the GitHub Plus settings panel.","general.saveHint":"Changes apply when you press Save below.","general.toasts":"Notifications","toasts.enabled":"Toast notifications","toasts.enabledDesc":"Show success and error popups for settings and imports.","toasts.position":"Position on screen","toasts.duration":"Auto-hide after (seconds)","toasts.durationDesc":"0 keeps notifications until dismissed.","toastPos.bottom-right":"Bottom right","toastPos.bottom-left":"Bottom left","toastPos.top-right":"Top right","toastPos.top-left":"Top left","toast.saved":"Settings saved","toast.savedDesc":"Your preferences are stored for this browser.","toast.imported":"Settings imported","toast.importedDesc":"Imported preferences were applied and saved.","toast.importFailed":"Import failed","toast.importFailedDesc":"That is not a readable GitHub Plus backup.","toast.copied":"Copied","toast.copiedDesc":"Settings JSON is on your clipboard.","gallery.behavior":"Behavior","gallery.enabled":"Image gallery","gallery.enabledDesc":"Open markdown images in the built-in viewer instead of the linked file.","gallery.sources":"Places","gallery.sourcesDesc":"Markdown surfaces the gallery watches.","gallery.viewer":"Viewer","gallery.skipBadges":"Skip badges and icons","gallery.skipBadgesDesc":"Ignore small images and images from badge services.","gallery.upgradeFullSize":"Load the original image","gallery.upgradeFullSizeDesc":"Swap to the linked full-size file when it is available.","gallery.thumbnails":"Thumbnail strip","gallery.thumbnailsDesc":"Show a filmstrip of every image of the set.","gallery.loop":"Wrap around","gallery.loopDesc":"Pressing Next on the last image returns to the first.","gallery.maxZoom":"Maximum zoom","gallery.maxZoomDesc":"Ceiling for wheel, pinch and button zoom.","source.markdown":"Markdown images","source.markdownDesc":"README files, blob views, wikis, issues, pull requests and comments.","backup.export":"Export","backup.exportDesc":"Save the current settings as a JSON file or copy them.","backup.exportFile":"Download file","backup.exportClipboard":"Copy to clipboard","backup.import":"Import","backup.importDesc":"Paste a GitHub Plus settings JSON to restore it.","backup.importPlaceholder":'{ "language": "auto", … }',"backup.importButton":"Import settings","backup.invalid":"Paste a valid settings JSON first.","about.blurb":"Improves GitHub: browse markdown images in a fullscreen gallery, more to come.","about.version":"Version","about.author":"Author","about.repo":"Source code","about.license":"MIT License","about.affiliation":"An independent project, not affiliated with GitHub, Inc.","viewer.title":"Image viewer","viewer.close":"Close","viewer.prev":"Previous image","viewer.next":"Next image","viewer.zoomIn":"Zoom in","viewer.zoomOut":"Zoom out","viewer.reset":"Reset zoom and rotation","viewer.rotate":"Rotate","viewer.counter":"{current} / {total}","viewer.failed":"Could not load the image","viewer.open":"Open image in a new tab","viewer.thumbs":"Images","viewer.hint":"Wheel or +/− to zoom · drag to move · ← → to browse · Esc to close"},ru:{"menu.settings":"Настройки GitHub Plus","settings.open":"Настройки GitHub Plus","panel.subtitle":"Галерея изображений Markdown · интерфейс · резервная копия","panel.unsaved":"Есть несохранённые изменения","common.auto":"Авто","common.close":"Закрыть","common.cancel":"Отмена","common.save":"Сохранить","common.reset":"Сбросить по умолчанию","tab.general":"Общие","tab.gallery":"Галерея","tab.backup":"Резервная копия","tab.about":"О скрипте","tab.general.desc":"Язык интерфейса и уведомления.","tab.gallery.desc":"Просмотр изображений из Markdown во встроенном просмотрщике.","tab.backup.desc":"Экспорт настроек в файл и импорт обратно.","tab.about.desc":"Версия, автор и исходный код.","reset.confirm":"Сбросить все настройки по умолчанию?","general.language":"Язык интерфейса","general.languageDesc":"Язык панели настроек GitHub Plus.","general.saveHint":"Изменения применяются после нажатия «Сохранить».","general.toasts":"Уведомления","toasts.enabled":"Всплывающие уведомления","toasts.enabledDesc":"Показывать сообщения об успехе и ошибках настроек и импорта.","toasts.position":"Положение на экране","toasts.duration":"Автоскрытие через (секунды)","toasts.durationDesc":"0 — уведомление висит до закрытия.","toastPos.bottom-right":"Снизу справа","toastPos.bottom-left":"Снизу слева","toastPos.top-right":"Сверху справа","toastPos.top-left":"Сверху слева","toast.saved":"Настройки сохранены","toast.savedDesc":"Ваши предпочтения сохранены в этом браузере.","toast.imported":"Настройки импортированы","toast.importedDesc":"Импортированные настройки применены и сохранены.","toast.importFailed":"Ошибка импорта","toast.importFailedDesc":"Это не читаемая резервная копия GitHub Plus.","toast.copied":"Скопировано","toast.copiedDesc":"JSON настроек в буфере обмена.","gallery.behavior":"Поведение","gallery.enabled":"Галерея изображений","gallery.enabledDesc":"Открывать изображения из Markdown во встроенном просмотрщике, а не в файле по ссылке.","gallery.sources":"Места","gallery.sourcesDesc":"Разделы Markdown, которые отслеживает галерея.","gallery.viewer":"Просмотрщик","gallery.skipBadges":"Пропускать бейджи и иконки","gallery.skipBadgesDesc":"Игнорировать мелкие изображения и картинки сервисов бейджей.","gallery.upgradeFullSize":"Загружать оригинал","gallery.upgradeFullSizeDesc":"Подменять изображение на полноразмерный файл по ссылке, когда он доступен.","gallery.thumbnails":"Полоса миниатюр","gallery.thumbnailsDesc":"Показывать ленту всех изображений набора.","gallery.loop":"Продолжать по кругу","gallery.loopDesc":"Нажатие «Далее» на последнем изображении возвращает к первому.","gallery.maxZoom":"Максимальное увеличение","gallery.maxZoomDesc":"Предел увеличения колесом, жестом и кнопками.","source.markdown":"Изображения Markdown","source.markdownDesc":"README, просмотр файлов, вики, задачи, пул-реквесты и комментарии.","backup.export":"Экспорт","backup.exportDesc":"Сохранить текущие настройки в JSON-файл или скопировать их.","backup.exportFile":"Скачать файл","backup.exportClipboard":"Скопировать","backup.import":"Импорт","backup.importDesc":"Вставьте JSON настроек GitHub Plus, чтобы восстановить их.","backup.importPlaceholder":'{ "language": "auto", … }',"backup.importButton":"Импортировать","backup.invalid":"Сначала вставьте корректный JSON настроек.","about.blurb":"Улучшает GitHub: просмотр изображений из Markdown в полноэкранной галерее, продолжение следует.","about.version":"Версия","about.author":"Автор","about.repo":"Исходный код","about.license":"Лицензия MIT","about.affiliation":"Независимый проект, не связан с GitHub, Inc.","viewer.title":"Просмотр изображений","viewer.close":"Закрыть","viewer.prev":"Предыдущее изображение","viewer.next":"Следующее изображение","viewer.zoomIn":"Увеличить","viewer.zoomOut":"Уменьшить","viewer.reset":"Сбросить масштаб и поворот","viewer.rotate":"Повернуть","viewer.counter":"{current} / {total}","viewer.failed":"Не удалось загрузить изображение","viewer.open":"Открыть изображение в новой вкладке","viewer.thumbs":"Изображения","viewer.hint":"Колесо или +/− — масштаб · перетаскивание — сдвиг · ← → — листать · Esc — закрыть"},de:{"menu.settings":"GitHub Plus-Einstellungen","settings.open":"GitHub Plus-Einstellungen","panel.subtitle":"Markdown-Bildergalerie · Oberfläche · Backup","panel.unsaved":"Nicht gespeicherte Änderungen","common.auto":"Automatisch","common.close":"Schließen","common.cancel":"Abbrechen","common.save":"Speichern","common.reset":"Auf Standard zurücksetzen","tab.general":"Allgemein","tab.gallery":"Galerie","tab.backup":"Backup","tab.about":"Über","tab.general.desc":"Sprache der Oberfläche und Benachrichtigungen.","tab.gallery.desc":"Markdown-Bilder im integrierten Viewer durchsehen.","tab.backup.desc":"Einstellungen in eine Datei exportieren und wieder importieren.","tab.about.desc":"Version, Autor und Quellcode.","reset.confirm":"Alle Einstellungen auf die Standardwerte zurücksetzen?","general.language":"Sprache der Oberfläche","general.languageDesc":"Sprache der GitHub Plus-Einstellungen.","general.saveHint":"Änderungen werden beim Klick auf Speichern unten übernommen.","general.toasts":"Benachrichtigungen","toasts.enabled":"Benachrichtigungen einblenden","toasts.enabledDesc":"Popups für Erfolg und Fehler bei Einstellungen und Importen anzeigen.","toasts.position":"Position auf dem Bildschirm","toasts.duration":"Automatisch ausblenden nach (Sekunden)","toasts.durationDesc":"Bei 0 bleiben Benachrichtigungen bis zum Schließen sichtbar.","toastPos.bottom-right":"Unten rechts","toastPos.bottom-left":"Unten links","toastPos.top-right":"Oben rechts","toastPos.top-left":"Oben links","toast.saved":"Einstellungen gespeichert","toast.savedDesc":"Die Einstellungen sind für diesen Browser gespeichert.","toast.imported":"Einstellungen importiert","toast.importedDesc":"Die importierten Einstellungen wurden übernommen und gespeichert.","toast.importFailed":"Import fehlgeschlagen","toast.importFailedDesc":"Das ist kein lesbares GitHub Plus-Backup.","toast.copied":"Kopiert","toast.copiedDesc":"Das Einstellungs-JSON liegt in der Zwischenablage.","gallery.behavior":"Verhalten","gallery.enabled":"Bildergalerie","gallery.enabledDesc":"Markdown-Bilder im integrierten Viewer statt in der verlinkten Datei öffnen.","gallery.sources":"Orte","gallery.sourcesDesc":"Markdown-Bereiche, die die Galerie erfasst.","gallery.viewer":"Viewer","gallery.skipBadges":"Badges und Symbole überspringen","gallery.skipBadgesDesc":"Kleine Bilder und Bilder von Badge-Diensten ignorieren.","gallery.upgradeFullSize":"Originalbild laden","gallery.upgradeFullSizeDesc":"Auf die verlinkte Datei in voller Größe wechseln, sobald sie verfügbar ist.","gallery.thumbnails":"Miniaturleiste","gallery.thumbnailsDesc":"Alle Bilder der Sammlung als Filmstreifen anzeigen.","gallery.loop":"Am Ende weiterlaufen","gallery.loopDesc":"Ein Klick auf Weiter beim letzten Bild führt zurück zum ersten.","gallery.maxZoom":"Maximaler Zoom","gallery.maxZoomDesc":"Obergrenze für Zoom per Mausrad, Geste und Schaltflächen.","source.markdown":"Markdown-Bilder","source.markdownDesc":"README-Dateien, Dateiansichten, Wikis, Issues, Pull Requests und Kommentare.","backup.export":"Export","backup.exportDesc":"Die aktuellen Einstellungen als JSON-Datei speichern oder kopieren.","backup.exportFile":"Datei herunterladen","backup.exportClipboard":"In die Zwischenablage kopieren","backup.import":"Import","backup.importDesc":"Ein GitHub Plus-Einstellungs-JSON einfügen, um es wiederherzustellen.","backup.importPlaceholder":'{ "language": "auto", … }',"backup.importButton":"Einstellungen importieren","backup.invalid":"Zuerst ein gültiges Einstellungs-JSON einfügen.","about.blurb":"Verbessert GitHub: Markdown-Bilder in einer Vollbildgalerie durchsehen, mehr folgt.","about.version":"Version","about.author":"Autor","about.repo":"Quellcode","about.license":"MIT-Lizenz","about.affiliation":"Ein unabhängiges Projekt, nicht mit GitHub, Inc. verbunden.","viewer.title":"Bildbetrachter","viewer.close":"Schließen","viewer.prev":"Vorheriges Bild","viewer.next":"Nächstes Bild","viewer.zoomIn":"Vergrößern","viewer.zoomOut":"Verkleinern","viewer.reset":"Zoom und Drehung zurücksetzen","viewer.rotate":"Drehen","viewer.counter":"{current} / {total}","viewer.failed":"Bild konnte nicht geladen werden","viewer.open":"Bild in neuem Tab öffnen","viewer.thumbs":"Bilder","viewer.hint":"Mausrad oder +/− zum Zoomen · Ziehen zum Verschieben · ← → zum Blättern · Esc zum Schließen"},es:{"menu.settings":"Ajustes de GitHub Plus","settings.open":"Ajustes de GitHub Plus","panel.subtitle":"Galería de imágenes Markdown · interfaz · copia de seguridad","panel.unsaved":"Cambios sin guardar","common.auto":"Automático","common.close":"Cerrar","common.cancel":"Cancelar","common.save":"Guardar","common.reset":"Restablecer valores predeterminados","tab.general":"General","tab.gallery":"Galería","tab.backup":"Copia de seguridad","tab.about":"Acerca de","tab.general.desc":"Idioma de la interfaz y notificaciones.","tab.gallery.desc":"Explorar imágenes Markdown en el visor integrado.","tab.backup.desc":"Exportar los ajustes a un archivo e importarlos de nuevo.","tab.about.desc":"Versión, autor y código fuente.","reset.confirm":"¿Restablecer todos los ajustes a sus valores predeterminados?","general.language":"Idioma de la interfaz","general.languageDesc":"Idioma del panel de ajustes de GitHub Plus.","general.saveHint":"Los cambios se aplican al pulsar Guardar.","general.toasts":"Notificaciones","toasts.enabled":"Notificaciones emergentes","toasts.enabledDesc":"Mostrar avisos de éxito y de error para los ajustes y las importaciones.","toasts.position":"Posición en pantalla","toasts.duration":"Ocultar automáticamente tras (segundos)","toasts.durationDesc":"Con 0, las notificaciones permanecen hasta cerrarlas.","toastPos.bottom-right":"Abajo a la derecha","toastPos.bottom-left":"Abajo a la izquierda","toastPos.top-right":"Arriba a la derecha","toastPos.top-left":"Arriba a la izquierda","toast.saved":"Ajustes guardados","toast.savedDesc":"Las preferencias se guardan para este navegador.","toast.imported":"Ajustes importados","toast.importedDesc":"Las preferencias importadas se han aplicado y guardado.","toast.importFailed":"Error de importación","toast.importFailedDesc":"Esto no es una copia de seguridad de GitHub Plus legible.","toast.copied":"Copiado","toast.copiedDesc":"El JSON de ajustes está en el portapapeles.","gallery.behavior":"Comportamiento","gallery.enabled":"Galería de imágenes","gallery.enabledDesc":"Abrir las imágenes Markdown en el visor integrado en lugar del archivo enlazado.","gallery.sources":"Ubicaciones","gallery.sourcesDesc":"Secciones de Markdown que vigila la galería.","gallery.viewer":"Visor","gallery.skipBadges":"Omitir insignias e iconos","gallery.skipBadgesDesc":"Ignorar las imágenes pequeñas y las de servicios de insignias.","gallery.upgradeFullSize":"Cargar la imagen original","gallery.upgradeFullSizeDesc":"Cambiar al archivo enlazado de tamaño completo cuando esté disponible.","gallery.thumbnails":"Tira de miniaturas","gallery.thumbnailsDesc":"Mostrar una tira con todas las imágenes del conjunto.","gallery.loop":"Rotación continua","gallery.loopDesc":"Al pulsar Siguiente en la última imagen se vuelve a la primera.","gallery.maxZoom":"Zoom máximo","gallery.maxZoomDesc":"Límite del zoom con rueda, gesto o botones.","source.markdown":"Imágenes Markdown","source.markdownDesc":"Archivos README, vistas de archivos, wikis, incidencias, pull requests y comentarios.","backup.export":"Exportar","backup.exportDesc":"Guardar los ajustes actuales como archivo JSON o copiarlos.","backup.exportFile":"Descargar archivo","backup.exportClipboard":"Copiar al portapapeles","backup.import":"Importar","backup.importDesc":"Pegar un JSON de ajustes de GitHub Plus para restaurarlos.","backup.importPlaceholder":'{ "language": "auto", … }',"backup.importButton":"Importar ajustes","backup.invalid":"Primero hay que pegar un JSON de ajustes válido.","about.blurb":"Mejora GitHub: explora imágenes Markdown en una galería a pantalla completa, y habrá más.","about.version":"Versión","about.author":"Autor","about.repo":"Código fuente","about.license":"Licencia MIT","about.affiliation":"Proyecto independiente, sin afiliación con GitHub, Inc.","viewer.title":"Visor de imágenes","viewer.close":"Cerrar","viewer.prev":"Imagen anterior","viewer.next":"Imagen siguiente","viewer.zoomIn":"Acercar","viewer.zoomOut":"Alejar","viewer.reset":"Restablecer zoom y rotación","viewer.rotate":"Rotar","viewer.counter":"{current} / {total}","viewer.failed":"No se pudo cargar la imagen","viewer.open":"Abrir la imagen en una pestaña nueva","viewer.thumbs":"Imágenes","viewer.hint":"Rueda o +/− para el zoom · arrastrar para mover · ← → para navegar · Esc para cerrar"},fr:{"menu.settings":"Paramètres GitHub Plus","settings.open":"Paramètres GitHub Plus","panel.subtitle":"Galerie d’images Markdown · interface · sauvegarde","panel.unsaved":"Modifications non enregistrées","common.auto":"Auto","common.close":"Fermer","common.cancel":"Annuler","common.save":"Enregistrer","common.reset":"Réinitialiser","tab.general":"Général","tab.gallery":"Galerie","tab.backup":"Sauvegarde","tab.about":"À propos","tab.general.desc":"Langue de l’interface et notifications.","tab.gallery.desc":"Parcourir les images Markdown dans la visionneuse intégrée.","tab.backup.desc":"Exporter les paramètres dans un fichier et les réimporter.","tab.about.desc":"Version, auteur et code source.","reset.confirm":"Réinitialiser tous les paramètres ?","general.language":"Langue de l’interface","general.languageDesc":"Langue du panneau de paramètres GitHub Plus.","general.saveHint":"Les modifications s’appliquent après avoir cliqué sur « Enregistrer ».","general.toasts":"Notifications","toasts.enabled":"Notifications éphémères","toasts.enabledDesc":"Afficher les messages de réussite et d’erreur pour les paramètres et les imports.","toasts.position":"Position à l’écran","toasts.duration":"Masquage automatique après (secondes)","toasts.durationDesc":"0 garde la notification affichée jusqu’à sa fermeture.","toastPos.bottom-right":"En bas à droite","toastPos.bottom-left":"En bas à gauche","toastPos.top-right":"En haut à droite","toastPos.top-left":"En haut à gauche","toast.saved":"Paramètres enregistrés","toast.savedDesc":"Les préférences sont conservées pour ce navigateur.","toast.imported":"Paramètres importés","toast.importedDesc":"Les préférences importées ont été appliquées et enregistrées.","toast.importFailed":"Échec de l’import","toast.importFailedDesc":"Ce fichier n’est pas une sauvegarde GitHub Plus lisible.","toast.copied":"Copié","toast.copiedDesc":"Le JSON des paramètres est dans le presse-papiers.","gallery.behavior":"Comportement","gallery.enabled":"Galerie d’images","gallery.enabledDesc":"Ouvrir les images Markdown dans la visionneuse intégrée plutôt que dans le fichier lié.","gallery.sources":"Emplacements","gallery.sourcesDesc":"Sections Markdown surveillées par la galerie.","gallery.viewer":"Visionneuse","gallery.skipBadges":"Ignorer les badges et les icônes","gallery.skipBadgesDesc":"Ignorer les petites images et celles issues des services de badges.","gallery.upgradeFullSize":"Charger l’image d’origine","gallery.upgradeFullSizeDesc":"Remplacer l’image par le fichier en taille réelle lorsqu’il est disponible.","gallery.thumbnails":"Bande de miniatures","gallery.thumbnailsDesc":"Afficher une pellicule de toutes les images de l’ensemble.","gallery.loop":"Boucler","gallery.loopDesc":"Le bouton Suivant sur la dernière image revient à la première.","gallery.maxZoom":"Zoom maximal","gallery.maxZoomDesc":"Plafond du zoom à la molette, au pincement et avec les boutons.","source.markdown":"Images Markdown","source.markdownDesc":"Fichiers README, vues de fichiers, wikis, tickets, pull requests et commentaires.","backup.export":"Export","backup.exportDesc":"Enregistrer les paramètres actuels dans un fichier JSON ou les copier.","backup.exportFile":"Télécharger le fichier","backup.exportClipboard":"Copier","backup.import":"Import","backup.importDesc":"Coller un JSON de paramètres GitHub Plus pour les restaurer.","backup.importPlaceholder":'{ "language": "auto", … }',"backup.importButton":"Importer","backup.invalid":"Coller d’abord un JSON de paramètres valide.","about.blurb":"Améliore GitHub : parcourir les images Markdown dans une galerie plein écran, et bien plus à venir.","about.version":"Version","about.author":"Auteur","about.repo":"Code source","about.license":"Licence MIT","about.affiliation":"Projet indépendant, sans lien avec GitHub, Inc.","viewer.title":"Visionneuse d’images","viewer.close":"Fermer","viewer.prev":"Image précédente","viewer.next":"Image suivante","viewer.zoomIn":"Zoom avant","viewer.zoomOut":"Zoom arrière","viewer.reset":"Réinitialiser le zoom et la rotation","viewer.rotate":"Pivoter","viewer.counter":"{current} / {total}","viewer.failed":"Impossible de charger l’image","viewer.open":"Ouvrir l’image dans un nouvel onglet","viewer.thumbs":"Images","viewer.hint":"Molette ou +/− pour zoomer · glisser pour déplacer · ← → pour naviguer · Échap pour fermer"},"pt-BR":{"menu.settings":"Configurações do GitHub Plus","settings.open":"Configurações do GitHub Plus","panel.subtitle":"Galeria de imagens Markdown · interface · backup","panel.unsaved":"Alterações não salvas","common.auto":"Automático","common.close":"Fechar","common.cancel":"Cancelar","common.save":"Salvar","common.reset":"Restaurar padrões","tab.general":"Geral","tab.gallery":"Galeria","tab.backup":"Backup","tab.about":"Sobre","tab.general.desc":"Idioma da interface e notificações.","tab.gallery.desc":"Navegue pelas imagens Markdown no visualizador integrado.","tab.backup.desc":"Exporte as configurações para um arquivo e importe-as de volta.","tab.about.desc":"Versão, autor e código-fonte.","reset.confirm":"Restaurar todas as configurações para os padrões?","general.language":"Idioma da interface","general.languageDesc":"Idioma do painel de configurações do GitHub Plus.","general.saveHint":"As alterações são aplicadas ao clicar em Salvar abaixo.","general.toasts":"Notificações","toasts.enabled":"Notificações em pop-up","toasts.enabledDesc":"Mostrar avisos de sucesso e erro para configurações e importações.","toasts.position":"Posição na tela","toasts.duration":"Ocultar automaticamente após (segundos)","toasts.durationDesc":"0 mantém a notificação até que seja fechada.","toastPos.bottom-right":"Canto inferior direito","toastPos.bottom-left":"Canto inferior esquerdo","toastPos.top-right":"Canto superior direito","toastPos.top-left":"Canto superior esquerdo","toast.saved":"Configurações salvas","toast.savedDesc":"Suas preferências foram armazenadas neste navegador.","toast.imported":"Configurações importadas","toast.importedDesc":"As preferências importadas foram aplicadas e salvas.","toast.importFailed":"Falha na importação","toast.importFailedDesc":"Este não é um backup legível do GitHub Plus.","toast.copied":"Copiado","toast.copiedDesc":"O JSON das configurações está na área de transferência.","gallery.behavior":"Comportamento","gallery.enabled":"Galeria de imagens","gallery.enabledDesc":"Abrir imagens Markdown no visualizador integrado em vez do arquivo vinculado.","gallery.sources":"Locais","gallery.sourcesDesc":"Superfícies Markdown que a galeria monitora.","gallery.viewer":"Visualizador","gallery.skipBadges":"Ignorar badges e ícones","gallery.skipBadgesDesc":"Ignorar imagens pequenas e imagens de serviços de badge.","gallery.upgradeFullSize":"Carregar a imagem original","gallery.upgradeFullSizeDesc":"Trocar pelo arquivo em tamanho real vinculado quando ele estiver disponível.","gallery.thumbnails":"Faixa de miniaturas","gallery.thumbnailsDesc":"Mostrar uma tira com todas as imagens do conjunto.","gallery.loop":"Retornar ao início","gallery.loopDesc":"Ao avançar na última imagem, volta para a primeira.","gallery.maxZoom":"Zoom máximo","gallery.maxZoomDesc":"Limite para o zoom com a roda do mouse, o gesto de pinça e os botões.","source.markdown":"Imagens Markdown","source.markdownDesc":"Arquivos README, visualização de arquivos, wikis, issues, pull requests e comentários.","backup.export":"Exportar","backup.exportDesc":"Salvar as configurações atuais como um arquivo JSON ou copiá-las.","backup.exportFile":"Baixar arquivo","backup.exportClipboard":"Copiar para a área de transferência","backup.import":"Importar","backup.importDesc":"Cole um JSON de configurações do GitHub Plus para restaurá-las.","backup.importPlaceholder":'{ "language": "auto", … }',"backup.importButton":"Importar configurações","backup.invalid":"Cole um JSON de configurações válido primeiro.","about.blurb":"Melhora o GitHub: navegue pelas imagens Markdown em uma galeria em tela cheia, e mais novidades virão.","about.version":"Versão","about.author":"Autor","about.repo":"Código-fonte","about.license":"Licença MIT","about.affiliation":"Um projeto independente, sem vínculo com o GitHub, Inc.","viewer.title":"Visualizador de imagens","viewer.close":"Fechar","viewer.prev":"Imagem anterior","viewer.next":"Próxima imagem","viewer.zoomIn":"Aumentar zoom","viewer.zoomOut":"Diminuir zoom","viewer.reset":"Redefinir zoom e rotação","viewer.rotate":"Girar","viewer.counter":"{current} / {total}","viewer.failed":"Não foi possível carregar a imagem","viewer.open":"Abrir imagem em nova aba","viewer.thumbs":"Imagens","viewer.hint":"Roda do mouse ou +/− para zoom · arraste para mover · ← → para navegar · Esc para fechar"},"zh-CN":{"menu.settings":"GitHub Plus 设置","settings.open":"GitHub Plus 设置","panel.subtitle":"Markdown 图片画廊 · 界面 · 备份","panel.unsaved":"有未保存的更改","common.auto":"自动","common.close":"关闭","common.cancel":"取消","common.save":"保存","common.reset":"恢复默认设置","tab.general":"通用","tab.gallery":"画廊","tab.backup":"备份","tab.about":"关于","tab.general.desc":"界面语言与通知。","tab.gallery.desc":"在内置查看器中浏览 Markdown 图片。","tab.backup.desc":"将设置导出为文件并重新导入。","tab.about.desc":"版本、作者和源代码。","reset.confirm":"将所有设置恢复为默认值?","general.language":"界面语言","general.languageDesc":"GitHub Plus 设置面板的语言。","general.saveHint":"更改将在点击下方的“保存”后生效。","general.toasts":"通知","toasts.enabled":"弹出通知","toasts.enabledDesc":"显示设置和导入操作的成功与错误提示。","toasts.position":"屏幕位置","toasts.duration":"自动隐藏时间(秒)","toasts.durationDesc":"设为 0 时通知会一直显示,直到手动关闭。","toastPos.bottom-right":"右下角","toastPos.bottom-left":"左下角","toastPos.top-right":"右上角","toastPos.top-left":"左上角","toast.saved":"设置已保存","toast.savedDesc":"你的偏好已保存在此浏览器中。","toast.imported":"设置已导入","toast.importedDesc":"导入的偏好已应用并保存。","toast.importFailed":"导入失败","toast.importFailedDesc":"这不是可读取的 GitHub Plus 备份。","toast.copied":"已复制","toast.copiedDesc":"设置 JSON 已复制到剪贴板。","gallery.behavior":"行为","gallery.enabled":"图片画廊","gallery.enabledDesc":"在内置查看器中打开 Markdown 图片,而不是打开链接的文件。","gallery.sources":"适用位置","gallery.sourcesDesc":"画廊监听的 Markdown 页面。","gallery.viewer":"查看器","gallery.skipBadges":"跳过徽章和图标","gallery.skipBadgesDesc":"忽略小尺寸图片以及来自徽章服务的图片。","gallery.upgradeFullSize":"加载原图","gallery.upgradeFullSizeDesc":"当链接的原始尺寸文件可用时,替换为该图片。","gallery.thumbnails":"缩略图条","gallery.thumbnailsDesc":"显示该图集中所有图片的缩略图条。","gallery.loop":"循环浏览","gallery.loopDesc":"在最后一张图片上点击“下一张”会回到第一张。","gallery.maxZoom":"最大缩放","gallery.maxZoomDesc":"滚轮、双指和按钮缩放的上限。","source.markdown":"Markdown 图片","source.markdownDesc":"README 文件、文件浏览视图、Wiki、议题、拉取请求和评论。","backup.export":"导出","backup.exportDesc":"将当前设置保存为 JSON 文件或复制到剪贴板。","backup.exportFile":"下载文件","backup.exportClipboard":"复制到剪贴板","backup.import":"导入","backup.importDesc":"粘贴 GitHub Plus 设置 JSON 以恢复设置。","backup.importPlaceholder":'{ "language": "auto", … }',"backup.importButton":"导入设置","backup.invalid":"请先粘贴有效的设置 JSON。","about.blurb":"增强 GitHub:在全屏画廊中浏览 Markdown 图片,更多功能即将推出。","about.version":"版本","about.author":"作者","about.repo":"源代码","about.license":"MIT 许可证","about.affiliation":"独立项目,与 GitHub, Inc. 无任何关联。","viewer.title":"图片查看器","viewer.close":"关闭","viewer.prev":"上一张图片","viewer.next":"下一张图片","viewer.zoomIn":"放大","viewer.zoomOut":"缩小","viewer.reset":"重置缩放和旋转","viewer.rotate":"旋转","viewer.counter":"{current} / {total}","viewer.failed":"无法加载图片","viewer.open":"在新标签页中打开图片","viewer.thumbs":"图片","viewer.hint":"滚轮或 +/− 缩放 · 拖动平移 · ← → 浏览 · Esc 关闭"},ja:{"menu.settings":"GitHub Plus の設定","settings.open":"GitHub Plus の設定","panel.subtitle":"Markdown 画像ギャラリー · インターフェース · バックアップ","panel.unsaved":"未保存の変更があります","common.auto":"自動","common.close":"閉じる","common.cancel":"キャンセル","common.save":"保存","common.reset":"デフォルトに戻す","tab.general":"一般","tab.gallery":"ギャラリー","tab.backup":"バックアップ","tab.about":"このアプリについて","tab.general.desc":"インターフェースの言語と通知。","tab.gallery.desc":"組み込みビューアで Markdown 画像を閲覧します。","tab.backup.desc":"設定をファイルにエクスポートし、インポートして復元します。","tab.about.desc":"バージョン、作者、ソースコード。","reset.confirm":"すべての設定をデフォルトに戻しますか?","general.language":"インターフェースの言語","general.languageDesc":"GitHub Plus 設定パネルの言語。","general.saveHint":"変更は下の「保存」を押すと反映されます。","general.toasts":"通知","toasts.enabled":"トースト通知","toasts.enabledDesc":"設定やインポートの成功・エラーをポップアップで表示します。","toasts.position":"画面内の表示位置","toasts.duration":"自動的に隠すまでの時間(秒)","toasts.durationDesc":"0 にすると手動で閉じるまで表示されます。","toastPos.bottom-right":"右下","toastPos.bottom-left":"左下","toastPos.top-right":"右上","toastPos.top-left":"左上","toast.saved":"設定を保存しました","toast.savedDesc":"このブラウザーに設定が保存されました。","toast.imported":"設定をインポートしました","toast.importedDesc":"インポートした設定を適用して保存しました。","toast.importFailed":"インポートに失敗しました","toast.importFailedDesc":"これは読み取り可能な GitHub Plus のバックアップではありません。","toast.copied":"コピーしました","toast.copiedDesc":"設定の JSON をクリップボードにコピーしました。","gallery.behavior":"動作","gallery.enabled":"画像ギャラリー","gallery.enabledDesc":"リンク先のファイルではなく、組み込みビューアで Markdown 画像を開きます。","gallery.sources":"対象","gallery.sourcesDesc":"ギャラリーが対象とする Markdown の表示箇所。","gallery.viewer":"ビューア","gallery.skipBadges":"バッジとアイコンを除外","gallery.skipBadgesDesc":"小さな画像やバッジサービスの画像を無視します。","gallery.upgradeFullSize":"元の画像を読み込む","gallery.upgradeFullSizeDesc":"リンク先にフルサイズのファイルがあれば、そちらに切り替えます。","gallery.thumbnails":"サムネイル一覧","gallery.thumbnailsDesc":"セット内のすべての画像をサムネイル一覧で表示します。","gallery.loop":"ループ","gallery.loopDesc":"最後の画像で「次へ」を押すと、最初の画像に戻ります。","gallery.maxZoom":"最大ズーム","gallery.maxZoomDesc":"ホイール、ピンチ、ボタンによるズームの上限。","source.markdown":"Markdown 画像","source.markdownDesc":"README ファイル、blob ビュー、Wiki、Issue、プルリクエスト、コメント。","backup.export":"エクスポート","backup.exportDesc":"現在の設定を JSON ファイルとして保存するか、コピーします。","backup.exportFile":"ファイルをダウンロード","backup.exportClipboard":"クリップボードにコピー","backup.import":"インポート","backup.importDesc":"GitHub Plus の設定 JSON を貼り付けて復元します。","backup.importPlaceholder":'{ "language": "auto", … }',"backup.importButton":"設定をインポート","backup.invalid":"まず有効な設定 JSON を貼り付けてください。","about.blurb":"GitHub をより便利に。Markdown 画像を全画面ギャラリーで閲覧できます。今後も機能を追加予定です。","about.version":"バージョン","about.author":"作者","about.repo":"ソースコード","about.license":"MIT ライセンス","about.affiliation":"GitHub, Inc. とは関係のない独立したプロジェクトです。","viewer.title":"画像ビューア","viewer.close":"閉じる","viewer.prev":"前の画像","viewer.next":"次の画像","viewer.zoomIn":"拡大","viewer.zoomOut":"縮小","viewer.reset":"ズームと回転をリセット","viewer.rotate":"回転","viewer.counter":"{current} / {total}","viewer.failed":"画像を読み込めませんでした","viewer.open":"画像を新しいタブで開く","viewer.thumbs":"画像","viewer.hint":"ホイールまたは +/− でズーム · ドラッグで移動 · ← → で移動 · Esc で閉じる"},ko:{"menu.settings":"GitHub Plus 설정","settings.open":"GitHub Plus 설정","panel.subtitle":"Markdown 이미지 갤러리 · 인터페이스 · 백업","panel.unsaved":"저장되지 않은 변경 사항","common.auto":"자동","common.close":"닫기","common.cancel":"취소","common.save":"저장","common.reset":"기본값으로 재설정","tab.general":"일반","tab.gallery":"갤러리","tab.backup":"백업","tab.about":"정보","tab.general.desc":"인터페이스 언어와 알림을 설정합니다.","tab.gallery.desc":"내장 뷰어에서 Markdown 이미지를 확인합니다.","tab.backup.desc":"설정을 파일로 내보내고 다시 가져옵니다.","tab.about.desc":"버전, 제작자와 소스 코드를 확인합니다.","reset.confirm":"모든 설정을 기본값으로 재설정할까요?","general.language":"인터페이스 언어","general.languageDesc":"GitHub Plus 설정 패널의 언어입니다.","general.saveHint":"변경 사항은 아래의 저장을 누르면 적용됩니다.","general.toasts":"알림","toasts.enabled":"토스트 알림","toasts.enabledDesc":"설정과 가져오기에 대한 성공 및 오류 팝업을 표시합니다.","toasts.position":"화면에서의 위치","toasts.duration":"자동 숨김 시간(초)","toasts.durationDesc":"0이면 닫을 때까지 알림이 유지됩니다.","toastPos.bottom-right":"오른쪽 아래","toastPos.bottom-left":"왼쪽 아래","toastPos.top-right":"오른쪽 위","toastPos.top-left":"왼쪽 위","toast.saved":"설정을 저장했습니다","toast.savedDesc":"이 브라우저에 환경설정이 저장되었습니다.","toast.imported":"설정을 가져왔습니다","toast.importedDesc":"가져온 환경설정을 적용하고 저장했습니다.","toast.importFailed":"가져오기 실패","toast.importFailedDesc":"읽을 수 있는 GitHub Plus 백업이 아닙니다.","toast.copied":"복사됨","toast.copiedDesc":"설정 JSON이 클립보드에 있습니다.","gallery.behavior":"동작","gallery.enabled":"이미지 갤러리","gallery.enabledDesc":"Markdown 이미지를 연결된 파일 대신 내장 뷰어에서 엽니다.","gallery.sources":"대상 위치","gallery.sourcesDesc":"갤러리가 감시하는 Markdown 영역입니다.","gallery.viewer":"뷰어","gallery.skipBadges":"배지와 아이콘 건너뛰기","gallery.skipBadgesDesc":"작은 이미지와 배지 서비스의 이미지를 무시합니다.","gallery.upgradeFullSize":"원본 이미지 불러오기","gallery.upgradeFullSizeDesc":"사용할 수 있는 경우 연결된 원본 크기 파일로 바꿉니다.","gallery.thumbnails":"썸네일 스트립","gallery.thumbnailsDesc":"세트에 포함된 모든 이미지를 필름스트립으로 표시합니다.","gallery.loop":"순환","gallery.loopDesc":"마지막 이미지에서 다음을 누르면 첫 번째 이미지로 돌아갑니다.","gallery.maxZoom":"최대 확대","gallery.maxZoomDesc":"휠, 핀치, 버튼 확대의 상한입니다.","source.markdown":"Markdown 이미지","source.markdownDesc":"README 파일, blob 보기, 위키, 이슈, 풀 리퀘스트와 댓글.","backup.export":"내보내기","backup.exportDesc":"현재 설정을 JSON 파일로 저장하거나 복사합니다.","backup.exportFile":"파일 다운로드","backup.exportClipboard":"클립보드에 복사","backup.import":"가져오기","backup.importDesc":"GitHub Plus 설정 JSON을 붙여넣어 복원합니다.","backup.importPlaceholder":'{ "language": "auto", … }',"backup.importButton":"설정 가져오기","backup.invalid":"먼저 올바른 설정 JSON을 붙여넣으세요.","about.blurb":"GitHub를 개선합니다: Markdown 이미지를 전체 화면 갤러리에서 보고, 더 많은 기능이 준비 중입니다.","about.version":"버전","about.author":"제작자","about.repo":"소스 코드","about.license":"MIT 라이선스","about.affiliation":"GitHub, Inc.와 관련이 없는 독립 프로젝트입니다.","viewer.title":"이미지 뷰어","viewer.close":"닫기","viewer.prev":"이전 이미지","viewer.next":"다음 이미지","viewer.zoomIn":"확대","viewer.zoomOut":"축소","viewer.reset":"확대와 회전 초기화","viewer.rotate":"회전","viewer.counter":"{current} / {total}","viewer.failed":"이미지를 불러올 수 없습니다","viewer.open":"새 탭에서 이미지 열기","viewer.thumbs":"이미지","viewer.hint":"휠 또는 +/−로 확대 · 드래그로 이동 · ← →로 탐색 · Esc로 닫기"},pl:{"menu.settings":"Ustawienia GitHub Plus","settings.open":"Ustawienia GitHub Plus","panel.subtitle":"Galeria obrazów Markdown · interfejs · kopia zapasowa","panel.unsaved":"Niezapisane zmiany","common.auto":"Auto","common.close":"Zamknij","common.cancel":"Anuluj","common.save":"Zapisz","common.reset":"Przywróć domyślne","tab.general":"Ogólne","tab.gallery":"Galeria","tab.backup":"Kopia zapasowa","tab.about":"O skrypcie","tab.general.desc":"Język interfejsu i powiadomienia.","tab.gallery.desc":"Przeglądaj obrazy z Markdown we wbudowanej przeglądarce.","tab.backup.desc":"Eksportuj ustawienia do pliku i zaimportuj je z powrotem.","tab.about.desc":"Wersja, autor i kod źródłowy.","reset.confirm":"Przywrócić wszystkie ustawienia do wartości domyślnych?","general.language":"Język interfejsu","general.languageDesc":"Język panelu ustawień GitHub Plus.","general.saveHint":"Zmiany zostaną zastosowane po kliknięciu „Zapisz” poniżej.","general.toasts":"Powiadomienia","toasts.enabled":"Powiadomienia wyskakujące","toasts.enabledDesc":"Pokazuj komunikaty o powodzeniu i błędach ustawień oraz importu.","toasts.position":"Położenie na ekranie","toasts.duration":"Automatyczne ukrywanie po (sekundach)","toasts.durationDesc":"Wartość 0 pozostawia powiadomienie do momentu zamknięcia.","toastPos.bottom-right":"Na dole po prawej","toastPos.bottom-left":"Na dole po lewej","toastPos.top-right":"Na górze po prawej","toastPos.top-left":"Na górze po lewej","toast.saved":"Ustawienia zapisane","toast.savedDesc":"Twoje preferencje są zapisane w tej przeglądarce.","toast.imported":"Ustawienia zaimportowane","toast.importedDesc":"Zaimportowane preferencje zostały zastosowane i zapisane.","toast.importFailed":"Import nie powiódł się","toast.importFailedDesc":"To nie jest czytelna kopia zapasowa GitHub Plus.","toast.copied":"Skopiowano","toast.copiedDesc":"JSON ustawień znajduje się w schowku.","gallery.behavior":"Zachowanie","gallery.enabled":"Galeria obrazów","gallery.enabledDesc":"Otwieraj obrazy z Markdown we wbudowanej przeglądarce zamiast pliku z linku.","gallery.sources":"Miejsca","gallery.sourcesDesc":"Sekcje Markdown obserwowane przez galerię.","gallery.viewer":"Przeglądarka","gallery.skipBadges":"Pomijaj plakietki i ikony","gallery.skipBadgesDesc":"Ignoruj małe obrazy oraz obrazki z serwisów plakietek.","gallery.upgradeFullSize":"Wczytuj oryginalny obraz","gallery.upgradeFullSizeDesc":"Podmieniaj obraz na plik w pełnym rozmiarze, gdy jest dostępny.","gallery.thumbnails":"Pasek miniatur","gallery.thumbnailsDesc":"Pokazuj listę wszystkich obrazów w zestawie.","gallery.loop":"Zapętlaj","gallery.loopDesc":"Naciśnięcie „Dalej” na ostatnim obrazie wraca do pierwszego.","gallery.maxZoom":"Maksymalne powiększenie","gallery.maxZoomDesc":"Górny limit powiększenia kółkiem, gestem i przyciskami.","source.markdown":"Obrazy Markdown","source.markdownDesc":"Pliki README, podgląd plików, wiki, zgłoszenia, pull requesty i komentarze.","backup.export":"Eksport","backup.exportDesc":"Zapisz bieżące ustawienia jako plik JSON lub skopiuj je.","backup.exportFile":"Pobierz plik","backup.exportClipboard":"Skopiuj do schowka","backup.import":"Import","backup.importDesc":"Wklej JSON ustawień GitHub Plus, aby je przywrócić.","backup.importPlaceholder":'{ "language": "auto", … }',"backup.importButton":"Importuj ustawienia","backup.invalid":"Najpierw wklej prawidłowy JSON ustawień.","about.blurb":"Ulepsza GitHub: przeglądaj obrazy z Markdown w pełnoekranowej galerii, ciąg dalszy nastąpi.","about.version":"Wersja","about.author":"Autor","about.repo":"Kod źródłowy","about.license":"Licencja MIT","about.affiliation":"Projekt niezależny, niepowiązany z GitHub, Inc.","viewer.title":"Przeglądarka obrazów","viewer.close":"Zamknij","viewer.prev":"Poprzedni obraz","viewer.next":"Następny obraz","viewer.zoomIn":"Powiększ","viewer.zoomOut":"Pomniejsz","viewer.reset":"Przywróć powiększenie i obrót","viewer.rotate":"Obróć","viewer.counter":"{current} / {total}","viewer.failed":"Nie udało się wczytać obrazu","viewer.open":"Otwórz obraz w nowej karcie","viewer.thumbs":"Obrazy","viewer.hint":"Kółko lub +/− — powiększenie · przeciąganie — przesuwanie · ← → — przeglądanie · Esc — zamknięcie"}};let n="en";function r(e){const a=String(e||"").trim().toLowerCase();return t[a]||t[a.split("-")[0]]||null}function i(e="auto"){return n="auto"===e?function(){var e;const t=(null==(e=navigator.languages)?void 0:e.length)?navigator.languages:[navigator.language];for(const a of t){const e=r(a);if(e)return e}return "en"}():r(e)||"en",n}function s(e,t={}){var a,r,i;const s=null!=(i=null!=(r=null==(a=o[n])?void 0:a[e])?r:o.en[e])?i:e;return Object.entries(t).reduce((e,[t,a])=>e.split(`{${t}}`).join(String(a)),s)}const l="GitHub Plus",u="https://github.com/NemoKing1210/github-plus",c="gp_settings_v1",d=[2,4,6,8,12,16],p=d[d.length-1],g=["shields.io","badgen.net","badge.fury.io","codecov.io","coveralls.io","travis-ci.org","travis-ci.com","circleci.com","app.codacy.com","snyk.io","david-dm.org","opencollective.com","gitter.im","discordapp.com","api.netlify.com","vercel.com","isitmaintained.com"],m=["png","jpg","jpeg","gif","webp","avif","apng","bmp","svg"],b=["bottom-right","bottom-left","top-right","top-left"],v={language:"auto",gallery:{enabled:true,sources:{markdown:true},skipBadges:true,upgradeFullSize:true,thumbnails:true,loop:true,maxZoom:8},toasts:{enabled:true,position:"bottom-right",duration:5e3}};function h(){return JSON.parse(JSON.stringify(v))}const f="GP-1002";function y(e,t,a,o,n){e(`%c${a}%c ${o}`,t,"font-weight:bold",void 0===n?"":n);}function w(e,t,a){y(console.error,"background:#8a3030;color:#fff;border-radius:2px;padding:1px 6px;font-weight:bold",e,t,a);}function k(e,t){return "boolean"==typeof e?e:t}function z(e,t){return b.includes(e)?e:t}function D(e,t){const a=Number(e);return !Number.isFinite(a)||a<0?t:Math.min(12e4,Math.round(a))}function x(e,t){const a=e&&"object"==typeof e?e:{};return {enabled:k(a.enabled,t.enabled),position:z(a.position,t.position),duration:D(a.duration,t.duration)}}function _(e,t){const a=Number(e);return Number.isFinite(a)?Math.min(p,Math.max(2,Math.round(a))):t}function C(e,t){const a=e&&"object"==typeof e?e:{},o={};for(const n of Object.keys(t))o[n]=k(a[n],t[n]);return o}function S(e,t){const a=e&&"object"==typeof e?e:{};return {enabled:k(a.enabled,t.enabled),sources:C(a.sources,t.sources),skipBadges:k(a.skipBadges,t.skipBadges),upgradeFullSize:k(a.upgradeFullSize,t.upgradeFullSize),thumbnails:k(a.thumbnails,t.thumbnails),loop:k(a.loop,t.loop),maxZoom:_(a.maxZoom,t.maxZoom)}}function M(t){const a=h(),o=t&&"object"==typeof t?t:{};return {language:(n=o.language,r=a.language,"auto"===n?"auto":e.includes(n)?n:r),gallery:S(o.gallery,a.gallery),toasts:x(o.toasts,a.toasts)};var n,r;}let E=M(function(){try{const e="function"==typeof GM_getValue?GM_getValue(c,null):localStorage.getItem(c);return e?"string"==typeof e?JSON.parse(e):e:null}catch(e){return w("GP-1003","reading settings failed, using defaults",{error:e}),null}}());function P(){return E}function A(){return E.gallery}function L(e){return E=M({...E,...e}),function(e){try{const t=JSON.stringify(e);"function"==typeof GM_setValue?GM_setValue(c,t):localStorage.setItem(c,t);}catch(t){w(f,"persisting settings failed",{error:t});}}(E),E}function I(e){return !e||"object"!=typeof e||Array.isArray(e)?null:M(e)}function j(){return JSON.stringify(E)!==JSON.stringify(h())}const B=new Map;function G(e,t){return B.has(e)||B.set(e,new Set),B.get(e).add(t),()=>function(e,t){var a;null==(a=B.get(e))||a.delete(t);}(e,t)}function H(e,t){var a;null==(a=B.get(e))||a.forEach(a=>{try{a(t);}catch(o){w("GP-1001",`listener for "${e}" failed`,{event:e,error:o});}});}function N(e,t,a){const o=document.createElement(e);return t&&(o.className=t),void 0!==a&&(o.textContent=a),o}function O(e){const t=[];if(!e)return t;for(let a=0;aF.delete(e)}const J={close:'',gear:'',gallery:'',general:'',settings:'',backup:'',about:''};function R(e){return J[e]||J.settings}function V({title:e,hint:t}={}){const a=N("section","gp-card"),o=N("div","gp-card__body");if(e||t){const o=N("div","gp-card__head");e&&o.appendChild(N("div","gp-card__title",e)),t&&o.appendChild(N("p","gp-card__hint",t)),a.appendChild(o);}return a.appendChild(o),a.body=o,a}function $({label:e,hint:t,control:a}={}){const o=N("div","gp-field");return e&&o.appendChild(N("div","gp-field__label",e)),a&&o.appendChild(a),t&&o.appendChild(N("p","gp-hint",t)),o}function K({checked:e=false,onChange:t,label:a=""}={}){const o=N("label","gp-switch"),n=N("input","gp-switch__input");return n.type="checkbox",n.checked=!!e,a&&n.setAttribute("aria-label",a),n.addEventListener("change",()=>null==t?void 0:t(n.checked)),o.append(n,N("span","gp-switch__track")),o}function U({checked:e=false,onChange:t,label:a,hint:o}={}){return function({label:e,hint:t,control:a}={}){const o=N("div","gp-row"),n=N("div","gp-row__text");e&&n.appendChild(N("div","gp-row__label",e)),t&&n.appendChild(N("div","gp-row__hint",t));const r=N("div","gp-row__control");return a&&r.appendChild(a),o.append(n,r),o}({label:a,hint:o,control:K({checked:e,onChange:t,label:a})})}function W({checked:e=false,onChange:t,label:a,hint:o}={}){const n=N("label","gp-grid__cell"),r=N("span","gp-switch"),i=N("input","gp-switch__input");i.type="checkbox",i.checked=!!e,i.addEventListener("change",()=>null==t?void 0:t(i.checked)),r.append(i,N("span","gp-switch__track"));const s=N("span","gp-grid__text");return s.appendChild(N("span","gp-row__label",a)),o&&s.appendChild(N("span","gp-row__hint",o)),n.append(r,s),n}function Y({options:e=[],value:t,onChange:a,label:o=""}={}){const n=N("select","gp-select");o&&n.setAttribute("aria-label",o);for(const r of e){const e=N("option",null,r.label);e.value=r.value,r.value===t&&(e.selected=true),n.appendChild(e);}return n.addEventListener("change",()=>null==a?void 0:a(n.value)),n}function X({value:e=0,min:t=0,max:a=120,onChange:o,label:n=""}={}){const r=N("input","gp-input");return r.type="number",r.min=String(t),r.max=String(a),r.value=String(e),n&&r.setAttribute("aria-label",n),r.addEventListener("change",()=>{const e=Number(r.value),n=Math.min(a,Math.max(t,Number.isFinite(e)?e:t));r.value=String(n),null==o||o(n);}),r}function Q(e,t,a=""){const o=N("button",`gp-button ${a}`.trim(),e);return o.type="button",o.addEventListener("click",t),o}const ee="gp-modal-open";let te=0,ae=null;function oe(){if(te+=1,te>1||ae)return;const e=document.documentElement;if(e.classList.contains(ee))return;const t=document.body,a=window.scrollY||e.scrollTop||t.scrollTop||0,o=Math.max(0,window.innerWidth-e.clientWidth);ae={y:a,pad:t.style.paddingRight},e.classList.add(ee),o&&(t.style.paddingRight=`${o}px`),t.style.top=`-${a}px`;}function ne(){if(te=Math.max(0,te-1),te>0||!ae)return;const e=document.documentElement,t=document.body,{y:a,pad:o}=ae;ae=null,e.classList.remove(ee),t.style.top="",t.style.paddingRight=o,window.scrollTo(0,a);}const re=5e3,ie={info:'',success:'',warning:'',error:''},se={primary:"gp-toast__action",ghost:"gp-toast__action gp-toast__action--ghost",danger:"gp-toast__action gp-toast__action--danger"};let le=0;const ue=new Map;function ce(){var e;try{return null!=(e=P().toasts)?e:null}catch(t){return null}}function de(e={}){var t,a,o;const n=ce();if(n&&false===n.enabled)return {id:"gp-toast-off-"+ ++le,dismiss(){},update(){},touch(){}};const r={...e,duration:null!=(a=null!=(t=e.duration)?t:null==n?void 0:n.duration)?a:re},i=r.key,s=i?ue.get(i):null;if(s)return s.update({title:r.title,message:r.message}),s.touch(),s.handle;const l=function(){var e;let t=document.querySelector(".gp-toasts");t||(t=N("div","gp-toasts"),t.setAttribute("aria-live","polite"),document.body.appendChild(t)),t.classList.remove("gp-toasts--top-right","gp-toasts--top-left","gp-toasts--bottom-left");const a=null==(e=ce())?void 0:e.position;return a&&"bottom-right"!==a&&t.classList.add(`gp-toasts--${a}`),t}(),u=l.children.length-3+1;if(u>0){const e=new CustomEvent("gp-toast-evict");O(l.children).slice(0,u).forEach(t=>{t.dispatchEvent(e);});}const c="gp-toast-"+ ++le,{node:d,titleNode:p,messageNode:g}=function(e){var t,a,o;const{type:n="info",icon:r=n,title:i="",message:s="",duration:l=re,onClick:u,actions:c=[]}=e,d=N("div",`gp-toast gp-toast--${n}`);d.setAttribute("role","error"===n?"alert":"status"),u&&(d.classList.add("gp-toast--clickable"),d.addEventListener("click",e=>{e.target.closest("button")||u();}));const p=N("span",`gp-toast__icon gp-toast__icon--${n}`);p.setAttribute("aria-hidden","true"),p.innerHTML=null!=(a=null!=(t=ie[r])?t:ie[n])?a:ie.info,d.appendChild(p);const g=N("div","gp-toast__body"),m=N("div","gp-toast__title",i);g.appendChild(m);const b=N("div","gp-toast__message",s);s||(b.hidden=true),g.appendChild(b);const v=N("div","gp-toast__actions");let h=false;for(const y of c){if(!(null==y?void 0:y.label)||"function"!=typeof y.onClick)continue;h=true;const e=N("button",null!=(o=se[y.tone])?o:se.primary,y.label);e.type="button",e.addEventListener("click",e=>{e.stopPropagation(),y.onClick();}),v.appendChild(e);}h&&(v.hidden=false,g.appendChild(v)),d.appendChild(g);const f=N("button","gp-toast__close","×");if(f.type="button",f.setAttribute("aria-label","×"),d.appendChild(f),l>0){const e=N("div","gp-toast__progress"),t=N("span","");t.style.animationDuration=`${l}ms`,e.appendChild(t),d.appendChild(e);}return {node:d,titleNode:m,messageNode:b}}(r);d.dataset.gpToast=c;const m=null!=(o=r.duration)?o:re;let b=null,v=m,h=0,f=false;const y={node:d,key:i},w={id:c,dismiss:()=>z(),update:({title:e,message:t})=>{ void 0!==e&&(p.textContent=e),void 0!==t&&(g.textContent=t,g.hidden=!t);},touch:()=>{m<=0||f||(clearTimeout(b),v=m,function(){const e=d.querySelector(".gp-toast__progress span");e&&(e.style.animation="none",e.style.animation="");}(),k());}};function k(){m<=0||f||(h=Date.now(),b=setTimeout(()=>z(),v));}function z(){f||(f=true,clearTimeout(b),i&&ue.delete(i),d.classList.add("gp-toast--leaving"),setTimeout(()=>d.remove(),180));}return d.querySelector(".gp-toast__close").addEventListener("click",e=>{e.stopPropagation(),z();}),d.addEventListener("gp-toast-evict",()=>z()),m>0&&(d.addEventListener("mouseenter",()=>{clearTimeout(b),v=Math.max(0,v-(Date.now()-h));}),d.addEventListener("mouseleave",k)),l.appendChild(d),i&&ue.set(i,{...y,...w}),k(),w}const pe="gp-viewer-overlay",ge=.35,me={images:[],index:0,loop:true,thumbnails:true,minZoom:1,maxZoom:8,labels:null,resolveImage:null,onClose:null};let be=null,ve=false;function he(e){var t;return (null==(t=null==be?void 0:be.opts.labels)?void 0:t[e])||s(`viewer.${e}`)}function fe(){const e=document.getElementById(pe);return {root:e,dialog:null==e?void 0:e.querySelector(".gp-viewer"),title:null==e?void 0:e.querySelector('[data-gp-viewer="title"]'),counter:null==e?void 0:e.querySelector('[data-gp-viewer="counter"]'),stage:null==e?void 0:e.querySelector('[data-gp-viewer="stage"]'),image:null==e?void 0:e.querySelector('[data-gp-viewer="image"]'),spinner:null==e?void 0:e.querySelector('[data-gp-viewer="spinner"]'),status:null==e?void 0:e.querySelector('[data-gp-viewer="status"]'),hint:null==e?void 0:e.querySelector('[data-gp-viewer="hint"]'),thumbs:null==e?void 0:e.querySelector('[data-gp-viewer="thumbs"]'),prev:null==e?void 0:e.querySelector('[data-gp-viewer="prev"]'),next:null==e?void 0:e.querySelector('[data-gp-viewer="next"]'),open:null==e?void 0:e.querySelector('[data-gp-viewer="open"]')}}function ye(e,t,a,o=""){const n=N("button",`gp-viewer__tool ${o}`.trim(),t);return n.type="button",n.dataset.gpViewer=e,n.title=he(a),n.setAttribute("aria-label",he(a)),n}function we(){var e;const{dialog:t,image:a,counter:o,thumbs:n,prev:r,next:i,open:l}=fe();if(!be||!t||!a)return;const{zoom:u,rotation:c,offset:d,images:p,index:g}=be,m=a.parentElement,b=c%180!=0,v=(b?a.clientWidth:a.clientHeight)*u,h=Math.abs(m.clientWidth-(b?a.clientHeight:a.clientWidth)*u)/2,f=Math.abs(m.clientHeight-v)/2;if(d.x=Math.min(h,Math.max(-h,d.x)),d.y=Math.min(f,Math.max(-f,d.y)),a.style.transform=0!==d.x||0!==d.y||1!==u||c%360!=0?`translate(${d.x}px, ${d.y}px) scale(${u}) rotate(${c}deg)`:"",t.classList.toggle("is-rotated",c%360!=0),o&&(o.textContent=p.length>1?s("viewer.counter",{current:g+1,total:p.length}):""),l){const e=p[g],t=e&&(e.link||e.src)||"";l.hidden=!t,t?l.href=t:l.removeAttribute("href");}const y=p.length>1;if(r&&(r.hidden=!y),i&&(i.hidden=!y),r&&(r.disabled=!y||!be.opts.loop&&0===g),i&&(i.disabled=!y||!be.opts.loop&&g===p.length-1),n){n.hidden=false===be.opts.thumbnails||!y;const t=n.querySelectorAll("[data-gp-viewer-thumb]");for(let e=0;e=be.images.length)||De(t);}function Ce(e){be&&(be.zoom=Math.min(be.opts.maxZoom,Math.max(be.opts.minZoom,Number(e.toFixed(3)))),we());}function Se(){var e,t;if(!be)return;const{root:a}=fe(),{focusReturn:o,opts:n}=be;be=null,a&&(a.hidden=true),document.removeEventListener("keydown",Me),ne(),null==(e=null==o?void 0:o.focus)||e.call(o),null==(t=n.onClose)||t.call(n);}function Me(e){if(!be)return;const t=e.target instanceof Element?e.target.tagName:"";if(/^(INPUT|TEXTAREA|SELECT)$/.test(t))return;const a={Escape:Se,ArrowLeft:()=>_e(-1),ArrowRight:()=>_e(1),Home:()=>De(0),End:()=>De(be.images.length-1),"+":()=>Ce(be.zoom+ge),"=":()=>Ce(be.zoom+ge),"-":()=>Ce(be.zoom-ge),0:ze,r:()=>{be.rotation=(be.rotation+90)%360,we();}}[e.key];a&&(e.preventDefault(),a());}function Ee(e){be&&(e.preventDefault(),Ce(be.zoom+(e.deltaY<0?ge:-0.35)));}function Pe(){be&&(be.zoom>1?ze():Ce(2));}function Ae(){const e=[];return be.pointers.forEach(t=>e.push(t)),2===e.length?e:null}function Le(e){var t;if(!be)return;const a=e.target instanceof Element?e.target:null,o=!(!a||!a.closest("button"));if(be.press={control:o,image:!(!a||!a.closest('[data-gp-viewer="image"]')),moved:false},o)return;const n=fe().stage;null==(t=null==n?void 0:n.setPointerCapture)||t.call(n,e.pointerId),be.pointers.set(e.pointerId,{x:e.clientX,y:e.clientY});const r=Ae();if(r)return be.pinch={distance:Math.hypot(r[0].x-r[1].x,r[0].y-r[1].y)||1,zoom:be.zoom},void(be.drag=null);be.drag={id:e.pointerId,x:e.clientX,y:e.clientY,ox:be.offset.x,oy:be.offset.y};}function Ie(e){if(!(null==be?void 0:be.pointers.has(e.pointerId)))return;be.pointers.set(e.pointerId,{x:e.clientX,y:e.clientY});const t=be.pinch?Ae():null;if(be.pinch&&t){const e=Math.hypot(t[0].x-t[1].x,t[0].y-t[1].y)||1;return void Ce(be.pinch.zoom*(e/be.pinch.distance))}if(!be.drag||be.drag.id!==e.pointerId)return;const a=e.clientX-be.drag.x,o=e.clientY-be.drag.y;(Math.abs(a)>3||Math.abs(o)>3)&&(be.press.moved=true),be.offset={x:be.drag.ox+a,y:be.drag.oy+o};const{dialog:n}=fe();null==n||n.classList.add("is-dragging"),we();}function je(e){var t,a,o;if(!be)return;const n=be.drag;be.pointers.delete(e.pointerId),be.pointers.size<2&&(be.pinch=null),n&&n.id===e.pointerId&&(be.drag=null,null==(a=null==(t=fe().stage)?void 0:t.releasePointerCapture)||a.call(t,e.pointerId),null==(o=fe().dialog)||o.classList.remove("is-dragging"));}function Be(e){var t,a;const o=e.target;if(!(o instanceof Element))return;const n=null!=(t=null==be?void 0:be.press)?t:null;if(be&&(be.press=null),null==n?void 0:n.moved)return;const r=null==(a=o.closest("[data-gp-viewer]"))?void 0:a.dataset.gpViewer;if("close"===r)return Se();if("prev"===r)return _e(-1);if("next"===r)return _e(1);if("zoom-in"===r)return Ce(be.zoom+ge);if("zoom-out"===r)return Ce(be.zoom-ge);if("reset"===r)return ze();if("rotate"===r)return be.rotation=(be.rotation+90)%360,we();const i=o.closest("[data-gp-viewer-thumb]");if(i)return De(Number(i.dataset.gpViewerThumb));(null==n?void 0:n.image)||"image"===r||"stage"!==r&&o!==fe().root||Se();}function Ge(){var e;const{spinner:t,status:a}=fe();t&&(t.hidden=true),a&&(a.hidden=true),null==(e=fe().image)||e.classList.remove("is-loading"),we();}function He(){const{spinner:e,status:t,image:a}=fe();e&&(e.hidden=true),null==a||a.classList.remove("is-loading"),t&&(t.textContent=he("failed"),t.hidden=false);}function Ne(){return !!be}let Oe=null;const Fe="gp-settings-panel",qe=new Map;let Ze=null,Te=false,Je=null,Re=false,Ve=null,$e=null;function Ke(){var e;try{return "undefined"!=typeof GM_info&&(null==(e=null==GM_info?void 0:GM_info.script)?void 0:e.version)||"0.0.0"}catch(t){return "0.0.0"}}function Ue(){return Je}function We(e){e&&e.id&&"function"==typeof e.render&&qe.set(e.id,e);}function Ye({keepScroll:e=false}={}){const t=at(),a=t.querySelector(".gp-panel__body");if(!a)return;const o=e?a.scrollTop:0;a.textContent="",a.appendChild(function(){const e=qe.get(Ze),t=N("div","gp-panel__page"),a=N("div","gp-page__head");a.append(N("h3","gp-page__title",e?s(e.labelKey):""),N("p","gp-page__desc",(null==e?void 0:e.descKey)?s(e.descKey):""));const o=N("div","gp-page");return t.append(a,o),e&&e.render(o),t}()),a.scrollTop=o,function(e){var t;O((null==(t=e.querySelector(".gp-panel__nav"))?void 0:t.children)||[]).forEach(e=>{const t=e.dataset.page===Ze;e.classList.toggle("is-active",t),t?e.setAttribute("aria-current","page"):e.removeAttribute("aria-current");});}(t),Xe();}function Xe(){const e=document.getElementById(Fe);if(!e||!Je)return;const t=JSON.stringify(P()),a=JSON.stringify(I(Je))!==t;e.classList.toggle("is-dirty",a);const o=e.querySelector(".gp-panel__footer-text"),n=s(a?"panel.unsaved":"general.saveHint");o&&o.textContent!==n&&(o.textContent=n);}function Qe(e){qe.has(e)&&e!==Ze&&(Ze=e,Ye());}function et(){return JSON.parse(JSON.stringify(P()))}function tt(){try{const e=L(Je);i(e.language),H("settings:gallery",e.gallery),H("settings:toasts",e.toasts),H("settings:language",e.language),de({type:"success",title:s("toast.saved"),message:s("toast.savedDesc")});}catch(e){w(f,"saving settings from the panel failed",{error:e});}ot();}function at(){const e=document.getElementById(Fe);if(e)return e;const t=N("div","gp-panel-overlay");t.id=Fe,t.addEventListener("click",e=>{e.target===t&&ot();});const a=N("div","gp-panel");a.tabIndex=-1,a.setAttribute("role","dialog"),a.setAttribute("aria-modal","true"),a.setAttribute("aria-label",l);const o=N("header","gp-panel__header"),n=N("div","gp-panel__brand"),r=N("div","gp-panel__title-row");r.append(N("h2","gp-panel__title",l),N("span","gp-panel__version",`v${Ke()}`)),n.append(r,N("p","gp-panel__subtitle",s("panel.subtitle")));const i=N("button","gp-panel__close");i.type="button",i.innerHTML=R("close"),i.title=s("common.close"),i.setAttribute("aria-label",s("common.close")),i.addEventListener("click",ot),o.append(n,i);const u=N("div","gp-panel__body");u.addEventListener("input",Xe),u.addEventListener("change",Xe);const c=N("div","gp-panel__main");c.append(function(){const e=N("nav","gp-panel__nav");return e.setAttribute("aria-label",l),qe.forEach(t=>{const a=N("button","gp-nav-item");a.type="button",a.dataset.page=t.id;const o=N("span","gp-nav-item__icon");o.innerHTML=R(t.icon),a.append(o,N("span","gp-nav-item__title",s(t.labelKey))),a.addEventListener("click",()=>Qe(t.id)),e.appendChild(a);}),e.addEventListener("keydown",t=>{var a;const o={ArrowDown:1,ArrowRight:1,ArrowUp:-1,ArrowLeft:-1}[t.key];if(!o)return;const n=Array.from(qe.keys()),r=n[(n.indexOf(Ze)+o+n.length)%n.length];t.preventDefault(),Qe(r),null==(a=O(e.children).find(e=>e.dataset.page===r))||a.focus();}),e}(),u);const d=N("footer","gp-panel__footer"),p=N("p","gp-panel__footer-note");p.setAttribute("aria-live","polite"),p.append(N("span","gp-panel__dirty-dot"),N("span","gp-panel__footer-text",s("general.saveHint")));const g=Q(s("common.reset"),async()=>{await function({title:e,message:t="",confirmLabel:a,cancelLabel:o=s("common.cancel"),tone:n="danger"}={}){return function(){if(Oe){const e=Oe;Oe=null,e(false);}}(),new Promise(r=>{Oe=r;const i=document.activeElement instanceof HTMLElement?document.activeElement:null,s=N("div","gp-confirm-overlay");s.setAttribute("role","presentation");const l=N("div","gp-confirm");l.setAttribute("role","alertdialog"),l.setAttribute("aria-modal","true"),e&&l.setAttribute("aria-label",e),e&&l.appendChild(N("div","gp-confirm__title",e)),t&&l.appendChild(N("div","gp-confirm__message",t));const u=N("div","gp-confirm__actions"),c=Q(o,()=>p(false),"gp-button--ghost"),d=Q(a,()=>p(true),"primary"===n?"gp-button--primary":"gp-button--danger");function p(e){var t;document.removeEventListener("keydown",g,true),s.remove(),Oe&&(Oe=null,r(e)),null==(t=null==i?void 0:i.focus)||t.call(i);}function g(e){"Escape"===e.key&&(e.stopPropagation(),p(false));}u.append(c,d),l.appendChild(u),s.appendChild(l),document.body.appendChild(s),s.addEventListener("click",e=>{e.target===s&&p(false);}),document.addEventListener("keydown",g,true),("danger"===n?c:d).focus();})}({title:s("common.reset"),message:s("reset.confirm"),confirmLabel:s("common.reset")})&&(Je=h(),Ye({keepScroll:true}));},"gp-button--ghost"),m=Q(s("common.cancel"),ot),b=Q(s("common.save"),tt,"gp-button--primary");return d.append(p,g,m,b),a.append(o,c,d),t.appendChild(a),document.body.appendChild(t),t}function ot(){if(!Te)return;Te=false,Je=null,ne();const e=document.getElementById(Fe);e&&(e.classList.add("is-closing"),Ve=setTimeout(()=>e.remove(),140)),(null==$e?void 0:$e.isConnected)&&$e.focus(),$e=null;}function nt(e){Re||(Re=true,document.addEventListener("keydown",e=>{Te&&"Escape"===e.key&&(Ne()||(e.stopPropagation(),ot()));},true)),(void 0===e?!Te:e)?function(){var e,t,a,o;if(Te)return;clearTimeout(Ve),null==(e=document.getElementById(Fe))||e.remove(),Je=et(),qe.has(Ze)||(Ze=null!=(t=qe.keys().next().value)?t:null),$e=document.activeElement instanceof HTMLElement?document.activeElement:null,Te=true;const n=at();Ye(),oe(),null==(o=null==(a=n.querySelector(".gp-panel"))?void 0:a.focus)||o.call(a);}():ot();}function rt(e,t){const a=N("div","gp-about__row"),o=N("span","gp-about__value");return "string"==typeof t?o.textContent=t:o.appendChild(t),a.append(N("span","gp-about__label",e),o),a}function it(e,t){const a=N("a",null,e);return a.href=t,a.target="_blank",a.rel="noopener noreferrer",a}function st(e){const t=N("div","gp-about"),a=N("div","gp-about__hero"),o=N("span","gp-about__logo");o.innerHTML=R("gallery");const n=N("div",null),r=N("div","gp-about__name");r.append(N("span",null,l),N("span","gp-badge",`v${Ke()}`)),n.append(r,N("p","gp-about__tagline",s("about.blurb"))),a.append(o,n);const i=V();i.body.append(rt(s("about.version"),`v${Ke()}`),rt(s("about.author"),it("NemoKing1210","https://github.com/NemoKing1210")),rt(s("about.repo"),it(u.replace("https://",""),u)),rt(s("about.license"),it("LICENSE",`${u}/blob/main/LICENSE`))),t.append(a,i),t.appendChild(N("p","gp-hint",s("about.affiliation"))),e.appendChild(t);}function lt(e){return JSON.stringify(e,null,2)}function ut(e){const t=Ue(),a=V({title:s("backup.export"),hint:s("backup.exportDesc")}),o=N("div","gp-row"),n=N("div","gp-row__control");n.append(Q(s("backup.exportFile"),()=>function(e){const t=new Blob([lt(e)],{type:"application/json"}),a=URL.createObjectURL(t),o=N("a");o.href=a,o.download=`github-plus-settings-${(new Date).toISOString().slice(0,10)}.json`,document.body.appendChild(o),o.click(),o.remove(),setTimeout(()=>URL.revokeObjectURL(a),1e3);}(t)),Q(s("backup.exportClipboard"),()=>{(async function(e){await navigator.clipboard.writeText(lt(e)),de({type:"success",title:s("toast.copied"),message:s("toast.copiedDesc")});})(t).catch(()=>de({type:"error",title:s("toast.importFailed"),message:s("toast.importFailedDesc")}));},"gp-button--ghost")),o.appendChild(n),a.body.appendChild(o);const r=V({title:s("backup.import"),hint:s("backup.importDesc")});let l="";const u=N("p","gp-hint",""),c=function({value:e="",placeholder:t="",onInput:a,label:o=""}={}){const n=N("textarea","gp-textarea");return n.value=e,n.placeholder=t,n.spellcheck=false,o&&n.setAttribute("aria-label",o),n.addEventListener("input",()=>null==a?void 0:a(n.value)),n}({placeholder:s("backup.importPlaceholder"),label:s("backup.import"),onInput:e=>{l=e,u.textContent="";}}),d=N("div","gp-row");d.appendChild(Q(s("backup.importButton"),()=>{let e=null;try{e=JSON.parse(l);}catch(a){e=null;}const t=null===e?null:I(e);t?(function(e){const t=L(e);i(t.language),H("settings:gallery",t.gallery),H("settings:toasts",t.toasts),H("settings:language",t.language),Te&&Te&&(Je=et(),Ye({keepScroll:true}));}(t),c.value="",l="",u.textContent="",de({type:"success",title:s("toast.imported"),message:s("toast.importedDesc")})):u.textContent=s("backup.invalid");},"gp-button--primary")),r.body.append(c,u,d),e.append(a,r);}const ct=new Map;function dt(){const e=[];return ct.forEach(t=>e.push(t)),e}function pt(e){const t=Ue(),a=V({title:s("gallery.behavior")});a.body.appendChild(U({checked:t.gallery.enabled,label:s("gallery.enabled"),hint:s("gallery.enabledDesc"),onChange:e=>{t.gallery.enabled=e;}}));const o=V({title:s("gallery.sources"),hint:s("gallery.sourcesDesc")}),n=N("div","gp-grid");for(const i of dt())n.appendChild(W({checked:false!==t.gallery.sources[i.id],label:s(i.labelKey),hint:i.hintKey?s(i.hintKey):"",onChange:e=>{t.gallery.sources[i.id]=e;}}));o.body.appendChild(n);const r=V({title:s("gallery.viewer")});r.body.append(U({checked:t.gallery.skipBadges,label:s("gallery.skipBadges"),hint:s("gallery.skipBadgesDesc"),onChange:e=>{t.gallery.skipBadges=e;}}),U({checked:t.gallery.upgradeFullSize,label:s("gallery.upgradeFullSize"),hint:s("gallery.upgradeFullSizeDesc"),onChange:e=>{t.gallery.upgradeFullSize=e;}}),U({checked:t.gallery.thumbnails,label:s("gallery.thumbnails"),hint:s("gallery.thumbnailsDesc"),onChange:e=>{t.gallery.thumbnails=e;}}),U({checked:t.gallery.loop,label:s("gallery.loop"),hint:s("gallery.loopDesc"),onChange:e=>{t.gallery.loop=e;}}),$({label:s("gallery.maxZoom"),hint:s("gallery.maxZoomDesc"),control:Y({options:d.map(e=>({value:String(e),label:`${e}×`})),value:String(t.gallery.maxZoom),label:s("gallery.maxZoom"),onChange:e=>{t.gallery.maxZoom=Number(e);}})})),e.append(a,o,r);}function gt(t){const o=Ue(),n=V({title:s("general.language"),hint:s("general.languageDesc")}),r=[{value:"auto",label:s("common.auto")}];for(const s of e)r.push({value:s,label:a[s]||s});n.body.appendChild($({control:Y({options:r,value:o.language,label:s("general.language"),onChange:e=>{o.language=e;}})}));const i=V({title:s("general.toasts")});i.body.appendChild(U({checked:o.toasts.enabled,label:s("toasts.enabled"),hint:s("toasts.enabledDesc"),onChange:e=>{o.toasts.enabled=e;}}));const l=b.map(e=>({value:e,label:s(`toastPos.${e}`)}));i.body.appendChild($({label:s("toasts.position"),control:Y({options:l,value:o.toasts.position,label:s("toasts.position"),onChange:e=>{o.toasts.position=e;}})})),i.body.appendChild($({label:s("toasts.duration"),hint:s("toasts.durationDesc"),control:X({value:Math.round(o.toasts.duration/1e3),min:0,max:120,label:s("toasts.duration"),onChange:e=>{o.toasts.duration=1e3*e;}})})),t.append(n,i);}const mt='[aria-labelledby="global-nav-user-menu-header"]',bt='[data-component="ActionList"]',vt='a[href$="/settings/profile"]',ht="gp-user-menu-item";let ft=false,yt=null,wt=null,kt=null,zt=null;function Dt(){if(!zt||!zt.isConnected)return;const e=zt.querySelector(`.${ht}__label`),t=s("settings.open");e&&e.textContent!==t&&(e.textContent=t),zt.classList.toggle(`${ht}--custom`,j());}function xt(e=document){_t();const t=function(e){var t,a;return (null==(t=e.querySelector(mt))?void 0:t.querySelector(bt))||(null==(a=e.querySelector(vt))?void 0:a.closest(bt))||null}(e);if(!t)return false;let a=t.querySelector(`.${ht}`);return a||(a=function(){const e=N("li",ht),t=N("button",`${ht}__btn`);t.type="button";const a=N("span",`${ht}__icon`);return a.innerHTML=R("gear"),t.append(a,N("span",`${ht}__label`,s("settings.open")),N("span",`${ht}__dot`)),t.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation();const a=e.closest(mt);a&&a.dispatchEvent(new KeyboardEvent("keydown",{key:"Escape",bubbles:true,cancelable:true})),nt(true);}),e.appendChild(t),e}(),t.insertBefore(a,function(e){var t;const a=null==(t=e.querySelector(vt))?void 0:t.closest("li");if(a)return a.nextSibling;const o=e.querySelectorAll('li[data-component="ActionList.Divider"]');return o.length?o[o.length-1]:null}(t))),zt=a,Dt(),true}function _t(){if("function"!=typeof MutationObserver)return;const e=document.getElementById("__primerPortalRoot__");e&&e!==wt&&(yt&&yt.disconnect(),wt=e,yt=new MutationObserver(()=>{zt&&zt.isConnected||xt(e);}),yt.observe(e,{childList:true,subtree:true}));}function Ct(){_t(),ft||(ft=true,document.addEventListener("click",e=>{const t=e.target;t instanceof Element&&t.closest(".AppHeader, #user-links")&&function(){if(_t(),xt()||null!==kt)return;let e=0;kt=setInterval(()=>{e+=1,(xt()||e>=20)&&(clearInterval(kt),kt=null);},100);}();},true));}const St="gp-settings-item",Mt=[".AppHeader-globalBar-end",".AppHeader-globalBar","#user-links"];let Et=null,Pt=null,At=null;function Lt(){for(const e of Mt){const t=document.querySelector(e);if(t)return t}return null}function It(){if(Et){const e=s("settings.open");Et.title=e,Et.setAttribute("aria-label",e);}Dt();}function jt(){Et&&Et.classList.toggle("gp-header-btn--custom",j()),Dt();}function Bt(){null!==At&&(clearInterval(At),At=null);}function Gt(){var e;const t=Lt();if(!t)return null==(e=document.querySelector(`.${St}`))||e.remove(),void(null==Et||Et.remove());Bt(),Et||(Et=function(){const e=N("button","gp-settings-btn gp-header-btn");e.type="button";const t=N("span","gp-header-btn__icon");return t.innerHTML=R("gear"),e.appendChild(t),e.addEventListener("click",e=>{e.preventDefault(),e.stopPropagation(),nt(true);}),e}()),It();const a=function(e){if("UL"!==e.tagName)return Et;let t=e.querySelector(`:scope > .${St}`);return t||(t=N("li",St),t.appendChild(Et)),t}(t);if(a.parentElement!==t){const e=t.querySelector(".AppHeader-user");e?t.insertBefore(a,e):t.appendChild(a);}jt();}function Ht(){if(Pt||"function"!=typeof MutationObserver)return;const e=function(){let e=null;return (...t)=>{clearTimeout(e),e=setTimeout(()=>(()=>Gt())(...t),200);}}();Pt=new MutationObserver(e),Pt.observe(document.body,{childList:true});}function Nt(){nt(true);}const Ot=[/\/workflows\/[^/]+\/badge(\.[a-z0-9]+)?$/i,/\/badge(\.[a-z0-9]+)?$/i],Ft=/(^|\.)camo\.githubusercontent\.com$/,qt=/^[0-9a-f]+$/;function Zt(e,t=0){if(!e)return false;let a;try{a=new URL(e,location.href);}catch(n){return false}const o=a.hostname.toLowerCase();for(let r=0;r0)&&Zt(function(e){if(!e)return "";let t;try{t=new URL(e,location.href);}catch(n){return ""}if(!Ft.test(t.hostname.toLowerCase()))return "";const a=t.pathname.split("/").filter(Boolean),o=a[a.length-1]||"";if(o.length<8||o.length%2!=0||!qt.test(o))return "";let r="";for(let n=0;n0&&n<=40||o>0&&n>0&&o<80&&n<80}function Jt(e,t){return "function"==typeof e.match?e.match(t):e.containerSelector&&t.closest(e.containerSelector)||null}function Rt(e){try{return decodeURIComponent(e)}catch(t){return e}}function Vt(e,t,a){return e.title?e.title:e.alt?e.alt:function(e){if(!e)return "";let t=e;try{t=new URL(e,location.href).pathname;}catch(o){}const a=t.split("/");for(let n=a.length-1;n>=0;n-=1){const e=a[n];if(e)return Rt(e)}return ""}(t||a)}const $t=[".markdown-body img:not(.emoji)",".markdown-body a:has(> img:not(.emoji))"].join(", "),Kt=/^\/[^/]+\/[^/]+\/blob\//,Ut=/^\/[^/]+\/[^/]+\/raw\//,Wt=["user-images.githubusercontent.com","private-user-images.githubusercontent.com","objects.githubusercontent.com","camo.githubusercontent.com","avatars.githubusercontent.com","media.githubusercontent.com"];function Yt(e){const t=e.lastIndexOf(".");if(t<0)return false;const a=e.slice(t+1).toLowerCase();return m.includes(a)}function Xt(e){if(!e)return "";try{return new URL(e,location.href).href}catch(t){return ""}}function Qt(e){if(!e)return "";let t;try{t=new URL(e,location.href);}catch(o){return ""}const a=t.hostname.toLowerCase();return "github.com"===a||"www.github.com"===a?Kt.test(t.pathname)&&Yt(t.pathname)?`${t.origin}${t.pathname.replace("/blob/","/raw/")}`:Ut.test(t.pathname)&&Yt(t.pathname)?t.href:"":Wt.includes(a)||"raw.githubusercontent.com"===a||Yt(t.pathname)?t.href:""}!function(e){if(!e||"string"!=typeof e.id||!e.id)throw new TypeError("gallery source needs a string id");if("function"!=typeof e.collect)throw new TypeError(`gallery source "${e.id}" needs a collect(container) function`);ct.set(e.id,e);}({id:"markdown",labelKey:"source.markdown",hintKey:"source.markdownDesc",containerSelector:".markdown-body",cursorSelector:$t,collect:function(e){const t=[];return function(e,t){if(e)for(let a=0;a{if(e.closest("a.anchor"))return;const a=e.closest("a");t.push({node:e,src:e.currentSrc||e.getAttribute("src")||"",alt:(e.getAttribute("alt")||"").trim(),title:(e.getAttribute("title")||"").trim(),href:a?Xt(a.getAttribute("href")):"",canonical:(e.getAttribute("data-canonical-src")||"").trim()});}),t},resolveFull:function(e){return Qt(e.href)||Qt(e.src)}});const ea="gp-gallery-style";let ta=false;function aa(e,t){return false!==t.sources[e.id]}function oa(e){if(!e.enabled)return [];const t=[],a=dt();for(let o=0;o{const a=new Image;a.onload=()=>e(true),a.onerror=()=>e(false),a.src=t;})?t:null}function ia(e){const t=A();if(!t.enabled)return;if(e.defaultPrevented||0!==e.button)return;if(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;const a=e.target;if(!(a instanceof Element)||function(e){return e instanceof Element&&!!e.closest(".gp-panel-overlay, .gp-confirm-overlay, .gp-toasts, .gp-settings-btn, .gp-user-menu-item, .gp-viewer-overlay")}(a))return;const o=a.closest("img");var n;if(o&&!o.closest("a.anchor"))try{const a=function(e,t){const a=oa(t);for(let o=0;o=500)break}return n}(a.container,a.source,t),r=function(e,t){for(let a=0;ae.stopPropagation());}(),be||(document.addEventListener("keydown",Me),oe()),be=a;const{root:o,dialog:n,hint:r}=fe();o.hidden=!1,function(){const{root:e,dialog:t}=fe();if(!e)return;const a=e.querySelectorAll("[data-gp-viewer]");for(let n=0;n{e+=1,Lt()?Gt():e>=12&&Bt();},500);}(),Ht(),Ct(),xt(),T(()=>{Gt(),Ct();}),G("settings:gallery",jt),G("settings:toasts",jt),G("settings:language",()=>{It(),jt();}),sa(),na(),G("settings:gallery",la),la(),T(ua);}"loading"===document.readyState?document.addEventListener("DOMContentLoaded",ca):ca(); })();