commit d77de465fc43af89d3a6705679cea2fe642c5b66 Author: retoor Date: Fri Dec 6 18:18:45 2024 +0000 Modified portfolio site initial commit. diff --git a/data/gitea/public/.well-known/security.txt b/data/gitea/public/.well-known/security.txt new file mode 100644 index 0000000..2cae3cb --- /dev/null +++ b/data/gitea/public/.well-known/security.txt @@ -0,0 +1,6 @@ +# This site is running a Gitea instance. +# Gitea related security problems could be reported to Gitea community. +# Site related security problems should be reported to this site's admin. +Contact: https://github.com/go-gitea/gitea/blob/main/SECURITY.md +Policy: https://github.com/go-gitea/gitea/blob/main/SECURITY.md +Preferred-Languages: en diff --git a/data/gitea/public/assets/css/asciinema-player.dd36a08e.css b/data/gitea/public/assets/css/asciinema-player.dd36a08e.css new file mode 100644 index 0000000..3635392 --- /dev/null +++ b/data/gitea/public/assets/css/asciinema-player.dd36a08e.css @@ -0,0 +1 @@ +div.ap-wrapper{outline:none;height:100%;display:flex;justify-content:center}div.ap-wrapper .title-bar{display:none;top:-78px;transition:top .15s linear;position:absolute;left:0;right:0;box-sizing:content-box;font-size:20px;line-height:1em;padding:15px;font-family:sans-serif;color:#fff;background-color:#000c}div.ap-wrapper .title-bar img{vertical-align:middle;height:48px;margin-right:16px}div.ap-wrapper .title-bar a{color:#fff;text-decoration:underline}div.ap-wrapper .title-bar a:hover{text-decoration:none}div.ap-wrapper:fullscreen{background-color:#000;width:100%;align-items:center}div.ap-wrapper:fullscreen div.ap-player{position:static}div.ap-wrapper:fullscreen .title-bar{display:initial}div.ap-wrapper:fullscreen.hud .title-bar{top:0}div.ap-wrapper div.ap-player{text-align:left;display:inline-block;padding:0;position:relative;box-sizing:content-box;overflow:hidden;max-width:100%;border-radius:4px;font-size:15px;background-color:var(--term-color-background)}.ap-player{--term-color-foreground: #ffffff;--term-color-background: #000000;--term-color-0: var(--term-color-foreground);--term-color-1: var(--term-color-foreground);--term-color-2: var(--term-color-foreground);--term-color-3: var(--term-color-foreground);--term-color-4: var(--term-color-foreground);--term-color-5: var(--term-color-foreground);--term-color-6: var(--term-color-foreground);--term-color-7: var(--term-color-foreground);--term-color-8: var(--term-color-0);--term-color-9: var(--term-color-1);--term-color-10: var(--term-color-2);--term-color-11: var(--term-color-3);--term-color-12: var(--term-color-4);--term-color-13: var(--term-color-5);--term-color-14: var(--term-color-6);--term-color-15: var(--term-color-7)}.ap-player .fg-0{--fg: var(--term-color-0)}.ap-player .bg-0{--bg: var(--term-color-0)}.ap-player .fg-1{--fg: var(--term-color-1)}.ap-player .bg-1{--bg: var(--term-color-1)}.ap-player .fg-2{--fg: var(--term-color-2)}.ap-player .bg-2{--bg: var(--term-color-2)}.ap-player .fg-3{--fg: var(--term-color-3)}.ap-player .bg-3{--bg: var(--term-color-3)}.ap-player .fg-4{--fg: var(--term-color-4)}.ap-player .bg-4{--bg: var(--term-color-4)}.ap-player .fg-5{--fg: var(--term-color-5)}.ap-player .bg-5{--bg: var(--term-color-5)}.ap-player .fg-6{--fg: var(--term-color-6)}.ap-player .bg-6{--bg: var(--term-color-6)}.ap-player .fg-7{--fg: var(--term-color-7)}.ap-player .bg-7{--bg: var(--term-color-7)}.ap-player .fg-8{--fg: var(--term-color-8)}.ap-player .bg-8{--bg: var(--term-color-8)}.ap-player .fg-9{--fg: var(--term-color-9)}.ap-player .bg-9{--bg: var(--term-color-9)}.ap-player .fg-10{--fg: var(--term-color-10)}.ap-player .bg-10{--bg: var(--term-color-10)}.ap-player .fg-11{--fg: var(--term-color-11)}.ap-player .bg-11{--bg: var(--term-color-11)}.ap-player .fg-12{--fg: var(--term-color-12)}.ap-player .bg-12{--bg: var(--term-color-12)}.ap-player .fg-13{--fg: var(--term-color-13)}.ap-player .bg-13{--bg: var(--term-color-13)}.ap-player .fg-14{--fg: var(--term-color-14)}.ap-player .bg-14{--bg: var(--term-color-14)}.ap-player .fg-15{--fg: var(--term-color-15)}.ap-player .bg-15{--bg: var(--term-color-15)}.ap-player .fg-8,.ap-player .fg-9,.ap-player .fg-10,.ap-player .fg-11,.ap-player .fg-12,.ap-player .fg-13,.ap-player .fg-14,.ap-player .fg-15{font-weight:700}pre.ap-terminal{box-sizing:content-box;overflow:hidden;padding:0;margin:0;display:block;white-space:pre;word-wrap:normal;word-break:normal;border-radius:0;border-style:solid;cursor:text;border-width:.75em;color:var(--term-color-foreground);background-color:var(--term-color-background);border-color:var(--term-color-background);outline:none;font-family:Consolas,Menlo,Bitstream Vera Sans Mono,monospace,Powerline Symbols;font-variant-ligatures:none}pre.ap-terminal .ap-line{letter-spacing:normal;overflow:hidden}pre.ap-terminal .ap-line span{padding:0;display:inline-block;height:100%}pre.ap-terminal .ap-line{display:block;width:100%;position:relative}pre.ap-terminal .ap-line span{position:absolute;color:var(--fg);background-color:var(--bg)}pre.ap-terminal .ap-line .ap-inverse{color:var(--bg);background-color:var(--fg)}pre.ap-terminal .ap-line .cp-2580{border-top:calc(.5em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2581{border-bottom:calc(.125em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2582{border-bottom:calc(.25em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2583{border-bottom:calc(.375em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2584{border-bottom:calc(.5em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2585{border-bottom:calc(.625em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2586{border-bottom:calc(.75em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2587{border-bottom:calc(.875em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2588{background-color:var(--fg)}pre.ap-terminal .ap-line .cp-2589{border-left:.875ch solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-258a{border-left:.75ch solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-258b{border-left:.625ch solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-258c{border-left:.5ch solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-258d{border-left:.375ch solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-258e{border-left:.25ch solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-258f{border-left:.125ch solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2590{border-right:.5ch solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2591{background-color:color-mix(in srgb,var(--fg) 25%,var(--bg))}pre.ap-terminal .ap-line .cp-2592{background-color:color-mix(in srgb,var(--fg) 50%,var(--bg))}pre.ap-terminal .ap-line .cp-2593{background-color:color-mix(in srgb,var(--fg) 75%,var(--bg))}pre.ap-terminal .ap-line .cp-2594{border-top:calc(.125em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2595{border-right:.125ch solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2596{border-right:.5ch solid var(--bg);border-top:calc(.5em * var(--term-line-height)) solid var(--bg);background-color:var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2597{border-left:.5ch solid var(--bg);border-top:calc(.5em * var(--term-line-height)) solid var(--bg);background-color:var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2598{border-right:.5ch solid var(--bg);border-bottom:calc(.5em * var(--term-line-height)) solid var(--bg);background-color:var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-2599{border-left:.5ch solid var(--fg);border-bottom:calc(.5em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-259a{box-sizing:border-box}pre.ap-terminal .ap-line .cp-259a:before,pre.ap-terminal .ap-line .cp-259a:after{content:"";position:absolute;width:.5ch;height:calc(.5em * var(--term-line-height));background-color:var(--fg)}pre.ap-terminal .ap-line .cp-259a:before{top:0;left:0}pre.ap-terminal .ap-line .cp-259a:after{bottom:0;right:0}pre.ap-terminal .ap-line .cp-259b{border-left:.5ch solid var(--fg);border-top:calc(.5em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-259c{border-right:.5ch solid var(--fg);border-top:calc(.5em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-259d{border-left:.5ch solid var(--bg);border-bottom:calc(.5em * var(--term-line-height)) solid var(--bg);background-color:var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-259e{box-sizing:border-box}pre.ap-terminal .ap-line .cp-259e:before,pre.ap-terminal .ap-line .cp-259e:after{content:"";position:absolute;width:.5ch;height:calc(.5em * var(--term-line-height));background-color:var(--fg)}pre.ap-terminal .ap-line .cp-259e:before{top:0;right:0}pre.ap-terminal .ap-line .cp-259e:after{bottom:0;left:0}pre.ap-terminal .ap-line .cp-259f{border-right:.5ch solid var(--fg);border-bottom:calc(.5em * var(--term-line-height)) solid var(--fg);box-sizing:border-box}pre.ap-terminal .ap-line .cp-e0b0{border-left:1ch solid var(--fg);border-top:calc(.5em * var(--term-line-height)) solid transparent;border-bottom:calc(.5em * var(--term-line-height)) solid transparent;box-sizing:border-box}pre.ap-terminal .ap-line .cp-e0b2{border-right:1ch solid var(--fg);border-top:calc(.5em * var(--term-line-height)) solid transparent;border-bottom:calc(.5em * var(--term-line-height)) solid transparent;box-sizing:border-box}pre.ap-terminal.ap-cursor-on .ap-line .ap-cursor{color:var(--bg);background-color:var(--fg);border-radius:.05em}pre.ap-terminal.ap-cursor-on .ap-line .ap-cursor.ap-inverse{color:var(--fg);background-color:var(--bg)}pre.ap-terminal:not(.ap-blink) .ap-line .ap-blink{color:transparent}pre.ap-terminal .ap-bright{font-weight:700}pre.ap-terminal .ap-faint{opacity:.5}pre.ap-terminal .ap-underline{text-decoration:underline}pre.ap-terminal .ap-italic{font-style:italic}pre.ap-terminal .ap-strikethrough{text-decoration:line-through}.ap-line span{--fg: var(--term-color-foreground);--bg: var(--term-color-background)}div.ap-player div.ap-control-bar{width:100%;height:32px;display:flex;justify-content:space-between;align-items:stretch;background:linear-gradient(to bottom,#00000080,#000 25% 100%);color:#bbb;box-sizing:content-box;line-height:1;position:absolute;bottom:0;left:0;opacity:0;transition:opacity .15s linear;user-select:none;z-index:30}div.ap-player div.ap-control-bar *{box-sizing:inherit;font-size:0;font-family:Helvetica,Arial,sans-serif;font-weight:700}div.ap-control-bar svg.ap-icon path{fill:#bbb}div.ap-control-bar span.ap-playback-button{display:block;flex:0 0 auto;cursor:pointer;height:12px;width:12px;padding:10px}div.ap-control-bar span.ap-playback-button svg{height:12px;width:12px}div.ap-control-bar span.ap-timer{display:block;flex:0 0 auto;min-width:50px;margin:0 10px;height:100%;text-align:center;font-size:11px;line-height:34px;cursor:default}div.ap-control-bar span.ap-timer span{display:inline-block;font-size:inherit}div.ap-control-bar span.ap-timer .ap-time-remaining,div.ap-control-bar span.ap-timer:hover .ap-time-elapsed{display:none}div.ap-control-bar span.ap-timer:hover .ap-time-remaining{display:inline}div.ap-control-bar .ap-progressbar{display:block;flex:1 1 auto;height:100%;padding:0 10px}div.ap-control-bar .ap-progressbar .ap-bar{display:block;position:relative;cursor:default;height:100%;font-size:0}div.ap-control-bar .ap-progressbar .ap-bar .ap-gutter{display:block;position:absolute;top:15px;left:0;right:0;height:3px;background-color:#333}div.ap-control-bar .ap-progressbar .ap-bar .ap-gutter .ap-gutter-fill{display:inline-block;height:100%;background-color:#bbb;border-radius:3px;z-index:10}div.ap-control-bar.ap-seekable .ap-progressbar .ap-bar{cursor:pointer}div.ap-control-bar .ap-fullscreen-button{display:block;flex:0 0 auto;width:14px;height:14px;padding:9px;cursor:pointer}div.ap-control-bar .ap-fullscreen-button svg{width:14px;height:14px}div.ap-control-bar .ap-fullscreen-button svg:first-child{display:inline}div.ap-control-bar .ap-fullscreen-button svg:last-child{display:none}div.ap-wrapper.ap-hud .ap-control-bar{opacity:1}div.ap-wrapper:fullscreen .ap-fullscreen-button svg:first-child{display:none}div.ap-wrapper:fullscreen .ap-fullscreen-button svg:last-child{display:inline}span.ap-progressbar span.ap-marker-container{display:block;top:0;bottom:0;width:21px;position:absolute;margin-left:-10px;z-index:9}span.ap-marker-container span.ap-marker{display:block;inset:13px 7px 12px;background-color:#555;position:absolute;transition:top .1s,bottom .1s,left .1s,right .1s,background-color .1s;border-radius:50%}span.ap-marker-container span.ap-marker.ap-marker-past{background-color:#bbb}span.ap-marker-container span.ap-marker:hover,span.ap-marker-container:hover span.ap-marker{background-color:#bbb;inset:11px 5px 10px}span.ap-marker-container span.ap-marker-tooltip{visibility:hidden;background-color:#333;color:#bbb;text-align:center;padding:2px 8px 0;border-radius:4px;position:absolute;z-index:1;white-space:nowrap;font-size:11px;line-height:2em;bottom:100%;left:50%;transform:translate(-50%)}span.ap-marker-container:hover span.ap-marker-tooltip{visibility:visible}.ap-player .ap-overlay{z-index:10;background-repeat:no-repeat;background-position:center;position:absolute;inset:0;display:flex;justify-content:center;align-items:center}.ap-player .ap-overlay-start{cursor:pointer}.ap-player .ap-overlay-start .ap-play-button{font-size:0px;position:absolute;inset:0;text-align:center;color:#fff;height:80px;max-height:66%;margin:auto}.ap-player .ap-overlay-start .ap-play-button div{height:100%}.ap-player .ap-overlay-start .ap-play-button div span{height:100%;display:block}.ap-player .ap-overlay-start .ap-play-button div span svg{height:100%}.ap-player .ap-overlay-start .ap-play-button svg{filter:drop-shadow(0px 0px 5px rgba(0,0,0,.4))}.ap-player .ap-overlay-loading .ap-loader{width:48px;height:48px;border-radius:50%;display:inline-block;position:relative;border:10px solid;border-color:rgba(255,255,255,.3) rgba(255,255,255,.5) rgba(255,255,255,.7) #ffffff;border-color:color-mix(in srgb,var(--term-color-foreground) 30%,var(--term-color-background)) color-mix(in srgb,var(--term-color-foreground) 50%,var(--term-color-background)) color-mix(in srgb,var(--term-color-foreground) 70%,var(--term-color-background)) color-mix(in srgb,var(--term-color-foreground) 100%,var(--term-color-background));box-sizing:border-box;animation:ap-loader-rotation 1s linear infinite}.ap-player .ap-overlay-info{background-color:var(--term-color-background)}.ap-player .ap-overlay-info span{font-family:Consolas,Menlo,Bitstream Vera Sans Mono,monospace,Powerline Symbols;font-variant-ligatures:none;font-size:2em;color:var(--term-color-foreground)}.ap-player .ap-overlay-info span .ap-line{letter-spacing:normal;overflow:hidden}.ap-player .ap-overlay-info span .ap-line span{padding:0;display:inline-block;height:100%}.ap-player .ap-overlay-error span{font-size:8em}@keyframes ap-loader-rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ap-terminal .fg-16{--fg: #000000}.ap-terminal .bg-16{--bg: #000000}.ap-terminal .fg-17{--fg: #00005f}.ap-terminal .bg-17{--bg: #00005f}.ap-terminal .fg-18{--fg: #000087}.ap-terminal .bg-18{--bg: #000087}.ap-terminal .fg-19{--fg: #0000af}.ap-terminal .bg-19{--bg: #0000af}.ap-terminal .fg-20{--fg: #0000d7}.ap-terminal .bg-20{--bg: #0000d7}.ap-terminal .fg-21{--fg: #0000ff}.ap-terminal .bg-21{--bg: #0000ff}.ap-terminal .fg-22{--fg: #005f00}.ap-terminal .bg-22{--bg: #005f00}.ap-terminal .fg-23{--fg: #005f5f}.ap-terminal .bg-23{--bg: #005f5f}.ap-terminal .fg-24{--fg: #005f87}.ap-terminal .bg-24{--bg: #005f87}.ap-terminal .fg-25{--fg: #005faf}.ap-terminal .bg-25{--bg: #005faf}.ap-terminal .fg-26{--fg: #005fd7}.ap-terminal .bg-26{--bg: #005fd7}.ap-terminal .fg-27{--fg: #005fff}.ap-terminal .bg-27{--bg: #005fff}.ap-terminal .fg-28{--fg: #008700}.ap-terminal .bg-28{--bg: #008700}.ap-terminal .fg-29{--fg: #00875f}.ap-terminal .bg-29{--bg: #00875f}.ap-terminal .fg-30{--fg: #008787}.ap-terminal .bg-30{--bg: #008787}.ap-terminal .fg-31{--fg: #0087af}.ap-terminal .bg-31{--bg: #0087af}.ap-terminal .fg-32{--fg: #0087d7}.ap-terminal .bg-32{--bg: #0087d7}.ap-terminal .fg-33{--fg: #0087ff}.ap-terminal .bg-33{--bg: #0087ff}.ap-terminal .fg-34{--fg: #00af00}.ap-terminal .bg-34{--bg: #00af00}.ap-terminal .fg-35{--fg: #00af5f}.ap-terminal .bg-35{--bg: #00af5f}.ap-terminal .fg-36{--fg: #00af87}.ap-terminal .bg-36{--bg: #00af87}.ap-terminal .fg-37{--fg: #00afaf}.ap-terminal .bg-37{--bg: #00afaf}.ap-terminal .fg-38{--fg: #00afd7}.ap-terminal .bg-38{--bg: #00afd7}.ap-terminal .fg-39{--fg: #00afff}.ap-terminal .bg-39{--bg: #00afff}.ap-terminal .fg-40{--fg: #00d700}.ap-terminal .bg-40{--bg: #00d700}.ap-terminal .fg-41{--fg: #00d75f}.ap-terminal .bg-41{--bg: #00d75f}.ap-terminal .fg-42{--fg: #00d787}.ap-terminal .bg-42{--bg: #00d787}.ap-terminal .fg-43{--fg: #00d7af}.ap-terminal .bg-43{--bg: #00d7af}.ap-terminal .fg-44{--fg: #00d7d7}.ap-terminal .bg-44{--bg: #00d7d7}.ap-terminal .fg-45{--fg: #00d7ff}.ap-terminal .bg-45{--bg: #00d7ff}.ap-terminal .fg-46{--fg: #00ff00}.ap-terminal .bg-46{--bg: #00ff00}.ap-terminal .fg-47{--fg: #00ff5f}.ap-terminal .bg-47{--bg: #00ff5f}.ap-terminal .fg-48{--fg: #00ff87}.ap-terminal .bg-48{--bg: #00ff87}.ap-terminal .fg-49{--fg: #00ffaf}.ap-terminal .bg-49{--bg: #00ffaf}.ap-terminal .fg-50{--fg: #00ffd7}.ap-terminal .bg-50{--bg: #00ffd7}.ap-terminal .fg-51{--fg: #00ffff}.ap-terminal .bg-51{--bg: #00ffff}.ap-terminal .fg-52{--fg: #5f0000}.ap-terminal .bg-52{--bg: #5f0000}.ap-terminal .fg-53{--fg: #5f005f}.ap-terminal .bg-53{--bg: #5f005f}.ap-terminal .fg-54{--fg: #5f0087}.ap-terminal .bg-54{--bg: #5f0087}.ap-terminal .fg-55{--fg: #5f00af}.ap-terminal .bg-55{--bg: #5f00af}.ap-terminal .fg-56{--fg: #5f00d7}.ap-terminal .bg-56{--bg: #5f00d7}.ap-terminal .fg-57{--fg: #5f00ff}.ap-terminal .bg-57{--bg: #5f00ff}.ap-terminal .fg-58{--fg: #5f5f00}.ap-terminal .bg-58{--bg: #5f5f00}.ap-terminal .fg-59{--fg: #5f5f5f}.ap-terminal .bg-59{--bg: #5f5f5f}.ap-terminal .fg-60{--fg: #5f5f87}.ap-terminal .bg-60{--bg: #5f5f87}.ap-terminal .fg-61{--fg: #5f5faf}.ap-terminal .bg-61{--bg: #5f5faf}.ap-terminal .fg-62{--fg: #5f5fd7}.ap-terminal .bg-62{--bg: #5f5fd7}.ap-terminal .fg-63{--fg: #5f5fff}.ap-terminal .bg-63{--bg: #5f5fff}.ap-terminal .fg-64{--fg: #5f8700}.ap-terminal .bg-64{--bg: #5f8700}.ap-terminal .fg-65{--fg: #5f875f}.ap-terminal .bg-65{--bg: #5f875f}.ap-terminal .fg-66{--fg: #5f8787}.ap-terminal .bg-66{--bg: #5f8787}.ap-terminal .fg-67{--fg: #5f87af}.ap-terminal .bg-67{--bg: #5f87af}.ap-terminal .fg-68{--fg: #5f87d7}.ap-terminal .bg-68{--bg: #5f87d7}.ap-terminal .fg-69{--fg: #5f87ff}.ap-terminal .bg-69{--bg: #5f87ff}.ap-terminal .fg-70{--fg: #5faf00}.ap-terminal .bg-70{--bg: #5faf00}.ap-terminal .fg-71{--fg: #5faf5f}.ap-terminal .bg-71{--bg: #5faf5f}.ap-terminal .fg-72{--fg: #5faf87}.ap-terminal .bg-72{--bg: #5faf87}.ap-terminal .fg-73{--fg: #5fafaf}.ap-terminal .bg-73{--bg: #5fafaf}.ap-terminal .fg-74{--fg: #5fafd7}.ap-terminal .bg-74{--bg: #5fafd7}.ap-terminal .fg-75{--fg: #5fafff}.ap-terminal .bg-75{--bg: #5fafff}.ap-terminal .fg-76{--fg: #5fd700}.ap-terminal .bg-76{--bg: #5fd700}.ap-terminal .fg-77{--fg: #5fd75f}.ap-terminal .bg-77{--bg: #5fd75f}.ap-terminal .fg-78{--fg: #5fd787}.ap-terminal .bg-78{--bg: #5fd787}.ap-terminal .fg-79{--fg: #5fd7af}.ap-terminal .bg-79{--bg: #5fd7af}.ap-terminal .fg-80{--fg: #5fd7d7}.ap-terminal .bg-80{--bg: #5fd7d7}.ap-terminal .fg-81{--fg: #5fd7ff}.ap-terminal .bg-81{--bg: #5fd7ff}.ap-terminal .fg-82{--fg: #5fff00}.ap-terminal .bg-82{--bg: #5fff00}.ap-terminal .fg-83{--fg: #5fff5f}.ap-terminal .bg-83{--bg: #5fff5f}.ap-terminal .fg-84{--fg: #5fff87}.ap-terminal .bg-84{--bg: #5fff87}.ap-terminal .fg-85{--fg: #5fffaf}.ap-terminal .bg-85{--bg: #5fffaf}.ap-terminal .fg-86{--fg: #5fffd7}.ap-terminal .bg-86{--bg: #5fffd7}.ap-terminal .fg-87{--fg: #5fffff}.ap-terminal .bg-87{--bg: #5fffff}.ap-terminal .fg-88{--fg: #870000}.ap-terminal .bg-88{--bg: #870000}.ap-terminal .fg-89{--fg: #87005f}.ap-terminal .bg-89{--bg: #87005f}.ap-terminal .fg-90{--fg: #870087}.ap-terminal .bg-90{--bg: #870087}.ap-terminal .fg-91{--fg: #8700af}.ap-terminal .bg-91{--bg: #8700af}.ap-terminal .fg-92{--fg: #8700d7}.ap-terminal .bg-92{--bg: #8700d7}.ap-terminal .fg-93{--fg: #8700ff}.ap-terminal .bg-93{--bg: #8700ff}.ap-terminal .fg-94{--fg: #875f00}.ap-terminal .bg-94{--bg: #875f00}.ap-terminal .fg-95{--fg: #875f5f}.ap-terminal .bg-95{--bg: #875f5f}.ap-terminal .fg-96{--fg: #875f87}.ap-terminal .bg-96{--bg: #875f87}.ap-terminal .fg-97{--fg: #875faf}.ap-terminal .bg-97{--bg: #875faf}.ap-terminal .fg-98{--fg: #875fd7}.ap-terminal .bg-98{--bg: #875fd7}.ap-terminal .fg-99{--fg: #875fff}.ap-terminal .bg-99{--bg: #875fff}.ap-terminal .fg-100{--fg: #878700}.ap-terminal .bg-100{--bg: #878700}.ap-terminal .fg-101{--fg: #87875f}.ap-terminal .bg-101{--bg: #87875f}.ap-terminal .fg-102{--fg: #878787}.ap-terminal .bg-102{--bg: #878787}.ap-terminal .fg-103{--fg: #8787af}.ap-terminal .bg-103{--bg: #8787af}.ap-terminal .fg-104{--fg: #8787d7}.ap-terminal .bg-104{--bg: #8787d7}.ap-terminal .fg-105{--fg: #8787ff}.ap-terminal .bg-105{--bg: #8787ff}.ap-terminal .fg-106{--fg: #87af00}.ap-terminal .bg-106{--bg: #87af00}.ap-terminal .fg-107{--fg: #87af5f}.ap-terminal .bg-107{--bg: #87af5f}.ap-terminal .fg-108{--fg: #87af87}.ap-terminal .bg-108{--bg: #87af87}.ap-terminal .fg-109{--fg: #87afaf}.ap-terminal .bg-109{--bg: #87afaf}.ap-terminal .fg-110{--fg: #87afd7}.ap-terminal .bg-110{--bg: #87afd7}.ap-terminal .fg-111{--fg: #87afff}.ap-terminal .bg-111{--bg: #87afff}.ap-terminal .fg-112{--fg: #87d700}.ap-terminal .bg-112{--bg: #87d700}.ap-terminal .fg-113{--fg: #87d75f}.ap-terminal .bg-113{--bg: #87d75f}.ap-terminal .fg-114{--fg: #87d787}.ap-terminal .bg-114{--bg: #87d787}.ap-terminal .fg-115{--fg: #87d7af}.ap-terminal .bg-115{--bg: #87d7af}.ap-terminal .fg-116{--fg: #87d7d7}.ap-terminal .bg-116{--bg: #87d7d7}.ap-terminal .fg-117{--fg: #87d7ff}.ap-terminal .bg-117{--bg: #87d7ff}.ap-terminal .fg-118{--fg: #87ff00}.ap-terminal .bg-118{--bg: #87ff00}.ap-terminal .fg-119{--fg: #87ff5f}.ap-terminal .bg-119{--bg: #87ff5f}.ap-terminal .fg-120{--fg: #87ff87}.ap-terminal .bg-120{--bg: #87ff87}.ap-terminal .fg-121{--fg: #87ffaf}.ap-terminal .bg-121{--bg: #87ffaf}.ap-terminal .fg-122{--fg: #87ffd7}.ap-terminal .bg-122{--bg: #87ffd7}.ap-terminal .fg-123{--fg: #87ffff}.ap-terminal .bg-123{--bg: #87ffff}.ap-terminal .fg-124{--fg: #af0000}.ap-terminal .bg-124{--bg: #af0000}.ap-terminal .fg-125{--fg: #af005f}.ap-terminal .bg-125{--bg: #af005f}.ap-terminal .fg-126{--fg: #af0087}.ap-terminal .bg-126{--bg: #af0087}.ap-terminal .fg-127{--fg: #af00af}.ap-terminal .bg-127{--bg: #af00af}.ap-terminal .fg-128{--fg: #af00d7}.ap-terminal .bg-128{--bg: #af00d7}.ap-terminal .fg-129{--fg: #af00ff}.ap-terminal .bg-129{--bg: #af00ff}.ap-terminal .fg-130{--fg: #af5f00}.ap-terminal .bg-130{--bg: #af5f00}.ap-terminal .fg-131{--fg: #af5f5f}.ap-terminal .bg-131{--bg: #af5f5f}.ap-terminal .fg-132{--fg: #af5f87}.ap-terminal .bg-132{--bg: #af5f87}.ap-terminal .fg-133{--fg: #af5faf}.ap-terminal .bg-133{--bg: #af5faf}.ap-terminal .fg-134{--fg: #af5fd7}.ap-terminal .bg-134{--bg: #af5fd7}.ap-terminal .fg-135{--fg: #af5fff}.ap-terminal .bg-135{--bg: #af5fff}.ap-terminal .fg-136{--fg: #af8700}.ap-terminal .bg-136{--bg: #af8700}.ap-terminal .fg-137{--fg: #af875f}.ap-terminal .bg-137{--bg: #af875f}.ap-terminal .fg-138{--fg: #af8787}.ap-terminal .bg-138{--bg: #af8787}.ap-terminal .fg-139{--fg: #af87af}.ap-terminal .bg-139{--bg: #af87af}.ap-terminal .fg-140{--fg: #af87d7}.ap-terminal .bg-140{--bg: #af87d7}.ap-terminal .fg-141{--fg: #af87ff}.ap-terminal .bg-141{--bg: #af87ff}.ap-terminal .fg-142{--fg: #afaf00}.ap-terminal .bg-142{--bg: #afaf00}.ap-terminal .fg-143{--fg: #afaf5f}.ap-terminal .bg-143{--bg: #afaf5f}.ap-terminal .fg-144{--fg: #afaf87}.ap-terminal .bg-144{--bg: #afaf87}.ap-terminal .fg-145{--fg: #afafaf}.ap-terminal .bg-145{--bg: #afafaf}.ap-terminal .fg-146{--fg: #afafd7}.ap-terminal .bg-146{--bg: #afafd7}.ap-terminal .fg-147{--fg: #afafff}.ap-terminal .bg-147{--bg: #afafff}.ap-terminal .fg-148{--fg: #afd700}.ap-terminal .bg-148{--bg: #afd700}.ap-terminal .fg-149{--fg: #afd75f}.ap-terminal .bg-149{--bg: #afd75f}.ap-terminal .fg-150{--fg: #afd787}.ap-terminal .bg-150{--bg: #afd787}.ap-terminal .fg-151{--fg: #afd7af}.ap-terminal .bg-151{--bg: #afd7af}.ap-terminal .fg-152{--fg: #afd7d7}.ap-terminal .bg-152{--bg: #afd7d7}.ap-terminal .fg-153{--fg: #afd7ff}.ap-terminal .bg-153{--bg: #afd7ff}.ap-terminal .fg-154{--fg: #afff00}.ap-terminal .bg-154{--bg: #afff00}.ap-terminal .fg-155{--fg: #afff5f}.ap-terminal .bg-155{--bg: #afff5f}.ap-terminal .fg-156{--fg: #afff87}.ap-terminal .bg-156{--bg: #afff87}.ap-terminal .fg-157{--fg: #afffaf}.ap-terminal .bg-157{--bg: #afffaf}.ap-terminal .fg-158{--fg: #afffd7}.ap-terminal .bg-158{--bg: #afffd7}.ap-terminal .fg-159{--fg: #afffff}.ap-terminal .bg-159{--bg: #afffff}.ap-terminal .fg-160{--fg: #d70000}.ap-terminal .bg-160{--bg: #d70000}.ap-terminal .fg-161{--fg: #d7005f}.ap-terminal .bg-161{--bg: #d7005f}.ap-terminal .fg-162{--fg: #d70087}.ap-terminal .bg-162{--bg: #d70087}.ap-terminal .fg-163{--fg: #d700af}.ap-terminal .bg-163{--bg: #d700af}.ap-terminal .fg-164{--fg: #d700d7}.ap-terminal .bg-164{--bg: #d700d7}.ap-terminal .fg-165{--fg: #d700ff}.ap-terminal .bg-165{--bg: #d700ff}.ap-terminal .fg-166{--fg: #d75f00}.ap-terminal .bg-166{--bg: #d75f00}.ap-terminal .fg-167{--fg: #d75f5f}.ap-terminal .bg-167{--bg: #d75f5f}.ap-terminal .fg-168{--fg: #d75f87}.ap-terminal .bg-168{--bg: #d75f87}.ap-terminal .fg-169{--fg: #d75faf}.ap-terminal .bg-169{--bg: #d75faf}.ap-terminal .fg-170{--fg: #d75fd7}.ap-terminal .bg-170{--bg: #d75fd7}.ap-terminal .fg-171{--fg: #d75fff}.ap-terminal .bg-171{--bg: #d75fff}.ap-terminal .fg-172{--fg: #d78700}.ap-terminal .bg-172{--bg: #d78700}.ap-terminal .fg-173{--fg: #d7875f}.ap-terminal .bg-173{--bg: #d7875f}.ap-terminal .fg-174{--fg: #d78787}.ap-terminal .bg-174{--bg: #d78787}.ap-terminal .fg-175{--fg: #d787af}.ap-terminal .bg-175{--bg: #d787af}.ap-terminal .fg-176{--fg: #d787d7}.ap-terminal .bg-176{--bg: #d787d7}.ap-terminal .fg-177{--fg: #d787ff}.ap-terminal .bg-177{--bg: #d787ff}.ap-terminal .fg-178{--fg: #d7af00}.ap-terminal .bg-178{--bg: #d7af00}.ap-terminal .fg-179{--fg: #d7af5f}.ap-terminal .bg-179{--bg: #d7af5f}.ap-terminal .fg-180{--fg: #d7af87}.ap-terminal .bg-180{--bg: #d7af87}.ap-terminal .fg-181{--fg: #d7afaf}.ap-terminal .bg-181{--bg: #d7afaf}.ap-terminal .fg-182{--fg: #d7afd7}.ap-terminal .bg-182{--bg: #d7afd7}.ap-terminal .fg-183{--fg: #d7afff}.ap-terminal .bg-183{--bg: #d7afff}.ap-terminal .fg-184{--fg: #d7d700}.ap-terminal .bg-184{--bg: #d7d700}.ap-terminal .fg-185{--fg: #d7d75f}.ap-terminal .bg-185{--bg: #d7d75f}.ap-terminal .fg-186{--fg: #d7d787}.ap-terminal .bg-186{--bg: #d7d787}.ap-terminal .fg-187{--fg: #d7d7af}.ap-terminal .bg-187{--bg: #d7d7af}.ap-terminal .fg-188{--fg: #d7d7d7}.ap-terminal .bg-188{--bg: #d7d7d7}.ap-terminal .fg-189{--fg: #d7d7ff}.ap-terminal .bg-189{--bg: #d7d7ff}.ap-terminal .fg-190{--fg: #d7ff00}.ap-terminal .bg-190{--bg: #d7ff00}.ap-terminal .fg-191{--fg: #d7ff5f}.ap-terminal .bg-191{--bg: #d7ff5f}.ap-terminal .fg-192{--fg: #d7ff87}.ap-terminal .bg-192{--bg: #d7ff87}.ap-terminal .fg-193{--fg: #d7ffaf}.ap-terminal .bg-193{--bg: #d7ffaf}.ap-terminal .fg-194{--fg: #d7ffd7}.ap-terminal .bg-194{--bg: #d7ffd7}.ap-terminal .fg-195{--fg: #d7ffff}.ap-terminal .bg-195{--bg: #d7ffff}.ap-terminal .fg-196{--fg: #ff0000}.ap-terminal .bg-196{--bg: #ff0000}.ap-terminal .fg-197{--fg: #ff005f}.ap-terminal .bg-197{--bg: #ff005f}.ap-terminal .fg-198{--fg: #ff0087}.ap-terminal .bg-198{--bg: #ff0087}.ap-terminal .fg-199{--fg: #ff00af}.ap-terminal .bg-199{--bg: #ff00af}.ap-terminal .fg-200{--fg: #ff00d7}.ap-terminal .bg-200{--bg: #ff00d7}.ap-terminal .fg-201{--fg: #ff00ff}.ap-terminal .bg-201{--bg: #ff00ff}.ap-terminal .fg-202{--fg: #ff5f00}.ap-terminal .bg-202{--bg: #ff5f00}.ap-terminal .fg-203{--fg: #ff5f5f}.ap-terminal .bg-203{--bg: #ff5f5f}.ap-terminal .fg-204{--fg: #ff5f87}.ap-terminal .bg-204{--bg: #ff5f87}.ap-terminal .fg-205{--fg: #ff5faf}.ap-terminal .bg-205{--bg: #ff5faf}.ap-terminal .fg-206{--fg: #ff5fd7}.ap-terminal .bg-206{--bg: #ff5fd7}.ap-terminal .fg-207{--fg: #ff5fff}.ap-terminal .bg-207{--bg: #ff5fff}.ap-terminal .fg-208{--fg: #ff8700}.ap-terminal .bg-208{--bg: #ff8700}.ap-terminal .fg-209{--fg: #ff875f}.ap-terminal .bg-209{--bg: #ff875f}.ap-terminal .fg-210{--fg: #ff8787}.ap-terminal .bg-210{--bg: #ff8787}.ap-terminal .fg-211{--fg: #ff87af}.ap-terminal .bg-211{--bg: #ff87af}.ap-terminal .fg-212{--fg: #ff87d7}.ap-terminal .bg-212{--bg: #ff87d7}.ap-terminal .fg-213{--fg: #ff87ff}.ap-terminal .bg-213{--bg: #ff87ff}.ap-terminal .fg-214{--fg: #ffaf00}.ap-terminal .bg-214{--bg: #ffaf00}.ap-terminal .fg-215{--fg: #ffaf5f}.ap-terminal .bg-215{--bg: #ffaf5f}.ap-terminal .fg-216{--fg: #ffaf87}.ap-terminal .bg-216{--bg: #ffaf87}.ap-terminal .fg-217{--fg: #ffafaf}.ap-terminal .bg-217{--bg: #ffafaf}.ap-terminal .fg-218{--fg: #ffafd7}.ap-terminal .bg-218{--bg: #ffafd7}.ap-terminal .fg-219{--fg: #ffafff}.ap-terminal .bg-219{--bg: #ffafff}.ap-terminal .fg-220{--fg: #ffd700}.ap-terminal .bg-220{--bg: #ffd700}.ap-terminal .fg-221{--fg: #ffd75f}.ap-terminal .bg-221{--bg: #ffd75f}.ap-terminal .fg-222{--fg: #ffd787}.ap-terminal .bg-222{--bg: #ffd787}.ap-terminal .fg-223{--fg: #ffd7af}.ap-terminal .bg-223{--bg: #ffd7af}.ap-terminal .fg-224{--fg: #ffd7d7}.ap-terminal .bg-224{--bg: #ffd7d7}.ap-terminal .fg-225{--fg: #ffd7ff}.ap-terminal .bg-225{--bg: #ffd7ff}.ap-terminal .fg-226{--fg: #ffff00}.ap-terminal .bg-226{--bg: #ffff00}.ap-terminal .fg-227{--fg: #ffff5f}.ap-terminal .bg-227{--bg: #ffff5f}.ap-terminal .fg-228{--fg: #ffff87}.ap-terminal .bg-228{--bg: #ffff87}.ap-terminal .fg-229{--fg: #ffffaf}.ap-terminal .bg-229{--bg: #ffffaf}.ap-terminal .fg-230{--fg: #ffffd7}.ap-terminal .bg-230{--bg: #ffffd7}.ap-terminal .fg-231{--fg: #ffffff}.ap-terminal .bg-231{--bg: #ffffff}.ap-terminal .fg-232{--fg: #080808}.ap-terminal .bg-232{--bg: #080808}.ap-terminal .fg-233{--fg: #121212}.ap-terminal .bg-233{--bg: #121212}.ap-terminal .fg-234{--fg: #1c1c1c}.ap-terminal .bg-234{--bg: #1c1c1c}.ap-terminal .fg-235{--fg: #262626}.ap-terminal .bg-235{--bg: #262626}.ap-terminal .fg-236{--fg: #303030}.ap-terminal .bg-236{--bg: #303030}.ap-terminal .fg-237{--fg: #3a3a3a}.ap-terminal .bg-237{--bg: #3a3a3a}.ap-terminal .fg-238{--fg: #444444}.ap-terminal .bg-238{--bg: #444444}.ap-terminal .fg-239{--fg: #4e4e4e}.ap-terminal .bg-239{--bg: #4e4e4e}.ap-terminal .fg-240{--fg: #585858}.ap-terminal .bg-240{--bg: #585858}.ap-terminal .fg-241{--fg: #626262}.ap-terminal .bg-241{--bg: #626262}.ap-terminal .fg-242{--fg: #6c6c6c}.ap-terminal .bg-242{--bg: #6c6c6c}.ap-terminal .fg-243{--fg: #767676}.ap-terminal .bg-243{--bg: #767676}.ap-terminal .fg-244{--fg: #808080}.ap-terminal .bg-244{--bg: #808080}.ap-terminal .fg-245{--fg: #8a8a8a}.ap-terminal .bg-245{--bg: #8a8a8a}.ap-terminal .fg-246{--fg: #949494}.ap-terminal .bg-246{--bg: #949494}.ap-terminal .fg-247{--fg: #9e9e9e}.ap-terminal .bg-247{--bg: #9e9e9e}.ap-terminal .fg-248{--fg: #a8a8a8}.ap-terminal .bg-248{--bg: #a8a8a8}.ap-terminal .fg-249{--fg: #b2b2b2}.ap-terminal .bg-249{--bg: #b2b2b2}.ap-terminal .fg-250{--fg: #bcbcbc}.ap-terminal .bg-250{--bg: #bcbcbc}.ap-terminal .fg-251{--fg: #c6c6c6}.ap-terminal .bg-251{--bg: #c6c6c6}.ap-terminal .fg-252{--fg: #d0d0d0}.ap-terminal .bg-252{--bg: #d0d0d0}.ap-terminal .fg-253{--fg: #dadada}.ap-terminal .bg-253{--bg: #dadada}.ap-terminal .fg-254{--fg: #e4e4e4}.ap-terminal .bg-254{--bg: #e4e4e4}.ap-terminal .fg-255{--fg: #eeeeee}.ap-terminal .bg-255{--bg: #eeeeee}.asciinema-player-theme-asciinema{--term-color-foreground: #cccccc;--term-color-background: #121314;--term-color-0: hsl(0, 0%, 0%);--term-color-1: hsl(343, 70%, 55%);--term-color-2: hsl(103, 70%, 44%);--term-color-3: hsl(43, 70%, 55%);--term-color-4: hsl(193, 70%, 49.5%);--term-color-5: hsl(283, 70%, 60.5%);--term-color-6: hsl(163, 70%, 60.5%);--term-color-7: hsl(0, 0%, 85%);--term-color-8: hsl(0, 0%, 30%);--term-color-9: hsl(343, 70%, 55%);--term-color-10: hsl(103, 70%, 44%);--term-color-11: hsl(43, 70%, 55%);--term-color-12: hsl(193, 70%, 49.5%);--term-color-13: hsl(283, 70%, 60.5%);--term-color-14: hsl(163, 70%, 60.5%);--term-color-15: hsl(0, 0%, 100%)}.asciinema-player-theme-dracula{--term-color-foreground: #f8f8f2;--term-color-background: #282a36;--term-color-0: #21222c;--term-color-1: #ff5555;--term-color-2: #50fa7b;--term-color-3: #f1fa8c;--term-color-4: #bd93f9;--term-color-5: #ff79c6;--term-color-6: #8be9fd;--term-color-7: #f8f8f2;--term-color-8: #6272a4;--term-color-9: #ff6e6e;--term-color-10: #69ff94;--term-color-11: #ffffa5;--term-color-12: #d6acff;--term-color-13: #ff92df;--term-color-14: #a4ffff;--term-color-15: #ffffff}.asciinema-player-theme-monokai{--term-color-foreground: #f8f8f2;--term-color-background: #272822;--term-color-0: #272822;--term-color-1: #f92672;--term-color-2: #a6e22e;--term-color-3: #f4bf75;--term-color-4: #66d9ef;--term-color-5: #ae81ff;--term-color-6: #a1efe4;--term-color-7: #f8f8f2;--term-color-8: #75715e;--term-color-15: #f9f8f5}.asciinema-player-theme-nord{--term-color-foreground: #eceff4;--term-color-background: #2e3440;--term-color-0: #3b4252;--term-color-1: #bf616a;--term-color-2: #a3be8c;--term-color-3: #ebcb8b;--term-color-4: #81a1c1;--term-color-5: #b48ead;--term-color-6: #88c0d0;--term-color-7: #eceff4}.asciinema-player-theme-seti{--term-color-foreground: #cacecd;--term-color-background: #111213;--term-color-0: #323232;--term-color-1: #c22832;--term-color-2: #8ec43d;--term-color-3: #e0c64f;--term-color-4: #43a5d5;--term-color-5: #8b57b5;--term-color-6: #8ec43d;--term-color-7: #eeeeee;--term-color-15: #ffffff}.asciinema-player-theme-solarized-dark{--term-color-foreground: #839496;--term-color-background: #002b36;--term-color-0: #073642;--term-color-1: #dc322f;--term-color-2: #859900;--term-color-3: #b58900;--term-color-4: #268bd2;--term-color-5: #d33682;--term-color-6: #2aa198;--term-color-7: #eee8d5;--term-color-8: #002b36;--term-color-9: #cb4b16;--term-color-10: #586e75;--term-color-11: #657b83;--term-color-12: #839496;--term-color-13: #6c71c4;--term-color-14: #93a1a1;--term-color-15: #fdf6e3}.asciinema-player-theme-solarized-light{--term-color-foreground: #657b83;--term-color-background: #fdf6e3;--term-color-0: #073642;--term-color-1: #dc322f;--term-color-2: #859900;--term-color-3: #b58900;--term-color-4: #268bd2;--term-color-5: #d33682;--term-color-6: #2aa198;--term-color-7: #eee8d5;--term-color-8: #002b36;--term-color-9: #cb4b16;--term-color-10: #586e75;--term-color-11: #657c83;--term-color-12: #839496;--term-color-13: #6c71c4;--term-color-14: #93a1a1;--term-color-15: #fdf6e3}.asciinema-player-theme-solarized-light .ap-overlay-start .ap-play-button svg .ap-play-btn-fill{fill:var(--term-color-1)}.asciinema-player-theme-solarized-light .ap-overlay-start .ap-play-button svg .ap-play-btn-stroke{stroke:var(--term-color-1)}.asciinema-player-theme-tango{--term-color-foreground: #cccccc;--term-color-background: #121314;--term-color-0: #000000;--term-color-1: #cc0000;--term-color-2: #4e9a06;--term-color-3: #c4a000;--term-color-4: #3465a4;--term-color-5: #75507b;--term-color-6: #06989a;--term-color-7: #d3d7cf;--term-color-8: #555753;--term-color-9: #ef2929;--term-color-10: #8ae234;--term-color-11: #fce94f;--term-color-12: #729fcf;--term-color-13: #ad7fa8;--term-color-14: #34e2e2;--term-color-15: #eeeeec} diff --git a/data/gitea/public/assets/css/code-frequency-graph.55afbe7d.css b/data/gitea/public/assets/css/code-frequency-graph.55afbe7d.css new file mode 100644 index 0000000..0014ffa --- /dev/null +++ b/data/gitea/public/assets/css/code-frequency-graph.55afbe7d.css @@ -0,0 +1 @@ +.main-graph[data-v-8f699cd6]{height:440px} diff --git a/data/gitea/public/assets/css/colorpicker.ec78e358.css b/data/gitea/public/assets/css/colorpicker.ec78e358.css new file mode 100644 index 0000000..469db3c --- /dev/null +++ b/data/gitea/public/assets/css/colorpicker.ec78e358.css @@ -0,0 +1 @@ +.js-color-picker-input{display:flex;position:relative}.js-color-picker-input input{padding-top:8px!important;padding-bottom:8px!important;padding-left:32px!important}.js-color-picker-input .preview-square{position:absolute;aspect-ratio:1;height:16px;left:10px;top:50%;transform:translateY(-50%);border-radius:2px;background:repeating-linear-gradient(45deg,#aaa 25%,transparent 25%,transparent 75%,#aaa 75%,#aaa),repeating-linear-gradient(45deg,#aaa 25%,#fff 25% 75%,#aaa 75%,#aaa);background-position:0 0,4px 4px;background-size:8px 8px}.js-color-picker-input .preview-square:after{content:"";position:absolute;width:100%;height:100%;border-radius:inherit;background-color:currentcolor}hex-color-picker{width:180px;height:120px}hex-color-picker::part(hue-pointer),hex-color-picker::part(saturation-pointer){width:22px;height:22px}hex-color-picker::part(hue){flex-basis:16px} diff --git a/data/gitea/public/assets/css/contributors-graph.66f42f73.css b/data/gitea/public/assets/css/contributors-graph.66f42f73.css new file mode 100644 index 0000000..a286476 --- /dev/null +++ b/data/gitea/public/assets/css/contributors-graph.66f42f73.css @@ -0,0 +1 @@ +.main-graph[data-v-47958124]{height:260px;padding-top:2px}.contributor-grid[data-v-47958124]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.contributor-grid[data-v-47958124]>*{min-width:0}@media (max-width: 991.98px){.contributor-grid[data-v-47958124]{grid-template-columns:repeat(1,1fr)}}.contributor-name[data-v-47958124]{margin-bottom:0} diff --git a/data/gitea/public/assets/css/dropzone.5a752d14.css b/data/gitea/public/assets/css/dropzone.5a752d14.css new file mode 100644 index 0000000..64e93a1 --- /dev/null +++ b/data/gitea/public/assets/css/dropzone.5a752d14.css @@ -0,0 +1 @@ +@keyframes passing-through{0%{opacity:0;transform:translateY(40px)}30%,70%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-40px)}}@keyframes slide-in{0%{opacity:0;transform:translateY(40px)}30%{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1)}10%{transform:scale(1.1)}20%{transform:scale(1)}}.dropzone,.dropzone *{box-sizing:border-box}.dropzone{min-height:150px;border:1px solid rgba(0,0,0,.8);border-radius:5px;padding:20px}.dropzone.dz-clickable{cursor:pointer}.dropzone.dz-clickable *{cursor:default}.dropzone.dz-clickable .dz-message,.dropzone.dz-clickable .dz-message *{cursor:pointer}.dropzone.dz-started .dz-message{display:none}.dropzone.dz-drag-hover{border-style:solid}.dropzone.dz-drag-hover .dz-message{opacity:.5}.dropzone .dz-message{text-align:center;margin:3em 0}.dropzone .dz-message .dz-button{background:none;color:inherit;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit}.dropzone .dz-preview{position:relative;display:inline-block;vertical-align:top;margin:16px;min-height:100px}.dropzone .dz-preview:hover{z-index:1000}.dropzone .dz-preview.dz-file-preview .dz-image{border-radius:20px;background:#999;background:linear-gradient(to bottom,#eee,#ddd)}.dropzone .dz-preview.dz-file-preview .dz-details{opacity:1}.dropzone .dz-preview.dz-image-preview{background:#fff}.dropzone .dz-preview.dz-image-preview .dz-details{transition:opacity .2s linear}.dropzone .dz-preview .dz-remove{font-size:14px;text-align:center;display:block;cursor:pointer;border:none}.dropzone .dz-preview .dz-remove:hover{text-decoration:underline}.dropzone .dz-preview:hover .dz-details{opacity:1}.dropzone .dz-preview .dz-details{z-index:20;position:absolute;top:0;left:0;opacity:0;font-size:13px;min-width:100%;max-width:100%;padding:2em 1em;text-align:center;color:#000000e6;line-height:150%}.dropzone .dz-preview .dz-details .dz-size{margin-bottom:1em;font-size:16px}.dropzone .dz-preview .dz-details .dz-filename{white-space:nowrap}.dropzone .dz-preview .dz-details .dz-filename:hover span{border:1px solid rgba(200,200,200,.8);background-color:#fffc}.dropzone .dz-preview .dz-details .dz-filename:not(:hover){overflow:hidden;text-overflow:ellipsis}.dropzone .dz-preview .dz-details .dz-filename:not(:hover) span{border:1px solid transparent}.dropzone .dz-preview .dz-details .dz-filename span,.dropzone .dz-preview .dz-details .dz-size span{background-color:#fff6;padding:0 .4em;border-radius:3px}.dropzone .dz-preview:hover .dz-image img{transform:scale(1.05);filter:blur(8px)}.dropzone .dz-preview .dz-image{border-radius:20px;overflow:hidden;width:120px;height:120px;position:relative;display:block;z-index:10}.dropzone .dz-preview .dz-image img{display:block}.dropzone .dz-preview.dz-success .dz-success-mark{animation:passing-through 3s cubic-bezier(.77,0,.175,1)}.dropzone .dz-preview.dz-error .dz-error-mark{opacity:1;animation:slide-in 3s cubic-bezier(.77,0,.175,1)}.dropzone .dz-preview .dz-success-mark,.dropzone .dz-preview .dz-error-mark{pointer-events:none;opacity:0;z-index:500;position:absolute;display:block;top:50%;left:50%;margin-left:-27px;margin-top:-27px;background:#000c;border-radius:50%}.dropzone .dz-preview .dz-success-mark svg,.dropzone .dz-preview .dz-error-mark svg{display:block;width:54px;height:54px;fill:#fff}.dropzone .dz-preview.dz-processing .dz-progress{opacity:1;transition:all .2s linear}.dropzone .dz-preview.dz-complete .dz-progress{opacity:0;transition:opacity .4s ease-in}.dropzone .dz-preview:not(.dz-processing) .dz-progress{animation:pulse 6s ease infinite}.dropzone .dz-preview .dz-progress{opacity:1;z-index:1000;pointer-events:none;position:absolute;height:20px;top:50%;margin-top:-10px;left:15%;right:15%;border:3px solid rgba(0,0,0,.8);background:#000c;border-radius:10px;overflow:hidden}.dropzone .dz-preview .dz-progress .dz-upload{background:#fff;display:block;position:relative;height:100%;width:0;transition:width .3s ease-in-out;border-radius:17px}.dropzone .dz-preview.dz-error .dz-error-message{display:block}.dropzone .dz-preview.dz-error:hover .dz-error-message{opacity:1;pointer-events:auto}.dropzone .dz-preview .dz-error-message{pointer-events:none;z-index:1000;position:absolute;display:block;display:none;opacity:0;transition:opacity .3s ease;border-radius:8px;font-size:13px;top:130px;left:-10px;width:140px;background:#b10606;padding:.5em 1em;color:#fff}.dropzone .dz-preview .dz-error-message:after{content:"";position:absolute;top:-6px;left:64px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #b10606} diff --git a/data/gitea/public/assets/css/index.css b/data/gitea/public/assets/css/index.css new file mode 100644 index 0000000..7f481eb --- /dev/null +++ b/data/gitea/public/assets/css/index.css @@ -0,0 +1 @@ +ul[data-v-80805488]{list-style:none;margin:0;padding-left:0}ul li[data-v-80805488]{padding:0 10px}ul li[data-v-80805488]:not(:last-child){border-bottom:1px solid var(--color-secondary)}.repos-search[data-v-80805488]{padding-bottom:0!important}.repos-filter[data-v-80805488]{margin-top:0!important;border-bottom-width:0!important}.repos-filter .item[data-v-80805488]{padding-left:6px!important;padding-right:6px!important}.repo-list-link[data-v-80805488]{min-width:0;display:flex;align-items:center;flex:1;gap:.5rem}.repo-list-link .svg[data-v-80805488]{color:var(--color-text-light-2)}.repo-list-icon[data-v-80805488]{min-width:16px;margin-right:2px}.repo-list-icon.octicon-mirror[data-v-80805488]{width:14px;min-width:14px;margin-left:1px;margin-right:3px}.repo-owner-name-list li.active[data-v-80805488]{background:var(--color-hover)}a[data-v-9574f84c],a[data-v-9574f84c]:hover{text-decoration:none;color:var(--color-text)}.sub-items[data-v-9574f84c]{display:flex;flex-direction:column;gap:1px;margin-left:13px;border-left:1px solid var(--color-secondary)}.sub-items .item-file[data-v-9574f84c]{padding-left:18px}.item-file.selected[data-v-9574f84c]{color:var(--color-text);background:var(--color-active);border-radius:4px}.item-file.viewed[data-v-9574f84c]{color:var(--color-text-light-3)}.item-file[data-v-9574f84c],.item-directory[data-v-9574f84c]{display:flex;align-items:center;gap:.25em;padding:3px 6px}.item-file[data-v-9574f84c]:hover,.item-directory[data-v-9574f84c]:hover{color:var(--color-text);background:var(--color-hover);border-radius:4px;cursor:pointer}.diff-file-tree-items[data-v-3385ef54]{display:flex;flex-direction:column;gap:1px;margin-right:.5rem}.hovered[data-v-37badef1]:not(.selection){background-color:var(--color-small-accent)!important}.selection[data-v-37badef1]{background-color:var(--color-accent)!important}.info[data-v-37badef1]{display:inline-block;padding:7px 14px!important;line-height:1.4;width:100%}#diff-commit-selector-menu[data-v-37badef1]{margin-top:.25em;overflow-x:hidden;max-height:450px}#diff-commit-selector-menu .loading-indicator[data-v-37badef1]{height:200px;width:350px}#diff-commit-selector-menu .item[data-v-37badef1],#diff-commit-selector-menu .info[data-v-37badef1]{display:flex!important;flex-direction:row;line-height:1.4;padding:7px 14px!important;gap:.25em}#diff-commit-selector-menu .item[data-v-37badef1]:not(:first-child),#diff-commit-selector-menu .info[data-v-37badef1]:not(:first-child){border-top:1px solid var(--color-secondary)!important}#diff-commit-selector-menu .item[data-v-37badef1]:focus{color:var(--color-text);background:var(--color-hover)}#diff-commit-selector-menu .commit-list-summary[data-v-37badef1]{max-width:min(380px,96vw)}.ui.dropdown .menu.show[data-v-4cc25658]{display:block}.ui.checkbox label[data-v-4cc25658]{cursor:pointer}.ui.merge-button[data-v-4cc25658]{position:relative}.ui.merge-button .ui.dropdown[data-v-4cc25658]{position:static}.ui.merge-button>.ui.dropdown:last-child>.menu[data-v-4cc25658]:not(.left){left:0;right:auto}.ui.merge-button .ui.dropdown .menu>.item[data-v-4cc25658]{display:flex;align-items:stretch;padding:0!important}.action-text[data-v-4cc25658]{padding:.8rem;flex:1}.auto-merge-small[data-v-4cc25658]{width:40px;display:flex;align-items:center;justify-content:center;position:relative}.auto-merge-small .auto-merge-tip[data-v-4cc25658]{display:none;left:38px;top:-1px;bottom:-1px;position:absolute;align-items:center;color:var(--color-info-text);background-color:var(--color-info-bg);border:1px solid var(--color-info-border);border-left:none;padding-right:1rem}.auto-merge-small[data-v-4cc25658]:hover{color:var(--color-info-text);background-color:var(--color-info-bg);border:1px solid var(--color-info-border)}.auto-merge-small:hover .auto-merge-tip[data-v-4cc25658]{display:flex}.action-view-body[data-v-2e3e6354]{padding-top:12px;padding-bottom:12px;display:flex;gap:12px}.action-view-header[data-v-2e3e6354]{margin-top:8px}.action-info-summary[data-v-2e3e6354]{display:flex;align-items:center;justify-content:space-between;gap:8px}.action-info-summary-title[data-v-2e3e6354]{display:flex}.action-info-summary-title-text[data-v-2e3e6354]{font-size:20px;margin:0 0 0 8px;flex:1;overflow-wrap:anywhere}.action-commit-summary[data-v-2e3e6354]{display:flex;flex-wrap:wrap;gap:5px;margin-left:28px}@media (max-width: 767.98px){.action-commit-summary[data-v-2e3e6354]{margin-left:0;margin-top:8px}}.action-view-left[data-v-2e3e6354]{width:30%;max-width:400px;position:sticky;top:12px;max-height:100vh;overflow-y:auto;background:var(--color-body);z-index:2}@media (max-width: 767.98px){.action-view-left[data-v-2e3e6354]{position:static}}.job-artifacts-title[data-v-2e3e6354]{font-size:18px;margin-top:16px;padding:16px 10px 0 20px;border-top:1px solid var(--color-secondary)}.job-artifacts-item[data-v-2e3e6354]{margin:5px 0;padding:6px;display:flex;justify-content:space-between}.job-artifacts-list[data-v-2e3e6354]{padding-left:12px;list-style:none}.job-artifacts-icon[data-v-2e3e6354]{padding-right:3px}.job-brief-list[data-v-2e3e6354]{display:flex;flex-direction:column;gap:8px}.job-brief-item[data-v-2e3e6354]{padding:10px;border-radius:var(--border-radius);text-decoration:none;display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;color:var(--color-text)}.job-brief-item[data-v-2e3e6354]:hover{background-color:var(--color-hover)}.job-brief-item.selected[data-v-2e3e6354]{font-weight:var(--font-weight-bold);background-color:var(--color-active)}.job-brief-item[data-v-2e3e6354]:first-of-type{margin-top:0}.job-brief-item .job-brief-rerun[data-v-2e3e6354]{cursor:pointer;transition:transform .2s}.job-brief-item .job-brief-rerun[data-v-2e3e6354]:hover{transform:scale(1.3)}.job-brief-item .job-brief-item-left[data-v-2e3e6354]{display:flex;width:100%;min-width:0}.job-brief-item .job-brief-item-left span[data-v-2e3e6354]{display:flex;align-items:center}.job-brief-item .job-brief-item-left .job-brief-name[data-v-2e3e6354]{display:block;width:70%}.job-brief-item .job-brief-item-right[data-v-2e3e6354]{display:flex;align-items:center}.action-view-right[data-v-2e3e6354]{flex:1;color:var(--color-console-fg-subtle);max-height:100%;width:70%;display:flex;flex-direction:column;border:1px solid var(--color-console-border);border-radius:var(--border-radius);background:var(--color-console-bg);align-self:flex-start}.action-view-right .ui.button[data-v-2e3e6354],.action-view-right .ui.button[data-v-2e3e6354]:focus{background:transparent;color:var(--color-console-fg-subtle)}.action-view-right .ui.button[data-v-2e3e6354]:hover{background:var(--color-console-hover-bg);color:var(--color-console-fg)}.action-view-right .ui.button[data-v-2e3e6354]:active{background:var(--color-console-active-bg);color:var(--color-console-fg)}.action-view-right .ui.dropdown .menu[data-v-2e3e6354]{background:var(--color-console-menu-bg);border-color:var(--color-console-menu-border)}.action-view-right .ui.dropdown .menu>.item[data-v-2e3e6354]{color:var(--color-console-fg)}.action-view-right .ui.dropdown .menu>.item[data-v-2e3e6354]:hover{color:var(--color-console-fg);background:var(--color-console-hover-bg)}.action-view-right .ui.dropdown .menu>.item[data-v-2e3e6354]:active{color:var(--color-console-fg);background:var(--color-console-active-bg)}.action-view-right .ui.dropdown .menu>.divider[data-v-2e3e6354]{border-top-color:var(--color-console-menu-border)}.action-view-right .ui.pointing.dropdown>.menu[data-v-2e3e6354]:not(.hidden):after{background:var(--color-console-menu-bg);box-shadow:-1px -1px 0 0 var(--color-console-menu-border)}.job-info-header[data-v-2e3e6354]{display:flex;justify-content:space-between;align-items:center;padding:0 12px;position:sticky;top:0;height:60px;z-index:1;background:var(--color-console-bg);border-radius:3px}.job-info-header[data-v-2e3e6354]:has(+.job-step-container){border-radius:var(--border-radius) var(--border-radius) 0 0}.job-info-header .job-info-header-title[data-v-2e3e6354]{color:var(--color-console-fg);font-size:16px;margin:0}.job-info-header .job-info-header-detail[data-v-2e3e6354]{color:var(--color-console-fg-subtle);font-size:12px}.job-info-header-left[data-v-2e3e6354]{flex:1}.job-step-container[data-v-2e3e6354]{max-height:100%;border-radius:0 0 var(--border-radius) var(--border-radius);border-top:1px solid var(--color-console-border);z-index:0}.job-step-container .job-step-summary[data-v-2e3e6354]{padding:5px 10px;display:flex;align-items:center;border-radius:var(--border-radius)}.job-step-container .job-step-summary.step-expandable[data-v-2e3e6354]{cursor:pointer}.job-step-container .job-step-summary.step-expandable[data-v-2e3e6354]:hover{color:var(--color-console-fg);background:var(--color-console-hover-bg)}.job-step-container .job-step-summary .step-summary-msg[data-v-2e3e6354]{flex:1}.job-step-container .job-step-summary .step-summary-duration[data-v-2e3e6354]{margin-left:16px}.job-step-container .job-step-summary.selected[data-v-2e3e6354]{color:var(--color-console-fg);background-color:var(--color-console-active-bg);position:sticky;top:60px}@media (max-width: 767.98px){.action-view-body[data-v-2e3e6354]{flex-direction:column}.action-view-left[data-v-2e3e6354],.action-view-right[data-v-2e3e6354]{width:100%}.action-view-left[data-v-2e3e6354]{max-width:none}}.job-status-rotate{animation:job-status-rotate-keyframes 1s linear infinite}@keyframes job-status-rotate-keyframes{to{transform:rotate(-360deg)}}.job-step-section{margin:10px}.job-step-section .job-step-logs{font-family:var(--fonts-monospace);margin:8px 0;font-size:12px}.job-step-section .job-step-logs .job-log-line{display:flex}.job-log-line:hover,.job-log-line:target{background-color:var(--color-console-hover-bg)}.job-log-line:target{scroll-margin-top:95px}.job-log-line .line-num,.log-time-seconds{width:48px;color:var(--color-text-light-3);text-align:right;user-select:none}.job-log-line:target>.line-num{color:var(--color-primary);text-decoration:underline}.log-time-seconds{padding-right:2px}.job-log-line .log-time,.log-time-stamp{color:var(--color-text-light-3);margin-left:10px;white-space:nowrap}.job-step-section .job-step-logs .job-log-line .log-msg{flex:1;word-break:break-all;white-space:break-spaces;margin-left:10px;overflow-wrap:anywhere}.full.height>.action-view-right{width:100%;height:100%;padding:0;border-radius:0}.full.height>.action-view-right>.job-info-header{border-radius:0}.full.height>.action-view-right>.job-step-container{height:calc(100% - 60px);border-radius:0}.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor .CodeMirror-line::selection,.cm-fat-cursor .CodeMirror-line>span::selection,.cm-fat-cursor .CodeMirror-line>span>span::selection{background:0 0}.cm-fat-cursor .CodeMirror-line::-moz-selection,.cm-fat-cursor .CodeMirror-line>span::-moz-selection,.cm-fat-cursor .CodeMirror-line>span>span::-moz-selection{background:0 0}.cm-fat-cursor{caret-color:transparent}@-moz-keyframes blink{50%{background-color:transparent}}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;inset:-50px 0 0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-s-default .cm-error,.cm-invalidchar{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:#ff96004d}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:0;position:relative;z-index:0}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none;outline:0}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:0 0!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:0 0;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;inset:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}.CodeMirror-code{outline:0}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}div.CodeMirror-dragcursors,.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:#ff06}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:""}span.CodeMirror-selectedtext{background:0 0}.EasyMDEContainer{display:block}.CodeMirror-rtl pre{direction:rtl}.EasyMDEContainer.sided--no-fullscreen{display:flex;flex-direction:row;flex-wrap:wrap}.EasyMDEContainer .CodeMirror{box-sizing:border-box;height:auto;border:1px solid #ced4da;border-bottom-left-radius:4px;border-bottom-right-radius:4px;padding:10px;font:inherit;z-index:0;word-wrap:break-word}.EasyMDEContainer .CodeMirror-scroll{cursor:text}.EasyMDEContainer .CodeMirror-fullscreen{background:#fff;position:fixed!important;inset:50px 0 0;height:auto;z-index:8;border-right:none!important;border-bottom-right-radius:0!important}.EasyMDEContainer .CodeMirror-sided{width:50%!important}.EasyMDEContainer.sided--no-fullscreen .CodeMirror-sided{border-right:none!important;border-bottom-right-radius:0;position:relative;flex:1 1 auto}.EasyMDEContainer .CodeMirror-placeholder{opacity:.5}.EasyMDEContainer .CodeMirror-focused .CodeMirror-selected{background:#d9d9d9}.editor-toolbar{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;padding:9px 10px;border-top:1px solid #ced4da;border-left:1px solid #ced4da;border-right:1px solid #ced4da;border-top-left-radius:4px;border-top-right-radius:4px}.editor-toolbar.fullscreen{width:100%;height:50px;padding-top:10px;padding-bottom:10px;box-sizing:border-box;background:#fff;border:0;position:fixed;top:0;left:0;opacity:1;z-index:9}.editor-toolbar.fullscreen:before{width:20px;height:50px;background:-moz-linear-gradient(left,#fff 0,rgba(255,255,255,0) 100%);background:-webkit-gradient(linear,left top,right top,color-stop(0,#fff),color-stop(100%,rgba(255,255,255,0)));background:-webkit-linear-gradient(left,#fff 0,rgba(255,255,255,0) 100%);background:-o-linear-gradient(left,#fff 0,rgba(255,255,255,0) 100%);background:-ms-linear-gradient(left,#fff 0,rgba(255,255,255,0) 100%);background:linear-gradient(to right,#fff 0,#fff0);position:fixed;top:0;left:0;margin:0;padding:0}.editor-toolbar.fullscreen:after{width:20px;height:50px;background:-moz-linear-gradient(left,rgba(255,255,255,0) 0,#fff 100%);background:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(255,255,255,0)),color-stop(100%,#fff));background:-webkit-linear-gradient(left,rgba(255,255,255,0) 0,#fff 100%);background:-o-linear-gradient(left,rgba(255,255,255,0) 0,#fff 100%);background:-ms-linear-gradient(left,rgba(255,255,255,0) 0,#fff 100%);background:linear-gradient(to right,#fff0 0,#fff);position:fixed;top:0;right:0;margin:0;padding:0}.EasyMDEContainer.sided--no-fullscreen .editor-toolbar{width:100%}.editor-toolbar .easymde-dropdown,.editor-toolbar button{background:0 0;display:inline-block;text-align:center;text-decoration:none!important;height:30px;margin:0;padding:0;border:1px solid transparent;border-radius:3px;cursor:pointer}.editor-toolbar button{font-weight:700;min-width:30px;padding:0 6px;white-space:nowrap}.editor-toolbar button.active,.editor-toolbar button:hover{background:#fcfcfc;border-color:#95a5a6}.editor-toolbar i.separator{display:inline-block;width:0;border-left:1px solid #d9d9d9;border-right:1px solid #fff;color:transparent;text-indent:-10px;margin:0 6px}.editor-toolbar button:after{font-family:Arial,Helvetica Neue,Helvetica,sans-serif;font-size:65%;vertical-align:text-bottom;position:relative;top:2px}.editor-toolbar button.heading-1:after{content:"1"}.editor-toolbar button.heading-2:after{content:"2"}.editor-toolbar button.heading-3:after{content:"3"}.editor-toolbar button.heading-bigger:after{content:"\25b2"}.editor-toolbar button.heading-smaller:after{content:"\25bc"}.editor-toolbar.disabled-for-preview button:not(.no-disable){opacity:.6;pointer-events:none}@media only screen and (max-width:700px){.editor-toolbar i.no-mobile{display:none}}.editor-statusbar{padding:8px 10px;font-size:12px;color:#959694;text-align:right}.EasyMDEContainer.sided--no-fullscreen .editor-statusbar{width:100%}.editor-statusbar span{display:inline-block;min-width:4em;margin-left:1em}.editor-statusbar .lines:before{content:"lines: "}.editor-statusbar .words:before{content:"words: "}.editor-statusbar .characters:before{content:"characters: "}.editor-preview-full{position:absolute;width:100%;height:100%;top:0;left:0;z-index:7;overflow:auto;display:none;box-sizing:border-box}.editor-preview-side{position:fixed;bottom:0;width:50%;top:50px;right:0;z-index:9;overflow:auto;display:none;box-sizing:border-box;border:1px solid #ddd;word-wrap:break-word}.editor-preview-active-side{display:block}.EasyMDEContainer.sided--no-fullscreen .editor-preview-active-side{flex:1 1 auto;height:auto;position:static}.editor-preview-active{display:block}.editor-preview{padding:10px;background:#fafafa}.editor-preview>p{margin-top:0}.editor-preview pre{background:#eee;margin-bottom:10px}.editor-preview table td,.editor-preview table th{border:1px solid #ddd;padding:5px}.cm-s-easymde .cm-tag{color:#63a35c}.cm-s-easymde .cm-attribute{color:#795da3}.cm-s-easymde .cm-string{color:#183691}.cm-s-easymde .cm-header-1{font-size:calc(1.375rem + 1.5vw)}.cm-s-easymde .cm-header-2{font-size:calc(1.325rem + .9vw)}.cm-s-easymde .cm-header-3{font-size:calc(1.3rem + .6vw)}.cm-s-easymde .cm-header-4{font-size:calc(1.275rem + .3vw)}.cm-s-easymde .cm-header-5{font-size:1.25rem}.cm-s-easymde .cm-header-6{font-size:1rem}.cm-s-easymde .cm-header-1,.cm-s-easymde .cm-header-2,.cm-s-easymde .cm-header-3,.cm-s-easymde .cm-header-4,.cm-s-easymde .cm-header-5,.cm-s-easymde .cm-header-6{margin-bottom:.5rem;line-height:1.2}.cm-s-easymde .cm-comment{background:#0000000d;border-radius:2px}.cm-s-easymde .cm-link{color:#7f8c8d}.cm-s-easymde .cm-url{color:#aab2b3}.cm-s-easymde .cm-quote{color:#7f8c8d;font-style:italic}.editor-toolbar .easymde-dropdown{position:relative;background:linear-gradient(to bottom right,#fff 0 84%,#333 50% 100%);border-radius:0;border:1px solid #fff}.editor-toolbar .easymde-dropdown:hover{background:linear-gradient(to bottom right,#fff 0 84%,#333 50% 100%)}.easymde-dropdown-content{display:block;visibility:hidden;position:absolute;background-color:#f9f9f9;box-shadow:0 8px 16px #0003;padding:8px;z-index:2;top:30px}.easymde-dropdown:active .easymde-dropdown-content,.easymde-dropdown:focus .easymde-dropdown-content,.easymde-dropdown:focus-within .easymde-dropdown-content{visibility:visible}.easymde-dropdown-content button{display:block}span[data-img-src]:after{content:"";background-image:var(--bg-image);display:block;max-height:100%;max-width:100%;background-size:contain;height:0;padding-top:var(--height);width:var(--width);background-repeat:no-repeat}.CodeMirror .cm-spell-error:not(.cm-url):not(.cm-comment):not(.cm-tag):not(.cm-word){background:#ff000026}.dimmable:not(body){position:relative}.ui.dimmer{display:none;position:absolute;top:0!important;left:0!important;width:100%;height:100%;text-align:center;vertical-align:middle;padding:1em;background:#000000d9;opacity:0;line-height:1;animation-fill-mode:both;animation-duration:.5s;transition:background-color .5s linear;flex-direction:column;align-items:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:opacity;z-index:1000}.ui.dimmer>.content{-webkit-user-select:text;-moz-user-select:text;user-select:text;color:#fff}.ui.segment>.ui.dimmer:not(.page){border-radius:inherit}.animating.dimmable:not(body),.dimmed.dimmable:not(body){overflow:hidden}.dimmed.dimmable>.ui.animating.dimmer,.dimmed.dimmable>.ui.visible.dimmer,.ui.active.dimmer{display:flex;opacity:1}.ui.disabled.dimmer{width:0!important;height:0!important}.dimmed.dimmable>.ui.animating.legacy.dimmer,.dimmed.dimmable>.ui.visible.legacy.dimmer,.ui.active.legacy.dimmer{display:block}.ui[class*="top aligned"].dimmer{justify-content:flex-start}.ui[class*="bottom aligned"].dimmer{justify-content:flex-end}.ui.page.dimmer{position:fixed;transform-style:"";perspective:2000px;transform-origin:center center}.ui.page.dimmer.modals{-moz-perspective:none}body.animating.in.dimmable,body.dimmed.dimmable{overflow:hidden}body.dimmable>.dimmer{position:fixed}.blurring.dimmable>:not(.dimmer){filter:initial;transition:.8s filter ease}.blurring.dimmed.dimmable>:not(.dimmer):not(.popup){filter:blur(5px) grayscale(.7)}.blurring.dimmable>.dimmer{background:#0009}.blurring.dimmable>.inverted.dimmer{background:#fff9}.ui.dimmer>.top.aligned.content>*{vertical-align:top}.ui.dimmer>.bottom.aligned.content>*{vertical-align:bottom}.medium.medium.medium.medium.medium.dimmer{background:#000000a6}.light.light.light.light.light.dimmer{background:#00000073}.very.light.light.light.light.dimmer{background:#00000040}.ui.simple.dimmer{display:block;overflow:hidden;opacity:0;width:0;height:0;z-index:-100;background:#0000}.dimmed.dimmable>.ui.simple.dimmer{overflow:visible;opacity:1;width:100%;height:100%;background:#000000d9;z-index:1}.ui.simple.inverted.dimmer{background:#fff0}.dimmed.dimmable>.ui.simple.inverted.dimmer{background:#ffffffd9}.ui[class*="top dimmer"],.ui[class*="center dimmer"],.ui[class*="bottom dimmer"]{height:auto}.ui[class*="bottom dimmer"]{top:auto!important;bottom:0}.ui[class*="center dimmer"]{top:50%!important;transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}.ui.segment>.ui.ui[class*="top dimmer"]{border-bottom-left-radius:0;border-bottom-right-radius:0}.ui.segment>.ui.ui[class*="center dimmer"]{border-radius:0}.ui.segment>.ui.ui[class*="bottom dimmer"]{border-top-left-radius:0;border-top-right-radius:0}.ui[class*="center dimmer"].transition[class*="fade up"].in{animation-name:fadeInUpCenter}.ui[class*="center dimmer"].transition[class*="fade down"].in{animation-name:fadeInDownCenter}.ui[class*="center dimmer"].transition[class*="fade up"].out{animation-name:fadeOutUpCenter}.ui[class*="center dimmer"].transition[class*="fade down"].out{animation-name:fadeOutDownCenter}.ui[class*="center dimmer"].bounce.transition{animation-name:bounceCenter}@keyframes fadeInUpCenter{0%{opacity:0;transform:translateY(-40%);-webkit-transform:translateY(calc(-40% - .5px))}to{opacity:1;transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}}@keyframes fadeInDownCenter{0%{opacity:0;transform:translateY(-60%);-webkit-transform:translateY(calc(-60% - .5px))}to{opacity:1;transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}}@keyframes fadeOutUpCenter{0%{opacity:1;transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}to{opacity:0;transform:translateY(-45%);-webkit-transform:translateY(calc(-45% - .5px))}}@keyframes fadeOutDownCenter{0%{opacity:1;transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}to{opacity:0;transform:translateY(-55%);-webkit-transform:translateY(calc(-55% - .5px))}}@keyframes bounceCenter{0%,20%,50%,80%,to{transform:translateY(-50%);-webkit-transform:translateY(calc(-50% - .5px))}40%{transform:translateY(calc(-50% - 30px))}60%{transform:translateY(calc(-50% - 15px))}}.ui.dropdown{cursor:pointer;position:relative;display:inline-block;outline:none;text-align:left;transition:box-shadow .1s ease,width .1s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.ui.dropdown .menu{cursor:auto;position:absolute;display:none;outline:none;top:100%;min-width:-moz-max-content;min-width:max-content;margin:0;padding:0;background:#fff;font-size:1em;text-shadow:none;text-align:left;box-shadow:0 2px 3px #22242626;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;transition:opacity .1s ease;z-index:11;will-change:transform,opacity}.ui.dropdown .menu>*{white-space:nowrap}.ui.dropdown>input:not(.search):first-child,.ui.dropdown>select{display:none!important}.ui.dropdown:not(.labeled)>.dropdown.icon{position:relative;width:auto;font-size:.85714286em;margin:0 0 0 1em}.ui.dropdown .menu>.item .dropdown.icon{width:auto;float:right;margin:0 0 0 1em}.ui.dropdown .menu>.item .dropdown.icon+.text{margin-right:1em}.ui.dropdown>.text{display:inline-block;transition:none}.ui.dropdown .menu>.item{position:relative;cursor:pointer;display:block;border:none;height:auto;min-height:2.57142857rem;text-align:left;border-top:none;line-height:1em;font-size:1rem;color:#000000de;padding:.78571429rem 1.14285714rem!important;text-transform:none;font-weight:400;box-shadow:none;-webkit-touch-callout:none}.ui.dropdown .menu>.item:first-child{border-top-width:0}.ui.dropdown .menu>.item.vertical{display:flex;flex-direction:column-reverse}.ui.dropdown>.text>[class*="right floated"],.ui.dropdown .menu .item>[class*="right floated"]{float:right!important;margin-right:0!important;margin-left:1em!important}.ui.dropdown>.text>[class*="left floated"],.ui.dropdown .menu .item>[class*="left floated"]{float:left!important;margin-left:0!important;margin-right:1em!important}.ui.dropdown .menu .item>i.icon.floated,.ui.dropdown .menu .item>.flag.floated,.ui.dropdown .menu .item>.image.floated,.ui.dropdown .menu .item>img.floated{margin-top:0}.ui.dropdown .menu>.header{margin:1rem 0 .75rem;padding:0 1.14285714rem;font-weight:500;text-transform:uppercase}.ui.dropdown .menu>.header:not(.ui){color:#000000d9;font-size:.78571429em}.ui.dropdown .menu>.divider{border-top:1px solid rgba(34,36,38,.1);height:0;margin:.5em 0}.ui.dropdown .menu>.horizontal.divider{border-top:none}.ui.dropdown.dropdown .menu>.input{width:auto;display:flex;margin:1.14285714rem .78571429rem;min-width:10rem}.ui.dropdown .menu>.header+.input{margin-top:0}.ui.dropdown .menu>.input:not(.transparent) input{padding:.5em 1em}.ui.dropdown .menu>.input:not(.transparent) .button,.ui.dropdown .menu>.input:not(.transparent) i.icon,.ui.dropdown .menu>.input:not(.transparent) .label{padding-top:.5em;padding-bottom:.5em}.ui.dropdown>.text>.description,.ui.dropdown .menu>.item>.description{float:right;margin:0 0 0 1em;color:#0006}.ui.dropdown .menu>.item.vertical>.description{margin:0}.ui.dropdown .menu>.item.vertical>.text{margin-bottom:.25em}.ui.dropdown .menu>.message{padding:.78571429rem 1.14285714rem;font-weight:400}.ui.dropdown .menu>.message:not(.ui){color:#0006}.ui.dropdown .menu .menu{top:0;left:100%;right:auto;margin:0 -.5em!important;border-radius:.28571429rem!important;z-index:21!important}.ui.dropdown .menu .menu:after{display:none}.ui.dropdown>.text>i.icon,.ui.dropdown>.text>.label,.ui.dropdown>.text>.flag,.ui.dropdown>.text>img,.ui.dropdown>.text>.image{margin-top:0}.ui.dropdown .menu>.item>i.icon,.ui.dropdown .menu>.item>.label,.ui.dropdown .menu>.item>.flag,.ui.dropdown .menu>.item>.image,.ui.dropdown .menu>.item>img{margin-top:0}.ui.dropdown>.text>i.icon,.ui.dropdown>.text>.label,.ui.dropdown>.text>.flag,.ui.dropdown>.text>img,.ui.dropdown>.text>.image,.ui.dropdown .menu>.item>i.icon,.ui.dropdown .menu>.item>.label,.ui.dropdown .menu>.item>.flag,.ui.dropdown .menu>.item>.image,.ui.dropdown .menu>.item>img{margin-left:0;float:none;margin-right:.78571429rem}.ui.dropdown>.text>img,.ui.dropdown>.text>.image:not(.icon),.ui.dropdown .menu>.item>.image:not(.icon),.ui.dropdown .menu>.item>img{display:inline-block;vertical-align:top;width:auto;margin-top:-.5em;margin-bottom:-.5em;max-height:2em}.ui.dropdown .ui.menu>.item:before,.ui.menu .ui.dropdown .menu>.item:before{display:none}.ui.menu .ui.dropdown .menu .active.item{border-left:none}.ui.menu .right.menu .dropdown:last-child>.menu:not(.left),.ui.menu .right.dropdown.item>.menu:not(.left),.ui.buttons>.ui.dropdown:last-child>.menu:not(.left){left:auto;right:0}.ui.label.dropdown .menu{min-width:100%}.ui.dropdown.icon.button>.dropdown.icon{margin:0}.ui.button.dropdown .menu{min-width:100%}select.ui.dropdown{height:38px;padding:.5em;border:1px solid rgba(34,36,38,.15);visibility:visible}.ui.selection.dropdown{cursor:pointer;word-wrap:break-word;line-height:1em;white-space:normal;outline:0;transform:rotate(0);min-width:14em;min-height:2.71428571em;background:#fff;display:inline-block;padding:.78571429em 3.2em .78571429em 1em;color:#000000de;box-shadow:none;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;transition:box-shadow .1s ease,width .1s ease}.ui.selection.dropdown.visible,.ui.selection.dropdown.active{z-index:10}.ui.selection.dropdown>.search.icon,.ui.selection.dropdown>.delete.icon,.ui.selection.dropdown>.dropdown.icon{cursor:pointer;position:absolute;width:auto;height:auto;line-height:1.21428571em;top:.78571429em;right:1em;z-index:3;margin:-.78571429em;padding:.91666667em;opacity:.8;transition:opacity .1s ease}.ui.compact.selection.dropdown{min-width:0}.ui.selection.dropdown .menu{overflow-x:hidden;overflow-y:auto;backface-visibility:hidden;-webkit-overflow-scrolling:touch;border-top-width:0!important;width:auto;outline:none;margin:0 -1px;min-width:calc(100% + 2px);width:calc(100% + 2px);border-radius:0 0 .28571429rem .28571429rem;box-shadow:0 2px 3px #22242626;transition:opacity .1s ease}.ui.selection.dropdown .menu:after,.ui.selection.dropdown .menu:before{display:none}.ui.selection.dropdown .menu>.message{padding:.78571429rem 1.14285714rem}@media only screen and (max-width: 767.98px){.ui.selection.dropdown.short .menu{max-height:6.01071429rem}.ui.selection.dropdown[class*="very short"] .menu{max-height:4.00714286rem}.ui.selection.dropdown .menu{max-height:8.01428571rem}.ui.selection.dropdown.long .menu{max-height:16.02857143rem}.ui.selection.dropdown[class*="very long"] .menu{max-height:24.04285714rem}}@media only screen and (min-width: 768px){.ui.selection.dropdown.short .menu{max-height:8.01428571rem}.ui.selection.dropdown[class*="very short"] .menu{max-height:5.34285714rem}.ui.selection.dropdown .menu{max-height:10.68571429rem}.ui.selection.dropdown.long .menu{max-height:21.37142857rem}.ui.selection.dropdown[class*="very long"] .menu{max-height:32.05714286rem}}@media only screen and (min-width: 992px){.ui.selection.dropdown.short .menu{max-height:12.02142857rem}.ui.selection.dropdown[class*="very short"] .menu{max-height:8.01428571rem}.ui.selection.dropdown .menu{max-height:16.02857143rem}.ui.selection.dropdown.long .menu{max-height:32.05714286rem}.ui.selection.dropdown[class*="very long"] .menu{max-height:48.08571429rem}}@media only screen and (min-width: 1920px){.ui.selection.dropdown.short .menu{max-height:16.02857143rem}.ui.selection.dropdown[class*="very short"] .menu{max-height:10.68571429rem}.ui.selection.dropdown .menu{max-height:21.37142857rem}.ui.selection.dropdown.long .menu{max-height:42.74285714rem}.ui.selection.dropdown[class*="very long"] .menu{max-height:64.11428571rem}}.ui.selection.dropdown .menu>.item{border-top:1px solid #FAFAFA;padding:.78571429rem 1.14285714rem!important;white-space:normal;word-wrap:normal}.ui.selection.dropdown .menu>.hidden.addition.item{display:none}.ui.selection.dropdown:hover{border-color:#22242659;box-shadow:none}.ui.selection.active.dropdown,.ui.selection.active.dropdown .menu{border-color:#96c8da;box-shadow:0 2px 3px #22242626}.ui.selection.dropdown:focus{border-color:#96c8da;box-shadow:none}.ui.selection.dropdown:focus .menu{border-color:#96c8da;box-shadow:0 2px 3px #22242626}.ui.selection.visible.dropdown>.text:not(.default){font-weight:400;color:#000c}.ui.selection.active.dropdown:hover,.ui.selection.active.dropdown:hover .menu{border-color:#96c8da;box-shadow:0 2px 3px #22242626}.ui.active.selection.dropdown>.dropdown.icon,.ui.visible.selection.dropdown>.dropdown.icon{opacity:"";z-index:3}.ui.active.selection.dropdown{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.active.empty.selection.dropdown{border-radius:.28571429rem!important;box-shadow:none!important}.ui.active.empty.selection.dropdown .menu{border:none!important;box-shadow:none!important}@supports (-webkit-touch-callout: none) or (-webkit-overflow-scrolling: touch) or (-moz-appearance:none){@media (-moz-touch-enabled),(pointer: coarse){.ui.dropdown .scrollhint.menu:not(.hidden):before{animation:scrollhint 2s ease 2;content:"";z-index:15;display:block;position:absolute;opacity:0;right:.25em;top:0;height:100%;border-right:.25em solid;border-left:0;-o-border-image:linear-gradient(to bottom,rgba(0,0,0,.75),rgba(0,0,0,0)) 1 100%;border-image:linear-gradient(to bottom,#000000bf,#0000) 1 100%}.ui.inverted.dropdown .scrollhint.menu:not(.hidden):before{-o-border-image:linear-gradient(to bottom,rgba(255,255,255,.75),rgba(255,255,255,0)) 1 100%;border-image:linear-gradient(to bottom,#ffffffbf,#fff0) 1 100%}@keyframes scrollhint{0%{opacity:1;top:100%}to{opacity:0;top:0}}}}.ui.search.dropdown{min-width:""}.ui.search.dropdown>input.search{background:none transparent!important;border:none!important;box-shadow:none!important;cursor:text;top:0;left:1px;width:100%;outline:none;-webkit-tap-highlight-color:rgba(255,255,255,0);padding:inherit}.ui.search.dropdown>input.search{position:absolute;z-index:2}.ui.search.dropdown>.text{cursor:text;position:relative;left:1px;z-index:auto}.ui.search.selection.dropdown>input.search{line-height:1.21428571em;padding:.67857143em 3.2em .67857143em 1em}.ui.search.selection.dropdown>span.sizer{line-height:1.21428571em;padding:.67857143em 3.2em .67857143em 1em;display:none;white-space:pre}.ui.search.dropdown.active>input.search,.ui.search.dropdown.visible>input.search{cursor:auto}.ui.search.dropdown.active>.text,.ui.search.dropdown.visible>.text{pointer-events:none}.ui.active.search.dropdown input.search:focus+.text i.icon,.ui.active.search.dropdown input.search:focus+.text .flag{opacity:var(--opacity-disabled)}.ui.active.search.dropdown input.search:focus+.text{color:#737373de!important}.ui.search.dropdown.button>span.sizer{display:none}.ui.search.dropdown .menu{overflow-x:hidden;overflow-y:auto;backface-visibility:hidden;-webkit-overflow-scrolling:touch}@media only screen and (max-width: 767.98px){.ui.search.dropdown .menu{max-height:8.01428571rem}}@media only screen and (min-width: 768px){.ui.search.dropdown .menu{max-height:10.68571429rem}}@media only screen and (min-width: 992px){.ui.search.dropdown .menu{max-height:16.02857143rem}}@media only screen and (min-width: 1920px){.ui.search.dropdown .menu{max-height:21.37142857rem}}.ui.dropdown>.remove.icon{cursor:pointer;font-size:.85714286em;margin:-.78571429em;padding:.91666667em;right:3em;top:.78571429em;position:absolute;opacity:.6;z-index:3}.ui.clearable.dropdown .text,.ui.clearable.dropdown a:last-of-type{margin-right:1.5em}.ui.dropdown select.noselection~.remove.icon,.ui.dropdown input[value=""]~.remove.icon,.ui.dropdown input:not([value])~.remove.icon,.ui.dropdown.loading>.remove.icon{display:none}.ui.ui.multiple.dropdown{padding:.22619048em 3.2em .22619048em .35714286em}.ui.multiple.dropdown .menu{cursor:auto}.ui.multiple.dropdown>.label{display:inline-block;white-space:normal;font-size:1em;padding:.35714286em .78571429em;margin:.14285714rem .28571429rem .14285714rem 0;box-shadow:0 0 0 1px #22242626 inset}.ui.multiple.dropdown .dropdown.icon{margin:"";padding:""}.ui.multiple.dropdown>.text{position:static;padding:0;max-width:100%;margin:.45238095em 0 .45238095em .64285714em;line-height:1.21428571em}.ui.multiple.dropdown>.text.default{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui.multiple.dropdown>.label~input.search{margin-left:.14285714em!important}.ui.multiple.dropdown>.label~.text{display:none}.ui.multiple.dropdown>.label:not(.image)>img:not(.centered){margin-right:.78571429rem}.ui.multiple.dropdown>.label:not(.image)>img.ui:not(.avatar){margin-bottom:.39285714rem}.ui.multiple.dropdown>.image.label img{margin:-.35714286em .78571429em -.35714286em -.78571429em;height:1.71428571em}.ui.multiple.search.dropdown,.ui.multiple.search.dropdown>input.search{cursor:text}.ui.multiple.search.dropdown>.text{display:inline-block;position:absolute;top:0;left:0;padding:inherit;margin:.45238095em 0 .45238095em .64285714em;line-height:1.21428571em}.ui.multiple.search.dropdown>.label~.text{display:none}.ui.multiple.search.dropdown>input.search{position:static;padding:0;max-width:100%;margin:.45238095em 0 .45238095em .64285714em;width:2.2em;line-height:1.21428571em}.ui.multiple.search.dropdown.button{min-width:14em}.ui.inline.dropdown{cursor:pointer;display:inline-block;color:inherit}.ui.inline.dropdown .dropdown.icon{margin:0 .21428571em;vertical-align:baseline}.ui.inline.dropdown>.text{font-weight:500}.ui.inline.dropdown .menu{cursor:auto;margin-top:.21428571em;border-radius:.28571429rem}.ui.dropdown .menu .active.item{background:transparent;font-weight:500;color:#000000f2;box-shadow:none;z-index:12}.ui.dropdown .menu>.item:hover{background:#0000000d;color:#000000f2;z-index:13}.ui.dropdown:not(.button)>.default.text,.ui.default.dropdown:not(.button)>.text{color:#bfbfbfde}.ui.dropdown:not(.button)>input:focus~.default.text,.ui.default.dropdown:not(.button)>input:focus~.text{color:#737373de}.ui.loading.dropdown>i.icon{height:1em!important}.ui.loading.selection.dropdown>i.icon{padding:1.5em 1.28571429em!important}.ui.loading.dropdown>i.icon:before{position:absolute;content:"";top:50%;left:50%;margin:-.64285714em 0 0 -.64285714em;width:1.28571429em;height:1.28571429em;border-radius:500rem;border:.2em solid rgba(0,0,0,.1)}.ui.loading.dropdown>i.icon:after{position:absolute;content:"";top:50%;left:50%;box-shadow:0 0 0 1px transparent;margin:-.64285714em 0 0 -.64285714em;width:1.28571429em;height:1.28571429em;animation:loader .6s infinite linear;border:.2em solid #767676;border-radius:500rem}.ui.loading.dropdown.button>i.icon:before,.ui.loading.dropdown.button>i.icon:after{display:none}.ui.loading.dropdown>.text{transition:none}.ui.dropdown .loading.menu{display:block;visibility:hidden;z-index:-1}.ui.dropdown>.loading.menu{left:0!important;right:auto!important}.ui.dropdown>.menu .loading.menu{left:100%!important;right:auto!important}.ui.dropdown.selected,.ui.dropdown .menu .selected.item{background:#00000008;color:#000000f2}.ui.dropdown>.filtered.text{visibility:hidden}.ui.dropdown .filtered.item{display:none!important}.ui.dropdown.error,.ui.dropdown.error>.text,.ui.dropdown.error>.default.text{color:#9f3a38}.ui.selection.dropdown.error{background:#fff6f6;border-color:#e0b4b4}.ui.selection.dropdown.error:hover{border-color:#e0b4b4}.ui.multiple.selection.error.dropdown>.label{border-color:#e0b4b4}.ui.dropdown.error>.menu,.ui.dropdown.error>.menu .menu{border-color:#e0b4b4}.ui.dropdown.error>.menu>.item{color:#9f3a38}.ui.dropdown.error>.menu>.item:hover{background-color:#fbe7e7}.ui.dropdown.error>.menu .active.item{background-color:#fdcfcf}.ui.dropdown.info,.ui.dropdown.info>.text,.ui.dropdown.info>.default.text{color:#276f86}.ui.selection.dropdown.info{background:#f8ffff;border-color:#a9d5de}.ui.selection.dropdown.info:hover{border-color:#a9d5de}.ui.multiple.selection.info.dropdown>.label{border-color:#a9d5de}.ui.dropdown.info>.menu,.ui.dropdown.info>.menu .menu{border-color:#a9d5de}.ui.dropdown.info>.menu>.item{color:#276f86}.ui.dropdown.info>.menu>.item:hover{background-color:#e9f2fb}.ui.dropdown.info>.menu .active.item{background-color:#cef1fd}.ui.dropdown.success,.ui.dropdown.success>.text,.ui.dropdown.success>.default.text{color:#2c662d}.ui.selection.dropdown.success{background:#fcfff5;border-color:#a3c293}.ui.selection.dropdown.success:hover{border-color:#a3c293}.ui.multiple.selection.success.dropdown>.label{border-color:#a3c293}.ui.dropdown.success>.menu,.ui.dropdown.success>.menu .menu{border-color:#a3c293}.ui.dropdown.success>.menu>.item{color:#2c662d}.ui.dropdown.success>.menu>.item:hover{background-color:#e9fbe9}.ui.dropdown.success>.menu .active.item{background-color:#dafdce}.ui.dropdown.warning,.ui.dropdown.warning>.text,.ui.dropdown.warning>.default.text{color:#573a08}.ui.selection.dropdown.warning{background:#fffaf3;border-color:#c9ba9b}.ui.selection.dropdown.warning:hover{border-color:#c9ba9b}.ui.multiple.selection.warning.dropdown>.label{border-color:#c9ba9b}.ui.dropdown.warning>.menu,.ui.dropdown.warning>.menu .menu{border-color:#c9ba9b}.ui.dropdown.warning>.menu>.item{color:#573a08}.ui.dropdown.warning>.menu>.item:hover{background-color:#fbfbe9}.ui.dropdown.warning>.menu .active.item{background-color:#fdfdce}.ui.dropdown>.clear.dropdown.icon{opacity:.8;transition:opacity .1s ease}.ui.dropdown>.clear.dropdown.icon:hover{opacity:1}.ui.disabled.dropdown,.ui.dropdown .menu>.disabled.item{cursor:default;pointer-events:none;opacity:var(--opacity-disabled)}.ui.dropdown .menu{left:0}.ui.dropdown .right.menu>.menu,.ui.dropdown .menu .right.menu{left:100%!important;right:auto!important;border-radius:.28571429rem!important}.ui.dropdown>.left.menu{left:auto!important;right:0!important}.ui.dropdown>.left.menu .menu,.ui.dropdown .menu .left.menu{left:auto;right:100%;margin:0 -.5em 0 0!important;border-radius:.28571429rem!important}.ui.dropdown .item .left.dropdown.icon,.ui.dropdown .left.menu .item .dropdown.icon{width:auto;float:left;margin:0}.ui.dropdown .item .left.dropdown.icon+.text,.ui.dropdown .left.menu .item .dropdown.icon+.text{margin-left:1em;margin-right:0}.ui.upward.dropdown>.menu{top:auto;bottom:100%;box-shadow:0 0 3px #00000014;border-radius:.28571429rem .28571429rem 0 0}.ui.dropdown .upward.menu{top:auto!important;bottom:0!important}.ui.simple.upward.active.dropdown,.ui.simple.upward.dropdown:hover{border-radius:.28571429rem .28571429rem 0 0!important}.ui.upward.dropdown.button:not(.pointing):not(.floating).active{border-radius:.28571429rem .28571429rem 0 0}.ui.upward.selection.dropdown .menu{border-top-width:1px!important;border-bottom-width:0!important;box-shadow:0 -2px 3px #00000014}.ui.upward.selection.dropdown:hover{box-shadow:0 0 2px #0000000d}.ui.active.upward.selection.dropdown{border-radius:0 0 .28571429rem .28571429rem!important}.ui.upward.selection.dropdown.visible{box-shadow:0 0 3px #00000014;border-radius:0 0 .28571429rem .28571429rem!important}.ui.upward.active.selection.dropdown:hover{box-shadow:0 0 3px #0000000d}.ui.upward.active.selection.dropdown:hover .menu{box-shadow:0 -2px 3px #00000014}.ui.scrolling.dropdown .menu,.ui.dropdown .scrolling.menu{overflow-x:hidden;overflow-y:auto}.ui.scrolling.dropdown .menu{overflow-x:hidden;overflow-y:auto;backface-visibility:hidden;-webkit-overflow-scrolling:touch;min-width:100%!important;width:auto!important}.ui.dropdown .scrolling.menu{position:static;overflow-y:auto;border:none;box-shadow:none!important;border-radius:0!important;margin:0!important;min-width:100%!important;width:auto!important;border-top:1px solid rgba(34,36,38,.15)}.ui.scrolling.dropdown .menu .item.item.item,.ui.dropdown .scrolling.menu>.item.item.item{border-top:none}.ui.scrolling.dropdown .menu .item:first-child,.ui.dropdown .scrolling.menu .item:first-child{border-top:none}.ui.dropdown>.animating.menu .scrolling.menu,.ui.dropdown>.visible.menu .scrolling.menu{display:block}@media all and (-ms-high-contrast: none){.ui.scrolling.dropdown .menu,.ui.dropdown .scrolling.menu{min-width:calc(100% - 17px)}}@media only screen and (max-width: 767.98px){.ui.scrolling.dropdown .menu,.ui.dropdown .scrolling.menu{max-height:10.28571429rem}}@media only screen and (min-width: 768px){.ui.scrolling.dropdown .menu,.ui.dropdown .scrolling.menu{max-height:15.42857143rem}}@media only screen and (min-width: 992px){.ui.scrolling.dropdown .menu,.ui.dropdown .scrolling.menu{max-height:20.57142857rem}}@media only screen and (min-width: 1920px){.ui.scrolling.dropdown .menu,.ui.dropdown .scrolling.menu{max-height:20.57142857rem}}.ui.column.dropdown>.menu{flex-wrap:wrap}.ui.dropdown[class*="two column"]>.menu>.item{width:50%}.ui.dropdown[class*="three column"]>.menu>.item{width:33%}.ui.dropdown[class*="four column"]>.menu>.item{width:25%}.ui.dropdown[class*="five column"]>.menu>.item{width:20%}.ui.simple.dropdown .menu:before,.ui.simple.dropdown .menu:after{display:none}.ui.simple.dropdown .menu{position:absolute;display:-ms-inline-flexbox!important;display:block;overflow:hidden;top:-9999px;opacity:0;width:0;height:0;transition:opacity .1s ease;margin-top:0!important}.ui.simple.active.dropdown,.ui.simple.dropdown:hover{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.simple.active.dropdown>.menu,.ui.simple.dropdown:hover>.menu{overflow:visible;width:auto;height:auto;top:100%;opacity:1}.ui.simple.dropdown>.menu>.item:active>.menu,.ui.simple.dropdown .menu .item:hover>.menu{overflow:visible;width:auto;height:auto;top:0!important;left:100%;opacity:1}.ui.simple.dropdown>.menu>.item:active>.left.menu,.ui.simple.dropdown .menu .item:hover>.left.menu,.right.menu .ui.simple.dropdown>.menu>.item:active>.menu:not(.right),.right.menu .ui.simple.dropdown>.menu .item:hover>.menu:not(.right){left:auto;right:100%}.ui.simple.disabled.dropdown:hover .menu{display:none;height:0;width:0;overflow:hidden}.ui.simple.visible.dropdown>.menu{display:block}.ui.simple.scrolling.active.dropdown>.menu,.ui.simple.scrolling.dropdown:hover>.menu{overflow-x:hidden;overflow-y:auto}.ui.fluid.dropdown{display:block;width:100%!important;min-width:0}.ui.fluid.dropdown>.dropdown.icon{float:right}.ui.floating.dropdown .menu{left:0;right:auto;box-shadow:0 2px 4px #2224261f,0 2px 10px #22242626!important;border-radius:.28571429rem!important}.ui.floating.dropdown>.menu{border-radius:.28571429rem!important}.ui:not(.upward).floating.dropdown>.menu{margin-top:.5em}.ui.upward.floating.dropdown>.menu{margin-bottom:.5em}.ui.pointing.dropdown>.menu{top:100%;margin-top:.78571429rem;border-radius:.28571429rem}.ui.pointing.dropdown>.menu:not(.hidden):after{display:block;position:absolute;pointer-events:none;content:"";visibility:visible;transform:rotate(45deg);width:.5em;height:.5em;box-shadow:-1px -1px #22242626;background:#fff;z-index:2;top:-.25em;left:50%;margin:0 0 0 -.25em}.ui.top.left.pointing.dropdown>.menu{inset:100% auto auto 0;margin:1em 0 0}.ui.top.left.pointing.dropdown>.menu:after{top:-.25em;left:1em;right:auto;margin:0;transform:rotate(45deg)}.ui.top.right.pointing.dropdown>.menu{inset:100% 0 auto auto;margin:1em 0 0}.ui.top.pointing.dropdown>.left.menu:after,.ui.top.right.pointing.dropdown>.menu:after{top:-.25em;left:auto!important;right:1em!important;margin:0;transform:rotate(45deg)}.ui.left.pointing.dropdown>.menu{top:0;left:100%;right:auto;margin:0 0 0 1em}.ui.left.pointing.dropdown>.menu:after{top:1em;left:-.25em;margin:0;transform:rotate(-45deg)}.ui.left:not(.top):not(.bottom).pointing.dropdown>.left.menu{left:auto!important;right:100%!important;margin:0 1em 0 0}.ui.left:not(.top):not(.bottom).pointing.dropdown>.left.menu:after{top:1em;left:auto;right:-.25em;margin:0;transform:rotate(135deg)}.ui.right.pointing.dropdown>.menu{top:0;left:auto;right:100%;margin:0 1em 0 0}.ui.right.pointing.dropdown>.menu:after{top:1em;left:auto;right:-.25em;margin:0;transform:rotate(135deg)}.ui.bottom.pointing.dropdown>.menu{inset:auto auto 100% 0;margin:0 0 1em}.ui.bottom.pointing.dropdown>.menu:after{top:auto;bottom:-.25em;right:auto;margin:0;transform:rotate(-135deg)}.ui.bottom.pointing.dropdown>.menu .menu{top:auto!important;bottom:0!important}.ui.bottom.left.pointing.dropdown>.menu{left:0;right:auto}.ui.bottom.left.pointing.dropdown>.menu:after{left:1em;right:auto}.ui.bottom.right.pointing.dropdown>.menu{right:0;left:auto}.ui.bottom.right.pointing.dropdown>.menu:after{left:auto;right:1em}.ui.pointing.upward.dropdown .menu,.ui.top.pointing.upward.dropdown .menu{top:auto!important;bottom:100%!important;margin:0 0 .78571429rem;border-radius:.28571429rem}.ui.pointing.upward.dropdown .menu:after,.ui.top.pointing.upward.dropdown .menu:after{top:100%!important;bottom:auto!important;box-shadow:1px 1px #22242626;margin:-.25em 0 0}.ui.right.pointing.upward.dropdown:not(.top):not(.bottom) .menu{top:auto!important;bottom:0!important;margin:0 1em 0 0}.ui.right.pointing.upward.dropdown:not(.top):not(.bottom) .menu:after{top:auto!important;bottom:0!important;margin:0 0 1em;box-shadow:-1px -1px #22242626}.ui.left.pointing.upward.dropdown:not(.top):not(.bottom) .menu{top:auto!important;bottom:0!important;margin:0 0 0 1em}.ui.left.pointing.upward.dropdown:not(.top):not(.bottom) .menu:after{top:auto!important;bottom:0!important;margin:0 0 1em;box-shadow:-1px -1px #22242626}.ui.dropdown,.ui.dropdown .menu>.item{font-size:1rem}.ui.mini.dropdown,.ui.mini.dropdown .menu>.item{font-size:.78571429rem}.ui.tiny.dropdown,.ui.tiny.dropdown .menu>.item{font-size:.85714286rem}.ui.small.dropdown,.ui.small.dropdown .menu>.item{font-size:.92857143rem}.ui.large.dropdown,.ui.large.dropdown .menu>.item{font-size:1.14285714rem}.ui.big.dropdown,.ui.big.dropdown .menu>.item{font-size:1.28571429rem}.ui.huge.dropdown,.ui.huge.dropdown .menu>.item{font-size:1.42857143rem}.ui.massive.dropdown,.ui.massive.dropdown .menu>.item{font-size:1.71428571rem}@font-face{font-family:Dropdown;src:url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMggjB5AAAAC8AAAAYGNtYXAPfuIIAAABHAAAAExnYXNwAAAAEAAAAWgAAAAIZ2x5Zjo82LgAAAFwAAABVGhlYWQAQ88bAAACxAAAADZoaGVhAwcB6QAAAvwAAAAkaG10eAS4ABIAAAMgAAAAIGxvY2EBNgDeAAADQAAAABJtYXhwAAoAFgAAA1QAAAAgbmFtZVcZpu4AAAN0AAABRXBvc3QAAwAAAAAEvAAAACAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDX//3//wAB/+MPLQADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAIABJQElABMAABM0NzY3BTYXFhUUDwEGJwYvASY1AAUGBwEACAUGBoAFCAcGgAUBEgcGBQEBAQcECQYHfwYBAQZ/BwYAAQAAAG4BJQESABMAADc0PwE2MzIfARYVFAcGIyEiJyY1AAWABgcIBYAGBgUI/wAHBgWABwaABQWABgcHBgUFBgcAAAABABIASQC3AW4AEwAANzQ/ATYXNhcWHQEUBwYnBi8BJjUSBoAFCAcFBgYFBwgFgAbbBwZ/BwEBBwQJ/wgEBwEBB38GBgAAAAABAAAASQClAW4AEwAANxE0NzYzMh8BFhUUDwEGIyInJjUABQYHCAWABgaABQgHBgVbAQAIBQYGgAUIBwWABgYFBwAAAAEAAAABAADZuaKOXw889QALAgAAAAAA0ABHWAAAAADQAEdYAAAAAAElAW4AAAAIAAIAAAAAAAAAAQAAAeD/4AAAAgAAAAAAASUAAQAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAABAAAAASUAAAElAAAAtwASALcAAAAAAAAACgAUAB4AQgBkAIgAqgAAAAEAAAAIABQAAQAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAOAK4AAQAAAAAAAQAOAAAAAQAAAAAAAgAOAEcAAQAAAAAAAwAOACQAAQAAAAAABAAOAFUAAQAAAAAABQAWAA4AAQAAAAAABgAHADIAAQAAAAAACgA0AGMAAwABBAkAAQAOAAAAAwABBAkAAgAOAEcAAwABBAkAAwAOACQAAwABBAkABAAOAFUAAwABBAkABQAWAA4AAwABBAkABgAOADkAAwABBAkACgA0AGMAaQBjAG8AbQBvAG8AbgBWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbQBvAG8Abmljb21vb24AaQBjAG8AbQBvAG8AbgBSAGUAZwB1AGwAYQByAGkAYwBvAG0AbwBvAG4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=) format("truetype"),url(data:application/font-woff;charset=utf-8;base64,d09GRk9UVE8AAAVwAAoAAAAABSgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA9AAAAdkAAAHZLDXE/09TLzIAAALQAAAAYAAAAGAIIweQY21hcAAAAzAAAABMAAAATA9+4ghnYXNwAAADfAAAAAgAAAAIAAAAEGhlYWQAAAOEAAAANgAAADYAQ88baGhlYQAAA7wAAAAkAAAAJAMHAelobXR4AAAD4AAAACAAAAAgBLgAEm1heHAAAAQAAAAABgAAAAYACFAAbmFtZQAABAgAAAFFAAABRVcZpu5wb3N0AAAFUAAAACAAAAAgAAMAAAEABAQAAQEBCGljb21vb24AAQIAAQA6+BwC+BsD+BgEHgoAGVP/i4seCgAZU/+LiwwHi2v4lPh0BR0AAACIDx0AAACNER0AAAAJHQAAAdASAAkBAQgPERMWGyAlKmljb21vb25pY29tb29udTB1MXUyMHVGMEQ3dUYwRDh1RjBEOXVGMERBAAACAYkABgAIAgABAAQABwAKAA0AVgCfAOgBL/yUDvyUDvyUDvuUDvtvi/emFYuQjZCOjo+Pj42Qiwj3lIsFkIuQiY6Hj4iNhouGi4aJh4eHCPsU+xQFiIiGiYaLhouHjYeOCPsU9xQFiI+Jj4uQCA77b4v3FBWLkI2Pjo8I9xT3FAWPjo+NkIuQi5CJjogI9xT7FAWPh42Hi4aLhomHh4eIiIaJhosI+5SLBYaLh42HjoiPiY+LkAgO+92d928Vi5CNkI+OCPcU9xQFjo+QjZCLkIuPiY6Hj4iNhouGCIv7lAWLhomHh4iIh4eJhouGi4aNiI8I+xT3FAWHjomPi5AIDvvdi+YVi/eUBYuQjZCOjo+Pj42Qi5CLkImOhwj3FPsUBY+IjYaLhouGiYeHiAj7FPsUBYiHhomGi4aLh42Hj4iOiY+LkAgO+JQU+JQViwwKAAAAAAMCAAGQAAUAAAFMAWYAAABHAUwBZgAAAPUAGQCEAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAA8NoB4P/g/+AB4AAgAAAAAQAAAAAAAAAAAAAAIAAAAAAAAgAAAAMAAAAUAAMAAQAAABQABAA4AAAACgAIAAIAAgABACDw2v/9//8AAAAAACDw1//9//8AAf/jDy0AAwABAAAAAAAAAAAAAAABAAH//wAPAAEAAAABAAA5emozXw889QALAgAAAAAA0ABHWAAAAADQAEdYAAAAAAElAW4AAAAIAAIAAAAAAAAAAQAAAeD/4AAAAgAAAAAAASUAAQAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAABAAAAASUAAAElAAAAtwASALcAAAAAUAAACAAAAAAADgCuAAEAAAAAAAEADgAAAAEAAAAAAAIADgBHAAEAAAAAAAMADgAkAAEAAAAAAAQADgBVAAEAAAAAAAUAFgAOAAEAAAAAAAYABwAyAAEAAAAAAAoANABjAAMAAQQJAAEADgAAAAMAAQQJAAIADgBHAAMAAQQJAAMADgAkAAMAAQQJAAQADgBVAAMAAQQJAAUAFgAOAAMAAQQJAAYADgA5AAMAAQQJAAoANABjAGkAYwBvAG0AbwBvAG4AVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG0AbwBvAG5pY29tb29uAGkAYwBvAG0AbwBvAG4AUgBlAGcAdQBsAGEAcgBpAGMAbwBtAG8AbwBuAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format("woff");font-weight:400;font-style:normal}.ui.dropdown>.dropdown.icon{font-family:Dropdown;line-height:1;height:1em;width:1.23em;backface-visibility:hidden;font-weight:400;font-style:normal;text-align:center;width:auto}.ui.dropdown>.dropdown.icon:before{content:"\f0d7"}.ui.dropdown .menu .item .dropdown.icon:before{content:"\f0da"}.ui.dropdown .item .left.dropdown.icon:before,.ui.dropdown .left.menu .item .dropdown.icon:before{content:"\f0d9"}.ui.vertical.menu .dropdown.item>.dropdown.icon:before{content:"\f0da"}.ui.form{position:relative;max-width:100%}.ui.form>p{margin:1em 0}.ui.form .field{clear:both;margin:0 0 1em}.ui.form .fields .fields,.ui.form .field:last-child,.ui.form .fields:last-child .field{margin-bottom:0}.ui.form .fields .field{clear:both;margin:0}.ui.form .field>label{display:block;margin:0 0 .28571429rem;color:#000000de;font-size:.92857143em;font-weight:500;text-transform:none}.ui.form textarea,.ui.form input:not([type]),.ui.form input[type=date],.ui.form input[type=datetime-local],.ui.form input[type=email],.ui.form input[type=number],.ui.form input[type=password],.ui.form input[type=search],.ui.form input[type=tel],.ui.form input[type=time],.ui.form input[type=text],.ui.form input[type=file],.ui.form input[type=url]{width:100%;vertical-align:top}.ui.form ::-webkit-datetime-edit,.ui.form ::-webkit-inner-spin-button{height:1.21428571em}.ui.form input:not([type]),.ui.form input[type=date],.ui.form input[type=datetime-local],.ui.form input[type=email],.ui.form input[type=number],.ui.form input[type=password],.ui.form input[type=search],.ui.form input[type=tel],.ui.form input[type=time],.ui.form input[type=text],.ui.form input[type=file],.ui.form input[type=url]{font-family:var(--fonts-regular);margin:0;outline:none;-webkit-appearance:none;-webkit-tap-highlight-color:rgba(255,255,255,0);line-height:1.21428571em;padding:.67857143em 1em;font-size:1em;background:#fff;border:1px solid rgba(34,36,38,.15);color:#000000de;border-radius:.28571429rem;box-shadow:0 0 0 0 transparent inset;transition:color .1s ease,border-color .1s ease}.ui.input textarea,.ui.form textarea{margin:0;-webkit-appearance:none;-webkit-tap-highlight-color:rgba(255,255,255,0);padding:.78571429em 1em;background:#fff;border:1px solid rgba(34,36,38,.15);outline:none;color:#000000de;border-radius:.28571429rem;box-shadow:0 0 0 0 transparent inset;transition:color .1s ease,border-color .1s ease;font-size:1em;font-family:var(--fonts-regular);line-height:1.2857;resize:vertical}.ui.form textarea:not([rows]){height:12em;min-height:8em;max-height:24em}.ui.form textarea,.ui.form input[type=checkbox]{vertical-align:top}.ui.form .fields:not(.grouped):not(.inline) .field:not(:only-child) label+.ui.ui.checkbox{margin-top:.7em}.ui.form .fields:not(.grouped):not(.inline) .field:not(:only-child) .ui.checkbox{margin-top:2.41428571em}.ui.form .fields:not(.grouped):not(.inline) .field:not(:only-child) .ui.toggle.checkbox{margin-top:2.21428571em}.ui.form .fields:not(.grouped):not(.inline) .field:not(:only-child) .ui.slider.checkbox{margin-top:2.61428571em}.ui.ui.form .field .fields .field:not(:only-child) .ui.checkbox{margin-top:.6em}.ui.ui.form .field .fields .field:not(:only-child) .ui.toggle.checkbox{margin-top:.5em}.ui.ui.form .field .fields .field:not(:only-child) .ui.slider.checkbox{margin-top:.7em}.ui.form input.attached{width:auto}.ui.form select{display:block;height:auto;width:100%;background:#fff;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem;box-shadow:0 0 0 0 transparent inset;padding:.62em 1em;color:#000000de;transition:color .1s ease,border-color .1s ease}.ui.form .field>.selection.dropdown{min-width:auto;width:100%}.ui.form .field>.selection.dropdown>.dropdown.icon{float:right}.ui.form .inline.fields .field>.selection.dropdown,.ui.form .inline.field>.selection.dropdown{width:auto}.ui.form .inline.fields .field>.selection.dropdown>.dropdown.icon,.ui.form .inline.field>.selection.dropdown>.dropdown.icon{float:none}.ui.form .field .ui.input,.ui.form .fields .field .ui.input,.ui.form .wide.field .ui.input{width:100%}.ui.form .inline.fields .field:not(.wide) .ui.input,.ui.form .inline.field:not(.wide) .ui.input{width:auto;vertical-align:middle}.ui.form .fields .field .ui.input input,.ui.form .field .ui.input input{width:auto}.ui.form .ten.fields .ui.input input,.ui.form .nine.fields .ui.input input,.ui.form .eight.fields .ui.input input,.ui.form .seven.fields .ui.input input,.ui.form .six.fields .ui.input input,.ui.form .five.fields .ui.input input,.ui.form .four.fields .ui.input input,.ui.form .three.fields .ui.input input,.ui.form .two.fields .ui.input input,.ui.form .wide.field .ui.input input{flex:1 0 auto;width:0}.ui.form .error.message,.ui.form .error.message:empty{display:none}.ui.form .info.message,.ui.form .info.message:empty{display:none}.ui.form .success.message,.ui.form .success.message:empty{display:none}.ui.form .warning.message,.ui.form .warning.message:empty{display:none}.ui.form .message:first-child{margin-top:0}.ui.form .field .prompt.label{white-space:normal;background:#fff!important;border:1px solid #E0B4B4!important;color:#9f3a38!important}.ui.form .inline.fields .field .prompt,.ui.form .inline.field .prompt{vertical-align:top;margin:-.25em 0 -.5em .5em}.ui.form .inline.fields .field .prompt:before,.ui.form .inline.field .prompt:before{border-width:0 0 1px 1px;inset:50% auto auto 0}.ui.form .field.field input:-webkit-autofill{box-shadow:0 0 0 100px ivory inset!important;border-color:#e5dfa1!important}.ui.form .field.field input:-webkit-autofill:focus{box-shadow:0 0 0 100px ivory inset!important;border-color:#d5c315!important}.ui.form ::-webkit-input-placeholder{color:#bfbfbfde}.ui.form :-ms-input-placeholder{color:#bfbfbfde!important}.ui.form ::-moz-placeholder{color:#bfbfbfde}.ui.form :focus::-webkit-input-placeholder{color:#737373de}.ui.form :focus:-ms-input-placeholder{color:#737373de!important}.ui.form :focus::-moz-placeholder{color:#737373de}.ui.form input:not([type]):focus,.ui.form input[type=date]:focus,.ui.form input[type=datetime-local]:focus,.ui.form input[type=email]:focus,.ui.form input[type=number]:focus,.ui.form input[type=password]:focus,.ui.form input[type=search]:focus,.ui.form input[type=tel]:focus,.ui.form input[type=time]:focus,.ui.form input[type=text]:focus,.ui.form input[type=file]:focus,.ui.form input[type=url]:focus{color:#000000f2;border-color:#85b7d9;border-radius:.28571429rem;background:#fff;box-shadow:0 0 #22242659 inset}.ui.form .ui.action.input:not([class*="left action"]) input:not([type]):focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=date]:focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=datetime-local]:focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=email]:focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=number]:focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=password]:focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=search]:focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=tel]:focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=time]:focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=text]:focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=file]:focus,.ui.form .ui.action.input:not([class*="left action"]) input[type=url]:focus{border-top-right-radius:0;border-bottom-right-radius:0}.ui.form .ui[class*="left action"].input input:not([type]),.ui.form .ui[class*="left action"].input input[type=date],.ui.form .ui[class*="left action"].input input[type=datetime-local],.ui.form .ui[class*="left action"].input input[type=email],.ui.form .ui[class*="left action"].input input[type=number],.ui.form .ui[class*="left action"].input input[type=password],.ui.form .ui[class*="left action"].input input[type=search],.ui.form .ui[class*="left action"].input input[type=tel],.ui.form .ui[class*="left action"].input input[type=time],.ui.form .ui[class*="left action"].input input[type=text],.ui.form .ui[class*="left action"].input input[type=file],.ui.form .ui[class*="left action"].input input[type=url]{border-bottom-left-radius:0;border-top-left-radius:0}.ui.form textarea:focus{color:#000000f2;border-color:#85b7d9;border-radius:.28571429rem;background:#fff;box-shadow:0 0 #22242659 inset;-webkit-appearance:none}.ui.form.error .error.message:not(:empty){display:block}.ui.form.error .compact.error.message:not(:empty){display:inline-block}.ui.form.error .icon.error.message:not(:empty){display:flex}.ui.form .fields.error .error.message:not(:empty),.ui.form .field.error .error.message:not(:empty){display:block}.ui.form .fields.error .compact.error.message:not(:empty),.ui.form .field.error .compact.error.message:not(:empty){display:inline-block}.ui.form .fields.error .icon.error.message:not(:empty),.ui.form .field.error .icon.error.message:not(:empty){display:flex}.ui.ui.form .fields.error .field label,.ui.ui.form .field.error label,.ui.ui.form .fields.error .field .input,.ui.ui.form .field.error .input{color:#9f3a38}.ui.form .fields.error .field .corner.label,.ui.form .field.error .corner.label{border-color:#9f3a38;color:#fff}.ui.form .fields.error .field textarea,.ui.form .fields.error .field select,.ui.form .fields.error .field input:not([type]),.ui.form .fields.error .field input[type=date],.ui.form .fields.error .field input[type=datetime-local],.ui.form .fields.error .field input[type=email],.ui.form .fields.error .field input[type=number],.ui.form .fields.error .field input[type=password],.ui.form .fields.error .field input[type=search],.ui.form .fields.error .field input[type=tel],.ui.form .fields.error .field input[type=time],.ui.form .fields.error .field input[type=text],.ui.form .fields.error .field input[type=file],.ui.form .fields.error .field input[type=url],.ui.form .field.error textarea,.ui.form .field.error select,.ui.form .field.error input:not([type]),.ui.form .field.error input[type=date],.ui.form .field.error input[type=datetime-local],.ui.form .field.error input[type=email],.ui.form .field.error input[type=number],.ui.form .field.error input[type=password],.ui.form .field.error input[type=search],.ui.form .field.error input[type=tel],.ui.form .field.error input[type=time],.ui.form .field.error input[type=text],.ui.form .field.error input[type=file],.ui.form .field.error input[type=url]{color:#9f3a38;background:#fff6f6;border-color:#e0b4b4;border-radius:"";box-shadow:none}.ui.form .field.error textarea:focus,.ui.form .field.error select:focus,.ui.form .field.error input:not([type]):focus,.ui.form .field.error input[type=date]:focus,.ui.form .field.error input[type=datetime-local]:focus,.ui.form .field.error input[type=email]:focus,.ui.form .field.error input[type=number]:focus,.ui.form .field.error input[type=password]:focus,.ui.form .field.error input[type=search]:focus,.ui.form .field.error input[type=tel]:focus,.ui.form .field.error input[type=time]:focus,.ui.form .field.error input[type=text]:focus,.ui.form .field.error input[type=file]:focus,.ui.form .field.error input[type=url]:focus{background:#fff6f6;border-color:#e0b4b4;color:#9f3a38;box-shadow:none}.ui.form .field.error select{-webkit-appearance:menulist-button}.ui.form .field.error .transparent.input input,.ui.form .field.error .transparent.input textarea,.ui.form .field.error input.transparent,.ui.form .field.error textarea.transparent{background-color:#fff6f6!important;color:#9f3a38!important}.ui.form .error.error input:-webkit-autofill{box-shadow:0 0 0 100px #fffaf0 inset!important;border-color:#e0b4b4!important}.ui.form .error ::-webkit-input-placeholder{color:#e7bdbc}.ui.form .error :-ms-input-placeholder{color:#e7bdbc!important}.ui.form .error ::-moz-placeholder{color:#e7bdbc}.ui.form .error :focus::-webkit-input-placeholder{color:#da9796}.ui.form .error :focus:-ms-input-placeholder{color:#da9796!important}.ui.form .error :focus::-moz-placeholder{color:#da9796}.ui.form .fields.error .field .ui.dropdown,.ui.form .fields.error .field .ui.dropdown .item,.ui.form .field.error .ui.dropdown,.ui.form .field.error .ui.dropdown .text,.ui.form .field.error .ui.dropdown .item{background:#fff6f6;color:#9f3a38}.ui.form .fields.error .field .ui.dropdown,.ui.form .field.error .ui.dropdown,.ui.form .fields.error .field .ui.dropdown:hover,.ui.form .field.error .ui.dropdown:hover{border-color:#e0b4b4!important}.ui.form .fields.error .field .ui.dropdown:hover .menu,.ui.form .field.error .ui.dropdown:hover .menu{border-color:#e0b4b4}.ui.form .fields.error .field .ui.multiple.selection.dropdown>.label,.ui.form .field.error .ui.multiple.selection.dropdown>.label{background-color:#eacbcb;color:#9f3a38}.ui.form .fields.error .field .ui.dropdown .menu .item:hover,.ui.form .field.error .ui.dropdown .menu .item:hover,.ui.form .fields.error .field .ui.dropdown .menu .selected.item,.ui.form .field.error .ui.dropdown .menu .selected.item{background-color:#fbe7e7}.ui.form .fields.error .field .ui.dropdown .menu .active.item,.ui.form .field.error .ui.dropdown .menu .active.item{background-color:#fdcfcf!important}.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label,.ui.form .field.error .checkbox:not(.toggle):not(.slider) label,.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box,.ui.form .field.error .checkbox:not(.toggle):not(.slider) .box{color:#9f3a38}.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) label:before,.ui.form .field.error .checkbox:not(.toggle):not(.slider) label:before,.ui.form .fields.error .field .checkbox:not(.toggle):not(.slider) .box:before,.ui.form .field.error .checkbox:not(.toggle):not(.slider) .box:before{background:#fff6f6;border-color:#e0b4b4}.ui.form .fields.error .field .checkbox label:after,.ui.form .field.error .checkbox label:after,.ui.form .fields.error .field .checkbox .box:after,.ui.form .field.error .checkbox .box:after{color:#9f3a38}.ui.form.info .info.message:not(:empty){display:block}.ui.form.info .compact.info.message:not(:empty){display:inline-block}.ui.form.info .icon.info.message:not(:empty){display:flex}.ui.form .fields.info .info.message:not(:empty),.ui.form .field.info .info.message:not(:empty){display:block}.ui.form .fields.info .compact.info.message:not(:empty),.ui.form .field.info .compact.info.message:not(:empty){display:inline-block}.ui.form .fields.info .icon.info.message:not(:empty),.ui.form .field.info .icon.info.message:not(:empty){display:flex}.ui.ui.form .fields.info .field label,.ui.ui.form .field.info label,.ui.ui.form .fields.info .field .input,.ui.ui.form .field.info .input{color:#276f86}.ui.form .fields.info .field .corner.label,.ui.form .field.info .corner.label{border-color:#276f86;color:#fff}.ui.form .fields.info .field textarea,.ui.form .fields.info .field select,.ui.form .fields.info .field input:not([type]),.ui.form .fields.info .field input[type=date],.ui.form .fields.info .field input[type=datetime-local],.ui.form .fields.info .field input[type=email],.ui.form .fields.info .field input[type=number],.ui.form .fields.info .field input[type=password],.ui.form .fields.info .field input[type=search],.ui.form .fields.info .field input[type=tel],.ui.form .fields.info .field input[type=time],.ui.form .fields.info .field input[type=text],.ui.form .fields.info .field input[type=file],.ui.form .fields.info .field input[type=url],.ui.form .field.info textarea,.ui.form .field.info select,.ui.form .field.info input:not([type]),.ui.form .field.info input[type=date],.ui.form .field.info input[type=datetime-local],.ui.form .field.info input[type=email],.ui.form .field.info input[type=number],.ui.form .field.info input[type=password],.ui.form .field.info input[type=search],.ui.form .field.info input[type=tel],.ui.form .field.info input[type=time],.ui.form .field.info input[type=text],.ui.form .field.info input[type=file],.ui.form .field.info input[type=url]{color:#276f86;background:#f8ffff;border-color:#a9d5de;border-radius:"";box-shadow:none}.ui.form .field.info textarea:focus,.ui.form .field.info select:focus,.ui.form .field.info input:not([type]):focus,.ui.form .field.info input[type=date]:focus,.ui.form .field.info input[type=datetime-local]:focus,.ui.form .field.info input[type=email]:focus,.ui.form .field.info input[type=number]:focus,.ui.form .field.info input[type=password]:focus,.ui.form .field.info input[type=search]:focus,.ui.form .field.info input[type=tel]:focus,.ui.form .field.info input[type=time]:focus,.ui.form .field.info input[type=text]:focus,.ui.form .field.info input[type=file]:focus,.ui.form .field.info input[type=url]:focus{background:#f8ffff;border-color:#a9d5de;color:#276f86;box-shadow:none}.ui.form .field.info select{-webkit-appearance:menulist-button}.ui.form .field.info .transparent.input input,.ui.form .field.info .transparent.input textarea,.ui.form .field.info input.transparent,.ui.form .field.info textarea.transparent{background-color:#f8ffff!important;color:#276f86!important}.ui.form .info.info input:-webkit-autofill{box-shadow:0 0 0 100px #f0faff inset!important;border-color:#b3e0e0!important}.ui.form .info ::-webkit-input-placeholder{color:#98cfe1}.ui.form .info :-ms-input-placeholder{color:#98cfe1!important}.ui.form .info ::-moz-placeholder{color:#98cfe1}.ui.form .info :focus::-webkit-input-placeholder{color:#70bdd6}.ui.form .info :focus:-ms-input-placeholder{color:#70bdd6!important}.ui.form .info :focus::-moz-placeholder{color:#70bdd6}.ui.form .fields.info .field .ui.dropdown,.ui.form .fields.info .field .ui.dropdown .item,.ui.form .field.info .ui.dropdown,.ui.form .field.info .ui.dropdown .text,.ui.form .field.info .ui.dropdown .item{background:#f8ffff;color:#276f86}.ui.form .fields.info .field .ui.dropdown,.ui.form .field.info .ui.dropdown,.ui.form .fields.info .field .ui.dropdown:hover,.ui.form .field.info .ui.dropdown:hover{border-color:#a9d5de!important}.ui.form .fields.info .field .ui.dropdown:hover .menu,.ui.form .field.info .ui.dropdown:hover .menu{border-color:#a9d5de}.ui.form .fields.info .field .ui.multiple.selection.dropdown>.label,.ui.form .field.info .ui.multiple.selection.dropdown>.label{background-color:#cce3ea;color:#276f86}.ui.form .fields.info .field .ui.dropdown .menu .item:hover,.ui.form .field.info .ui.dropdown .menu .item:hover,.ui.form .fields.info .field .ui.dropdown .menu .selected.item,.ui.form .field.info .ui.dropdown .menu .selected.item{background-color:#e9f2fb}.ui.form .fields.info .field .ui.dropdown .menu .active.item,.ui.form .field.info .ui.dropdown .menu .active.item{background-color:#cef1fd!important}.ui.form .fields.info .field .checkbox:not(.toggle):not(.slider) label,.ui.form .field.info .checkbox:not(.toggle):not(.slider) label,.ui.form .fields.info .field .checkbox:not(.toggle):not(.slider) .box,.ui.form .field.info .checkbox:not(.toggle):not(.slider) .box{color:#276f86}.ui.form .fields.info .field .checkbox:not(.toggle):not(.slider) label:before,.ui.form .field.info .checkbox:not(.toggle):not(.slider) label:before,.ui.form .fields.info .field .checkbox:not(.toggle):not(.slider) .box:before,.ui.form .field.info .checkbox:not(.toggle):not(.slider) .box:before{background:#f8ffff;border-color:#a9d5de}.ui.form .fields.info .field .checkbox label:after,.ui.form .field.info .checkbox label:after,.ui.form .fields.info .field .checkbox .box:after,.ui.form .field.info .checkbox .box:after{color:#276f86}.ui.form.success .success.message:not(:empty){display:block}.ui.form.success .compact.success.message:not(:empty){display:inline-block}.ui.form.success .icon.success.message:not(:empty){display:flex}.ui.form .fields.success .success.message:not(:empty),.ui.form .field.success .success.message:not(:empty){display:block}.ui.form .fields.success .compact.success.message:not(:empty),.ui.form .field.success .compact.success.message:not(:empty){display:inline-block}.ui.form .fields.success .icon.success.message:not(:empty),.ui.form .field.success .icon.success.message:not(:empty){display:flex}.ui.ui.form .fields.success .field label,.ui.ui.form .field.success label,.ui.ui.form .fields.success .field .input,.ui.ui.form .field.success .input{color:#2c662d}.ui.form .fields.success .field .corner.label,.ui.form .field.success .corner.label{border-color:#2c662d;color:#fff}.ui.form .fields.success .field textarea,.ui.form .fields.success .field select,.ui.form .fields.success .field input:not([type]),.ui.form .fields.success .field input[type=date],.ui.form .fields.success .field input[type=datetime-local],.ui.form .fields.success .field input[type=email],.ui.form .fields.success .field input[type=number],.ui.form .fields.success .field input[type=password],.ui.form .fields.success .field input[type=search],.ui.form .fields.success .field input[type=tel],.ui.form .fields.success .field input[type=time],.ui.form .fields.success .field input[type=text],.ui.form .fields.success .field input[type=file],.ui.form .fields.success .field input[type=url],.ui.form .field.success textarea,.ui.form .field.success select,.ui.form .field.success input:not([type]),.ui.form .field.success input[type=date],.ui.form .field.success input[type=datetime-local],.ui.form .field.success input[type=email],.ui.form .field.success input[type=number],.ui.form .field.success input[type=password],.ui.form .field.success input[type=search],.ui.form .field.success input[type=tel],.ui.form .field.success input[type=time],.ui.form .field.success input[type=text],.ui.form .field.success input[type=file],.ui.form .field.success input[type=url]{color:#2c662d;background:#fcfff5;border-color:#a3c293;border-radius:"";box-shadow:none}.ui.form .field.success textarea:focus,.ui.form .field.success select:focus,.ui.form .field.success input:not([type]):focus,.ui.form .field.success input[type=date]:focus,.ui.form .field.success input[type=datetime-local]:focus,.ui.form .field.success input[type=email]:focus,.ui.form .field.success input[type=number]:focus,.ui.form .field.success input[type=password]:focus,.ui.form .field.success input[type=search]:focus,.ui.form .field.success input[type=tel]:focus,.ui.form .field.success input[type=time]:focus,.ui.form .field.success input[type=text]:focus,.ui.form .field.success input[type=file]:focus,.ui.form .field.success input[type=url]:focus{background:#fcfff5;border-color:#a3c293;color:#2c662d;box-shadow:none}.ui.form .field.success select{-webkit-appearance:menulist-button}.ui.form .field.success .transparent.input input,.ui.form .field.success .transparent.input textarea,.ui.form .field.success input.transparent,.ui.form .field.success textarea.transparent{background-color:#fcfff5!important;color:#2c662d!important}.ui.form .success.success input:-webkit-autofill{box-shadow:0 0 0 100px #f0fff0 inset!important;border-color:#bee0b3!important}.ui.form .success ::-webkit-input-placeholder{color:#8fcf90}.ui.form .success :-ms-input-placeholder{color:#8fcf90!important}.ui.form .success ::-moz-placeholder{color:#8fcf90}.ui.form .success :focus::-webkit-input-placeholder{color:#6cbf6d}.ui.form .success :focus:-ms-input-placeholder{color:#6cbf6d!important}.ui.form .success :focus::-moz-placeholder{color:#6cbf6d}.ui.form .fields.success .field .ui.dropdown,.ui.form .fields.success .field .ui.dropdown .item,.ui.form .field.success .ui.dropdown,.ui.form .field.success .ui.dropdown .text,.ui.form .field.success .ui.dropdown .item{background:#fcfff5;color:#2c662d}.ui.form .fields.success .field .ui.dropdown,.ui.form .field.success .ui.dropdown,.ui.form .fields.success .field .ui.dropdown:hover,.ui.form .field.success .ui.dropdown:hover{border-color:#a3c293!important}.ui.form .fields.success .field .ui.dropdown:hover .menu,.ui.form .field.success .ui.dropdown:hover .menu{border-color:#a3c293}.ui.form .fields.success .field .ui.multiple.selection.dropdown>.label,.ui.form .field.success .ui.multiple.selection.dropdown>.label{background-color:#cceacc;color:#2c662d}.ui.form .fields.success .field .ui.dropdown .menu .item:hover,.ui.form .field.success .ui.dropdown .menu .item:hover,.ui.form .fields.success .field .ui.dropdown .menu .selected.item,.ui.form .field.success .ui.dropdown .menu .selected.item{background-color:#e9fbe9}.ui.form .fields.success .field .ui.dropdown .menu .active.item,.ui.form .field.success .ui.dropdown .menu .active.item{background-color:#dafdce!important}.ui.form .fields.success .field .checkbox:not(.toggle):not(.slider) label,.ui.form .field.success .checkbox:not(.toggle):not(.slider) label,.ui.form .fields.success .field .checkbox:not(.toggle):not(.slider) .box,.ui.form .field.success .checkbox:not(.toggle):not(.slider) .box{color:#2c662d}.ui.form .fields.success .field .checkbox:not(.toggle):not(.slider) label:before,.ui.form .field.success .checkbox:not(.toggle):not(.slider) label:before,.ui.form .fields.success .field .checkbox:not(.toggle):not(.slider) .box:before,.ui.form .field.success .checkbox:not(.toggle):not(.slider) .box:before{background:#fcfff5;border-color:#a3c293}.ui.form .fields.success .field .checkbox label:after,.ui.form .field.success .checkbox label:after,.ui.form .fields.success .field .checkbox .box:after,.ui.form .field.success .checkbox .box:after{color:#2c662d}.ui.form.warning .warning.message:not(:empty){display:block}.ui.form.warning .compact.warning.message:not(:empty){display:inline-block}.ui.form.warning .icon.warning.message:not(:empty){display:flex}.ui.form .fields.warning .warning.message:not(:empty),.ui.form .field.warning .warning.message:not(:empty){display:block}.ui.form .fields.warning .compact.warning.message:not(:empty),.ui.form .field.warning .compact.warning.message:not(:empty){display:inline-block}.ui.form .fields.warning .icon.warning.message:not(:empty),.ui.form .field.warning .icon.warning.message:not(:empty){display:flex}.ui.ui.form .fields.warning .field label,.ui.ui.form .field.warning label,.ui.ui.form .fields.warning .field .input,.ui.ui.form .field.warning .input{color:#573a08}.ui.form .fields.warning .field .corner.label,.ui.form .field.warning .corner.label{border-color:#573a08;color:#fff}.ui.form .fields.warning .field textarea,.ui.form .fields.warning .field select,.ui.form .fields.warning .field input:not([type]),.ui.form .fields.warning .field input[type=date],.ui.form .fields.warning .field input[type=datetime-local],.ui.form .fields.warning .field input[type=email],.ui.form .fields.warning .field input[type=number],.ui.form .fields.warning .field input[type=password],.ui.form .fields.warning .field input[type=search],.ui.form .fields.warning .field input[type=tel],.ui.form .fields.warning .field input[type=time],.ui.form .fields.warning .field input[type=text],.ui.form .fields.warning .field input[type=file],.ui.form .fields.warning .field input[type=url],.ui.form .field.warning textarea,.ui.form .field.warning select,.ui.form .field.warning input:not([type]),.ui.form .field.warning input[type=date],.ui.form .field.warning input[type=datetime-local],.ui.form .field.warning input[type=email],.ui.form .field.warning input[type=number],.ui.form .field.warning input[type=password],.ui.form .field.warning input[type=search],.ui.form .field.warning input[type=tel],.ui.form .field.warning input[type=time],.ui.form .field.warning input[type=text],.ui.form .field.warning input[type=file],.ui.form .field.warning input[type=url]{color:#573a08;background:#fffaf3;border-color:#c9ba9b;border-radius:"";box-shadow:none}.ui.form .field.warning textarea:focus,.ui.form .field.warning select:focus,.ui.form .field.warning input:not([type]):focus,.ui.form .field.warning input[type=date]:focus,.ui.form .field.warning input[type=datetime-local]:focus,.ui.form .field.warning input[type=email]:focus,.ui.form .field.warning input[type=number]:focus,.ui.form .field.warning input[type=password]:focus,.ui.form .field.warning input[type=search]:focus,.ui.form .field.warning input[type=tel]:focus,.ui.form .field.warning input[type=time]:focus,.ui.form .field.warning input[type=text]:focus,.ui.form .field.warning input[type=file]:focus,.ui.form .field.warning input[type=url]:focus{background:#fffaf3;border-color:#c9ba9b;color:#573a08;box-shadow:none}.ui.form .field.warning select{-webkit-appearance:menulist-button}.ui.form .field.warning .transparent.input input,.ui.form .field.warning .transparent.input textarea,.ui.form .field.warning input.transparent,.ui.form .field.warning textarea.transparent{background-color:#fffaf3!important;color:#573a08!important}.ui.form .warning.warning input:-webkit-autofill{box-shadow:0 0 0 100px #ffffe0 inset!important;border-color:#e0e0b3!important}.ui.form .warning ::-webkit-input-placeholder{color:#edad3e}.ui.form .warning :-ms-input-placeholder{color:#edad3e!important}.ui.form .warning ::-moz-placeholder{color:#edad3e}.ui.form .warning :focus::-webkit-input-placeholder{color:#e39715}.ui.form .warning :focus:-ms-input-placeholder{color:#e39715!important}.ui.form .warning :focus::-moz-placeholder{color:#e39715}.ui.form .fields.warning .field .ui.dropdown,.ui.form .fields.warning .field .ui.dropdown .item,.ui.form .field.warning .ui.dropdown,.ui.form .field.warning .ui.dropdown .text,.ui.form .field.warning .ui.dropdown .item{background:#fffaf3;color:#573a08}.ui.form .fields.warning .field .ui.dropdown,.ui.form .field.warning .ui.dropdown,.ui.form .fields.warning .field .ui.dropdown:hover,.ui.form .field.warning .ui.dropdown:hover{border-color:#c9ba9b!important}.ui.form .fields.warning .field .ui.dropdown:hover .menu,.ui.form .field.warning .ui.dropdown:hover .menu{border-color:#c9ba9b}.ui.form .fields.warning .field .ui.multiple.selection.dropdown>.label,.ui.form .field.warning .ui.multiple.selection.dropdown>.label{background-color:#eaeacc;color:#573a08}.ui.form .fields.warning .field .ui.dropdown .menu .item:hover,.ui.form .field.warning .ui.dropdown .menu .item:hover,.ui.form .fields.warning .field .ui.dropdown .menu .selected.item,.ui.form .field.warning .ui.dropdown .menu .selected.item{background-color:#fbfbe9}.ui.form .fields.warning .field .ui.dropdown .menu .active.item,.ui.form .field.warning .ui.dropdown .menu .active.item{background-color:#fdfdce!important}.ui.form .fields.warning .field .checkbox:not(.toggle):not(.slider) label,.ui.form .field.warning .checkbox:not(.toggle):not(.slider) label,.ui.form .fields.warning .field .checkbox:not(.toggle):not(.slider) .box,.ui.form .field.warning .checkbox:not(.toggle):not(.slider) .box{color:#573a08}.ui.form .fields.warning .field .checkbox:not(.toggle):not(.slider) label:before,.ui.form .field.warning .checkbox:not(.toggle):not(.slider) label:before,.ui.form .fields.warning .field .checkbox:not(.toggle):not(.slider) .box:before,.ui.form .field.warning .checkbox:not(.toggle):not(.slider) .box:before{background:#fffaf3;border-color:#c9ba9b}.ui.form .fields.warning .field .checkbox label:after,.ui.form .field.warning .checkbox label:after,.ui.form .fields.warning .field .checkbox .box:after,.ui.form .field.warning .checkbox .box:after{color:#573a08}.ui.form .disabled.fields .field,.ui.form .disabled.field,.ui.form .field :disabled{pointer-events:none;opacity:var(--opacity-disabled)}.ui.form .field.disabled>label,.ui.form .fields.disabled>label{opacity:var(--opacity-disabled)}.ui.form .field.disabled :disabled{opacity:1}.ui.loading.form{position:relative;cursor:default;pointer-events:none}.ui.loading.form:before{position:absolute;content:"";top:0;left:0;background:#fffc;width:100%;height:100%;z-index:100}.ui.loading.form.segments:before{border-radius:.28571429rem}.ui.loading.form:after{position:absolute;content:"";top:50%;left:50%;margin:-1.5em 0 0 -1.5em;width:3em;height:3em;animation:loader .6s infinite linear;border:.2em solid #767676;border-radius:500rem;box-shadow:0 0 0 1px transparent;visibility:visible;z-index:101}.ui.form .required.fields:not(.grouped)>.field>label:after,.ui.form .required.fields.grouped>label:after,.ui.form .required.field>label:after,.ui.form .required.fields:not(.grouped)>.field>.checkbox:after,.ui.form .required.field>.checkbox:after,.ui.form label.required:after{margin:-.2em 0 0 .2em;content:"*";color:#db2828}.ui.form .required.fields:not(.grouped)>.field>label:after,.ui.form .required.fields.grouped>label:after,.ui.form .required.field>label:after,.ui.form label.required:after{display:inline-block;vertical-align:top}.ui.form .required.fields:not(.grouped)>.field>.checkbox:after,.ui.form .required.field>.checkbox:after{position:absolute;top:0;left:100%}.ui.form .grouped.fields{display:block;margin:0 0 1em}.ui.form .grouped.fields:last-child{margin-bottom:0}.ui.form .grouped.fields>label{margin:0 0 .28571429rem;color:#000000de;font-size:.92857143em;font-weight:500;text-transform:none}.ui.form .grouped.fields .field,.ui.form .grouped.inline.fields .field{display:block;margin:.5em 0;padding:0}.ui.form .grouped.inline.fields .ui.checkbox{margin-bottom:.4em}.ui.form .fields{display:flex;flex-direction:row;margin:0 -.5em 1em}.ui.form .fields>.field{flex:0 1 auto;padding-left:.5em;padding-right:.5em}.ui.form .fields>.field:first-child{border-left:none;box-shadow:none}.ui.form .two.fields>.fields,.ui.form .two.fields>.field{width:50%}.ui.form .three.fields>.fields,.ui.form .three.fields>.field{width:33.33333333%}.ui.form .four.fields>.fields,.ui.form .four.fields>.field{width:25%}.ui.form .five.fields>.fields,.ui.form .five.fields>.field{width:20%}.ui.form .six.fields>.fields,.ui.form .six.fields>.field{width:16.66666667%}.ui.form .seven.fields>.fields,.ui.form .seven.fields>.field{width:14.28571429%}.ui.form .eight.fields>.fields,.ui.form .eight.fields>.field{width:12.5%}.ui.form .nine.fields>.fields,.ui.form .nine.fields>.field{width:11.11111111%}.ui.form .ten.fields>.fields,.ui.form .ten.fields>.field{width:10%}@media only screen and (max-width: 767.98px){.ui.form .fields{flex-wrap:wrap;margin-bottom:0}.ui.form:not(.unstackable) .fields:not(.unstackable)>.fields,.ui.form:not(.unstackable) .fields:not(.unstackable)>.field{width:100%;margin:0 0 1em}}.ui.form .fields .wide.field{width:6.25%;padding-left:.5em;padding-right:.5em}.ui.form .one.wide.field{width:6.25%}.ui.form .two.wide.field{width:12.5%}.ui.form .three.wide.field{width:18.75%}.ui.form .four.wide.field{width:25%}.ui.form .five.wide.field{width:31.25%}.ui.form .six.wide.field{width:37.5%}.ui.form .seven.wide.field{width:43.75%}.ui.form .eight.wide.field{width:50%}.ui.form .nine.wide.field{width:56.25%}.ui.form .ten.wide.field{width:62.5%}.ui.form .eleven.wide.field{width:68.75%}.ui.form .twelve.wide.field{width:75%}.ui.form .thirteen.wide.field{width:81.25%}.ui.form .fourteen.wide.field{width:87.5%}.ui.form .fifteen.wide.field{width:93.75%}.ui.form .sixteen.wide.field{width:100%}.ui[class*="equal width"].form .fields>.field,.ui.form [class*="equal width"].fields>.field{width:100%;flex:1 1 auto}.ui.form .inline.fields{margin:0 0 1em;align-items:center}.ui.form .inline.fields .field{margin:0;padding:0 1em 0 0}.ui.form .inline.fields>label,.ui.form .inline.fields .field>label,.ui.form .inline.fields .field>p,.ui.form .inline.field>label,.ui.form .inline.field>p{display:inline-block;width:auto;margin-top:0;margin-bottom:0;vertical-align:baseline;font-size:.92857143em;font-weight:500;color:#000000de;text-transform:none}.ui.form .inline.fields>label{margin:.035714em 1em 0 0}.ui.form .inline.fields .field>input,.ui.form .inline.fields .field>select,.ui.form .inline.field>input,.ui.form .inline.field>select{display:inline-block;width:auto;margin-top:0;margin-bottom:0;vertical-align:middle;font-size:1em}.ui.form .inline.fields .field .calendar:not(.popup),.ui.form .inline.field .calendar:not(.popup){display:inline-block}.ui.form .inline.fields .field .calendar:not(.popup)>.input>input,.ui.form .inline.field .calendar:not(.popup)>.input>input{width:13.11em}.ui.form .inline.fields .field>:first-child,.ui.form .inline.field>:first-child{margin:0 .85714286em 0 0}.ui.form .inline.fields .field>:only-child,.ui.form .inline.field>:only-child{margin:0}.ui.form .inline.fields .wide.field{display:flex;align-items:center}.ui.form .inline.fields .wide.field>input,.ui.form .inline.fields .wide.field>select{width:100%}.ui.form,.ui.form .field .dropdown,.ui.form .field .dropdown .menu>.item{font-size:1rem}.ui.mini.form,.ui.mini.form .field .dropdown,.ui.mini.form .field .dropdown .menu>.item{font-size:.78571429rem}.ui.tiny.form,.ui.tiny.form .field .dropdown,.ui.tiny.form .field .dropdown .menu>.item{font-size:.85714286rem}.ui.small.form,.ui.small.form .field .dropdown,.ui.small.form .field .dropdown .menu>.item{font-size:.92857143rem}.ui.large.form,.ui.large.form .field .dropdown,.ui.large.form .field .dropdown .menu>.item{font-size:1.14285714rem}.ui.big.form,.ui.big.form .field .dropdown,.ui.big.form .field .dropdown .menu>.item{font-size:1.28571429rem}.ui.huge.form,.ui.huge.form .field .dropdown,.ui.huge.form .field .dropdown .menu>.item{font-size:1.42857143rem}.ui.massive.form,.ui.massive.form .field .dropdown,.ui.massive.form .field .dropdown .menu>.item{font-size:1.71428571rem}.ui.modal{position:absolute;display:none;z-index:1001;text-align:left;background:#fff;border:none;box-shadow:1px 3px 3px #0003,1px 3px 15px 2px #0003;transform-origin:50% 25%;flex:0 0 auto;border-radius:.28571429rem;-webkit-user-select:text;-moz-user-select:text;user-select:text;will-change:top,left,margin,transform,opacity}.ui.modal>:first-child:not(.icon):not(.dimmer),.ui.modal>i.icon:first-child+*,.ui.modal>.dimmer:first-child+*:not(.icon),.ui.modal>.dimmer:first-child+i.icon+*{border-top-left-radius:.28571429rem;border-top-right-radius:.28571429rem}.ui.modal>:last-child{border-bottom-left-radius:.28571429rem;border-bottom-right-radius:.28571429rem}.ui.modal>.ui.dimmer{border-radius:inherit}.ui.modal>.close{cursor:pointer;position:absolute;top:-2.5rem;right:-2.5rem;z-index:1;opacity:.8;font-size:1.25em;color:#fff;width:2.25rem;height:2.25rem;padding:.625rem 0 0}.ui.modal>.close:hover{opacity:1}.ui.modal>.header{display:block;font-family:var(--fonts-regular);background:#fff;margin:0;padding:1.25rem 1.5rem;box-shadow:none;color:#000000d9;border-bottom:1px solid rgba(34,36,38,.15)}.ui.modal>.header:not(.ui){font-size:1.42857143rem;line-height:1.28571429em;font-weight:500}.ui.modal>.content{display:block;width:100%;font-size:1em;line-height:1.4;padding:1.5rem;background:#fff}.ui.modal>.image.content{display:flex;flex-direction:row}.ui.modal>.content>.image{display:block;flex:0 1 auto;width:"";align-self:start;max-width:100%}.ui.modal>[class*="top aligned"]{align-self:start}.ui.modal>[class*="middle aligned"]{align-self:center}.ui.modal>[class*=stretched]{align-self:stretch}.ui.modal>.content>.description{display:block;flex:1 0 auto;min-width:0;align-self:start}.ui.modal>.content>i.icon+.description,.ui.modal>.content>.image+.description{flex:0 1 auto;min-width:"";width:auto;padding-left:2em}.ui.modal>.content>.image>i.icon{margin:0;opacity:1;width:auto;line-height:1;font-size:8rem}.ui.modal>.actions{background:#f9fafb;padding:1rem;border-top:1px solid rgba(34,36,38,.15);text-align:right}.ui.modal .actions>.button:not(.fluid){margin-left:.75em}.ui.basic.modal>.actions{border-top:none}@media only screen and (max-width: 767.98px){.ui.modal:not(.fullscreen){width:95%;margin:0}}@media only screen and (min-width: 768px){.ui.modal:not(.fullscreen){width:88%;margin:0}}@media only screen and (min-width: 992px){.ui.modal:not(.fullscreen){width:850px;margin:0}}@media only screen and (min-width: 1200px){.ui.modal:not(.fullscreen){width:900px;margin:0}}@media only screen and (min-width: 1920px){.ui.modal:not(.fullscreen){width:950px;margin:0}}@media only screen and (max-width: 991.98px){.ui.modal>.header{padding-right:2.25rem}.ui.modal>.close{top:1.0535rem;right:1rem;color:#000000de}}@media only screen and (max-width: 767.98px){.ui.modal>.header{padding:.75rem 2.25rem .75rem 1rem!important}.ui.overlay.fullscreen.modal>.content.content.content{min-height:calc(100vh - 8.1rem)}.ui.overlay.fullscreen.modal>.scrolling.content.content.content{max-height:calc(100vh - 8.1rem)}.ui.modal>.content{display:block;padding:1rem!important}.ui.modal>.close{top:.5rem!important;right:.5rem!important}.ui.modal .image.content{flex-direction:column}.ui.modal>.content>.image{display:block;max-width:100%;margin:0 auto!important;text-align:center;padding:0 0 1rem!important}.ui.modal>.content>.image>i.icon{font-size:5rem;text-align:center}.ui.modal>.content>.description{display:block;width:100%!important;margin:0!important;padding:1rem 0!important;box-shadow:none}.ui.modal>.actions{padding:1rem 1rem 0rem!important}.ui.modal .actions>.buttons,.ui.modal .actions>.button{margin-bottom:1rem}}.ui.inverted.dimmer>.ui.modal{box-shadow:1px 3px 10px 2px #0003}.ui.basic.modal{background-color:transparent;border:none;border-radius:0;box-shadow:none!important;color:#fff}.ui.basic.modal>.header,.ui.basic.modal>.content,.ui.basic.modal>.actions{background-color:transparent}.ui.basic.modal>.header{color:#fff;border-bottom:none}.ui.basic.modal>.close{top:1rem;right:1.5rem;color:#fff}.ui.inverted.dimmer>.basic.modal{color:#000000de}.ui.inverted.dimmer>.ui.basic.modal>.header{color:#000000d9}.ui.legacy.legacy.modal,.ui.legacy.legacy.page.dimmer>.ui.modal{left:50%!important}.ui.legacy.legacy.modal:not(.aligned),.ui.legacy.legacy.page.dimmer>.ui.modal:not(.aligned){top:50%}.ui.legacy.legacy.page.dimmer>.ui.scrolling.modal:not(.aligned),.ui.page.dimmer>.ui.scrolling.legacy.legacy.modal:not(.aligned),.ui.top.aligned.legacy.legacy.page.dimmer>.ui.modal:not(.aligned),.ui.top.aligned.dimmer>.ui.legacy.legacy.modal:not(.aligned){top:auto}.ui.legacy.overlay.fullscreen.modal{margin-top:-2rem!important}.ui.loading.modal{display:block;visibility:hidden;z-index:-1}.ui.active.modal{display:block}.modals.dimmer .ui.top.aligned.modal{top:5vh}.modals.dimmer .ui.bottom.aligned.modal{bottom:5vh}@media only screen and (max-width: 767.98px){.modals.dimmer .ui.top.aligned.modal{top:1rem}.modals.dimmer .ui.bottom.aligned.modal{bottom:1rem}}.scrolling.dimmable.dimmed{overflow:hidden}.scrolling.dimmable>.dimmer{justify-content:flex-start;position:fixed}.scrolling.dimmable.dimmed>.dimmer{overflow:auto;-webkit-overflow-scrolling:touch}.modals.dimmer .ui.scrolling.modal:not(.fullscreen){margin:2rem auto}.modals.dimmer .ui.scrolling.modal:not([class*="overlay fullscreen"]):after{content:"\a0";position:absolute;height:2rem}.scrolling.undetached.dimmable.dimmed{overflow:auto;-webkit-overflow-scrolling:touch}.scrolling.undetached.dimmable.dimmed>.dimmer{overflow:hidden}.scrolling.undetached.dimmable .ui.scrolling.modal:not(.fullscreen){position:absolute;left:50%}.ui.modal>.scrolling.content{max-height:calc(80vh - 10rem);overflow:auto}.ui.overlay.fullscreen.modal>.content{min-height:calc(100vh - 9.1rem)}.ui.overlay.fullscreen.modal>.scrolling.content{max-height:calc(100vh - 9.1rem)}.ui.fullscreen.modal{width:95%;left:2.5%;margin:1em auto}.ui.overlay.fullscreen.modal{width:100%;left:0;margin:0 auto;top:0;border-radius:0}.ui.modal>.close.inside+.header,.ui.fullscreen.modal>.header{padding-right:2.25rem}.ui.modal>.close.inside,.ui.fullscreen.modal>.close{top:1.0535rem;right:1rem;color:#000000de}.ui.basic.fullscreen.modal>.close{color:#fff}.ui.modal{font-size:1rem}.ui.mini.modal>.header:not(.ui){font-size:1.3em}@media only screen and (max-width: 767.98px){.ui.mini.modal{width:95%;margin:0}}@media only screen and (min-width: 768px){.ui.mini.modal{width:35.2%;margin:0}}@media only screen and (min-width: 992px){.ui.mini.modal{width:340px;margin:0}}@media only screen and (min-width: 1200px){.ui.mini.modal{width:360px;margin:0}}@media only screen and (min-width: 1920px){.ui.mini.modal{width:380px;margin:0}}.ui.tiny.modal>.header:not(.ui){font-size:1.3em}@media only screen and (max-width: 767.98px){.ui.tiny.modal{width:95%;margin:0}}@media only screen and (min-width: 768px){.ui.tiny.modal{width:52.8%;margin:0}}@media only screen and (min-width: 992px){.ui.tiny.modal{width:510px;margin:0}}@media only screen and (min-width: 1200px){.ui.tiny.modal{width:540px;margin:0}}@media only screen and (min-width: 1920px){.ui.tiny.modal{width:570px;margin:0}}.ui.small.modal>.header:not(.ui){font-size:1.3em}@media only screen and (max-width: 767.98px){.ui.small.modal{width:95%;margin:0}}@media only screen and (min-width: 768px){.ui.small.modal{width:70.4%;margin:0}}@media only screen and (min-width: 992px){.ui.small.modal{width:680px;margin:0}}@media only screen and (min-width: 1200px){.ui.small.modal{width:720px;margin:0}}@media only screen and (min-width: 1920px){.ui.small.modal{width:760px;margin:0}}.ui.large.modal>.header:not(.ui){font-size:1.6em}@media only screen and (max-width: 767.98px){.ui.large.modal{width:95%;margin:0}}@media only screen and (min-width: 768px){.ui.large.modal{width:88%;margin:0}}@media only screen and (min-width: 992px){.ui.large.modal{width:1020px;margin:0}}@media only screen and (min-width: 1200px){.ui.large.modal{width:1080px;margin:0}}@media only screen and (min-width: 1920px){.ui.large.modal{width:1140px;margin:0}}.ui.big.modal>.header:not(.ui){font-size:1.6em}@media only screen and (max-width: 767.98px){.ui.big.modal{width:95%;margin:0}}@media only screen and (min-width: 768px){.ui.big.modal{width:88%;margin:0}}@media only screen and (min-width: 992px){.ui.big.modal{width:1190px;margin:0}}@media only screen and (min-width: 1200px){.ui.big.modal{width:1260px;margin:0}}@media only screen and (min-width: 1920px){.ui.big.modal{width:1330px;margin:0}}.ui.huge.modal>.header:not(.ui){font-size:1.6em}@media only screen and (max-width: 767.98px){.ui.huge.modal{width:95%;margin:0}}@media only screen and (min-width: 768px){.ui.huge.modal{width:88%;margin:0}}@media only screen and (min-width: 992px){.ui.huge.modal{width:1360px;margin:0}}@media only screen and (min-width: 1200px){.ui.huge.modal{width:1440px;margin:0}}@media only screen and (min-width: 1920px){.ui.huge.modal{width:1520px;margin:0}}.ui.massive.modal>.header:not(.ui){font-size:1.8em}@media only screen and (max-width: 767.98px){.ui.massive.modal{width:95%;margin:0}}@media only screen and (min-width: 768px){.ui.massive.modal{width:88%;margin:0}}@media only screen and (min-width: 992px){.ui.massive.modal{width:1530px;margin:0}}@media only screen and (min-width: 1200px){.ui.massive.modal{width:1620px;margin:0}}@media only screen and (min-width: 1920px){.ui.massive.modal{width:1710px;margin:0}}.ui.search{position:relative}.ui.search>.prompt{margin:0;outline:none;-webkit-appearance:none;-webkit-tap-highlight-color:rgba(255,255,255,0);text-shadow:none;font-style:normal;font-weight:400;line-height:1.21428571em;padding:.67857143em 1em;font-size:1em;background:#fff;border:1px solid rgba(34,36,38,.15);color:#000000de;box-shadow:0 0 0 0 transparent inset;transition:background-color .1s ease,color .1s ease,box-shadow .1s ease,border-color .1s ease}.ui.search .prompt{border-radius:500rem}.ui.search .prompt~.search.icon{cursor:pointer}.ui.search>.results{display:none;position:absolute;top:100%;left:0;transform-origin:center top;white-space:normal;text-align:left;text-transform:none;background:#fff;margin-top:.5em;width:18em;border-radius:.28571429rem;box-shadow:0 2px 4px #2224261f,0 2px 10px #22242626;border:1px solid #D4D4D5;z-index:998}.ui.search>.results>:first-child{border-radius:.28571429rem .28571429rem 0 0}.ui.search>.results>:last-child{border-radius:0 0 .28571429rem .28571429rem}.ui.search>.results .result{cursor:pointer;display:block;overflow:hidden;font-size:1em;padding:.85714286em 1.14285714em;color:#000000de;line-height:1.33;border-bottom:1px solid rgba(34,36,38,.1)}.ui.search>.results .result:last-child{border-bottom:none!important}.ui.search>.results .result .image{float:right;overflow:hidden;background:none;width:5em;height:3em;border-radius:.25em}.ui.search>.results .result .image img{display:block;width:auto;height:100%}.ui.search>.results .result .image+.content{margin:0 6em 0 0}.ui.search>.results .result .title{margin:-.14285714em 0 0;font-family:var(--fonts-regular);font-weight:500;font-size:1em;color:#000000d9}.ui.search>.results .result .description{margin-top:0;font-size:.92857143em;color:#0006}.ui.search>.results .result .price{float:right;color:#21ba45}.ui.search>.results>.message{padding:1em}.ui.search>.results>.message .header{font-family:var(--fonts-regular);font-size:1rem;font-weight:500;color:#000000de}.ui.search>.results>.message .description{margin-top:.25rem;font-size:1em;color:#000000de}.ui.search>.results>.action{display:block;border-top:none;background:#f3f4f5;padding:.92857143em 1em;color:#000000de;font-weight:500;text-align:center}.ui.search>.prompt:focus{border-color:#22242659;background:#fff;color:#000000f2}.ui.loading.search .input>i.icon:before{position:absolute;content:"";top:50%;left:50%;margin:-.64285714em 0 0 -.64285714em;width:1.28571429em;height:1.28571429em;border-radius:500rem;border:.2em solid rgba(0,0,0,.1)}.ui.loading.search .input>i.icon:after{position:absolute;content:"";top:50%;left:50%;margin:-.64285714em 0 0 -.64285714em;width:1.28571429em;height:1.28571429em;animation:loader .6s infinite linear;border:.2em solid #767676;border-radius:500rem;box-shadow:0 0 0 1px transparent}.ui.search>.results .result:hover,.ui.category.search>.results .category .result:hover{background:#f9fafb}.ui.search .action:hover:not(div){background:#e0e0e0}.ui.category.search>.results .category.active{background:#f3f4f5}.ui.category.search>.results .category.active>.name{color:#000000de}.ui.search>.results .result.active,.ui.category.search>.results .category .result.active{position:relative;border-left-color:#2224261a;background:#f3f4f5;box-shadow:none}.ui.search>.results .result.active .title{color:#000000d9}.ui.search>.results .result.active .description{color:#000000d9}.ui.disabled.search{cursor:default;pointer-events:none;opacity:var(--opacity-disabled)}.ui.search.selection .prompt{border-radius:.28571429rem}.ui.search.selection>.icon.input>.remove.icon{pointer-events:none;position:absolute;left:auto;opacity:0;color:"";top:0;right:0;transition:color .1s ease,opacity .1s ease}.ui.search.selection>.icon.input>.active.remove.icon{cursor:pointer;opacity:.8;pointer-events:auto}.ui.search.selection>.icon.input:not([class*="left icon"])>.icon~.remove.icon{right:1.85714em}.ui.search.selection>.icon.input>.remove.icon:hover{opacity:1;color:#db2828}.ui.category.search .results{width:28em}.ui.category.search .results.animating,.ui.category.search .results.visible{display:table}.ui.category.search>.results .category{display:table-row;background:#f3f4f5;box-shadow:none;transition:background .1s ease,border-color .1s ease}.ui.category.search>.results .category:last-child{border-bottom:none}.ui.category.search>.results .category:first-child .name+.result{border-radius:0 .28571429rem 0 0}.ui.category.search>.results .category:last-child .result:last-child{border-radius:0 0 .28571429rem}.ui.category.search>.results .category>.name{display:table-cell;text-overflow:ellipsis;width:100px;white-space:nowrap;background:transparent;font-family:var(--fonts-regular);font-size:1em;padding:.4em 1em;font-weight:500;color:#0006;border-bottom:1px solid rgba(34,36,38,.1)}.ui.category.search>.results .category .results{display:table-cell;background:#fff;border-left:1px solid rgba(34,36,38,.15);border-bottom:1px solid rgba(34,36,38,.1)}.ui.category.search>.results .category .result{border-bottom:1px solid rgba(34,36,38,.1);transition:background .1s ease,border-color .1s ease;padding:.85714286em 1.14285714em}.ui.scrolling.search>.results,.ui.search.long>.results,.ui.search.short>.results{overflow-x:hidden;overflow-y:auto;backface-visibility:hidden;-webkit-overflow-scrolling:touch}@media only screen and (max-width: 767.98px){.ui.scrolling.search>.results{max-height:12.17714286em}}@media only screen and (min-width: 768px){.ui.scrolling.search>.results{max-height:18.26571429em}}@media only screen and (min-width: 992px){.ui.scrolling.search>.results{max-height:24.35428571em}}@media only screen and (min-width: 1920px){.ui.scrolling.search>.results{max-height:36.53142857em}}@media only screen and (max-width: 767.98px){.ui.search.short>.results{max-height:12.17714286em}.ui.search[class*="very short"]>.results{max-height:9.13285714em}.ui.search.long>.results{max-height:24.35428571em}.ui.search[class*="very long"]>.results{max-height:36.53142857em}}@media only screen and (min-width: 768px){.ui.search.short>.results{max-height:18.26571429em}.ui.search[class*="very short"]>.results{max-height:13.69928571em}.ui.search.long>.results{max-height:36.53142857em}.ui.search[class*="very long"]>.results{max-height:54.79714286em}}@media only screen and (min-width: 992px){.ui.search.short>.results{max-height:24.35428571em}.ui.search[class*="very short"]>.results{max-height:18.26571429em}.ui.search.long>.results{max-height:48.70857143em}.ui.search[class*="very long"]>.results{max-height:73.06285714em}}@media only screen and (min-width: 1920px){.ui.search.short>.results{max-height:36.53142857em}.ui.search[class*="very short"]>.results{max-height:27.39857143em}.ui.search.long>.results{max-height:73.06285714em}.ui.search[class*="very long"]>.results{max-height:109.59428571em}}.ui[class*="left aligned"].search>.results{right:auto;left:0}.ui[class*="right aligned"].search>.results{right:0;left:auto}.ui.fluid.search .results{width:100%}.ui.search{font-size:1em}.ui.mini.search{font-size:.78571429em}.ui.tiny.search{font-size:.85714286em}.ui.small.search{font-size:.92857143em}.ui.large.search{font-size:1.14285714em}.ui.big.search{font-size:1.28571429em}.ui.huge.search{font-size:1.42857143em}.ui.massive.search{font-size:1.71428571em}@media only screen and (max-width: 767.98px){.ui.search .results{max-width:calc(100vw - 2rem)}}.ui.tab{display:none}.ui.tab.active,.ui.tab.open{display:block}.ui.tab.loading{position:relative;overflow:hidden;display:block;min-height:250px}.ui.tab.loading *{position:relative!important;left:-10000px!important}.ui.tab.loading:before,.ui.tab.loading.segment:before{position:absolute;content:"";top:50%;left:50%;margin:-1.25em 0 0 -1.25em;width:2.5em;height:2.5em;border-radius:500rem;border:.2em solid rgba(0,0,0,.1)}.ui.tab.loading:after,.ui.tab.loading.segment:after{position:absolute;content:"";top:50%;left:50%;margin:-1.25em 0 0 -1.25em;width:2.5em;height:2.5em;animation:loader .6s infinite linear;border:.2em solid #767676;border-radius:500rem;box-shadow:0 0 0 1px transparent}*,:before,:after{box-sizing:border-box}html{line-height:normal;-webkit-text-size-adjust:100%}body{margin:0}hr{height:0;color:inherit}abbr[title]{text-decoration:underline dotted}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}@keyframes isloadingspin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.is-loading{pointer-events:none!important;position:relative!important}.is-loading>*{opacity:.3}.btn.is-loading>*,.button.is-loading>*{opacity:0}.is-loading:after{content:"";position:absolute;display:block;left:50%;top:50%;height:min(4em,66.6%);width:fit-content;aspect-ratio:1;transform:translate(-50%,-50%);animation:isloadingspin 1s infinite linear;border-width:4px;border-style:solid;border-color:var(--color-secondary) var(--color-secondary) var(--color-secondary-dark-8) var(--color-secondary-dark-8);border-radius:var(--border-radius-full)}.is-loading.loading-icon-2px:after{border-width:2px}.is-loading.loading-icon-3px:after{border-width:3px}form.single-button-form.is-loading>*{opacity:1}form.single-button-form.is-loading .button{color:transparent}.markup pre.is-loading,.editor-loading.is-loading,.pdf-content.is-loading{height:var(--height-loading)}.markup .is-loading>*{visibility:hidden}.markup .is-loading{color:transparent;background:transparent}code.language-math.is-loading:after{padding:0;border-width:2px;width:1.25rem;height:1.25rem}@keyframes fadein{0%{opacity:0}to{opacity:1}}@keyframes fadeout{0%{opacity:1}to{opacity:0}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.8)}to{transform:scale(1)}}.pulse{animation:pulse 2s linear}.ui.modal,.ui.dimmer.transition{animation-name:fadein;animation-duration:.1s;animation-timing-function:ease-in-out}.ui.button{cursor:pointer;display:inline-block;min-height:1em;outline:none;vertical-align:baseline;font-family:var(--fonts-regular);margin:0 .25em 0 0;padding:.78571429em 1.5em;font-weight:var(--font-weight-normal);text-align:center;text-decoration:none;line-height:1;border-radius:.28571429rem;user-select:none;-webkit-tap-highlight-color:transparent;justify-content:center;background:var(--color-button);border:1px solid var(--color-light-border);color:var(--color-text);white-space:nowrap}.ui.button:focus-visible{box-shadow:inset 0 0 0 2px currentcolor}@media (max-width: 767.98px){.ui.button{white-space:normal}}.ui.button:hover{background:var(--color-hover);color:var(--color-text)}.ui.active.button,.ui.button:active,.ui.active.button:active,.ui.active.button:hover{background:var(--color-active);color:var(--color-text)}.ui.buttons .disabled.button:not(.basic),.ui.disabled.button,.ui.button:disabled,.ui.disabled.button:hover,.ui.disabled.active.button{cursor:default;opacity:var(--opacity-disabled)!important;background-image:none;pointer-events:none!important}.ui.labeled.button:not(.icon){display:inline-flex;flex-direction:row;background:none;padding:0!important;border:none}.ui.labeled.button>.button{margin:0;border-top-right-radius:0;border-bottom-right-radius:0}.ui.labeled.button>.label{display:flex;align-items:center;margin:0 0 0 -1px!important;font-size:1em;border-color:var(--color-light-border);border-top-left-radius:0;border-bottom-left-radius:0}.ui.labeled.button>.label:hover{background:var(--color-hover)}.ui.labeled.button>.button:hover+.label{border-left-color:var(--color-secondary-dark-2)}.ui.button>.icon:not(.button){height:auto;opacity:.8}.ui.button:not(.icon)>.icon:not(.button):not(.dropdown),.ui.button:not(.icon)>.icons:not(.button):not(.dropdown){margin:0 .42857143em 0 -.21428571em;vertical-align:baseline}.ui.button:not(.icon)>.icons:not(.button):not(.dropdown)>.icon{vertical-align:baseline}.ui.button:not(.icon)>.right.icon:not(.button):not(.dropdown){margin:0 -.21428571em 0 .42857143em}.ui.compact.buttons .button,.ui.compact.button{padding:.58928571em 1.125em}.ui.compact.icon.buttons .button,.ui.compact.icon.button{padding:.58928571em}.ui.compact.labeled.icon.button{padding:.58928571em 3.69642857em}.ui.compact.labeled.icon.button>.icon{padding:.58928571em 0}.ui.buttons .button,.ui.button{font-size:1rem}.ui.mini.buttons .dropdown,.ui.mini.buttons .dropdown .menu>.item,.ui.mini.buttons .button,.ui.ui.ui.ui.mini.button{font-size:.78571429rem}.ui.tiny.buttons .dropdown,.ui.tiny.buttons .dropdown .menu>.item,.ui.tiny.buttons .button,.ui.ui.ui.ui.tiny.button{font-size:.85714286rem}.ui.small.buttons .dropdown,.ui.small.buttons .dropdown .menu>.item,.ui.small.buttons .button,.ui.ui.ui.ui.small.button{font-size:.92857143rem}.ui.icon.buttons .button,.ui.icon.button:not(.compact){padding:.78571429em}.ui.icon.buttons .button>.icon,.ui.icon.button>.icon{margin:0!important;vertical-align:top}.ui.basic.buttons .button,.ui.basic.button{border-radius:.28571429rem;background:none}.ui.basic.buttons{border:1px solid var(--color-secondary);border-radius:.28571429rem}.ui.basic.buttons .button{border-radius:0;border-left:1px solid var(--color-secondary)}.ui.labeled.button.disabled>.button,.ui.basic.buttons .button,.ui.basic.button{color:var(--color-text-light);background:var(--color-button)}.ui.basic.buttons .button:hover,.ui.basic.button:hover{color:var(--color-text);background:var(--color-hover);border-color:var(--color-secondary-dark-2)}.ui.basic.buttons .button:active,.ui.basic.button:active,.ui.basic.buttons .active.button,.ui.basic.active.button,.ui.basic.buttons .active.button:hover,.ui.basic.active.button:hover{color:var(--color-text);background:var(--color-active)}.ui.labeled.icon.button{position:relative;padding-left:4.07142857em!important;padding-right:1.5em!important}.ui.labeled.icon.button>.icon{position:absolute;top:0;left:0;height:100%;line-height:1;border-radius:0;border-top-left-radius:inherit;border-bottom-left-radius:inherit;text-align:center;animation:none;padding:.78571429em 0;margin:0;width:2.57142857em;background:var(--color-hover)}.ui.button.toggle.active{background-color:var(--color-green);color:var(--color-white)}.ui.button.toggle.active:hover{background-color:var(--color-green-dark-1);color:var(--color-white)}.ui.fluid.button{width:100%;display:block}.ui.primary.button,.ui.primary.buttons .button{background:var(--color-primary);color:var(--color-primary-contrast)}.ui.primary.button:hover,.ui.primary.buttons .button:hover{background:var(--color-primary-hover);color:var(--color-primary-contrast)}.ui.primary.button:active,.ui.primary.buttons .button:active{background:var(--color-primary-active)}.ui.basic.primary.buttons .button,.ui.basic.primary.button{color:var(--color-primary);border-color:var(--color-primary);background:none}.ui.basic.primary.buttons .button:hover,.ui.basic.primary.button:hover{color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.ui.basic.primary.buttons .button:active,.ui.basic.primary.button:active{color:var(--color-primary-active);border-color:var(--color-primary-active)}.ui.red.button,.ui.red.buttons .button{color:var(--color-white);background:var(--color-red)}.ui.red.button:hover,.ui.red.buttons .button:hover{background:var(--color-red-dark-1)}.ui.red.button:active,.ui.red.buttons .button:active{background:var(--color-red-dark-2)}.ui.basic.red.buttons .button,.ui.basic.red.button{color:var(--color-red);border-color:var(--color-red);background:none}.ui.basic.red.buttons .button:hover,.ui.basic.red.button:hover{color:var(--color-red-dark-1);border-color:var(--color-red-dark-1)}.ui.basic.red.buttons .button:active,.ui.basic.red.button:active{color:var(--color-red-dark-2);border-color:var(--color-red-dark-2)}.ui.green.button,.ui.green.buttons .button{color:var(--color-white);background:var(--color-green)}.ui.green.button:hover,.ui.green.buttons .button:hover{background:var(--color-green-dark-1)}.ui.green.button:active,.ui.green.buttons .button:active{background:var(--color-green-dark-2)}.ui.basic.green.buttons .button,.ui.basic.green.button{color:var(--color-green);border-color:var(--color-green);background:none}.ui.basic.green.buttons .button:hover,.ui.basic.green.button:hover{color:var(--color-green-dark-1);border-color:var(--color-green-dark-1)}.ui.basic.green.buttons .button:active,.ui.basic.green.button:active{color:var(--color-green-dark-2);border-color:var(--color-green-dark-2)}.ui.buttons{display:inline-flex;flex-direction:row;font-size:0;vertical-align:baseline;margin:0 .25em 0 0}.delete-button,.delete-button:hover{color:var(--color-red)}.btn{background:transparent;border-radius:var(--border-radius);border:none;color:inherit;margin:0;padding:0}.btn:hover,.btn:active{background:none;border:none}a.btn,a.btn:hover{color:inherit}.ui.buttons .button{border-right:none;flex:1 0 auto;border-radius:0;margin:0}.ui.buttons .button:first-child{border-left:none;margin-left:0;border-top-left-radius:.28571429rem;border-bottom-left-radius:.28571429rem}.ui.buttons .button:last-child{border-top-right-radius:.28571429rem;border-bottom-right-radius:.28571429rem}.ui.buttons .button:hover{border-color:var(--color-secondary-dark-2)}.ui.buttons .button:hover+.button{border-left:1px solid var(--color-secondary-dark-2)}.ui.buttons .button:first-child,.ui.buttons .button.tw-hidden:first-child+.button{border-left:1px solid var(--color-light-border)}.ui.buttons .button:last-child,.ui.buttons .button:nth-last-child(2):has(+.button.tw-hidden){border-right:1px solid var(--color-light-border)}.ui.buttons .button.active{border-left:1px solid var(--color-light-border);border-right:1px solid var(--color-light-border)}.ui.buttons .button.active+.button{border-left:none}.ui.small.button:not(.compact):has(.svg){padding-top:.58928571em;padding-bottom:.58928571em}.ui.container{width:1280px;max-width:calc(100% - calc(2 * var(--page-margin-x)));margin-left:auto;margin-right:auto}.ui.fluid.container{width:100%}.ui[class*="center aligned"].container{text-align:center}.divider{margin:10px 0;height:0;font-weight:var(--font-weight-medium);color:var(--color-text);font-size:1rem;width:100%}h4.divider{margin-top:1.25rem;margin-bottom:1.25rem}.divider:not(.divider-text){border-top:1px solid var(--color-secondary)}.divider.divider-text{display:flex;align-items:center;padding:5px 0}.divider.divider-text:before,.divider.divider-text:after{content:"";flex:1;border-top:1px solid var(--color-secondary)}.divider.divider-text:before{margin-right:.75em}.divider.divider-text:after{margin-left:.75em}.ui.dropdown .menu>.divider{border-top:1px solid var(--color-secondary);margin:4px 0}.ui.header{color:var(--color-text);border:none;margin:calc(2rem - .1428571428571429em) 0 1rem;padding:0;font-family:var(--fonts-regular);font-weight:var(--font-weight-medium);line-height:1.28571429}.ui.header:first-child{margin-top:-.14285714em}.ui.header:last-child{margin-bottom:0}.ui.header .ui.label{margin-left:.25rem;vertical-align:middle}.ui.header>.ui.label.compact{margin-top:inherit}.ui.header .sub.header{display:block;font-weight:var(--font-weight-normal);padding:0;margin:0;font-size:1rem;line-height:1.2;color:var(--color-text-light-1)}.ui.header>i.icon{display:table-cell;opacity:1;font-size:1.5em;padding-top:0;vertical-align:middle}.ui.header>i.icon:only-child{display:inline-block;padding:0;margin-right:.75rem}.ui.header+p{margin-top:0}h2.ui.header{font-size:1.71428571rem}h2.ui.header .sub.header{font-size:1.14285714rem}h4.ui.header{font-size:1.07142857rem}h4.ui.header .sub.header{font-size:1rem}.ui.sub.header{padding:0;margin-bottom:.14285714rem;font-weight:var(--font-weight-normal);font-size:.85714286em}.ui.icon.header svg{width:3em;height:3em;float:none;display:block;line-height:var(--line-height-default);padding:0;margin:0 auto .5rem;opacity:1}.ui.header:not(h1,h2,h3,h4,h5,h6){font-size:1.28571429em}.ui.attached.header{position:relative;background:var(--color-box-header);padding:.78571429rem 1rem;margin:0 -1px;border-radius:0;border:1px solid var(--color-secondary)}.ui.attached:not(.top).header{border-top:none}.ui.top.attached.header{border-radius:.28571429rem .28571429rem 0 0}.ui.bottom.attached.header{border-radius:0 0 .28571429rem .28571429rem}.ui.attached.header:not(h1,h2,h3,h4,h5,h6){font-size:1em}.ui.attached.header>.ui.right{position:absolute;right:.78571429rem;top:0;bottom:0;display:flex;align-items:center;gap:.25em}.ui.attached.header>.ui.right .ui.tiny.button{padding:6px 10px;font-weight:var(--font-weight-normal)}.ui.segments+.ui.top.attached.header,.ui.attached.segment+.ui.top.attached.header{margin-top:1rem}.ui.dividing.header{border-bottom-color:var(--color-secondary)}.ui.dividing.header .sub.header{padding-bottom:.21428571rem}.ui.dividing.header i.icon{margin-bottom:0}.ui.error.header{background:var(--color-error-bg)!important;color:var(--color-error-text)!important;border-color:var(--color-error-border)!important}.ui.warning.header{background:var(--color-warning-bg)!important;color:var(--color-warning-text)!important;border-color:var(--color-warning-border)!important}.attention-header{padding:.5em .75em!important;color:var(--color-text)!important}.ui.input{position:relative;font-weight:var(--font-weight-normal);display:inline-flex;color:var(--color-input-text)}.ui.input>input{margin:0;max-width:100%;flex:1 0 auto;outline:none;font-family:var(--fonts-regular);padding:.67857143em 1em;border:1px solid var(--color-input-border);color:var(--color-input-text);border-radius:.28571429rem;line-height:var(--line-height-default);text-align:start}.ui.disabled.input,.ui.input:not(.disabled) input[disabled]{opacity:var(--opacity-disabled)}.ui.disabled.input>input,.ui.input:not(.disabled) input[disabled]{pointer-events:none}.ui.input.focus>input,.ui.input>input:focus{border-color:var(--color-primary)}.ui.input.error>input{background:var(--color-error-bg);border-color:var(--color-error-border);color:var(--color-error-text)}.ui.icon.input>i.icon{display:flex;align-items:center;justify-content:center;cursor:default;position:absolute;text-align:center;top:0;right:0;margin:0;height:100%;width:2.67142857em;opacity:.5;border-radius:0 .28571429rem .28571429rem 0;pointer-events:none;padding:4px}.ui.icon.input>i.icon.is-loading{position:absolute!important;height:28px;top:4px}.ui.icon.input>i.icon.is-loading>*{visibility:hidden}.ui.ui.ui.ui.icon.input>textarea,.ui.ui.ui.ui.icon.input>input{padding-right:2.67142857em}.ui.icon.input>i.link.icon{cursor:pointer}.ui.icon.input>i.circular.icon{top:.35em;right:.5em}.ui[class*="left icon"].input>i.icon{right:auto;left:1px;border-radius:.28571429rem 0 0 .28571429rem}.ui[class*="left icon"].input>i.circular.icon{right:auto;left:.5em}.ui.ui.ui.ui[class*="left icon"].input>textarea,.ui.ui.ui.ui[class*="left icon"].input>input{padding-left:2.67142857em;padding-right:1em}.ui.icon.input>textarea:focus~.icon,.ui.icon.input>input:focus~.icon{opacity:1}.ui.icon.input>textarea~i.icon{height:3em}.ui.form .field.error>.ui.action.input>.ui.button,.ui.action.input.error>.ui.button{border-top:1px solid var(--color-error-border);border-bottom:1px solid var(--color-error-border)}.ui.action.input>.button,.ui.action.input>.buttons{display:flex;align-items:center;flex:0 0 auto}.ui.action.input>.button,.ui.action.input>.buttons>.button{padding-top:.78571429em;padding-bottom:.78571429em;margin:0}.ui.action.input:not([class*="left action"])>input{border-top-right-radius:0;border-bottom-right-radius:0;border-right-color:transparent}.ui.action.input>.dropdown:first-child,.ui.action.input>.button:first-child,.ui.action.input>.buttons:first-child>.button{border-radius:.28571429rem 0 0 .28571429rem}.ui.action.input>.dropdown:not(:first-child),.ui.action.input>.button:not(:first-child),.ui.action.input>.buttons:not(:first-child)>.button{border-radius:0}.ui.action.input>.dropdown:last-child,.ui.action.input>.button:last-child,.ui.action.input>.buttons:last-child>.button{border-radius:0 .28571429rem .28571429rem 0}.ui.fluid.input{display:flex}.ui.fluid.input>input{width:0!important}.ui.tiny.input{font-size:.85714286em}.ui.small.input{font-size:.92857143em}.ui.action.input .ui.ui.button{border-color:var(--color-input-border);padding-top:0;padding-bottom:0}.ui.action.input:not([class*="left action"])>.ui.dropdown.selection{min-width:10em}.ui.action.input:not([class*="left action"])>.ui.dropdown.selection:not(:focus){border-right:none}.ui.action.input:not([class*="left action"])>.ui.dropdown.selection:not(.active):hover{border-color:var(--color-input-border)}.ui.action.input:not([class*="left action"]) .ui.dropdown.selection.upward.visible{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.action.input:not([class*="left action"])>input,.ui.action.input:not([class*="left action"])>input:hover{border-right:none}.ui.action.input:not([class*="left action"])>input:focus+.ui.dropdown.selection,.ui.action.input:not([class*="left action"])>input:focus+.ui.dropdown.selection:hover,.ui.action.input:not([class*="left action"])>input:focus+.button,.ui.action.input:not([class*="left action"])>input:focus+.button:hover,.ui.action.input:not([class*="left action"])>input:focus+i.icon+.button,.ui.action.input:not([class*="left action"])>input:focus+i.icon+.button:hover{border-left-color:var(--color-primary)}.ui.action.input:not([class*="left action"])>input:focus{border-right-color:var(--color-primary)}.ui.label{display:inline-flex;align-items:center;gap:.25rem;min-width:0;vertical-align:middle;line-height:1;background:var(--color-label-bg);color:var(--color-label-text);padding:.3em .5em;font-size:.85714286rem;font-weight:var(--font-weight-medium);border:0 solid transparent;border-radius:.28571429rem;white-space:nowrap}.ui.label:first-child{margin-left:0}.ui.label:last-child{margin-right:0}a.ui.label{cursor:pointer}.ui.label>a{cursor:pointer;color:inherit;opacity:.75}.ui.label>a:hover{opacity:1}.ui.label>img{width:auto;vertical-align:middle;height:2.1666em}.ui.label>.color-icon{margin-left:0}.ui.label>.icon{width:auto;margin:0 .75em 0 0}.ui.label>.detail{display:inline-block;vertical-align:top;font-weight:var(--font-weight-medium);margin-left:1em;opacity:.8}.ui.label>.detail .icon{margin:0 .25em 0 0}.ui.label>.close.icon,.ui.label>.delete.icon{cursor:pointer;font-size:.92857143em;opacity:.5}.ui.label>.close.icon:hover,.ui.label>.delete.icon:hover{opacity:1}.ui.label.left.icon>.close.icon,.ui.label.left.icon>.delete.icon{margin:0 .5em 0 0}.ui.label:not(.icon)>.close.icon,.ui.label:not(.icon)>.delete.icon{margin:0 0 0 .5em}.ui.header>.ui.label{margin-top:-.29165em}a.ui.label:hover{background:var(--color-label-hover-bg);border-color:var(--color-label-hover-bg);color:var(--color-label-text)}.ui.label.visible:not(.dropdown){display:inline-block!important}.ui.basic.label{background:var(--color-button);border:1px solid var(--color-light-border);color:var(--color-text-light);padding:calc(.5833em - 1px) calc(.833em - 1px)}a.ui.basic.label:hover{text-decoration:none;color:var(--color-text);border-color:var(--color-secondary-dark-2);background:var(--color-hover)}.ui.ui.ui.primary.label{background:var(--color-primary);border-color:var(--color-primary-dark-2);color:var(--color-primary-contrast)}a.ui.ui.ui.primary.label:hover{background:var(--color-primary-dark-3);border-color:var(--color-primary-dark-3);color:var(--color-primary-contrast)}.ui.ui.ui.basic.primary.label{background:transparent;border-color:var(--color-primary);color:var(--color-primary)}a.ui.ui.ui.basic.primary.label:hover{background:var(--color-hover);border-color:var(--color-primary-dark-1);color:var(--color-primary-dark-1)}.ui.ui.ui.red.label{background:var(--color-red);border-color:var(--color-red);color:var(--color-white)}a.ui.ui.ui.red.label:hover{background:var(--color-red-dark-1);border-color:var(--color-red-dark-1);color:var(--color-white)}.ui.ui.ui.basic.red.label{background:transparent;border-color:var(--color-red);color:var(--color-red)}a.ui.ui.ui.basic.red.label:hover{background:transparent;border-color:var(--color-red-dark-1);color:var(--color-red-dark-1)}.ui.ui.ui.orange.label{background:var(--color-orange);border-color:var(--color-orange);color:var(--color-white)}a.ui.ui.ui.orange.label:hover{background:var(--color-orange-dark-1);border-color:var(--color-orange-dark-1);color:var(--color-white)}.ui.ui.ui.basic.orange.label{background:transparent;border-color:var(--color-orange);color:var(--color-orange)}a.ui.ui.ui.basic.orange.label:hover{background:transparent;border-color:var(--color-orange-dark-1);color:var(--color-orange-dark-1)}.ui.ui.ui.yellow.label{background:var(--color-yellow);border-color:var(--color-yellow);color:var(--color-white)}a.ui.ui.ui.yellow.label:hover{background:var(--color-yellow-dark-1);border-color:var(--color-yellow-dark-1);color:var(--color-white)}.ui.ui.ui.basic.yellow.label{background:transparent;border-color:var(--color-yellow);color:var(--color-yellow)}a.ui.ui.ui.basic.yellow.label:hover{background:transparent;border-color:var(--color-yellow-dark-1);color:var(--color-yellow-dark-1)}.ui.ui.ui.olive.label{background:var(--color-olive);border-color:var(--color-olive);color:var(--color-white)}.ui.ui.ui.green.label{background:var(--color-green);border-color:var(--color-green);color:var(--color-white)}a.ui.ui.ui.green.label:hover{background:var(--color-green-dark-1);border-color:var(--color-green-dark-1);color:var(--color-white)}.ui.ui.ui.basic.green.label{background:transparent;border-color:var(--color-green);color:var(--color-green)}a.ui.ui.ui.basic.green.label:hover{background:transparent;border-color:var(--color-green-dark-1);color:var(--color-green-dark-1)}.ui.ui.ui.purple.label{background:var(--color-purple);border-color:var(--color-purple);color:var(--color-white)}a.ui.ui.ui.purple.label:hover{background:var(--color-purple-dark-1);border-color:var(--color-purple-dark-1);color:var(--color-white)}.ui.ui.ui.basic.purple.label{background:transparent;border-color:var(--color-purple);color:var(--color-purple)}a.ui.ui.ui.basic.purple.label:hover{background:transparent;border-color:var(--color-purple-dark-1);color:var(--color-purple-dark-1)}.ui.ui.ui.grey.label{background:var(--color-label-bg);border-color:var(--color-label-bg);color:var(--color-label-text)}a.ui.ui.ui.grey.label:hover{background:var(--color-label-hover-bg);border-color:var(--color-label-hover-bg);color:var(--color-white)}.ui.ui.ui.basic.grey.label{background:transparent;border-color:var(--color-label-bg);color:var(--color-label-text)}a.ui.ui.ui.basic.grey.label:hover{background:transparent;border-color:var(--color-label-hover-bg);color:var(--color-label-hover-bg)}.ui.horizontal.label{margin:0 .5em 0 0;padding:.4em .833em;min-width:3em;text-align:center}.ui.circular.label{min-width:2em;min-height:2em;padding:.5em!important;line-height:1;text-align:center;border-radius:500rem;justify-content:center}.ui.mini.label{font-size:.64285714rem}.ui.tiny.label{font-size:.71428571rem}.ui.small.label{font-size:.78571429rem}.ui.large.label{font-size:1rem}.ui.list{list-style-type:none;margin:1em 0;padding:0;font-size:1em}.ui.list:first-child{margin-top:0;padding-top:0}.ui.list:last-child{margin-bottom:0;padding-bottom:0}.ui.list>.item,.ui.list .list>.item{display:list-item;table-layout:fixed;list-style-type:none;list-style-position:outside}.ui.list>.list>.item:after,.ui.list>.item:after{content:"";display:block;height:0;clear:both;visibility:hidden}.ui.list .list:not(.icon){clear:both;margin:0;padding:.75em 0 .25em .5em}.ui.list .list>.item{padding:.14285714em 0}.ui.list .list>.item>i.icon,.ui.list>.item>i.icon{display:table-cell;min-width:1.55em;padding-top:0;transition:color .1s ease;padding-right:.28571429em;vertical-align:top}.ui.list .list>.item>i.icon:only-child,.ui.list>.item>i.icon:only-child{display:inline-block;min-width:auto;vertical-align:top}.ui.list .list>.item>.image,.ui.list>.item>.image{display:table-cell;background-color:transparent;vertical-align:top}.ui.list .list>.item>.image:not(:only-child):not(img),.ui.list>.item>.image:not(:only-child):not(img){padding-right:.5em}.ui.list .list>.item>.image img,.ui.list>.item>.image img{vertical-align:top}.ui.list .list>.item>img.image,.ui.list .list>.item>.image:only-child,.ui.list>.item>img.image,.ui.list>.item>.image:only-child{display:inline-block}.ui.list .list>.item>.content,.ui.list>.item>.content{color:var(--color-text)}.ui.list .list>.item>.image+.content,.ui.list .list>.item>i.icon+.content,.ui.list>.item>.image+.content,.ui.list>.item>i.icon+.content{display:table-cell;width:100%;padding:0 0 0 .5em;vertical-align:top}.ui.list .list>.item>img.image+.content,.ui.list>.item>img.image+.content{display:inline-block;width:auto}.ui.list .list>.item>.content>.list,.ui.list>.item>.content>.list{margin-left:0;padding-left:0}.ui.list .list>.item .header,.ui.list>.item .header{display:block;margin:0;font-family:var(--fonts-regular);font-weight:var(--font-weight-medium);color:var(--color-text-dark)}.ui.list .list>.item .description,.ui.list>.item .description{display:block;color:var(--color-text)}.ui.list>.item a,.ui.list .list>.item a{cursor:pointer}.ui.list .list>.item [class*="right floated"],.ui.list>.item [class*="right floated"]{float:right;margin:0 0 0 1em}.ui.menu .ui.list>.item,.ui.menu .ui.list .list>.item{display:list-item;table-layout:fixed;background-color:transparent;list-style-type:none;list-style-position:outside;padding:.21428571em 0}.ui.menu .ui.list .list>.item:before,.ui.menu .ui.list>.item:before{border:none;background:none}.ui.menu .ui.list .list>.item:first-child,.ui.menu .ui.list>.item:first-child{padding-top:0}.ui.menu .ui.list .list>.item:last-child,.ui.menu .ui.list>.item:last-child{padding-bottom:0}.ui.list .list>.disabled.item,.ui.list>.disabled.item{pointer-events:none;opacity:var(--opacity-disabled)}.ui.list .list>a.item:hover>.icons,.ui.list>a.item:hover>.icons,.ui.list .list>a.item:hover>i.icon,.ui.list>a.item:hover>i.icon{color:var(--color-text-dark)}.ui.divided.list>.item{border-top:1px solid var(--color-secondary)}.ui.divided.list .list>.item{border-top:none}.ui.divided.list .item .list>.item{border-top:none}.ui.divided.list .list>.item:first-child,.ui.divided.list>.item:first-child{border-top:none}.ui.divided.list .list>.item:first-child{border-top-width:1px}.ui.relaxed.list>.item:not(:first-child){padding-top:.42857143em}.ui.relaxed.list>.item:not(:last-child){padding-bottom:.42857143em}.ui.segment{position:relative;margin:1rem 0;padding:1em;border-radius:.28571429rem;border:1px solid var(--color-secondary);background:var(--color-box-body);color:var(--color-text)}.ui.segment:first-child{margin-top:0}.ui.segment:last-child{margin-bottom:0}.ui.grid.segment{margin:1rem 0;border-radius:.28571429rem}.ui.segment.tab:last-child{margin-bottom:1rem}.ui.segments{flex-direction:column;position:relative;margin:1rem 0;border:1px solid var(--color-secondary);border-radius:.28571429rem;background:var(--color-box-body);color:var(--color-text)}.ui.segments:first-child{margin-top:0}.ui.segments:last-child{margin-bottom:0}.ui.segments>.segment{top:0;bottom:0;border-radius:0;margin:0;width:auto;box-shadow:none;border:none;border-top:1px solid var(--color-secondary)}.ui.segments:not(.horizontal)>.segment:first-child{top:0;bottom:0;border-top:none;margin-top:0;margin-bottom:0;border-radius:.28571429rem .28571429rem 0 0}.ui.segments:not(.horizontal)>.segment:last-child{top:0;bottom:0;margin-top:0;margin-bottom:0;border-radius:0 0 .28571429rem .28571429rem}.ui.segments:not(.horizontal)>.segment:only-child,.ui.segments:not(.horizontal)>.segment:has(~.tw-hidden){border-radius:.28571429rem}.ui.segments>.ui.segments{border-top:1px solid var(--color-secondary);margin:1rem}.ui.segments>.segments:first-child{border-top:none}.ui.segments>.segment+.segments:not(.horizontal){margin-top:0}.ui.horizontal.segments{display:flex;flex-direction:row;background-color:transparent;padding:0;margin:1rem 0;border-radius:.28571429rem;border:1px solid var(--color-secondary)}.ui.horizontal.segments>.segment{margin:0;min-width:0;border-radius:0;border:none;box-shadow:none;border-left:1px solid var(--color-secondary)}.ui.segments>.horizontal.segments:first-child{border-top:none}.ui.horizontal.segments:not(.stackable)>.segment:first-child{border-left:none}.ui.horizontal.segments>.segment:first-child{border-radius:.28571429rem 0 0 .28571429rem}.ui.horizontal.segments>.segment:last-child{border-radius:0 .28571429rem .28571429rem 0}.ui.clearing.segment:after{content:"";display:block;clear:both}.ui[class*="left aligned"].segment{text-align:left}.ui[class*="center aligned"].segment{text-align:center}.ui.secondary.segment{background:var(--color-secondary-bg);color:var(--color-text-light)}.ui.attached.segment{top:0;bottom:0;border-radius:0;margin:0 -1px;width:calc(100% + 2px);max-width:calc(100% + 2px);box-shadow:none;border:1px solid var(--color-secondary);background:var(--color-box-body);color:var(--color-text)}.ui.attached:not(.message)+.ui.attached.segment:not(.top){border-top:none}.ui.attached.segment:has(+.ui[class*="top attached"].header),.ui.attached.segment:has(+.page.buttons),.ui.attached.segment:last-child,.ui.segment:has(+.ui.segment:not(.attached)),.ui.attached.segment:has(+.ui.modal){border-bottom-left-radius:.28571429rem;border-bottom-right-radius:.28571429rem}.ui[class*="top attached"].segment{bottom:0;margin-bottom:0;top:0;margin-top:1rem;border-radius:.28571429rem .28571429rem 0 0}.ui.segment[class*="top attached"]:first-child{margin-top:0}.ui[class*="top attached"].segment:last-child{border-top-left-radius:.28571429rem;border-top-right-radius:.28571429rem}.ui.segment[class*="bottom attached"]{bottom:0;margin-top:0;top:0;margin-bottom:1rem;border-radius:0 0 .28571429rem .28571429rem}.ui.segment[class*="bottom attached"]:last-child{margin-bottom:1rem}.ui.fitted.segment:not(.horizontally){padding-top:0;padding-bottom:0}.ui.fitted.segment:not(.vertically){padding-left:0;padding-right:0}.ui.segments .segment,.ui.segment{font-size:1rem}.ui.error.segment{border-color:var(--color-error-border)!important}.ui.warning.segment{border-color:var(--color-warning-border)!important}.ui.grid{display:flex;flex-direction:row;flex-wrap:wrap;align-items:stretch;padding:0;margin:-1rem}.ui.relaxed.grid{margin-left:-1.5rem;margin-right:-1.5rem}.ui[class*="very relaxed"].grid{margin-left:-2.5rem;margin-right:-2.5rem}.ui.grid+.grid{margin-top:1rem}.ui.grid>.column:not(.row),.ui.grid>.row>.column{position:relative;display:inline-block;width:6.25%;padding-left:1rem;padding-right:1rem;vertical-align:top}.ui.grid>*{padding-left:1rem;padding-right:1rem}.ui.grid>.row{position:relative;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:inherit;align-items:stretch;width:100%!important;padding:0;padding-top:1rem;padding-bottom:1rem}.ui.grid>.column:not(.row){padding-top:1rem;padding-bottom:1rem}.ui.grid>.row>.column{margin-top:0;margin-bottom:0}.ui.grid>.row>img,.ui.grid>.row>.column>img{max-width:100%}.ui.grid>.ui.grid:first-child{margin-top:0}.ui.grid>.ui.grid:last-child{margin-bottom:0}.ui.grid .aligned.row>.column>.segment:not(.compact):not(.attached),.ui.aligned.grid .column>.segment:not(.compact):not(.attached){width:100%}.ui.grid .row+.ui.divider{flex-grow:1;margin:1rem}.ui.grid .column+.ui.vertical.divider{height:calc(50% - 1rem)}.ui.grid>.row>.column:last-child>.horizontal.segment,.ui.grid>.column:last-child>.horizontal.segment{box-shadow:none}@media only screen and (max-width: 767.98px){.ui.page.grid{width:auto;padding-left:0;padding-right:0;margin-left:0;margin-right:0}}@media only screen and (min-width: 768px) and (max-width: 991.98px){.ui.page.grid{width:auto;margin-left:0;margin-right:0;padding-left:2em;padding-right:2em}}@media only screen and (min-width: 992px) and (max-width: 1199.98px){.ui.page.grid{width:auto;margin-left:0;margin-right:0;padding-left:3%;padding-right:3%}}@media only screen and (min-width: 1200px) and (max-width: 1919.98px){.ui.page.grid{width:auto;margin-left:0;margin-right:0;padding-left:15%;padding-right:15%}}@media only screen and (min-width: 1920px){.ui.page.grid{width:auto;margin-left:0;margin-right:0;padding-left:23%;padding-right:23%}}.ui.grid>.column:only-child,.ui.grid>.row>.column:only-child{width:100%}.ui[class*="one column"].grid>.row>.column,.ui[class*="one column"].grid>.column:not(.row){width:100%}.ui[class*="two column"].grid>.row>.column,.ui[class*="two column"].grid>.column:not(.row){width:50%}.ui[class*="three column"].grid>.row>.column,.ui[class*="three column"].grid>.column:not(.row){width:33.33333333%}.ui[class*="four column"].grid>.row>.column,.ui[class*="four column"].grid>.column:not(.row){width:25%}.ui[class*="five column"].grid>.row>.column,.ui[class*="five column"].grid>.column:not(.row){width:20%}.ui[class*="six column"].grid>.row>.column,.ui[class*="six column"].grid>.column:not(.row){width:16.66666667%}.ui[class*="seven column"].grid>.row>.column,.ui[class*="seven column"].grid>.column:not(.row){width:14.28571429%}.ui[class*="eight column"].grid>.row>.column,.ui[class*="eight column"].grid>.column:not(.row){width:12.5%}.ui[class*="nine column"].grid>.row>.column,.ui[class*="nine column"].grid>.column:not(.row){width:11.11111111%}.ui[class*="ten column"].grid>.row>.column,.ui[class*="ten column"].grid>.column:not(.row){width:10%}.ui[class*="eleven column"].grid>.row>.column,.ui[class*="eleven column"].grid>.column:not(.row){width:9.09090909%}.ui[class*="twelve column"].grid>.row>.column,.ui[class*="twelve column"].grid>.column:not(.row){width:8.33333333%}.ui[class*="thirteen column"].grid>.row>.column,.ui[class*="thirteen column"].grid>.column:not(.row){width:7.69230769%}.ui[class*="fourteen column"].grid>.row>.column,.ui[class*="fourteen column"].grid>.column:not(.row){width:7.14285714%}.ui[class*="fifteen column"].grid>.row>.column,.ui[class*="fifteen column"].grid>.column:not(.row){width:6.66666667%}.ui[class*="sixteen column"].grid>.row>.column,.ui[class*="sixteen column"].grid>.column:not(.row){width:6.25%}.ui.grid>[class*="one column"].row>.column{width:100%!important}.ui.grid>[class*="two column"].row>.column{width:50%!important}.ui.grid>[class*="three column"].row>.column{width:33.33333333%!important}.ui.grid>[class*="four column"].row>.column{width:25%!important}.ui.grid>[class*="five column"].row>.column{width:20%!important}.ui.grid>[class*="six column"].row>.column{width:16.66666667%!important}.ui.grid>[class*="seven column"].row>.column{width:14.28571429%!important}.ui.grid>[class*="eight column"].row>.column{width:12.5%!important}.ui.grid>[class*="nine column"].row>.column{width:11.11111111%!important}.ui.grid>[class*="ten column"].row>.column{width:10%!important}.ui.grid>[class*="eleven column"].row>.column{width:9.09090909%!important}.ui.grid>[class*="twelve column"].row>.column{width:8.33333333%!important}.ui.grid>[class*="thirteen column"].row>.column{width:7.69230769%!important}.ui.grid>[class*="fourteen column"].row>.column{width:7.14285714%!important}.ui.grid>[class*="fifteen column"].row>.column{width:6.66666667%!important}.ui.grid>[class*="sixteen column"].row>.column{width:6.25%!important}.ui.grid>.row>[class*="one wide"].column,.ui.grid>.column.row>[class*="one wide"].column,.ui.grid>[class*="one wide"].column,.ui.column.grid>[class*="one wide"].column{width:6.25%!important}.ui.grid>.row>[class*="two wide"].column,.ui.grid>.column.row>[class*="two wide"].column,.ui.grid>[class*="two wide"].column,.ui.column.grid>[class*="two wide"].column{width:12.5%!important}.ui.grid>.row>[class*="three wide"].column,.ui.grid>.column.row>[class*="three wide"].column,.ui.grid>[class*="three wide"].column,.ui.column.grid>[class*="three wide"].column{width:18.75%!important}.ui.grid>.row>[class*="four wide"].column,.ui.grid>.column.row>[class*="four wide"].column,.ui.grid>[class*="four wide"].column,.ui.column.grid>[class*="four wide"].column{width:25%!important}.ui.grid>.row>[class*="five wide"].column,.ui.grid>.column.row>[class*="five wide"].column,.ui.grid>[class*="five wide"].column,.ui.column.grid>[class*="five wide"].column{width:31.25%!important}.ui.grid>.row>[class*="six wide"].column,.ui.grid>.column.row>[class*="six wide"].column,.ui.grid>[class*="six wide"].column,.ui.column.grid>[class*="six wide"].column{width:37.5%!important}.ui.grid>.row>[class*="seven wide"].column,.ui.grid>.column.row>[class*="seven wide"].column,.ui.grid>[class*="seven wide"].column,.ui.column.grid>[class*="seven wide"].column{width:43.75%!important}.ui.grid>.row>[class*="eight wide"].column,.ui.grid>.column.row>[class*="eight wide"].column,.ui.grid>[class*="eight wide"].column,.ui.column.grid>[class*="eight wide"].column{width:50%!important}.ui.grid>.row>[class*="nine wide"].column,.ui.grid>.column.row>[class*="nine wide"].column,.ui.grid>[class*="nine wide"].column,.ui.column.grid>[class*="nine wide"].column{width:56.25%!important}.ui.grid>.row>[class*="ten wide"].column,.ui.grid>.column.row>[class*="ten wide"].column,.ui.grid>[class*="ten wide"].column,.ui.column.grid>[class*="ten wide"].column{width:62.5%!important}.ui.grid>.row>[class*="eleven wide"].column,.ui.grid>.column.row>[class*="eleven wide"].column,.ui.grid>[class*="eleven wide"].column,.ui.column.grid>[class*="eleven wide"].column{width:68.75%!important}.ui.grid>.row>[class*="twelve wide"].column,.ui.grid>.column.row>[class*="twelve wide"].column,.ui.grid>[class*="twelve wide"].column,.ui.column.grid>[class*="twelve wide"].column{width:75%!important}.ui.grid>.row>[class*="thirteen wide"].column,.ui.grid>.column.row>[class*="thirteen wide"].column,.ui.grid>[class*="thirteen wide"].column,.ui.column.grid>[class*="thirteen wide"].column{width:81.25%!important}.ui.grid>.row>[class*="fourteen wide"].column,.ui.grid>.column.row>[class*="fourteen wide"].column,.ui.grid>[class*="fourteen wide"].column,.ui.column.grid>[class*="fourteen wide"].column{width:87.5%!important}.ui.grid>.row>[class*="fifteen wide"].column,.ui.grid>.column.row>[class*="fifteen wide"].column,.ui.grid>[class*="fifteen wide"].column,.ui.column.grid>[class*="fifteen wide"].column{width:93.75%!important}.ui.grid>.row>[class*="sixteen wide"].column,.ui.grid>.column.row>[class*="sixteen wide"].column,.ui.grid>[class*="sixteen wide"].column,.ui.column.grid>[class*="sixteen wide"].column{width:100%!important}.ui.centered.grid,.ui.centered.grid>.row,.ui.grid>.centered.row{text-align:center;justify-content:center}.ui.centered.grid>.column:not(.aligned):not(.justified):not(.row),.ui.centered.grid>.row>.column:not(.aligned):not(.justified),.ui.grid .centered.row>.column:not(.aligned):not(.justified){text-align:left}.ui.grid>.centered.column,.ui.grid>.row>.centered.column{display:block;margin-left:auto;margin-right:auto}.ui.relaxed.grid>.column:not(.row),.ui.relaxed.grid>.row>.column,.ui.grid>.relaxed.row>.column{padding-left:1.5rem;padding-right:1.5rem}.ui[class*="very relaxed"].grid>.column:not(.row),.ui[class*="very relaxed"].grid>.row>.column,.ui.grid>[class*="very relaxed"].row>.column{padding-left:2.5rem;padding-right:2.5rem}.ui.relaxed.grid .row+.ui.divider,.ui.grid .relaxed.row+.ui.divider{margin-left:1.5rem;margin-right:1.5rem}.ui[class*="very relaxed"].grid .row+.ui.divider,.ui.grid [class*="very relaxed"].row+.ui.divider{margin-left:2.5rem;margin-right:2.5rem}.ui[class*="middle aligned"].grid>.column:not(.row),.ui[class*="middle aligned"].grid>.row>.column,.ui.grid>[class*="middle aligned"].row>.column,.ui.grid>[class*="middle aligned"].column:not(.row),.ui.grid>.row>[class*="middle aligned"].column{flex-direction:column;vertical-align:middle;align-self:center!important}.ui[class*="left aligned"].grid>.column,.ui[class*="left aligned"].grid>.row>.column,.ui.grid>[class*="left aligned"].row>.column,.ui.grid>[class*="left aligned"].column.column,.ui.grid>.row>[class*="left aligned"].column.column{text-align:left;align-self:inherit}.ui[class*="center aligned"].grid>.column,.ui[class*="center aligned"].grid>.row>.column,.ui.grid>[class*="center aligned"].row>.column,.ui.grid>[class*="center aligned"].column.column,.ui.grid>.row>[class*="center aligned"].column.column{text-align:center;align-self:inherit}.ui[class*="center aligned"].grid{justify-content:center}.ui[class*="right aligned"].grid>.column,.ui[class*="right aligned"].grid>.row>.column,.ui.grid>[class*="right aligned"].row>.column,.ui.grid>[class*="right aligned"].column.column,.ui.grid>.row>[class*="right aligned"].column.column{text-align:right;align-self:inherit}.ui[class*="equal width"].grid>.column:not(.row),.ui[class*="equal width"].grid>.row>.column,.ui.grid>[class*="equal width"].row>.column{display:inline-block;flex-grow:1}.ui[class*="equal width"].grid>.wide.column,.ui[class*="equal width"].grid>.row>.wide.column,.ui.grid>[class*="equal width"].row>.wide.column{flex-grow:0}@media only screen and (max-width: 767.98px){.ui[class*="mobile reversed"].grid,.ui[class*="mobile reversed"].grid>.row,.ui.grid>[class*="mobile reversed"].row{flex-direction:row-reverse}.ui.stackable[class*="mobile reversed"]{flex-direction:column-reverse}.ui.stackable.grid{width:auto;margin-left:0!important;margin-right:0!important}.ui.stackable.grid>.row>.wide.column,.ui.stackable.grid>.wide.column,.ui.stackable.grid>.column.grid>.column,.ui.stackable.grid>.column.row>.column,.ui.stackable.grid>.row>.column,.ui.stackable.grid>.column:not(.row),.ui.grid>.stackable.stackable.stackable.row>.column{width:100%!important;margin:0!important;box-shadow:none!important;padding:1rem}.ui.stackable.grid:not(.vertically)>.row{margin:0;padding:0}.ui.container>.ui.stackable.grid>.column,.ui.container>.ui.stackable.grid>.row>.column{padding-left:0!important;padding-right:0!important}.ui.grid .ui.stackable.grid,.ui.segment:not(.vertical) .ui.stackable.page.grid{margin-left:-1rem!important;margin-right:-1rem!important}}.ui.ui.ui.compact.grid>.column:not(.row),.ui.ui.ui.compact.grid>.row>.column{padding-left:.5rem;padding-right:.5rem}.ui.ui.ui.compact.grid>*{padding-left:.5rem;padding-right:.5rem}.ui.ui.ui.compact.grid>.row{padding-top:.5rem;padding-bottom:.5rem}.ui.ui.ui.compact.grid>.column:not(.row){padding-top:.5rem;padding-bottom:.5rem}.ui.menu{display:flex;margin:1rem 0;font-family:var(--fonts-regular);font-weight:var(--font-weight-normal);background:var(--color-menu);border:1px solid var(--color-secondary);border-radius:.28571429rem;min-height:2.85714286em;font-size:1rem}.ui.menu:first-child{margin-top:0}.ui.menu:last-child{margin-bottom:0}.ui.menu .menu{margin:0}.ui.menu:not(.vertical)>.menu{display:flex}.ui.menu:not(.vertical) .item{display:flex;align-items:center}.ui.menu .item{position:relative;vertical-align:middle;line-height:var(--line-height-default);text-decoration:none;flex:0 0 auto;background:none;padding:.92857143em 1.14285714em;color:var(--color-text);font-weight:var(--font-weight-normal)}.ui.menu>.item:first-child{border-radius:.28571429rem 0 0 .28571429rem}.ui.menu .item:before{position:absolute;content:"";top:0;right:0;height:100%;width:1px;background:var(--color-secondary)}.ui.menu .item>.svg{margin-right:.35em}.ui.menu .item>a:not(.ui),.ui.menu .item>p:only-child{line-height:1.3}.ui.menu .item>p:first-child{margin-top:0}.ui.menu .item>p:last-child{margin-bottom:0}.ui.menu .item>i.icon{opacity:.9;float:none;margin:0 .35714286em 0 0}.ui.menu:not(.vertical) .item>.button{position:relative;top:0;margin:-.5em 0;padding:.58928571em 1.125em;font-size:1em}.ui.menu>.grid,.ui.menu>.container{display:flex;align-items:inherit;flex-direction:inherit}.ui.menu .item>.input{width:100%}.ui.menu:not(.vertical) .item>.input{position:relative;top:0;margin:-.5em 0}.ui.menu .item>.input input{font-size:1em;padding-top:.57142857em;padding-bottom:.57142857em}.ui.menu .header.item,.ui.vertical.menu .header.item{margin:0;font-size:1.1em;background:var(--color-box-header);font-weight:var(--font-weight-medium)}.ui.vertical.menu .item>.header:not(.ui){margin:0 0 .5em;font-size:1em;font-weight:var(--font-weight-medium)}.ui.menu .item>i.dropdown.icon{padding:0;float:right;margin:0 0 0 1em}.ui.menu .dropdown.item .menu{min-width:calc(100% - 1px);border-radius:0 0 .28571429rem .28571429rem;background:var(--color-body);margin:0;flex-direction:column!important}.ui.menu .ui.dropdown .menu>.item{margin:0;text-align:left;font-size:1em!important;padding:.78571429em 1.14285714em!important;background:transparent!important;color:var(--color-text)!important;font-weight:var(--font-weight-normal)!important}.ui.menu .ui.dropdown .menu>.item:hover{color:var(--color-text)!important;background:var(--color-hover)!important}.ui.menu .ui.dropdown .menu>.selected.item{color:var(--color-text)!important;background:var(--color-hover)!important}.ui.menu .ui.dropdown .menu>.active.item{color:var(--color-text)!important;background:var(--color-active)!important;font-weight:var(--font-weight-medium)!important}.ui.menu .ui.dropdown.item .menu .item{width:100%}.ui.menu .ui.dropdown.item .menu .item:not(.filtered){display:block}.ui.menu .ui.dropdown .menu>.item>i.icon:not(.dropdown){display:inline-block;font-size:1em!important;float:none;margin:0 .75em 0 0!important}.ui.secondary.menu .dropdown.item>.menu{border-radius:.28571429rem;margin-top:.35714286em}.ui.menu .pointing.dropdown.item .menu{margin-top:.75em}.ui.menu .item>.label:not(.floating){margin-left:1em;padding:.3em .78571429em}.ui.vertical.menu .item>.label{margin-top:-.15em;margin-bottom:-.15em;padding:.3em .78571429em;float:right;text-align:center}.ui.menu .item>.floating.label{padding:.3em .78571429em}.ui.menu .item>.label{background:var(--color-label-bg);color:var(--color-label-text)}.ui.menu .item>.image.label img{margin:-.2833em .8em -.2833em -.8em;height:1.5666em}.ui.menu .item>img:not(.ui){display:inline-block;vertical-align:middle;margin:-.3em 0;width:2.5em}.ui.vertical.menu .item>img:not(.ui):only-child{display:block;max-width:100%;width:auto}.ui.menu .list .item:before{background:none!important}@media only screen and (max-width: 767.98px){.ui.menu>.ui.container{width:100%!important;margin-left:0!important;margin-right:0!important}}.ui.menu .dropdown.item:hover,.ui.menu a.item:hover{cursor:pointer}.ui.menu a.item:active{color:var(--color-text);background:none}.ui.menu .active.item{color:var(--color-text);background:var(--color-active);font-weight:var(--font-weight-normal)}.ui.menu .active.item>i.icon{opacity:1}.ui.ui.menu .item.disabled{cursor:default;background-color:transparent;pointer-events:none;opacity:var(--opacity-disabled)}.ui.menu:not(.vertical) .left.item,.ui.menu:not(.vertical) .left.menu{display:flex;margin-right:auto!important}.ui.menu:not(.vertical) .right.item,.ui.menu:not(.vertical) .right.menu{display:flex;margin-left:auto!important}.ui.menu:not(.vertical) :not(.dropdown)>.left.menu,.ui.menu:not(.vertical) :not(.dropdown)>.right.menu{display:inherit}.ui.menu:not(.vertical) .center.item{display:flex;margin-left:auto!important;margin-right:auto!important}.ui.menu .right.item:before,.ui.menu .right.menu>.item:before{right:auto;left:0}.ui.menu .center.item:last-child:before{display:none}.ui.vertical.menu{display:block;flex-direction:column;background:var(--color-menu);width:15rem}.ui.vertical.menu .item{display:block;background:none;border-top:none;border-right:none}.ui.vertical.menu>.item:first-child{border-radius:.28571429rem .28571429rem 0 0}.ui.vertical.menu>.item:last-child{border-radius:0 0 .28571429rem .28571429rem}.ui.vertical.menu .item>i.icon{width:1.18em;float:right;margin:0 0 0 .5em}.ui.vertical.menu .item>.label+i.icon{float:none;margin:0 .5em 0 0}.ui.vertical.menu .item:before{position:absolute;content:"";top:0;left:0;width:100%;height:1px;background:var(--color-secondary)}.ui.vertical.menu .item:first-child:before{display:none!important}.ui.vertical.menu .item>.menu{margin:.5em -1.14285714em 0}.ui.vertical.menu .menu .item{background:none;padding:.5em 1.33333333em;font-size:.85714286em;color:var(--color-text-light-2)}.ui.vertical.menu .item .menu .item{color:var(--color-text-light-2);text-indent:16px}.ui.vertical.menu .item .menu .item:hover,.ui.vertical.menu .item .menu a.item:hover{color:var(--color-text-light-1)}.ui.vertical.menu .item .menu .active.item{background-color:transparent;font-weight:var(--font-weight-medium);color:var(--color-text)}.ui.vertical.menu .item .menu a.item:hover{color:var(--color-text)}.ui.vertical.menu .menu .item:before{display:none}.ui.vertical.menu .active.item{background:var(--color-active);border-radius:0}.ui.vertical.menu>.active.item:first-child{border-radius:.28571429rem .28571429rem 0 0}.ui.vertical.menu>.active.item:last-child{border-radius:0 0 .28571429rem .28571429rem}.ui.vertical.menu>.active.item:only-child{border-radius:.28571429rem}.ui.vertical.menu .active.item .menu .active.item{border-left:none}.ui.tabular.menu{border-radius:0;border:none;background:none transparent;border-bottom:1px solid var(--color-secondary)}.ui.tabular.fluid.menu{width:calc(100% + 2px)!important}.ui.tabular.menu .item{background:transparent;border-bottom:none;border-left:1px solid transparent;border-right:1px solid transparent;border-top:2px solid transparent;color:var(--color-text-light-2)}.ui.tabular.menu .item:before{display:none}.ui.tabular.menu .item:hover{background-color:transparent}.ui.tabular.menu .active.item,.ui.tabular.menu .active.item:hover{background:var(--color-body);border-top-width:1px;border-color:var(--color-secondary);color:var(--color-text-dark);margin-bottom:-1px;border-radius:.28571429rem .28571429rem 0 0!important}.ui.tabular.menu+.attached:not(.top).segment,.ui.tabular.menu+.attached:not(.top).segment+.attached:not(.top).segment{border-top:none;margin-left:0;margin-top:0;margin-right:0;width:100%}.ui.tabular.menu .active.dropdown.item{margin-bottom:0;border-left:1px solid transparent;border-right:1px solid transparent;border-top:2px solid transparent;border-bottom:none}.ui.pagination.menu{margin:0;display:inline-flex;vertical-align:middle}.ui.pagination.menu .item:last-child{border-radius:0 .28571429rem .28571429rem 0}.ui.compact.menu .item:last-child{border-radius:0 .28571429rem .28571429rem 0}.ui.pagination.menu .item:last-child:before{display:none}.ui.pagination.menu .item{min-width:3em;text-align:center}.ui.pagination.menu .icon.item i.icon{vertical-align:top}.ui.pagination.menu .active.item,.ui.pagination.menu .active.item:hover{border-top:none;padding-top:.92857143em;color:var(--color-text);background:var(--color-active)}@media (max-width: 767.98px){.ui.pagination.menu .item:not(.active,.navigation),.ui.pagination.menu .item.navigation span.navigation_label{display:none}}.ui.pagination.menu.narrow .item{padding-left:8px;padding-right:8px;min-width:1em;text-align:center}.ui.pagination.menu.narrow .item .icon{margin-right:0}.ui.secondary.menu{background:none;margin-left:0;margin-right:0;gap:.35714286em;border-radius:0;border:none}.ui.secondary.menu .item{align-self:center;border:none;padding:.78571429em .92857143em;margin:0;background:none;border-radius:.28571429rem}.ui.secondary.menu .item:before{display:none!important}.ui.secondary.menu .header.item{border-radius:0;border-right:none;background:none transparent}.ui.secondary.menu .item>img:not(.ui){margin:0}.ui.secondary.menu .dropdown.item:hover,.ui.secondary.menu a.item:hover{color:var(--color-text);background:var(--color-hover)}.ui.secondary.menu .active.item{border-radius:.28571429rem}.ui.secondary.menu .active.item,.ui.secondary.menu .active.item:hover{color:var(--color-text-dark);background:var(--color-active)}.ui.secondary.item.menu{margin-left:0;margin-right:0}.ui.secondary.item.menu .item:last-child{margin-right:0}.ui.vertical.secondary.menu .item:not(.dropdown)>.menu{margin:0 -.92857143em}.ui.vertical.secondary.menu .item:not(.dropdown)>.menu>.item{margin:0;padding:.5em 1.33333333em}.ui.secondary.vertical.menu>.item{border:none;margin:0 0 .35714286em;border-radius:.28571429rem!important}.ui.secondary.vertical.menu>.header.item{border-radius:0}.ui.vertical.secondary.menu .item>.menu .item{background-color:transparent}.ui.secondary.pointing.menu{margin-left:0;margin-right:0;border-bottom:2px solid var(--color-secondary)}.ui.secondary.pointing.menu .item{border-bottom-color:transparent;border-bottom-style:solid;border-radius:0;align-self:flex-end;margin:0 0 -2px;padding:.85714286em 1.14285714em;border-bottom-width:2px}.ui.secondary.pointing.menu .ui.dropdown .menu .item{border-bottom-width:0}.ui.secondary.pointing.menu .item>.label:not(.floating){margin-top:-.3em;margin-bottom:-.3em}.ui.secondary.pointing.menu .item>.circular.label{margin-top:-.5em;margin-bottom:-.5em}.ui.secondary.pointing.menu .header.item{color:var(--color-text)!important}.ui.secondary.pointing.menu .item:after{display:none}.ui.secondary.pointing.menu .dropdown.item:hover,.ui.secondary.pointing.menu a.item:hover{background-color:transparent;color:var(--color-text)}.ui.secondary.pointing.menu .dropdown.item:active,.ui.secondary.pointing.menu a.item:active{background-color:transparent}.ui.secondary.pointing.menu .active.item{background-color:transparent;border-color:currentcolor;font-weight:var(--font-weight-medium)}.ui.secondary.pointing.menu .active.item,.ui.secondary.pointing.menu .active.item:hover,.ui.secondary.pointing.menu .dropdown.item:hover{color:var(--color-text-dark)}.ui.secondary.pointing.menu .active.dropdown.item{border-color:transparent}@media only screen and (max-width: 767.98px){.ui.stackable.menu{flex-direction:column}.ui.stackable.menu .item{width:100%!important}.ui.stackable.menu .left.menu,.ui.stackable.menu .left.item{margin-right:0!important}.ui.stackable.menu .right.menu,.ui.stackable.menu .right.item{margin-left:0!important}.ui.stackable.menu .center.item{margin-left:0!important;margin-right:0!important}.ui.stackable.menu .right.menu,.ui.stackable.menu .left.menu{flex-direction:column}}.ui.floated.menu{float:left;margin:0 .5rem 0 0}.ui.floated.menu .item:last-child:before{display:none}.ui.right.floated.menu{float:right;margin:0 0 0 .5rem}.ui.borderless.menu .item:before,.ui.borderless.menu .item .menu .item:before,.ui.menu .borderless.item:before{background:none!important}.ui.compact.menu{display:inline-flex;margin:0;vertical-align:middle}.ui.compact.vertical.menu{display:inline-block;width:auto!important}.ui.compact.menu:not(.secondary) .item:last-child{border-radius:0 .28571429rem .28571429rem 0}.ui.compact.menu .item:last-child:before{display:none}.ui.compact.vertical.menu .item:last-child:before{display:block}.ui.menu.fluid,.ui.vertical.menu.fluid{width:100%!important}.ui.item.menu,.ui.item.menu .item{width:100%;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;text-align:center;justify-content:center}.ui.attached.item.menu:not(.tabular){margin:0 -1px!important}.ui.item.menu .item:last-child:before{display:none}.ui.menu.two.item .item{width:50%}.ui.pointing.menu .item:after{visibility:hidden;position:absolute;content:"";top:100%;left:50%;transform:translate(-50%) translateY(-50%) rotate(45deg);background:none;margin:.5px 0 0;width:.57142857em;height:.57142857em;border:none;border-bottom:1px solid var(--color-secondary);border-right:1px solid var(--color-secondary);z-index:2}.ui.pointing.menu .ui.dropdown .menu .item:after{display:none}.ui.pointing.menu .active.item:after{visibility:visible}.ui.pointing.menu .active.dropdown.item:after{visibility:hidden}.ui.pointing.menu .dropdown.active.item:after,.ui.pointing.menu .active.item .menu .active.item:after{display:none}.ui.pointing.menu .active.item:after,.ui.pointing.menu .active.item:hover:after{background-color:var(--color-active)}.ui.attached.menu{top:0;bottom:0;border-radius:0;margin:0 -1px;width:calc(100% + 2px);max-width:calc(100% + 2px)}.ui.attached+.ui.attached.menu:not(.top){border-top:none}.ui[class*="top attached"].menu{bottom:0;margin-bottom:0;top:0;margin-top:1rem;border-radius:.28571429rem .28571429rem 0 0}.ui.menu[class*="top attached"]:first-child{margin-top:0}.ui.top.attached.menu>.item:first-child{border-radius:.28571429rem 0 0}.ui.attached.menu:not(.tabular){border:1px solid var(--color-secondary)}.ui.attached.tabular.menu{margin-left:0;margin-right:0;width:100%}.ui.mini.menu,.ui.mini.menu .dropdown,.ui.mini.menu .dropdown .menu>.item{font-size:.78571429rem}.ui.mini.vertical.menu:not(.icon){width:9rem}.ui.tiny.menu,.ui.tiny.menu .dropdown,.ui.tiny.menu .dropdown .menu>.item{font-size:.85714286rem}.ui.tiny.vertical.menu:not(.icon){width:11rem}.ui.small.menu,.ui.small.menu .dropdown,.ui.small.menu .dropdown .menu>.item{font-size:.92857143rem}.ui.small.vertical.menu:not(.icon){width:13rem}.ui .menu:not(.vertical) .item>.button.small{font-size:.92857143rem}.ui.segment .ui.tabular.menu .active.item,.ui.segment .ui.tabular.menu .active.item:hover{background:var(--color-box-body)}.small-menu-items{min-height:35.4px!important;background:none!important;user-select:none}.small-menu-items .item{background:var(--color-menu)!important;padding-top:6px!important;padding-bottom:6px!important}.small-menu-items .item:hover{background:var(--color-hover)!important}.small-menu-items .item.active{background:var(--color-active)!important}.ui.message{background:var(--color-box-body);color:var(--color-text);border:1px solid var(--color-secondary);position:relative;min-height:1em;margin:1em 0;padding:1em 1.5em;border-radius:var(--border-radius)}.ui.message:first-child{margin-top:0}.ui.message:last-child{margin-bottom:0}.ui.attached.message{margin-bottom:-1px;border-radius:var(--border-radius) var(--border-radius) 0 0;margin-left:-1px;margin-right:-1px}.ui.attached+.ui.attached.message:not(.top):not(.bottom){margin-top:-1px;border-radius:0}.ui.bottom.attached.message{margin-top:-1px;border-radius:0 0 var(--border-radius) var(--border-radius)}.ui.bottom.attached.message:not(:last-child){margin-bottom:1em}.ui.info.message .header,.ui.blue.message .header{color:var(--color-blue)}.ui.info.message,.ui.attached.info.message,.ui.blue.message,.ui.attached.blue.message{background:var(--color-info-bg);color:var(--color-info-text);border-color:var(--color-info-border)}.ui.success.message .header,.ui.positive.message .header,.ui.green.message .header{color:var(--color-green)}.ui.success.message,.ui.attached.success.message,.ui.positive.message,.ui.attached.positive.message{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.ui.error.message .header,.ui.negative.message .header,.ui.red.message .header{color:var(--color-red)}.ui.error.message,.ui.attached.error.message,.ui.red.message,.ui.attached.red.message,.ui.negative.message,.ui.attached.negative.message{background:var(--color-error-bg);color:var(--color-error-text);border-color:var(--color-error-border)}.ui.warning.message .header,.ui.yellow.message .header{color:var(--color-yellow)}.ui.warning.message,.ui.attached.warning.message,.ui.yellow.message,.ui.attached.yellow.message{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning-border)}.ui.message>.close.icon{cursor:pointer;position:absolute;top:9px;right:9px;opacity:.7}.ui.message>.close.icon:hover{opacity:1}.ui.table{width:100%;margin:1em 0;border:1px solid var(--color-secondary);border-radius:.28571429rem;vertical-align:middle;border-collapse:separate;border-spacing:0;color:var(--color-text);background:var(--color-box-body);border-color:var(--color-secondary);text-align:start}.ui.table:first-child{margin-top:0}.ui.table:last-child{margin-bottom:0}.ui.table>thead,.ui.table>tbody{text-align:inherit;vertical-align:inherit}.ui.table>thead>tr>th{background:var(--color-box-header);text-align:inherit;color:var(--color-text);padding:6px 5px;vertical-align:inherit;font-weight:var(--font-weight-normal);border-bottom:1px solid var(--color-secondary);border-left:none}.ui.table>thead>tr>th:first-child{border-left:none}.ui.table>thead>tr:first-child>th:first-child{border-radius:.28571429rem 0 0}.ui.table>thead>tr:first-child>th:last-child{border-radius:0 .28571429rem 0 0}.ui.table>thead>tr:first-child>th:only-child{border-radius:.28571429rem .28571429rem 0 0}.ui.table>tfoot>tr>th,.ui.table>tfoot>tr>td{border-top:1px solid var(--color-secondary);background:var(--color-box-body);text-align:inherit;color:var(--color-text);padding:.78571429em;vertical-align:inherit;font-weight:var(--font-weight-normal)}.ui.table>tfoot>tr>th:first-child,.ui.table>tfoot>tr>td:first-child{border-left:none}.ui.table>tfoot>tr:first-child>th:first-child,.ui.table>tfoot>tr:first-child>td:first-child{border-radius:0 0 0 .28571429rem}.ui.table>tfoot>tr:first-child>th:last-child,.ui.table>tfoot>tr:first-child>td:last-child{border-radius:0 0 .28571429rem}.ui.table>tfoot>tr:first-child>th:only-child,.ui.table>tfoot>tr:first-child>td:only-child{border-radius:0 0 .28571429rem .28571429rem}.ui.table>tr>td,.ui.table>tbody>tr>td{border-top:1px solid var(--color-secondary-alpha-50);padding:6px 5px;text-align:inherit}.ui.table>tr:first-child>td,.ui.table>tbody>tr:first-child>td{border-top:none}.ui.table.segment{padding:0}.ui.table.segment:after{display:none}@media only screen and (max-width: 767.98px){.ui.table:not(.unstackable){width:100%;padding:0}.ui.table:not(.unstackable)>thead,.ui.table:not(.unstackable)>thead>tr,.ui.table:not(.unstackable)>tfoot,.ui.table:not(.unstackable)>tfoot>tr,.ui.table:not(.unstackable)>tbody,.ui.table:not(.unstackable)>tr,.ui.table:not(.unstackable)>tbody>tr,.ui.table:not(.unstackable)>tr>th,.ui.table:not(.unstackable)>thead>tr>th,.ui.table:not(.unstackable)>tbody>tr>th,.ui.table:not(.unstackable)>tfoot>tr>th,.ui.table:not(.unstackable)>tr>td,.ui.table:not(.unstackable)>tbody>tr>td,.ui.table:not(.unstackable)>tfoot>tr>td{display:block!important;width:auto!important}.ui.table:not(.unstackable)>thead{display:block}.ui.table:not(.unstackable)>tfoot{display:block}.ui.ui.ui.ui.table:not(.unstackable)>tr,.ui.ui.ui.ui.table:not(.unstackable)>thead>tr,.ui.ui.ui.ui.table:not(.unstackable)>tbody>tr,.ui.ui.ui.ui.table:not(.unstackable)>tfoot>tr{padding-top:1em;padding-bottom:1em}.ui.ui.ui.ui.table:not(.unstackable)>tr>th,.ui.ui.ui.ui.table:not(.unstackable)>thead>tr>th,.ui.ui.ui.ui.table:not(.unstackable)>tbody>tr>th,.ui.ui.ui.ui.table:not(.unstackable)>tfoot>tr>th,.ui.ui.ui.ui.table:not(.unstackable)>tr>td,.ui.ui.ui.ui.table:not(.unstackable)>tbody>tr>td,.ui.ui.ui.ui.table:not(.unstackable)>tfoot>tr>td{background:none;border:none;padding:.25em .75em}.ui.table:not(.unstackable)>tr>th:first-child,.ui.table:not(.unstackable)>thead>tr>th:first-child,.ui.table:not(.unstackable)>tbody>tr>th:first-child,.ui.table:not(.unstackable)>tfoot>tr>th:first-child,.ui.table:not(.unstackable)>tr>td:first-child,.ui.table:not(.unstackable)>tbody>tr>td:first-child,.ui.table:not(.unstackable)>tfoot>tr>td:first-child{font-weight:var(--font-weight-normal)}}.ui.table[class*="left aligned"],.ui.table [class*="left aligned"]{text-align:left}.ui.table[class*="center aligned"],.ui.table [class*="center aligned"]{text-align:center}.ui.table[class*="right aligned"],.ui.table [class*="right aligned"]{text-align:right}.ui.table[class*="top aligned"],.ui.table [class*="top aligned"]{vertical-align:top}.ui.table[class*="middle aligned"],.ui.table [class*="middle aligned"]{vertical-align:middle}.ui.table th.collapsing,.ui.table td.collapsing{width:1px;white-space:nowrap}.ui.fixed.table{table-layout:fixed}.ui.fixed.table th,.ui.fixed.table td{overflow:hidden;text-overflow:ellipsis}.ui.attached.table{top:0;bottom:0;border-radius:0;margin:0 -1px;width:calc(100% + 2px);max-width:calc(100% + 2px);border:1px solid var(--color-secondary)}.ui.attached+.ui.attached.table:not(.top){border-top:none}.ui[class*="bottom attached"].table{bottom:0;margin-top:0;top:0;margin-bottom:1em;border-radius:0 0 .28571429rem .28571429rem}.ui[class*="bottom attached"].table:last-child{margin-bottom:0}.ui.striped.table>tr:nth-child(2n),.ui.striped.table>tbody>tr:nth-child(2n){background:var(--color-light)}.ui.table[class*="single line"],.ui.table [class*="single line"]{white-space:nowrap}.ui.table th.one.wide,.ui.table td.one.wide{width:6.25%}.ui.table th.two.wide,.ui.table td.two.wide{width:12.5%}.ui.table th.three.wide,.ui.table td.three.wide{width:18.75%}.ui.table th.four.wide,.ui.table td.four.wide{width:25%}.ui.table th.five.wide,.ui.table td.five.wide{width:31.25%}.ui.table th.six.wide,.ui.table td.six.wide{width:37.5%}.ui.table th.seven.wide,.ui.table td.seven.wide{width:43.75%}.ui.table th.eight.wide,.ui.table td.eight.wide{width:50%}.ui.table th.nine.wide,.ui.table td.nine.wide{width:56.25%}.ui.table th.ten.wide,.ui.table td.ten.wide{width:62.5%}.ui.table th.eleven.wide,.ui.table td.eleven.wide{width:68.75%}.ui.table th.twelve.wide,.ui.table td.twelve.wide{width:75%}.ui.table th.thirteen.wide,.ui.table td.thirteen.wide{width:81.25%}.ui.table th.fourteen.wide,.ui.table td.fourteen.wide{width:87.5%}.ui.table th.fifteen.wide,.ui.table td.fifteen.wide{width:93.75%}.ui.table th.sixteen.wide,.ui.table td.sixteen.wide{width:100%}.ui.basic.table{background:transparent;border:1px solid var(--color-secondary)}.ui.basic.table>thead>tr>th,.ui.basic.table>tbody>tr>th,.ui.basic.table>tfoot>tr>th,.ui.basic.table>tr>th{background:transparent;border-left:none}.ui.basic.table>tbody>tr{border-bottom:1px solid var(--color-secondary)}.ui.basic.table>tbody>tr>td,.ui.basic.table>tfoot>tr>td,.ui.basic.table>tr>td{background:transparent}.ui.basic.striped.table>tbody>tr:nth-child(2n){background:var(--color-light)}.ui[class*="very basic"].table{border:none}.ui[class*="very basic"].table:not(.striped)>tr>th:first-child,.ui[class*="very basic"].table:not(.striped)>thead>tr>th:first-child,.ui[class*="very basic"].table:not(.striped)>tbody>tr>th:first-child,.ui[class*="very basic"].table:not(.striped)>tfoot>tr>th:first-child,.ui[class*="very basic"].table:not(.striped)>tr>td:first-child,.ui[class*="very basic"].table:not(.striped)>tbody>tr>td:first-child,.ui[class*="very basic"].table:not(.striped)>tfoot>tr>td:first-child{padding-left:0}.ui[class*="very basic"].table:not(.striped)>tr>th:last-child,.ui[class*="very basic"].table:not(.striped)>thead>tr>th:last-child,.ui[class*="very basic"].table:not(.striped)>tbody>tr>th:last-child,.ui[class*="very basic"].table:not(.striped)>tfoot>tr>th:last-child,.ui[class*="very basic"].table:not(.striped)>tr>td:last-child,.ui[class*="very basic"].table:not(.striped)>tbody>tr>td:last-child,.ui[class*="very basic"].table:not(.striped)>tfoot>tr>td:last-child{padding-right:0}.ui[class*="very basic"].table:not(.striped)>thead>tr:first-child>th{padding-top:0}.ui.celled.table>tr>th,.ui.celled.table>thead>tr>th,.ui.celled.table>tbody>tr>th,.ui.celled.table>tfoot>tr>th,.ui.celled.table>tr>td,.ui.celled.table>tbody>tr>td,.ui.celled.table>tfoot>tr>td{border-left:1px solid var(--color-secondary-alpha-50)}.ui.celled.table>tr>th:first-child,.ui.celled.table>thead>tr>th:first-child,.ui.celled.table>tbody>tr>th:first-child,.ui.celled.table>tfoot>tr>th:first-child,.ui.celled.table>tr>td:first-child,.ui.celled.table>tbody>tr>td:first-child,.ui.celled.table>tfoot>tr>td:first-child{border-left:none}.ui.compact.table>tr>th,.ui.compact.table>thead>tr>th,.ui.compact.table>tbody>tr>th,.ui.compact.table>tfoot>tr>th{padding-left:.7em;padding-right:.7em}.ui.compact.table>tr>td,.ui.compact.table>tbody>tr>td,.ui.compact.table>tfoot>tr>td{padding:.5em .7em}.ui.table>thead>tr>th:first-of-type,.ui.table>tbody>tr>td:first-of-type,.ui.table>tr>td:first-of-type{padding-left:10px}.ui.table>thead>tr>th:last-of-type,.ui.table>tbody>tr>td:last-of-type,.ui.table>tr>td:last-of-type{padding-right:10px}.ui.card:last-child{margin-bottom:0}.ui.card:first-child{margin-top:0}.ui.cards>.card,.ui.card{display:flex;flex-direction:column;max-width:100%;width:290px;min-height:0;padding:0;background:var(--color-card);border:1px solid var(--color-secondary);box-shadow:none;word-wrap:break-word;border-radius:var(--border-radius)}.ui.card{margin:1em 0}.ui.cards{display:flex;margin:-.875em -.5em;flex-wrap:wrap}.ui.cards>.card{display:flex;margin:.875em .5em;float:none}.ui.cards>.card>.content,.ui.card>.content{border-top:1px solid var(--color-secondary);max-width:100%;padding:1em;font-size:1em}.ui.cards>.card>.content>.meta+.description,.ui.cards>.card>.content>.header+.description,.ui.card>.content>.meta+.description,.ui.card>.content>.header+.description{margin-top:.5em}.ui.cards>.card>.content>.header:not(.ui),.ui.card>.content>.header:not(.ui){font-weight:var(--font-weight-medium);font-size:1.28571429em;margin-top:-.21425em;line-height:1.28571429}.ui.cards>.card>.content:first-child,.ui.card>.content:first-child{border-top:none;border-radius:var(--border-radius) var(--border-radius) 0 0}.ui.cards>.card>:last-child,.ui.card>:last-child{border-radius:0 0 var(--border-radius) var(--border-radius)}.ui.cards>.card>:only-child,.ui.card>:only-child{border-radius:var(--border-radius)!important}.ui.cards>.card>.extra,.ui.card>.extra,.ui.cards>.card>.extra a:not(.ui),.ui.card>.extra a:not(.ui){color:var(--color-text)}.ui.cards>.card>.extra a:not(.ui):hover,.ui.card>.extra a:not(.ui):hover{color:var(--color-primary)}.ui.cards>.card>.content>.header,.ui.card>.content>.header{color:var(--color-text)}.ui.cards>.card>.content>.description,.ui.card>.content>.description{color:var(--color-text)}.ui.cards>.card .meta>a:not(.ui),.ui.card .meta>a:not(.ui){color:var(--color-text-light-2)}.ui.cards>.card .meta>a:not(.ui):hover,.ui.card .meta>a:not(.ui):hover{color:var(--color-text)}.ui.cards a.card:hover,a.ui.card:hover{border:1px solid var(--color-secondary);background:var(--color-card)}.ui.cards>.card>.extra,.ui.card>.extra{color:var(--color-text);border-top-color:var(--color-secondary-light-1)!important}.ui.three.cards{margin-left:-1em;margin-right:-1em}.ui.three.cards>.card{width:calc(33.33333333333333% - 2em);margin-left:1em;margin-right:1em}input[type=checkbox],input[type=radio]{width:var(--checkbox-size);height:var(--checkbox-size)}.ui.checkbox{position:relative;display:inline-block;vertical-align:baseline;min-height:var(--checkbox-size);line-height:var(--checkbox-size);min-width:var(--checkbox-size);padding:1px}.ui.checkbox input[type=checkbox],.ui.checkbox input[type=radio]{position:absolute;top:1px;left:0;width:var(--checkbox-size);height:var(--checkbox-size)}.ui.checkbox input[type=checkbox]:enabled,.ui.checkbox input[type=radio]:enabled,.ui.checkbox label:enabled{cursor:pointer}.ui.checkbox label{cursor:auto;position:relative;display:block;user-select:none}.ui.checkbox label,.ui.radio.checkbox label{margin-left:20px}.ui.checkbox+label{vertical-align:middle}.ui.disabled.checkbox label,.ui.checkbox input[disabled]~label{cursor:default!important;opacity:.5;pointer-events:none}.ui.radio.checkbox{min-height:var(--checkbox-size)}.ui.toggle.checkbox{min-height:1.5rem}.ui.toggle.checkbox input{width:3.5rem;height:21px;opacity:0;z-index:3}.ui.toggle.checkbox label{min-height:1.5rem;padding-left:4.5rem;padding-top:.15em}.ui.toggle.checkbox label:before{display:block;position:absolute;content:"";z-index:1;top:0;width:49px;height:21px;border-radius:500rem;left:0}.ui.toggle.checkbox label:after{background:var(--color-white);box-shadow:1px 1px 4px 1px var(--color-shadow);position:absolute;content:"";opacity:1;z-index:2;width:18px;height:18px;top:1.5px;left:1.5px;border-radius:500rem;transition:background .3s ease,left .3s ease}.ui.toggle.checkbox input~label:after{left:1.5px}.ui.toggle.checkbox input:checked~label:after{left:29px}.ui.toggle.checkbox input:focus~label:before,.ui.toggle.checkbox label:before{background:var(--color-input-toggle-background)}.ui.toggle.checkbox label,.ui.toggle.checkbox input:checked~label,.ui.toggle.checkbox input:focus:checked~label{color:var(--color-text)!important}.ui.toggle.checkbox input:checked~label:before,.ui.toggle.checkbox input:focus:checked~label:before{background:var(--color-primary)!important}.ui.modal.g-modal-confirm{max-width:min(800px,90vw);width:fit-content}.ui.modal.g-modal-confirm>.inside.close.icon{padding:0;width:1em;height:1em;top:1.2em}.ui.modal>.close.inside{color:inherit}.ui.modal>.close.icon[height="16"]{top:.7em;color:var(--color-text-dark)}.ui.modal>.header{color:var(--color-text-dark);background:var(--color-body);border-color:var(--color-secondary);border-top-left-radius:var(--border-radius);border-top-right-radius:var(--border-radius);vertical-align:middle}.ui.modal>.header .svg{vertical-align:middle;display:inline-block}.ui.modal{background:var(--color-body);box-shadow:1px 3px 3px 0 var(--color-shadow),1px 3px 15px 2px var(--color-shadow)}.ui.modal>.content,.ui.modal form>.content{padding:1.5em;background:var(--color-body);border-radius:0 0 var(--border-radius) var(--border-radius)}.ui.modal>.actions,.ui.modal .content+.actions,.ui.modal .content+form>.actions{background:var(--color-secondary-bg);border-color:var(--color-secondary);padding:1rem;text-align:right;border-radius:0 0 var(--border-radius) var(--border-radius)}.ui.modal .content>.actions{padding-top:1em;text-align:right}.ui.modal .actions>.ui.button{display:inline-flex;align-items:center;padding:10px 12px 10px 10px;margin-right:0}.ui.modal .actions>.ui.button.danger{display:block;width:100%;margin:0 auto;text-align:center}.ui.modal .actions>.ui.button .svg{margin-right:5px}.gitea-select{position:relative}.gitea-select select{appearance:none}.gitea-select:after{position:absolute;top:12px;right:8px;pointer-events:none;content:"";width:14px;height:14px;mask-size:cover;-webkit-mask-size:cover;mask-image:var(--octicon-chevron-right);-webkit-mask-image:var(--octicon-chevron-right);transform:rotate(90deg);background:currentcolor}.tippy-target{display:none!important}.tippy-content .tippy-target{display:unset!important}[data-tippy-root]{max-width:calc(100vw - 32px)}.tippy-box{position:relative;background-color:var(--color-menu);color:var(--color-text);border:1px solid var(--color-secondary);border-radius:var(--border-radius);font-size:1rem}.tippy-content{position:relative;z-index:1}.tippy-box[data-theme=bare]{border:none;box-shadow:0 6px 18px var(--color-shadow)}.tippy-box[data-theme=bare] .tippy-content{padding:0;background:transparent}.tippy-box[data-theme=tooltip]{background-color:var(--color-tooltip-bg);color:var(--color-tooltip-text);border:none}.tippy-box[data-theme=tooltip] .tippy-content{padding:.5rem 1rem}.tippy-box[data-theme=tooltip] .tippy-svg-arrow-inner,.tippy-box[data-theme=tooltip] .tippy-svg-arrow-outer{fill:var(--color-tooltip-bg)}.tippy-box[data-theme=menu]{background-color:var(--color-menu);color:var(--color-text);box-shadow:0 6px 18px var(--color-shadow)}.tippy-box[data-theme=menu] .tippy-content{padding:4px 0}.tippy-box[data-theme=menu] .tippy-svg-arrow-inner{fill:var(--color-menu)}.tippy-box[data-theme=menu] .item{display:flex;align-items:center;padding:9px 18px;color:inherit;text-decoration:none;gap:10px}.tippy-box[data-theme=menu] .item:hover{background:var(--color-hover)}.tippy-box[data-theme=menu] .item:focus{background:var(--color-active)}.tippy-box[data-theme=box-with-header]{box-shadow:0 6px 18px var(--color-shadow)}.tippy-box[data-theme=box-with-header] .tippy-content{background:var(--color-box-body);border-radius:var(--border-radius);padding:0}.tippy-box[data-theme=box-with-header][data-placement^=top] .tippy-svg-arrow-inner{fill:var(--color-box-body)}.tippy-box[data-theme=box-with-header][data-placement^=bottom] .tippy-svg-arrow-inner{fill:var(--color-box-header)}.tippy-box[data-placement^=top]>.tippy-svg-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-svg-arrow:after,.tippy-box[data-placement^=top]>.tippy-svg-arrow>svg{top:16px;transform:rotate(180deg)}.tippy-box[data-placement^=bottom]>.tippy-svg-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-svg-arrow>svg{bottom:16px}.tippy-box[data-placement^=left]>.tippy-svg-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-svg-arrow:after,.tippy-box[data-placement^=left]>.tippy-svg-arrow>svg{transform:rotate(90deg);top:calc(50% - 3px);left:11px}.tippy-box[data-placement^=right]>.tippy-svg-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-svg-arrow:after,.tippy-box[data-placement^=right]>.tippy-svg-arrow>svg{transform:rotate(-90deg);top:calc(50% - 3px);right:11px}.tippy-svg-arrow{width:16px;height:16px;text-align:initial}.tippy-svg-arrow,.tippy-svg-arrow>svg{position:absolute}.tippy-svg-arrow-outer{fill:var(--color-secondary)}.tippy-svg-arrow-inner{fill:var(--color-menu)}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:3px}.breadcrumb .breadcrumb-divider{color:var(--color-text-light-2)}.breadcrumb>*{display:inline}.ui.comments{margin:1.5em 0}.ui.comments:first-child{margin-top:0}.ui.comments:last-child{margin-bottom:0}.ui.comments .comment{display:flex;position:relative;background:none;margin:3px 0 0;padding:.5em 0 0;border:none;border-top:none;line-height:1.2}.edit-content-zone .comment{flex-direction:column}.ui.comments .comment:first-child{margin-top:0;padding-top:0}.ui.comments .comment>.comments{margin:0 0 .5em .5em;padding:1em 0 1em 1em}.ui.comments .comment>.comments:before{position:absolute;top:0;left:0}.ui.comments .comment>.comments .comment{border:none;border-top:none;background:none}.ui.comments .comment .avatar{width:30px}.ui.comments .comment>.content{display:flex;flex-direction:column;flex:1}.ui.comments .comment>.avatar~.content{margin-left:12px}.ui.comments .comment .author{font-size:1em;font-weight:var(--font-weight-medium)}.ui.comments .comment a.author{cursor:pointer}.ui.comments .comment .metadata{display:inline-block;margin-left:.5em;font-size:.875em}.ui.comments .comment .metadata>*{display:inline-block;margin:0 .5em 0 0}.ui.comments .comment .metadata>:last-child{margin-right:0}.ui.comments .comment .text{margin:.25em 0 .5em;font-size:1em;word-wrap:break-word;line-height:1.3}#navbar{display:flex;align-items:center;justify-content:space-between;background:var(--color-nav-bg);border-bottom:1px solid var(--color-secondary);margin:0!important;padding:0 10px}#navbar,#navbar .navbar-left,#navbar .navbar-right{min-height:49px}#navbar .navbar-left,#navbar .navbar-right{margin:0;display:flex;align-items:center;gap:5px}#navbar-logo{margin:0}.navbar-left>.item,.navbar-right>.item{color:var(--color-nav-text);position:relative;text-decoration:none;line-height:var(--line-height-default);flex:0 0 auto;font-weight:var(--font-weight-normal);align-items:center;padding:.78571429em .92857143em;border-radius:.28571429rem}#navbar .item{min-height:36px;min-width:36px;padding-top:3px;padding-bottom:3px;display:flex}#navbar .dropdown .item{justify-content:stretch}#navbar a.item:hover,#navbar button.item:hover{background:var(--color-nav-hover-bg)}#navbar .secondary.menu>.item>.svg,#navbar .right.menu>.item>.svg{margin-right:0}@media (max-width: 767.98px){#navbar{align-items:stretch}#navbar .item{display:none}#navbar #navbar-logo{display:flex}#navbar .navbar-left{flex:1;display:flex;justify-content:space-between}#navbar .navbar-mobile-right{display:flex;margin:0 0 0 auto!important;width:auto!important}#navbar .navbar-mobile-right>.item{display:flex;width:auto!important}#navbar.navbar-menu-open{padding-bottom:8px}#navbar.navbar-menu-open,#navbar.navbar-menu-open .navbar-right{flex-direction:column}#navbar.navbar-menu-open .navbar-left{display:flex;flex-wrap:wrap}#navbar.navbar-menu-open .item{display:flex;width:100%;margin:0}#navbar.navbar-menu-open .navbar-left #navbar-logo{justify-content:flex-start;width:auto}#navbar.navbar-menu-open .navbar-left .navbar-mobile-right{justify-content:flex-end;width:50%;min-height:48px}#navbar #mobile-stopwatch-icon,#navbar #mobile-notifications-icon{margin-right:6px!important}}#navbar a.item:hover .notification_count,#navbar a.item:hover .header-stopwatch-dot{border-color:var(--color-nav-hover-bg)}#navbar a.item .notification_count,#navbar a.item .header-stopwatch-dot{color:var(--color-nav-bg);padding:0 3.75px;font-size:12px;line-height:12px;font-weight:var(--font-weight-bold);background:var(--color-primary);border:2px solid var(--color-nav-bg);position:absolute;left:6px;top:-9px;min-width:17px;height:17px;border-radius:11px;display:flex;align-items:center;justify-content:center;z-index:1;user-select:none;white-space:nowrap}.secondary-nav{background:var(--color-secondary-nav-bg)!important}.issue-navbar{display:flex;justify-content:space-between}.toastify{color:var(--color-white);position:fixed;opacity:0;transition:all .2s ease;z-index:500;border-radius:var(--border-radius);box-shadow:0 8px 24px var(--color-shadow);display:flex;max-width:50vw;min-width:300px;padding:4px}.toastify.on{opacity:1}.toast-body{flex:1;padding:5px 0;overflow-wrap:anywhere}.toast-close,.toast-icon{color:currentcolor;border-radius:var(--border-radius);background:transparent;border:none;display:flex;width:30px;height:30px;justify-content:center;align-items:center}.toast-close:hover{background:var(--color-hover)}.toast-close:active{background:var(--color-active)}.toastify-right{right:15px}.toastify-left{left:15px}.toastify-top{top:-150px}.toastify-bottom{bottom:-150px}.toastify-center{margin-left:auto;margin-right:auto;left:0;right:0}@media (max-width: 360px){.toastify-right,.toastify-left{margin-left:auto;margin-right:auto;left:0;right:0;max-width:fit-content}}.svg{display:inline-block;vertical-align:text-top;fill:currentcolor}.middle .svg{vertical-align:middle}.svg[height="12"]{min-height:12px}.svg[height="13"]{min-height:13px}.svg[height="14"]{min-height:14px}.svg[height="15"]{min-height:15px}.svg[height="16"]{min-height:16px}.svg[height="18"]{min-height:18px}.svg[height="20"]{min-height:20px}.svg[height="22"]{min-height:22px}.svg[height="24"]{min-height:24px}.svg[height="36"]{min-height:36px}.svg[height="48"]{min-height:48px}.svg[height="56"]{min-height:56px}.svg[width="12"]{min-width:12px}.svg[width="13"]{min-width:13px}.svg[width="14"]{min-width:14px}.svg[width="15"]{min-width:15px}.svg[width="16"]{min-width:16px}.svg[width="18"]{min-width:18px}.svg[width="20"]{min-width:20px}.svg[width="22"]{min-width:22px}.svg[width="24"]{min-width:24px}.svg[width="36"]{min-width:36px}.svg[width="48"]{min-width:48px}.svg[width="56"]{min-width:56px}.flex-container{display:flex!important;gap:var(--page-spacing);margin-top:var(--page-spacing)}.flex-container-nav{width:240px}.flex-container-sidebar{width:35%}.flex-container-main{flex:1;min-width:0}@media (max-width: 767.98px){.flex-container{flex-direction:column}.flex-container-nav,.flex-container-sidebar{order:-1;width:auto}}.flex-list{list-style:none}.flex-item{display:flex;gap:8px;align-items:flex-start;padding:10px 0}.flex-item .flex-item-leading{display:flex;align-items:flex-start}.flex-item .flex-item-main{display:flex;flex-direction:column;flex-grow:1;flex-basis:60%;min-width:0}.flex-item-header{display:flex;gap:.25rem;justify-content:space-between;flex-wrap:wrap}.flex-item a:not(.label,.button):hover{color:var(--color-primary)!important}.flex-item .flex-item-icon{align-self:baseline}.flex-item .flex-item-icon+.flex-item-main{align-self:baseline}.flex-item .flex-item-trailing{display:flex;gap:.5rem;align-items:center;flex-grow:0;flex-wrap:wrap;justify-content:end}.flex-item .flex-item-title{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.25rem;max-width:100%;color:var(--color-text);font-size:16px;font-weight:var(--font-weight-semibold);word-break:break-word;min-width:0}.flex-item .flex-item-title a{color:var(--color-text);overflow-wrap:anywhere}.flex-item .flex-item-body{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem;color:var(--color-text-light-2);word-break:break-word}.flex-item .flex-item-body a{color:inherit;overflow-wrap:anywhere}.flex-list>.flex-item+.flex-item{border-top:1px solid var(--color-secondary)}.flex-list.flex-space-fitted>.flex-item:first-child,.ui.segment>.flex-list>.flex-item:first-child{padding-top:0}.flex-list.flex-space-fitted>.flex-item:last-child,.ui.segment>.flex-list>.flex-item:last-child{padding-bottom:0}.divider+.flex-list>.flex-item:first-child{padding-top:0}.flex-list+.divider{margin-top:0}.milestone-list{list-style:none}.milestone-card{width:100%;padding-top:10px;padding-bottom:10px}.milestone-card+.milestone-card{border-top:1px solid var(--color-secondary)}.milestone-card .content{padding-top:10px}.milestone-header progress{width:200px;height:16px}.milestone-header{display:flex;align-items:center;margin:0;flex-wrap:wrap;justify-content:space-between}.milestone-toolbar{padding-top:5px;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.milestone-toolbar .group{color:var(--color-text-light-2);display:flex;flex-wrap:wrap;gap:8px}.milestone-toolbar .group>a{font-size:15px;color:var(--color-text-light-2)}.milestone-toolbar .group>a:hover{color:var(--color-text)}@media (max-width: 767.98px){.milestone-card{display:flex;flex-direction:column;gap:8px}}.repository .head .ui.header .text,.organization .head .ui.header .text{vertical-align:middle;font-size:1.6rem;margin-left:15px}.repository .ui.tabs.container,.organization .ui.tabs.container{margin-top:14px;margin-bottom:0}.repository .head .ui.header .org-visibility .label,.organization .head .ui.header .org-visibility .label{margin-left:5px;margin-top:5px}details.toggleable-item{user-select:none!important;padding:0!important}details.toggleable-item .menu{margin:4px 0 10px!important}details.toggleable-item summary{display:flex;justify-content:space-between;align-items:center;padding:.92857143em 1.14285714em}details.toggleable-item summary::marker,details.toggleable-item summary::-webkit-details-marker{display:none}details.toggleable-item summary:after{transition:transform .25s ease;content:"";width:14px;height:14px;mask-size:cover;-webkit-mask-size:cover;mask-image:var(--octicon-chevron-right);-webkit-mask-image:var(--octicon-chevron-right);background:currentcolor;border:1px solid var(--color-body)}details.toggleable-item[open] summary:after{transform:rotate(90deg)}.ui .field .dropzone{border:2px dashed var(--color-secondary);background:none;box-shadow:none;padding:0;border-radius:var(--border-radius-medium);min-height:0}.ui .field .dropzone .dz-message{margin:10px 0}.dropzone .dz-button{color:var(--color-text-light)!important}.dropzone:hover .dz-button{color:var(--color-text)!important}.dropzone .dz-error-message{top:145px!important}.dropzone .dz-image{display:flex!important;align-items:center!important;justify-content:center!important;border-radius:0!important}.dropzone .dz-image img{max-width:100%!important;max-height:100%!important;object-fit:contain!important}.dropzone .dz-preview.dz-image-preview,.dropzone-attachments .thumbnails img{background:transparent!important}.dropzone-attachments .thumbnails img{height:120px!important;width:120px!important;object-fit:contain!important;margin-bottom:0!important}.dropzone .dz-preview:hover .dz-image img{filter:opacity(.5)!important}.ui .field .dropzone .dz-preview .dz-progress{top:7em}#git-graph-container{overflow-x:auto;width:100%;min-height:350px}#git-graph-container h2{display:flex;justify-content:space-between;align-items:center}#git-graph-container .color-buttons{margin-right:0}#git-graph-container .ui.header.dividing{padding-bottom:10px}#git-graph-container #flow-select-refs-dropdown{border-top-right-radius:0;border-bottom-right-radius:0;min-width:250px;border-right:none}#git-graph-container #flow-select-refs-dropdown .ui.label{max-width:180px;display:inline-flex!important;align-items:center}#git-graph-container #flow-select-refs-dropdown .ui.label .truncate{display:inline-block;max-width:140px;overflow:hidden;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}#git-graph-container #flow-select-refs-dropdown .default.text{padding-top:4px;padding-bottom:4px}#git-graph-container #flow-select-refs-dropdown input.search{position:relative;top:1px}#git-graph-container li{list-style-type:none;height:24px;line-height:24px;white-space:nowrap;display:flex;align-items:center}#git-graph-container li .node-relation{font-family:var(--fonts-monospace)}#git-graph-container li .author{color:var(--color-text-light)}#git-graph-container li .time{color:var(--color-text-light-3);font-size:80%}#git-graph-container li a:not(.ui):hover{text-decoration:underline}#git-graph-container li a em{color:var(--color-red);border-bottom:1px dotted var(--color-secondary);text-decoration:none;font-style:normal}#git-graph-container #rel-container{max-width:30%;overflow-x:auto;float:left}#git-graph-container #rev-container{width:100%}#git-graph-container #rev-list{margin:0;padding:0;width:100%}#git-graph-container #rev-list li.highlight.hover{background-color:var(--color-secondary-alpha-30)}#git-graph-container #rev-list .commit-refs .button{padding:2px 4px;margin-right:.25em;display:inline-block;max-width:200px;overflow:hidden;text-overflow:ellipsis}#git-graph-container #rev-list .sha.label{padding-top:5px;padding-bottom:3px}#git-graph-container #rev-list .sha.label .ui.detail.icon.button{padding-top:3px;margin-top:-5px;padding-bottom:1px}#git-graph-container #rev-list .author img.ui.avatar{width:auto;height:18px;max-width:none}#git-graph-container #graph-raw-list{margin:0}#git-graph-container.monochrome #rel-container .flow-group{stroke:var(--color-secondary-dark-5);fill:var(--color-secondary-dark-5)}#git-graph-container.monochrome #rel-container .flow-group.highlight{stroke:var(--color-secondary-dark-12);fill:var(--color-secondary-dark-12)}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-1{stroke:#499a37;fill:#499a37}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-2{stroke:#ce4751;fill:#ce4751}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-3{stroke:#8f9121;fill:#8f9121}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-4{stroke:#ac32a6;fill:#ac32a6}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-5{stroke:#7445e9;fill:#7445e9}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-6{stroke:#c67d28;fill:#c67d28}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-7{stroke:#4db392;fill:#4db392}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-8{stroke:#aa4d30;fill:#aa4d30}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-9{stroke:#2a6f84;fill:#2a6f84}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-10{stroke:#c45327;fill:#c45327}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-11{stroke:#3d965c;fill:#3d965c}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-12{stroke:#792a93;fill:#792a93}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-13{stroke:#439d73;fill:#439d73}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-14{stroke:#103aad;fill:#103aad}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-15{stroke:#982e85;fill:#982e85}#git-graph-container:not(.monochrome) #rel-container .flow-group.flow-color-16-0{stroke:#7db233;fill:#7db233}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-1{stroke:#5ac144;fill:#5ac144}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-2{stroke:#ed5a8b;fill:#ed5a8b}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-3{stroke:#ced049;fill:#ced048}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-4{stroke:#db61d7;fill:#db62d6}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-5{stroke:#8455f9;fill:#8455f9}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-6{stroke:#e6a151;fill:#e6a151}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-7{stroke:#44daaa;fill:#44daaa}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-8{stroke:#dd7a5c;fill:#dd7a5c}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-9{stroke:#38859c;fill:#38859c}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-10{stroke:#d95520;fill:#d95520}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-11{stroke:#42ae68;fill:#42ae68}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-12{stroke:#9126b5;fill:#9126b5}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-13{stroke:#4ab080;fill:#4ab080}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-14{stroke:#284fb8;fill:#284fb8}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-15{stroke:#971c80;fill:#971c80}#git-graph-container:not(.monochrome) #rel-container .flow-group.highlight.flow-color-16-0{stroke:#87ca28;fill:#87ca28}#user-heatmap{width:100%;font-size:9px;position:relative}#user-heatmap.is-loading{aspect-ratio:5.415}.user.profile #user-heatmap.is-loading{aspect-ratio:5.645}#user-heatmap text{fill:currentcolor!important}#user-heatmap .vch__legend .vch__legend{display:flex;font-size:11px;align-items:center;justify-content:right}#user-heatmap .vch__legend .vch__legend div:first-child,#user-heatmap .vch__legend .vch__legend div:last-child{display:inline-block;padding:0 5px}#user-heatmap .vch__day__square:hover{outline:1.5px solid var(--color-text)}#user-heatmap .total-contributions{font-size:11px;position:absolute;bottom:0;left:25px}@media (max-width: 1200px){#user-heatmap .total-contributions{left:21px}}@media (max-width: 1000px){#user-heatmap .total-contributions{font-size:10px;left:17px;bottom:-4px}}.image-diff-tabs{min-height:60px}.image-diff-tabs.is-loading .tab{display:none}.image-diff-container{text-align:center;padding:.5em 0 1em}.image-diff-container img{border:1px solid var(--color-primary-light-7);background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAG0lEQVQYlWN4+vTpf3SMDTAMBYXYBLFpHgoKAeiOf0SGE9kbAAAAAElFTkSuQmCC) right bottom var(--color-primary-light-7)}.image-diff-container .before-container{border:1px solid var(--color-red);display:block}.image-diff-container .after-container{border:1px solid var(--color-green);display:block}.image-diff-container .diff-side-by-side .side{display:inline-block;line-height:0;vertical-align:top;margin:0 1em}.image-diff-container .diff-side-by-side .side .side-header{font-weight:var(--font-weight-semibold)}.image-diff-container .diff-swipe{margin:auto;padding:1em 0}.image-diff-container .diff-swipe .swipe-frame,.image-diff-container .diff-swipe .swipe-frame .before-container{position:absolute}.image-diff-container .diff-swipe .swipe-frame .swipe-container{position:absolute;right:0;display:block;border-left:2px solid var(--color-secondary-dark-8);height:100%;overflow:hidden}.image-diff-container .diff-swipe .swipe-frame .swipe-container .after-container{position:absolute;right:0}.image-diff-container .diff-swipe .swipe-frame .swipe-bar{position:absolute;height:100%;top:0;left:0}.image-diff-container .diff-swipe .swipe-frame .swipe-bar .handle{background:var(--color-secondary-dark-8);left:-5px;height:12px;width:12px;position:absolute;transform:rotate(45deg);box-sizing:border-box;display:flex;justify-content:center;align-items:center;cursor:pointer}.image-diff-container .diff-swipe .swipe-frame .swipe-bar .top-handle{top:-12px}.image-diff-container .diff-swipe .swipe-frame .swipe-bar .bottom-handle{bottom:-14px}.image-diff-container .diff-overlay{margin:0 auto}.image-diff-container .diff-overlay .overlay-frame{margin:1em auto 0;position:relative}.image-diff-container .diff-overlay .before-container,.image-diff-container .diff-overlay .after-container{position:absolute}.image-diff-container .diff-overlay input{max-width:300px}.monaco-editor-container,.editor-loading.is-loading{width:100%;min-height:200px;height:90vh}.edit.githook .monaco-editor-container{border:1px solid var(--color-secondary);height:70vh}.monaco-editor-container .inputarea{min-height:0!important;margin:0!important;padding:0!important;resize:none!important;border:none!important;color:transparent!important;background-color:transparent!important}.monaco-editor,.monaco-editor .overflow-guard{border-radius:var(--border-radius)}.monaco-scrollable-element>.scrollbar>.slider{background:var(--color-primary)!important}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--color-primary-dark-1)!important}.monaco-scrollable-element>.scrollbar>.slider:active{background:var(--color-primary-dark-2)!important}.monaco-editor .iPadShowKeyboard{border:none!important;width:58px!important;min-width:0!important;height:36px!important;min-height:0!important;margin:0!important;padding:0!important;position:absolute!important;resize:none!important;overflow:hidden!important;border-radius:var(--border-radius-medium)!important}.board{display:flex;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;margin:0 .5em}.project-column{background-color:var(--color-project-board-bg)!important;border:1px solid var(--color-secondary)!important;border-radius:var(--border-radius);margin:0 .5rem!important;padding:.5rem!important;width:320px;height:calc(100vh - 450px);min-height:60vh;flex:0 0 auto;overflow:visible;display:flex;flex-direction:column;cursor:default}.project-column .issue-card{color:var(--color-text)}.project-column-header{display:flex;align-items:center;justify-content:space-between;gap:.5em}.ui.label.project-column-issue-count{color:inherit}.project-column-title-label{flex:1}.project-column>.cards{flex:1;display:flex;align-content:baseline;margin:0!important;padding:0!important;flex-wrap:nowrap!important;flex-direction:column;overflow-x:auto;gap:.25rem}.project-column>.divider{margin:5px 0;border-color:currentcolor;opacity:.5}.project-column:first-child{margin-left:auto!important}.project-column:last-child{margin-right:auto!important}.card-attachment-images{display:inline-block;white-space:nowrap;overflow:scroll;cursor:default;scroll-snap-type:x mandatory;text-align:center}.card-attachment-images img{display:inline-block;max-height:50px;border-radius:var(--border-radius);text-align:left;scroll-snap-align:center;margin-right:2px;aspect-ratio:1}.card-attachment-images img:only-child{max-height:90px;margin:auto}.card-ghost{border-color:var(--color-secondary-dark-4)!important;border-style:dashed!important;background:none!important}.card-ghost *{opacity:0}.tribute-container{position:absolute;top:0;left:0;height:auto;max-height:300px;max-width:500px;overflow:auto;display:block;z-index:999999}.tribute-container ul{margin:2px 0 0;padding:0;list-style:none;background:#efefef}.tribute-container li{padding:5px;cursor:pointer}.tribute-container li.highlight{background:#ddd}.tribute-container li span{font-weight:700}.tribute-container li.no-match{cursor:default}.tribute-container .menu-highlighted{font-weight:700}.tribute-container{box-shadow:0 .25rem .5rem #00000040;border-radius:var(--border-radius)}.tribute-container ul{margin-top:0!important;background:var(--color-body)!important}.tribute-container li{padding:3px .5rem!important}.tribute-container li span.fullname{font-weight:var(--font-weight-normal);font-size:.8rem;margin-left:3px}.tribute-container li.highlight,.tribute-container li:hover{background:var(--color-primary)!important;color:var(--color-primary-contrast)!important}.tribute-item{display:flex;align-items:center}.tribute-item .emoji,.tribute-item img[src*="/avatar/"]{margin-right:.5rem}.tribute-container img{width:1.5rem!important;height:1.5rem!important}.console{background:var(--color-console-bg);color:var(--color-console-fg);font-family:var(--fonts-monospace);border-radius:var(--border-radius);word-break:break-word;overflow-wrap:break-word}.console img{max-width:100%}.console a{color:inherit;text-decoration:underline;text-decoration-style:dashed}.console a:hover{color:var(--color-primary)}@keyframes blink-animation{to{visibility:hidden}}.ansi-black-fg{color:var(--color-ansi-black)}.ansi-red-fg{color:var(--color-ansi-red)}.ansi-green-fg{color:var(--color-ansi-green)}.ansi-yellow-fg{color:var(--color-ansi-yellow)}.ansi-blue-fg{color:var(--color-ansi-blue)}.ansi-magenta-fg{color:var(--color-ansi-magenta)}.ansi-cyan-fg{color:var(--color-ansi-cyan)}.ansi-white-fg{color:var(--color-ansi-white)}.ansi-bright-black-fg{color:var(--color-ansi-bright-black)}.ansi-bright-red-fg{color:var(--color-ansi-bright-red)}.ansi-bright-green-fg{color:var(--color-ansi-bright-green)}.ansi-bright-yellow-fg{color:var(--color-ansi-bright-yellow)}.ansi-bright-blue-fg{color:var(--color-ansi-bright-blue)}.ansi-bright-magenta-fg{color:var(--color-ansi-bright-magenta)}.ansi-bright-cyan-fg{color:var(--color-ansi-bright-cyan)}.ansi-bright-white-fg{color:var(--color-ansi-bright-white)}.ansi-black-bg{background-color:var(--color-ansi-black)}.ansi-red-bg{background-color:var(--color-ansi-red)}.ansi-green-bg{background-color:var(--color-ansi-green)}.ansi-yellow-bg{background-color:var(--color-ansi-yellow)}.ansi-blue-bg{background-color:var(--color-ansi-blue)}.ansi-magenta-bg{background-color:var(--color-ansi-magenta)}.ansi-cyan-bg{background-color:var(--color-ansi-cyan)}.ansi-white-bg{background-color:var(--color-ansi-white)}.ansi-bright-black-bg{background-color:var(--color-ansi-bright-black)}.ansi-bright-red-bg{background-color:var(--color-ansi-bright-red)}.ansi-bright-green-bg{background-color:var(--color-ansi-bright-green)}.ansi-bright-yellow-bg{background-color:var(--color-ansi-bright-yellow)}.ansi-bright-blue-bg{background-color:var(--color-ansi-bright-blue)}.ansi-bright-magenta-bg{background-color:var(--color-ansi-bright-magenta)}.ansi-bright-cyan-bg{background-color:var(--color-ansi-bright-cyan)}.ansi-bright-white-bg{background-color:var(--color-ansi-bright-white)}.term-fg2{color:var(--color-ansi-bright-black)}.term-fg3{font-style:italic}.term-fg4{text-decoration:underline}.term-fg5{animation:blink-animation 1s steps(3,start) infinite}.term-fg9{text-decoration:line-through}.term-fg30{color:var(--color-ansi-black)}.term-fg31{color:var(--color-ansi-red)}.term-fg32{color:var(--color-ansi-green)}.term-fg33{color:var(--color-ansi-yellow)}.term-fg34{color:var(--color-ansi-blue)}.term-fg35{color:var(--color-ansi-magenta)}.term-fg36{color:var(--color-ansi-cyan)}.term-fgi1{color:var(--color-ansi-bright-green)}.term-fgi90{color:var(--color-ansi-bright-black)}.term-fgi91{color:var(--color-ansi-bright-red)}.term-fgi92{color:var(--color-ansi-bright-green)}.term-fgi93{color:var(--color-ansi-bright-yellow)}.term-fgi94{color:var(--color-ansi-bright-blue)}.term-fgi95{color:var(--color-ansi-bright-magenta)}.term-fgi96{color:var(--color-ansi-bright-cyan)}.term-bg40{background:var(--color-ansi-bright-black)}.term-bg41{background:var(--color-ansi-red)}.term-bg42{background:var(--color-ansi-green)}.term-fg31.term-bg40{color:var(--color-ansi-bright-red)}.term-fgx16{color:#000}.term-fgx17{color:#00005f}.term-fgx18{color:#000087}.term-fgx19{color:#0000af}.term-fgx20{color:#0000d7}.term-fgx21{color:#00f}.term-fgx22{color:#005f00}.term-fgx23{color:#005f5f}.term-fgx24{color:#005f87}.term-fgx25{color:#005faf}.term-fgx26{color:#005fd7}.term-fgx27{color:#005fff}.term-fgx28{color:#008700}.term-fgx29{color:#00875f}.term-fgx30{color:#008787}.term-fgx31{color:#0087af}.term-fgx32{color:#0087d7}.term-fgx33{color:#0087ff}.term-fgx34{color:#00af00}.term-fgx35{color:#00af5f}.term-fgx36{color:#00af87}.term-fgx37{color:#00afaf}.term-fgx38{color:#00afd7}.term-fgx39{color:#00afff}.term-fgx40{color:#00d700}.term-fgx41{color:#00d75f}.term-fgx42{color:#00d787}.term-fgx43{color:#00d7af}.term-fgx44{color:#00d7d7}.term-fgx45{color:#00d7ff}.term-fgx46{color:#0f0}.term-fgx47{color:#00ff5f}.term-fgx48{color:#00ff87}.term-fgx49{color:#00ffaf}.term-fgx50{color:#00ffd7}.term-fgx51{color:#0ff}.term-fgx52{color:#5f0000}.term-fgx53{color:#5f005f}.term-fgx54{color:#5f0087}.term-fgx55{color:#5f00af}.term-fgx56{color:#5f00d7}.term-fgx57{color:#5f00ff}.term-fgx58{color:#5f5f00}.term-fgx59{color:#5f5f5f}.term-fgx60{color:#5f5f87}.term-fgx61{color:#5f5faf}.term-fgx62{color:#5f5fd7}.term-fgx63{color:#5f5fff}.term-fgx64{color:#5f8700}.term-fgx65{color:#5f875f}.term-fgx66{color:#5f8787}.term-fgx67{color:#5f87af}.term-fgx68{color:#5f87d7}.term-fgx69{color:#5f87ff}.term-fgx70{color:#5faf00}.term-fgx71{color:#5faf5f}.term-fgx72{color:#5faf87}.term-fgx73{color:#5fafaf}.term-fgx74{color:#5fafd7}.term-fgx75{color:#5fafff}.term-fgx76{color:#5fd700}.term-fgx77{color:#5fd75f}.term-fgx78{color:#5fd787}.term-fgx79{color:#5fd7af}.term-fgx80{color:#5fd7d7}.term-fgx81{color:#5fd7ff}.term-fgx82{color:#5fff00}.term-fgx83{color:#5fff5f}.term-fgx84{color:#5fff87}.term-fgx85{color:#5fffaf}.term-fgx86{color:#5fffd7}.term-fgx87{color:#5fffff}.term-fgx88{color:#870000}.term-fgx89{color:#87005f}.term-fgx90{color:#870087}.term-fgx91{color:#8700af}.term-fgx92{color:#8700d7}.term-fgx93{color:#8700ff}.term-fgx94{color:#875f00}.term-fgx95{color:#875f5f}.term-fgx96{color:#875f87}.term-fgx97{color:#875faf}.term-fgx98{color:#875fd7}.term-fgx99{color:#875fff}.term-fgx100{color:#878700}.term-fgx101{color:#87875f}.term-fgx102{color:#878787}.term-fgx103{color:#8787af}.term-fgx104{color:#8787d7}.term-fgx105{color:#8787ff}.term-fgx106{color:#87af00}.term-fgx107{color:#87af5f}.term-fgx108{color:#87af87}.term-fgx109{color:#87afaf}.term-fgx110{color:#87afd7}.term-fgx111{color:#87afff}.term-fgx112{color:#87d700}.term-fgx113{color:#87d75f}.term-fgx114{color:#87d787}.term-fgx115{color:#87d7af}.term-fgx116{color:#87d7d7}.term-fgx117{color:#87d7ff}.term-fgx118{color:#87ff00}.term-fgx119{color:#87ff5f}.term-fgx120{color:#87ff87}.term-fgx121{color:#87ffaf}.term-fgx122{color:#87ffd7}.term-fgx123{color:#87ffff}.term-fgx124{color:#af0000}.term-fgx125{color:#af005f}.term-fgx126{color:#af0087}.term-fgx127{color:#af00af}.term-fgx128{color:#af00d7}.term-fgx129{color:#af00ff}.term-fgx130{color:#af5f00}.term-fgx131{color:#af5f5f}.term-fgx132{color:#af5f87}.term-fgx133{color:#af5faf}.term-fgx134{color:#af5fd7}.term-fgx135{color:#af5fff}.term-fgx136{color:#af8700}.term-fgx137{color:#af875f}.term-fgx138{color:#af8787}.term-fgx139{color:#af87af}.term-fgx140{color:#af87d7}.term-fgx141{color:#af87ff}.term-fgx142{color:#afaf00}.term-fgx143{color:#afaf5f}.term-fgx144{color:#afaf87}.term-fgx145{color:#afafaf}.term-fgx146{color:#afafd7}.term-fgx147{color:#afafff}.term-fgx148{color:#afd700}.term-fgx149{color:#afd75f}.term-fgx150{color:#afd787}.term-fgx151{color:#afd7af}.term-fgx152{color:#afd7d7}.term-fgx153{color:#afd7ff}.term-fgx154{color:#afff00}.term-fgx155{color:#afff5f}.term-fgx156{color:#afff87}.term-fgx157{color:#afffaf}.term-fgx158{color:#afffd7}.term-fgx159{color:#afffff}.term-fgx160{color:#d70000}.term-fgx161{color:#d7005f}.term-fgx162{color:#d70087}.term-fgx163{color:#d700af}.term-fgx164{color:#d700d7}.term-fgx165{color:#d700ff}.term-fgx166{color:#d75f00}.term-fgx167{color:#d75f5f}.term-fgx168{color:#d75f87}.term-fgx169{color:#d75faf}.term-fgx170{color:#d75fd7}.term-fgx171{color:#d75fff}.term-fgx172{color:#d78700}.term-fgx173{color:#d7875f}.term-fgx174{color:#d78787}.term-fgx175{color:#d787af}.term-fgx176{color:#d787d7}.term-fgx177{color:#d787ff}.term-fgx178{color:#d7af00}.term-fgx179{color:#d7af5f}.term-fgx180{color:#d7af87}.term-fgx181{color:#d7afaf}.term-fgx182{color:#d7afd7}.term-fgx183{color:#d7afff}.term-fgx184{color:#d7d700}.term-fgx185{color:#d7d75f}.term-fgx186{color:#d7d787}.term-fgx187{color:#d7d7af}.term-fgx188{color:#d7d7d7}.term-fgx189{color:#d7d7ff}.term-fgx190{color:#d7ff00}.term-fgx191{color:#d7ff5f}.term-fgx192{color:#d7ff87}.term-fgx193{color:#d7ffaf}.term-fgx194{color:#d7ffd7}.term-fgx195{color:#d7ffff}.term-fgx196{color:red}.term-fgx197{color:#ff005f}.term-fgx198{color:#ff0087}.term-fgx199{color:#ff00af}.term-fgx200{color:#ff00d7}.term-fgx201{color:#f0f}.term-fgx202{color:#ff5f00}.term-fgx203{color:#ff5f5f}.term-fgx204{color:#ff5f87}.term-fgx205{color:#ff5faf}.term-fgx206{color:#ff5fd7}.term-fgx207{color:#ff5fff}.term-fgx208{color:#ff8700}.term-fgx209{color:#ff875f}.term-fgx210{color:#ff8787}.term-fgx211{color:#ff87af}.term-fgx212{color:#ff87d7}.term-fgx213{color:#ff87ff}.term-fgx214{color:#ffaf00}.term-fgx215{color:#ffaf5f}.term-fgx216{color:#ffaf87}.term-fgx217{color:#ffafaf}.term-fgx218{color:#ffafd7}.term-fgx219{color:#ffafff}.term-fgx220{color:gold}.term-fgx221{color:#ffd75f}.term-fgx222{color:#ffd787}.term-fgx223{color:#ffd7af}.term-fgx224{color:#ffd7d7}.term-fgx225{color:#ffd7ff}.term-fgx226{color:#ff0}.term-fgx227{color:#ffff5f}.term-fgx228{color:#ffff87}.term-fgx229{color:#ffffaf}.term-fgx230{color:#ffffd7}.term-fgx231{color:#fff}.term-fgx232{color:#080808}.term-fgx233{color:#121212}.term-fgx234{color:#1c1c1c}.term-fgx235{color:#262626}.term-fgx236{color:#303030}.term-fgx237{color:#3a3a3a}.term-fgx238{color:#444}.term-fgx239{color:#4e4e4e}.term-fgx240{color:#585858}.term-fgx241{color:#626262}.term-fgx242{color:#6c6c6c}.term-fgx243{color:#767676}.term-fgx244{color:gray}.term-fgx245{color:#8a8a8a}.term-fgx246{color:#949494}.term-fgx247{color:#9e9e9e}.term-fgx248{color:#a8a8a8}.term-fgx249{color:#b2b2b2}.term-fgx250{color:#bcbcbc}.term-fgx251{color:#c6c6c6}.term-fgx252{color:#d0d0d0}.term-fgx253{color:#dadada}.term-fgx254{color:#e4e4e4}.term-fgx255{color:#eee}.markup{overflow:hidden;font-size:16px;line-height:1.5!important;overflow-wrap:break-word}.conversation-holder .markup{overflow-wrap:anywhere}.markup>*:first-child{margin-top:0!important}.markup>*:last-child{margin-bottom:0!important}.markup a:not([href]){color:inherit;text-decoration:none}.markup .absent{color:var(--color-red)}.markup .anchor{float:left;padding-right:4px;margin-left:-20px;color:inherit}.markup .anchor .svg{vertical-align:middle}.markup .anchor:focus{outline:none}.markup h1 .anchor{margin-top:-2px}.markup h1 .anchor .svg,.markup h2 .anchor .svg,.markup h3 .anchor .svg,.markup h4 .anchor .svg,.markup h5 .anchor .svg,.markup h6 .anchor .svg{visibility:hidden}.markup h1:hover .anchor .svg,.markup h2:hover .anchor .svg,.markup h3:hover .anchor .svg,.markup h4:hover .anchor .svg,.markup h5:hover .anchor .svg,.markup h6:hover .anchor .svg{visibility:visible}.markup h2 .anchor .svg,.markup h3 .anchor .svg,.markup h4 .anchor .svg{position:relative;top:-2px}.markup h1,.markup h2,.markup h3,.markup h4,.markup h5,.markup h6{margin-top:24px;margin-bottom:16px;font-weight:var(--font-weight-semibold);line-height:1.25}.markup h1 tt,.markup h1 code,.markup h2 tt,.markup h2 code,.markup h3 tt,.markup h3 code,.markup h4 tt,.markup h4 code,.markup h5 tt,.markup h5 code,.markup h6 tt,.markup h6 code{font-size:inherit}.markup h1{padding-bottom:.3em;font-size:2em;border-bottom:1px solid var(--color-secondary)}.markup h2{padding-bottom:.3em;font-size:1.5em;border-bottom:1px solid var(--color-secondary)}.markup h3{font-size:1.25em}.markup h4{font-size:1em}.markup h5{font-size:.875em}.markup h6{font-size:.85em;color:var(--color-text-light-2)}.markup p,.markup blockquote,.markup details,.markup ul,.markup ol,.markup dl,.markup table,.markup pre{margin-top:0;margin-bottom:16px}.markup hr{height:4px;padding:0;margin:16px 0;background-color:var(--color-secondary);border:0}.markup ul,.markup ol{padding-left:2em}.markup ul.no-list,.markup ol.no-list{padding:0;list-style-type:none}.markup .task-list-item{list-style-type:none}.markup .task-list-item p+ul{margin-top:16px}.markup .task-list-item input[type=checkbox]{margin:0 .3em .25em -1.4em;vertical-align:middle;padding:0}.markup .task-list-item input[type=checkbox]+p{margin-left:-.2em;display:inline}.markup .task-list-item>p{margin-inline:16px}.markup .task-list-item+.task-list-item{margin-top:4px}.markup input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;border:1px solid var(--color-secondary);border-radius:var(--border-radius);background:var(--color-input-background);height:14px;width:14px;opacity:1!important;pointer-events:auto!important;vertical-align:middle!important;-webkit-print-color-adjust:exact;color-adjust:exact}.markup input[type=checkbox]:not([disabled]):hover,.markup input[type=checkbox]:not([disabled]):active{border-color:var(--color-primary)}.markup input[type=checkbox]:after{position:absolute;inset:0;pointer-events:none;background:var(--color-text);mask-size:cover;-webkit-mask-size:cover}.markup input[type=checkbox]:checked:after{content:"";mask-image:var(--checkbox-mask-checked);-webkit-mask-image:var(--checkbox-mask-checked);-webkit-print-color-adjust:exact;color-adjust:exact}.markup input[type=checkbox]:indeterminate:after{content:"";mask-image:var(--checkbox-mask-indeterminate);-webkit-mask-image:var(--checkbox-mask-indeterminate)}.markup ul ul,.markup ul ol,.markup ol ol,.markup ol ul{margin-top:0;margin-bottom:0}.markup ol ol,.markup ul ol{list-style-type:lower-roman}.markup li>p{margin-top:16px}.markup li+li{margin-top:.25em}.markup dl{padding:0}.markup dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:var(--font-weight-semibold)}.markup dl dd{padding:0 16px;margin-bottom:16px}.markup blockquote{margin-left:0;padding:0 15px;color:var(--color-text-light-2);border-left:.25em solid var(--color-secondary)}.markup blockquote>:first-child{margin-top:0}.markup blockquote>:last-child{margin-bottom:0}.markup table{display:block;width:100%;width:max-content;max-width:100%;overflow:auto}.markup table th{font-weight:var(--font-weight-semibold)}.markup table th,.markup table td{padding:6px 13px!important;border:1px solid var(--color-secondary)!important}.markup table tr{border-top:1px solid var(--color-secondary)}.markup table tr:nth-child(2n){background-color:var(--color-markup-table-row)}.markup img,.markup video{max-width:100%;box-sizing:initial}.markup.file-view img,.markup.file-view video,.comment-body .markup img,.comment-body .markup video,.comment-content .markup img,.comment-content .markup video,.wiki .markup img,.wiki .markup video{background:var(--color-box-body)}.markup img[align=right],.markup video[align=right]{padding-left:20px}.markup img[align=left],.markup video[align=left]{padding-right:28px}.markup .emoji{max-width:none;vertical-align:text-top}.markup span.frame{display:block;overflow:hidden}.markup span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid var(--color-secondary)}.markup span.frame span img,.markup span.frame span video{display:block;float:left}.markup span.frame span span{display:block;padding:5px 0 0;clear:both;color:var(--color-text)}.markup span.align-center{display:block;overflow:hidden;clear:both}.markup span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.markup span.align-center span img,.markup span.align-center span video{margin:0 auto;text-align:center}.markup span.align-right{display:block;overflow:hidden;clear:both}.markup span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.markup span.align-right span img,.markup span.align-right span video{margin:0;text-align:right}.markup span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.markup span.float-left span{margin:13px 0 0}.markup span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.markup span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.markup code,.markup tt{padding:.2em .4em;margin:0;font-size:85%;white-space:break-spaces;background-color:var(--color-markup-code-inline);border-radius:var(--border-radius)}.markup code br,.markup tt br{display:none}.markup del code{text-decoration:inherit}.markup pre>code{padding:0;margin:0;font-size:100%;white-space:pre-wrap;word-break:break-all;overflow-wrap:break-word;background:transparent;border:0}.markup .highlight{margin-bottom:16px}.markup .highlight pre,.markup pre{padding:16px;font-size:85%;line-height:1.45;background-color:var(--color-markup-code-block);border-radius:var(--border-radius)}.markup .highlight pre{margin-bottom:0;word-break:normal}.markup pre{word-wrap:normal}.markup pre code,.markup pre tt{display:inline;padding:0;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.markup pre code:before,.markup pre code:after,.markup pre tt:before,.markup pre tt:after{content:normal}.markup kbd{display:inline-block;padding:3px 5px;font-size:11px;line-height:10px;color:var(--color-text-light);vertical-align:middle;background-color:var(--color-markup-code-inline);border:1px solid var(--color-secondary);border-radius:var(--border-radius);box-shadow:inset 0 -1px 0 var(--color-secondary)}.markup .ui.list .list,.markup ol.ui.list ol,.markup ul.ui.list ul{padding-left:2em}.file-revisions-btn{display:block;float:left;margin-bottom:2px!important;padding:11px!important;margin-right:10px!important}.file-revisions-btn i{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.markup-render{display:block;border:none;width:100%;height:var(--height-loading);overflow:hidden;color-scheme:normal}.markup-block-error{display:block!important;border:none!important;margin-bottom:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;box-shadow:none!important;font-size:85%!important;white-space:pre-wrap!important;padding:.5rem 1rem!important;text-align:left!important}.markup-block-error+pre{border-top:none!important;margin-top:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important}.file-view.markup.orgmode li.unchecked:before{content:"[ ] "}.file-view.markup.orgmode li.checked:before{content:"[x] "}.file-view.markup.orgmode li.indeterminate:before{content:"[-] "}.file-view.markup.orgmode li.unchecked>p,.file-view.markup.orgmode li.checked>p,.file-view.markup.orgmode li.indeterminate>p{display:inline-block}.markup .code-block,.markup .mermaid-block{position:relative}.markup .code-copy{position:absolute;top:8px;right:6px;padding:9px;visibility:hidden;animation:fadeout .2s both}.repository.view.issue .comment-list .comment .markup .code-copy{right:5px;padding:8px}.markup .code-copy:hover{background:var(--color-secondary)!important}.markup .code-copy:active{background:var(--color-secondary-dark-1)!important}.markup .code-block:hover .code-copy,.markup .mermaid-block:hover .code-copy{visibility:visible;animation:fadein .2s both}.markup .code-preview-container{border:1px solid var(--color-secondary);border-radius:var(--border-radius);margin:.25em 0}.markup .code-preview-container .code-preview-header{border-bottom:1px solid var(--color-secondary);padding:.5em;font-size:12px}.markup .code-preview-container table{width:100%;max-height:240px;overflow-y:auto;margin:0}.markup p:empty:has(+.code-preview-container){display:none}.markup .code-preview-container table tr{border:0!important}.markup .code-preview-container table th,.markup .code-preview-container table td{border:0!important;padding:0 0 0 5px!important}.markup .code-preview-container table tr:nth-child(2n){background:none!important}.asciinema-player-container{width:100%;height:auto}.ap-terminal{overflow:hidden!important}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block}.chroma .hl{display:block;width:100%}.chroma .lnt,.chroma .ln{margin-right:.4em;padding:0 .4em}.chroma .gs{font-weight:var(--font-weight-semibold)}.chroma .gl{text-decoration:underline}.ui .field:not(:last-child) .EasyMDEContainer .editor-statusbar{margin-bottom:-1em}.EasyMDEContainer .CodeMirror{color:var(--color-input-text);background-color:var(--color-input-background);border-color:var(--color-secondary);font:14px var(--fonts-monospace)}.EasyMDEContainer .CodeMirror.cm-s-default{border-radius:var(--border-radius);padding:0!important}.EasyMDEContainer .CodeMirror.CodeMirror-fullscreen.CodeMirror-focused{border-right:1px solid var(--color-primary)!important}.CodeMirror-cursor{border-color:var(--color-caret)!important}.CodeMirror .cm-comment{background:inherit!important}.CodeMirror .CodeMirror-code{font:14px var(--fonts-monospace)}.CodeMirror-selected{background:var(--color-primary-light-1)!important;color:var(--color-white)!important}.CodeMirror-placeholder{color:var(--color-placeholder-text)!important;opacity:1!important}.CodeMirror-focused{border-color:var(--color-primary)!important}.CodeMirror :focus{outline:none}:root :lang(ja){--fonts-override: var(--fonts-default-override-ja)}:root :lang(zh-CN){--fonts-override: var(--fonts-default-override-zh-cn)}:root :lang(zh-TW){--fonts-override: var(--fonts-default-override-zh-tw)}:root :lang(zh-HK){--fonts-override: var(--fonts-default-override-zh-hk)}:root :lang(ko){--fonts-override: var(--fonts-default-override-ko)}[lang]{font-family:var(--fonts-regular)}:root{--fonts-default-override-ja: system-ui-ja, var(--fonts-proportional);--fonts-default-override-zh-cn: system-ui-zh-cn, var(--fonts-proportional);--fonts-default-override-zh-tw: system-ui-zh-tw, var(--fonts-proportional);--fonts-default-override-zh-hk: system-ui-zh-hk, var(--fonts-proportional);--fonts-default-override-ko: system-ui-ko, var(--fonts-proportional)}@supports (-moz-appearance: none){:root{--fonts-default-override-ja: var(--fonts-proportional), system-ui-ja;--fonts-default-override-zh-cn: var(--fonts-proportional), system-ui-zh-cn;--fonts-default-override-zh-tw: var(--fonts-proportional), system-ui-zh-tw;--fonts-default-override-zh-hk: var(--fonts-proportional), system-ui-zh-hk;--fonts-default-override-ko: var(--fonts-proportional), system-ui-ko}}@font-face{font-family:system-ui-ja;src:local("HiraKakuProN-W3"),local("Hiragino Kaku Gothic ProN W3"),local("HiraginoSans-W2"),local("Source Han Sans JP Light"),local("SourceHanSansJP-Light"),local("Source Han Sans J Light"),local("SourceHanSansJ-Light"),local("Noto Sans CJK JP Light"),local("NotoSansCJKJP-Light"),local("Source Han Sans Light"),local("SourceHanSans-Light"),local("Yu Gothic Regular"),local("YuGothic Regular"),local("Droid Sans Japanese"),local("Meiryo"),local("MS PGothic");font-weight:300;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-ja;src:local("HiraKakuProN-W3"),local("Hiragino Kaku Gothic ProN W3"),local("HiraginoSans-W4"),local("Source Han Sans JP Regular"),local("SourceHanSansJP-Regular"),local("Source Han Sans J Regular"),local("SourceHanSansJ-Regular"),local("Noto Sans CJK JP Regular"),local("NotoSansCJKJP-Regular"),local("Source Han Sans Regular"),local("SourceHanSans-Regular"),local("Yu Gothic Medium"),local("YuGothic Medium"),local("Droid Sans Japanese"),local("Meiryo"),local("MS PGothic");font-weight:400;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-ja;src:local("HiraKakuProN-W3"),local("Hiragino Kaku Gothic ProN W3"),local("HiraginoSans-W5"),local("Source Han Sans JP Medium"),local("SourceHanSansJP-Medium"),local("Source Han Sans J Medium"),local("SourceHanSansJ-Medium"),local("Noto Sans CJK JP Medium"),local("NotoSansCJKJP-Medium"),local("Source Han Sans Medium"),local("SourceHanSans-Medium"),local("Yu Gothic Medium"),local("YuGothic Medium"),local("Droid Sans Japanese"),local("Meiryo"),local("MS PGothic");font-weight:500;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-ja;src:local("HiraKakuProN-W6"),local("Hiragino Kaku Gothic ProN W6"),local("HiraginoSans-W6"),local("Source Han Sans JP Bold"),local("SourceHanSansJP-Bold"),local("Source Han Sans J Bold"),local("SourceHanSansJ-Bold"),local("Noto Sans CJK JP Bold"),local("NotoSansCJKJP-Bold"),local("Source Han Sans Bold"),local("SourceHanSans-Bold"),local("Yu Gothic Bold"),local("YuGothic Bold"),local("Droid Sans Japanese"),local("Meiryo Bold"),local("MS PGothic");font-weight:600;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-ja;src:local("HelveticaNeue");unicode-range:U+A0}@supports not (-webkit-hyphens: none){@font-face{font-family:system-ui-ja;src:local("HelveticaNeue");unicode-range:U+20}}@font-face{font-family:system-ui-zh-cn;src:local("PingFangSC-Light"),local("Source Han Sans CN Light"),local("SourceHanSansCN-Light"),local("Source Han Sans SC Light"),local("SourceHanSansSC-Light"),local("Noto Sans CJK SC Light"),local("NotoSansCJKSC-Light"),local("HiraginoSansGB-W3"),local("Hiragino Sans GB W3"),local("Microsoft YaHei Light"),local("Heiti SC Light"),local("SimHei");font-weight:300;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-cn;src:local("PingFangSC-Regular"),local("Source Han Sans CN Regular"),local("SourceHanSansCN-Regular"),local("Source Han Sans SC Regular"),local("SourceHanSansSC-Regular"),local("Noto Sans CJK SC Regular"),local("NotoSansCJKSC-Regular"),local("HiraginoSansGB-W3"),local("Hiragino Sans GB W3"),local("Microsoft YaHei"),local("Heiti SC Light"),local("SimHei");font-weight:400;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-cn;src:local("PingFangSC-Medium"),local("Source Han Sans CN Medium"),local("SourceHanSansCN-Medium"),local("Source Han Sans SC Medium"),local("SourceHanSansSC-Medium"),local("Noto Sans CJK SC Medium"),local("NotoSansCJKSC-Medium"),local("HiraginoSansGB-W3"),local("Hiragino Sans GB W3"),local("Microsoft YaHei"),local("Heiti SC Light"),local("SimHei");font-weight:500;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-cn;src:local("PingFangSC-Semibold"),local("Source Han Sans CN Bold"),local("SourceHanSansCN-Bold"),local("Source Han Sans SC Bold"),local("SourceHanSansSC-Bold"),local("Noto Sans CJK SC Bold"),local("NotoSansCJKSC-Bold"),local("HiraginoSansGB-W6"),local("Hiragino Sans GB W6"),local("Microsoft YaHei Bold"),local("Heiti SC Medium"),local("SimHei");font-weight:600;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-cn;src:local("HelveticaNeue");unicode-range:U+A0}@supports not (-webkit-hyphens: none){@font-face{font-family:system-ui-zh-cn;src:local("HelveticaNeue");unicode-range:U+20}}@font-face{font-family:system-ui-zh-tw;src:local("PingFangTC-Light"),local("Source Han Sans TW Light"),local("SourceHanSansTW-Light"),local("Source Han Sans TC Light"),local("SourceHanSansTC-Light"),local("Noto Sans CJK TC Light"),local("NotoSansCJKTC-Light"),local("HiraginoSansTC-W3"),local("Hiragino Sans TC W3"),local("Microsoft JhengHei Light"),local("Heiti TC Light"),local("PMingLiU");font-weight:300;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-tw;src:local("PingFangTC-Regular"),local("Source Han Sans TW Regular"),local("SourceHanSansTW-Regular"),local("Source Han Sans TC Regular"),local("SourceHanSansTC-Regular"),local("Noto Sans CJK TC Regular"),local("NotoSansCJKTC-Regular"),local("HiraginoSansTC-W3"),local("Hiragino Sans TC W3"),local("Microsoft JhengHei"),local("Heiti TC Light"),local("PMingLiU");font-weight:400;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-tw;src:local("PingFangTC-Medium"),local("Source Han Sans TW Medium"),local("SourceHanSansTW-Medium"),local("Source Han Sans TC Medium"),local("SourceHanSansTC-Medium"),local("Noto Sans CJK TC Medium"),local("NotoSansCJKTC-Medium"),local("HiraginoSansTC-W3"),local("Hiragino Sans TC W3"),local("Microsoft JhengHei"),local("Heiti TC Light"),local("PMingLiU");font-weight:500;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-tw;src:local("PingFangTC-Semibold"),local("Source Han Sans TW Bold"),local("SourceHanSansTW-Bold"),local("Source Han Sans TC Bold"),local("SourceHanSansTC-Bold"),local("Noto Sans CJK TC Bold"),local("NotoSansCJKTC-Bold"),local("HiraginoSansTC-W6"),local("Hiragino Sans TC W6"),local("Microsoft JhengHei Bold"),local("Heiti TC Medium"),local("PMingLiU");font-weight:600;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-tw;src:local("HelveticaNeue");unicode-range:U+A0}@supports not (-webkit-hyphens: none){@font-face{font-family:system-ui-zh-tw;src:local("HelveticaNeue");unicode-range:U+20}}@font-face{font-family:system-ui-zh-hk;src:local("PingFangHK-Light"),local("Source Han Sans HK Light"),local("SourceHanSansHK-Light"),local("Source Han Sans HC Light"),local("SourceHanSansHC-Light"),local("Noto Sans CJK HK Light"),local("NotoSansCJKHK-Light"),local("Source Han Sans TC Light"),local("SourceHanSansTC-Light"),local("Noto Sans CJK TC Light"),local("NotoSansCJKTC-Light"),local("HiraginoSansTC-W3"),local("Hiragino Sans TC W3"),local("Microsoft JhengHei Light"),local("Heiti TC Light"),local("PMingLiU_HKSCS"),local("PMingLiU");font-weight:300;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-hk;src:local("PingFangHK-Regular"),local("Source Han Sans HK Regular"),local("SourceHanSansHK-Regular"),local("Source Han Sans HC Regular"),local("SourceHanSansHC-Regular"),local("Noto Sans CJK HK Regular"),local("NotoSansCJKHK-Regular"),local("Source Han Sans TC Regular"),local("SourceHanSansTC-Regular"),local("Noto Sans CJK TC Regular"),local("NotoSansCJKTC-Regular"),local("HiraginoSansTC-W3"),local("Hiragino Sans TC W3"),local("Microsoft JhengHei"),local("Heiti TC Light"),local("PMingLiU_HKSCS"),local("PMingLiU");font-weight:400;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-hk;src:local("PingFangHK-Medium"),local("Source Han Sans HK Medium"),local("SourceHanSansHK-Medium"),local("Source Han Sans HC Medium"),local("SourceHanSansHC-Medium"),local("Noto Sans CJK HK Medium"),local("NotoSansCJKHK-Medium"),local("Source Han Sans TC Medium"),local("SourceHanSansTC-Medium"),local("Noto Sans CJK TC Medium"),local("NotoSansCJKTC-Medium"),local("HiraginoSansTC-W3"),local("Hiragino Sans TC W3"),local("Microsoft JhengHei"),local("Heiti TC Light"),local("PMingLiU_HKSCS"),local("PMingLiU");font-weight:500;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-hk;src:local("PingFangHK-Semibold"),local("Source Han Sans HK Bold"),local("SourceHanSansHK-Bold"),local("Source Han Sans HC Bold"),local("SourceHanSansHC-Bold"),local("Noto Sans CJK HK Bold"),local("NotoSansCJKHK-Bold"),local("Source Han Sans TC Bold"),local("SourceHanSansTC-Bold"),local("Noto Sans CJK TC Bold"),local("NotoSansCJKTC-Bold"),local("HiraginoSansTC-W6"),local("Hiragino Sans TC W6"),local("Microsoft JhengHei Bold"),local("Heiti TC Medium"),local("PMingLiU_HKSCS"),local("PMingLiU");font-weight:600;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-zh-hk;src:local("HelveticaNeue");unicode-range:U+A0}@supports not (-webkit-hyphens: none){@font-face{font-family:system-ui-zh-hk;src:local("HelveticaNeue");unicode-range:U+20}}@font-face{font-family:system-ui-ko;src:local("AppleSDGothicNeo-Light"),local("Source Han Sans KR Light"),local("SourceHanSansKR-Light"),local("Source Han Sans K Light"),local("SourceHanSansK-Light"),local("Noto Sans CJK KR Light"),local("NotoSansCJKKR-Light"),local("NanumBarunGothic Light"),local("Malgun Gothic Semilight"),local("Nanum Gothic"),local("Dotum");font-weight:300;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-ko;src:local("AppleSDGothicNeo-Regular"),local("Source Han Sans KR Regular"),local("SourceHanSansKR-Regular"),local("Source Han Sans K Regular"),local("SourceHanSansK-Regular"),local("Noto Sans CJK KR Regular"),local("NotoSansCJKKR-Regular"),local("NanumBarunGothic"),local("Malgun Gothic"),local("Nanum Gothic"),local("Dotum");font-weight:400;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-ko;src:local("AppleSDGothicNeo-Medium"),local("Source Han Sans KR Medium"),local("SourceHanSansKR-Medium"),local("Source Han Sans K Medium"),local("SourceHanSansK-Medium"),local("Noto Sans CJK KR Medium"),local("NotoSansCJKKR-Medium"),local("NanumBarunGothic"),local("Malgun Gothic"),local("Nanum Gothic"),local("Dotum");font-weight:500;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-ko;src:local("AppleSDGothicNeo-SemiBold"),local("Source Han Sans KR Bold"),local("SourceHanSansKR-Bold"),local("Source Han Sans K Bold"),local("SourceHanSansK-Bold"),local("Noto Sans CJK KR Bold"),local("NotoSansCJKKR-Bold"),local("NanumBarunGothic Bold"),local("Malgun Gothic Bold"),local("Nanum Gothic Bold"),local("Dotum");font-weight:600;unicode-range:U+11??,U+2E80-4DBF,U+4E00-9FFF,U+A960-A97F,U+AC00-D7FF,U+F900-FAFF,U+FE00-FE6F,U+FF00-FFEF,U+1F2??,U+2????}@font-face{font-family:system-ui-ko;src:local("HelveticaNeue");unicode-range:U+A0}@supports not (-webkit-hyphens: none){@font-face{font-family:system-ui-ko;src:local("HelveticaNeue");unicode-range:U+20}}:root{--fonts-proportional: -apple-system, "Segoe UI", system-ui, Roboto, "Helvetica Neue", Arial;--fonts-monospace: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace, var(--fonts-emoji);--fonts-emoji: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Twemoji Mozilla";--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-default: normal;--checkbox-mask-checked: url('data:image/svg+xml;utf8,');--checkbox-mask-indeterminate: url('data:image/svg+xml;utf8,');--octicon-chevron-right: url('data:image/svg+xml;utf8,');--border-radius: 4px;--border-radius-medium: 6px;--border-radius-full: 99999px;--opacity-disabled: .55;--height-loading: 16rem;--min-height-textarea: 132px;--tab-size: 4;--checkbox-size: 15px;--page-spacing: 16px;--page-margin-x: 32px}@media (min-width: 768px) and (max-width: 1200px){:root{--page-margin-x: 16px}}@media (max-width: 767.98px){:root{--page-margin-x: 8px}}:root *{--fonts-regular: var(--fonts-override, var(--fonts-proportional)), "Noto Sans", "Liberation Sans", sans-serif, var(--fonts-emoji)}*,:before,:after{border-width:0;border-style:solid;border-color:currentcolor}html,body{height:100%;font-size:14px}body{line-height:20px;font-family:var(--fonts-regular);color:var(--color-text);background-color:var(--color-body);tab-size:var(--tab-size);display:flex;flex-direction:column;overflow-x:visible;overflow-wrap:break-word}textarea{font-family:var(--fonts-regular)}pre,code,kbd,samp{font-family:var(--fonts-monospace)}pre,code,kbd,samp,.tw-font-mono{font-size:.95em}b,strong,h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold)}h1,h2,h3,h4,h5{line-height:1.28571429;margin:calc(2rem - .1428571428571429em) 0 1rem;font-weight:var(--font-weight-medium);padding:0}h1{min-height:1rem;font-size:2rem}h2{font-size:1.71428571rem}h3{font-size:1.28571429rem}h4{font-size:1.07142857rem}h5{font-size:1rem}h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child{margin-top:0}h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child{margin-bottom:0}p{margin:0 0 1em;line-height:1.4285}p:first-child{margin-top:0}p:last-child{margin-bottom:0}table{border-collapse:collapse}button{cursor:pointer}details summary{cursor:pointer}details summary>*{display:inline}progress{background:var(--color-secondary-dark-1);border-radius:var(--border-radius);border:none;overflow:hidden}progress::-webkit-progress-bar{background:var(--color-secondary-dark-1)}progress::-webkit-progress-value{background-color:var(--color-accent)}progress::-moz-progress-bar{background-color:var(--color-accent)}*{caret-color:var(--color-caret)}::file-selector-button{border:1px solid var(--color-light-border);color:var(--color-text-light);background:var(--color-light);border-radius:var(--border-radius)}::file-selector-button:hover{color:var(--color-text);background:var(--color-hover)}::selection{background:var(--color-primary-light-1);color:var(--color-white)}::placeholder,.ui.dropdown:not(.button)>.default.text,.ui.default.dropdown:not(.button)>.text{color:var(--color-placeholder-text)!important;opacity:1!important}.unselectable,.button,.lines-num,.lines-commit,.lines-commit .blame-info,.ellipsis-button{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}a{color:var(--color-primary);cursor:pointer;text-decoration-line:none;text-decoration-skip-ink:all}a:hover{text-decoration-line:underline}a.muted,a.suppressed,a.silenced,.muted-links a{color:inherit}a:hover,a.suppressed:hover,a.muted:hover,a.muted:hover [class*=color-text],.muted-links a:hover{color:var(--color-primary)}a.silenced:hover,a.suppressed:hover{color:inherit}a.silenced:hover{text-decoration-line:none}a.label,.ui.search .results a,.ui .menu a,.ui.cards a.card,.issue-keyword a{text-decoration-line:none!important}.ui.search>.results{background:var(--color-body);border-color:var(--color-secondary);overflow-wrap:anywhere}.ui.search>.results .result{background:var(--color-body);border-color:var(--color-secondary);display:flex;align-items:center}.ui.search>.results .result .title{color:var(--color-text-dark)}.ui.search>.results .result .description{color:var(--color-text-light-2)}.ui.search>.results .result .image{width:auto;height:auto}.ui.search>.results .result:hover,.ui.category.search>.results .category .result:hover{background:var(--color-hover)}.inline-code-block{padding:2px 4px;border-radius:.24em;background-color:var(--color-label-bg)}.ui.menu .dropdown.item:hover,.ui.menu a.item:hover,.ui.menu details.item summary:hover{color:var(--color-text);background:var(--color-hover)}.ui.ui.menu .dropdown.item.disabled{color:var(--color-text-light-2)}.ui.dropdown .menu{background:var(--color-menu);border-color:var(--color-secondary)}.ui.dropdown .menu>.header:not(.ui){color:var(--color-text)}.ui.dropdown .menu>.item{color:var(--color-text)}.ui.dropdown .menu>.item:hover{color:var(--color-text);background:var(--color-hover)}.ui.dropdown .menu>.item:active{color:var(--color-text);background:var(--color-active)}.ui.dropdown .menu .active.item{color:var(--color-text);background:var(--color-active);border-radius:0;font-weight:var(--font-weight-normal)}.ui.dropdown .menu>.item>img{margin-top:-.25rem;margin-bottom:-.25rem}.ui.dropdown .menu>.item>svg{margin-right:.78rem}.ui.selection.dropdown .menu>.item{border-color:var(--color-secondary)}.ui.selection.visible.dropdown>.text:not(.default){color:var(--color-text)}.ui.dropdown.selected,.ui.dropdown .menu .selected.item{color:var(--color-text);background:var(--color-hover)}.ui.dropdown .menu>.message:not(.ui){color:var(--color-text-light-2)}.ui.dropdown>.text>.img{margin-left:0;float:none;margin-right:.78571429rem}.ui.dropdown>.text>.description,.ui.dropdown .menu>.item>.description{color:var(--color-text-light-2)}.ui.form textarea:not([rows]){height:var(--min-height-textarea);min-height:var(--min-height-textarea)}.hidden.transition{visibility:hidden;display:none}.visible.transition{display:block!important;visibility:visible!important}.ui.selection.active.dropdown,.ui.selection.active.dropdown:hover,.ui.selection.active.dropdown .menu,.ui.selection.active.dropdown:hover .menu{border-color:var(--color-primary)}.ui.pointing.dropdown>.menu:not(.hidden):after{background:var(--color-menu);box-shadow:-1px -1px 0 0 var(--color-secondary)}.ui.pointing.upward.dropdown .menu:after,.ui.top.pointing.upward.dropdown .menu:after{box-shadow:1px 1px 0 0 var(--color-secondary)}.ui.comments .comment .text{margin:0}.ui.comments .comment .text,.ui.comments .comment .author{color:var(--color-text)}.ui.comments .comment a.author:hover{color:var(--color-primary)}.ui.comments .comment .metadata{color:var(--color-text-light-2)}.ui.comments .comment .actions a{color:var(--color-text-light)}.ui.comments .comment .actions a.active,.ui.comments .comment .actions a:hover{color:var(--color-primary)}img.ui.avatar,.ui.avatar img,.ui.avatar svg{border-radius:var(--border-radius);object-fit:contain;aspect-ratio:1}.ui.error.message .header,.ui.warning.message .header{color:inherit;filter:saturate(2)}.full.height{flex-grow:1;padding-bottom:80px}.page-content>:first-child.secondary-nav{margin-bottom:14px}.page-content>:first-child:not(.secondary-nav){margin-top:var(--page-spacing)}.page-content>:first-child.ui.grid{margin-top:calc(var(--page-spacing) - 1rem)}.ui.form .fields.error .field textarea,.ui.form .fields.error .field select,.ui.form .fields.error .field input:not([type]),.ui.form .fields.error .field input[type=date],.ui.form .fields.error .field input[type=datetime-local],.ui.form .fields.error .field input[type=email],.ui.form .fields.error .field input[type=number],.ui.form .fields.error .field input[type=password],.ui.form .fields.error .field input[type=search],.ui.form .fields.error .field input[type=tel],.ui.form .fields.error .field input[type=time],.ui.form .fields.error .field input[type=text],.ui.form .fields.error .field input[type=file],.ui.form .fields.error .field input[type=url],.ui.form .fields.error .field .ui.dropdown,.ui.form .fields.error .field .ui.dropdown .item,.ui.form .field.error .ui.dropdown,.ui.form .field.error .ui.dropdown .text,.ui.form .field.error .ui.dropdown .item,.ui.form .field.error textarea,.ui.form .field.error select,.ui.form .field.error input:not([type]),.ui.form .field.error input[type=date],.ui.form .field.error input[type=datetime-local],.ui.form .field.error input[type=email],.ui.form .field.error input[type=number],.ui.form .field.error input[type=password],.ui.form .field.error input[type=search],.ui.form .field.error input[type=tel],.ui.form .field.error input[type=time],.ui.form .field.error input[type=text],.ui.form .field.error input[type=file],.ui.form .field.error input[type=url],.ui.form .field.error select:focus,.ui.form .field.error input:not([type]):focus,.ui.form .field.error input[type=date]:focus,.ui.form .field.error input[type=datetime-local]:focus,.ui.form .field.error input[type=email]:focus,.ui.form .field.error input[type=number]:focus,.ui.form .field.error input[type=password]:focus,.ui.form .field.error input[type=search]:focus,.ui.form .field.error input[type=tel]:focus,.ui.form .field.error input[type=time]:focus,.ui.form .field.error input[type=text]:focus,.ui.form .field.error input[type=file]:focus,.ui.form .field.error input[type=url]:focus{background-color:var(--color-error-bg);border-color:var(--color-error-border);color:var(--color-error-text)}.ui.form .fields.error .field .ui.dropdown,.ui.form .field.error .ui.dropdown,.ui.form .fields.error .field .ui.dropdown:hover,.ui.form .field.error .ui.dropdown:hover{border-color:var(--color-error-border)!important}.ui.form .fields.error .field .ui.dropdown .menu .item:hover,.ui.form .field.error .ui.dropdown .menu .item:hover{background-color:var(--color-error-bg-hover)}.ui.form .fields.error .field .ui.dropdown .menu .active.item,.ui.form .field.error .ui.dropdown .menu .active.item{background-color:var(--color-error-bg-active)!important}.ui.form .fields.error .dropdown .menu,.ui.form .field.error .dropdown .menu{border-color:var(--color-error-border)!important}input:-webkit-autofill,input:-webkit-autofill:focus,input:-webkit-autofill:hover,input:-webkit-autofill:active,.ui.form .field.field input:-webkit-autofill,.ui.form .field.field input:-webkit-autofill:focus,.ui.form .field.field input:-webkit-autofill:hover,.ui.form .field.field input:-webkit-autofill:active{-webkit-background-clip:text;-webkit-text-fill-color:var(--color-text);box-shadow:0 0 0 100px var(--color-primary-light-6) inset!important;border-color:var(--color-primary-light-4)!important}.ui.form .field.muted{opacity:var(--opacity-disabled)}.text.primary{color:var(--color-primary)!important}.text.red{color:var(--color-red)!important}.text.orange{color:var(--color-orange)!important}.text.yellow{color:var(--color-yellow)!important}.text.olive{color:var(--color-olive)!important}.text.green{color:var(--color-green)!important}.text.teal{color:var(--color-teal)!important}.text.blue{color:var(--color-blue)!important}.text.violet{color:var(--color-violet)!important}.text.purple{color:var(--color-purple)!important}.text.pink{color:var(--color-pink)!important}.text.brown{color:var(--color-brown)!important}.text.black{color:var(--color-text)!important}.text.grey,.text.light{color:var(--color-text-light)!important}.text.light-2{color:var(--color-text-light-2)!important}.text.light-3{color:var(--color-text-light-3)!important}.text.light.grey{color:var(--color-grey-light)!important}.text.gold{color:var(--color-gold)!important}.text.small{font-size:.75em}.ui.dropdown .menu,.ui.upward.dropdown>.menu,.ui.menu .dropdown.item .menu,.ui.selection.active.dropdown .menu,.ui.upward.selection.dropdown .menu,.ui.selection.active.dropdown:hover .menu,.ui.upward.active.selection.dropdown:hover .menu{box-shadow:0 6px 18px var(--color-shadow)}.ui.floating.dropdown .menu{box-shadow:0 6px 18px var(--color-shadow)!important}.ui.dimmer{background:var(--color-overlay-backdrop)}.ui.dropdown .menu>.header{font-size:.8em}.ui .text.left{text-align:left!important}.ui .text.right{text-align:right!important}.ui .text.truncate{overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.ui .message.flash-message{text-align:center}.ui .message>ul{margin-left:auto;margin-right:auto;display:table;text-align:left}.ui .header>i+.content{padding-left:.75rem;vertical-align:middle}.ui .form .autofill-dummy{position:absolute;width:1px;height:1px;overflow:hidden;z-index:-10000}.ui .form .sub.field{margin-left:25px}.ui .sha.label{font-family:var(--fonts-monospace);font-size:13px;font-weight:var(--font-weight-normal);margin:0 6px;padding:5px 10px;flex-shrink:0}.ui .sha.label .shortsha{display:inline-block}.ui .button.truncate{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:top;white-space:nowrap;margin-right:6px}.ui.status.buttons .svg{margin-right:4px}.ui.inline.delete-button{padding:8px 15px;font-weight:var(--font-weight-normal)}.ui .background.red{background-color:var(--color-red)!important}.ui .background.blue{background-color:var(--color-blue)!important}.ui .background.black{background-color:var(--color-black)!important}.ui .background.grey,.ui .background.light.grey{background-color:var(--color-grey)!important}.ui .background.green{background-color:var(--color-green)!important}.ui .background.purple{background-color:var(--color-purple)!important}.ui .background.yellow{background-color:var(--color-yellow)!important}.ui .background.orange{background-color:var(--color-orange)!important}.ui .background.gold{background-color:var(--color-gold)!important}.ui .migrate{color:var(--color-text-light-2)!important}.ui .migrate a{color:var(--color-text-light)!important}.ui .migrate a:hover{color:var(--color-text)!important}.ui .border{border:1px solid}.ui .border.red{border-color:var(--color-red)!important}.ui .border.blue{border-color:var(--color-blue)!important}.ui .border.black{border-color:var(--color-black)!important}.ui .border.grey,.ui .border.light.grey{border-color:var(--color-grey)!important}.ui .border.green{border-color:var(--color-green)!important}.ui .border.purple{border-color:var(--color-purple)!important}.ui .border.yellow{border-color:var(--color-yellow)!important}.ui .border.orange{border-color:var(--color-orange)!important}.ui .border.gold{border-color:var(--color-gold)!important}.ui.floating.dropdown .overflow.menu .scrolling.menu.items{border-radius:0!important;box-shadow:none!important;border-bottom:1px solid var(--color-secondary)}.user-menu>.item{width:100%;border-radius:0!important}.scrolling.menu .item.selected{font-weight:var(--font-weight-semibold)!important}.ui.dropdown .scrolling.menu{border-color:var(--color-secondary);border-radius:0 0 var(--border-radius) var(--border-radius)!important}.color-preview{display:inline-block;margin-left:.4em;height:.67em;width:.67em;border-radius:var(--border-radius)}.attention-icon{margin:2px 6px 0 0}blockquote.attention-note{border-left-color:var(--color-blue-dark-1)}strong.attention-note,svg.attention-note{color:var(--color-blue-dark-1)}blockquote.attention-tip{border-left-color:var(--color-success-text)}strong.attention-tip,svg.attention-tip{color:var(--color-success-text)}blockquote.attention-important{border-left-color:var(--color-violet-dark-1)}strong.attention-important,svg.attention-important{color:var(--color-violet-dark-1)}blockquote.attention-warning{border-left-color:var(--color-warning-text)}strong.attention-warning,svg.attention-warning{color:var(--color-warning-text)}blockquote.attention-caution{border-left-color:var(--color-red-dark-1)}strong.attention-caution,svg.attention-caution{color:var(--color-red-dark-1)}.center:not(.popup){text-align:center}overflow-menu{border-bottom:1px solid var(--color-secondary)!important;display:flex}overflow-menu .overflow-menu-items{display:flex;flex:1}overflow-menu .overflow-menu-items .item{margin-bottom:0!important}overflow-menu .overflow-menu-items .item-flex-space{flex:1}overflow-menu .overflow-menu-button{background:transparent;border:none;color:inherit;text-align:center;width:32px;padding:0}overflow-menu .overflow-menu-button:hover{color:var(--color-text-dark)}overflow-menu .ui.label{margin-left:7px!important}.activity-bar-graph{background-color:var(--color-primary);color:var(--color-primary-contrast)}.activity-bar-graph-alt{color:var(--color-primary-contrast)}.archived-icon{color:var(--color-secondary-dark-2)!important}.oauth2-authorize-application-box{margin-top:3em!important}.inline-grouped-list{display:inline-block;vertical-align:top}.inline-grouped-list>.ui{display:block;margin-top:5px;margin-bottom:10px}.inline-grouped-list>.ui:first-child{margin-top:1px}.lines-blame-btn{padding:0 0 0 5px;display:flex;justify-content:center}.lines-num{padding:0 8px;text-align:right!important;color:var(--color-text-light-2);width:1%;min-width:72px;white-space:nowrap}.code-diff .lines-num{min-width:50px}.lines-num span.bottom-line:after{border-bottom:1px solid var(--color-secondary)}.lines-num span:after{content:attr(data-line-number);line-height:20px!important;padding:0 10px;display:block}.code-view .lines-num span:after{cursor:pointer}.lines-type-marker{vertical-align:top;white-space:nowrap}.lines-num,.lines-code{font-size:12px;font-family:var(--fonts-monospace);line-height:20px;padding-top:0;padding-bottom:0;vertical-align:top}.lines-num pre,.lines-code pre,.lines-num ol,.lines-code ol{background-color:inherit;margin:0;padding:0!important}.lines-num pre li,.lines-code pre li,.lines-num ol li,.lines-code ol li{display:block;width:calc(100% - 1ch);padding-left:1ch}.lines-escape{width:0;white-space:nowrap}.lines-code{padding-left:5px}.file-view tr.active{color:inherit!important;background:inherit!important}.file-view tr.active .lines-num,.file-view tr.active .lines-code{background:var(--color-highlight-bg)!important}.file-view tr.active:last-of-type .lines-code{border-bottom-right-radius:var(--border-radius)}.file-view tr.active .lines-num{position:relative}.file-view tr.active .lines-num:before{content:"";position:absolute;left:0;width:2px;height:100%;background:var(--color-highlight-fg)}.code-inner{font:12px var(--fonts-monospace);white-space:pre-wrap;word-break:break-all;overflow-wrap:anywhere;line-height:inherit}.blame .code-inner{white-space:pre-wrap;overflow-wrap:anywhere}.lines-commit{vertical-align:top;color:var(--color-text-light-1);padding:0!important;width:1%}.lines-commit .blame-info{width:min(26vw,300px);display:block;padding:0 0 0 6px;line-height:20px;box-sizing:content-box}.lines-commit .blame-info .blame-data{display:flex;font-family:var(--fonts-regular)}.lines-commit .blame-info .blame-data .blame-message{flex-grow:2;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lines-commit .blame-info .blame-data .blame-time,.lines-commit .blame-info .blame-data .blame-avatar{flex-shrink:0}.blame-avatar{display:flex;align-items:center;margin-right:4px}.top-line-blame{border-top:1px solid var(--color-secondary)}.code-view tr.top-line-blame:first-of-type{border-top:none}.lines-code .bottom-line,.lines-commit .bottom-line{border-bottom:1px solid var(--color-secondary)}.code-view{background:var(--color-code-bg);border-radius:var(--border-radius)}.code-view table{width:100%}.migrate .svg.gitea-git{color:var(--color-git)}.color-icon{display:inline-block;border-radius:var(--border-radius-full);height:14px;width:14px}.rss-icon{display:inline-flex;color:var(--color-text-light-1)}table th[data-sortt-asc]:hover,table th[data-sortt-desc]:hover{background:var(--color-hover)!important;cursor:pointer!important}table th[data-sortt-asc] .svg,table th[data-sortt-desc] .svg{margin-left:.25rem}.ui.dropdown .menu .item{border-radius:0}.ui.dropdown .menu .item:first-of-type{border-radius:var(--border-radius) var(--border-radius) 0 0}.ui.dropdown .menu .item:last-of-type{border-radius:0 0 var(--border-radius) var(--border-radius)}.ui.multiple.dropdown>.label{box-shadow:0 0 0 1px var(--color-secondary) inset}.emoji{font-size:1.25em;line-height:var(--line-height-default);font-style:normal!important;font-weight:var(--font-weight-normal)!important;vertical-align:-.075em}.emoji img{border-width:0!important;margin:0!important;width:1em!important;height:1em!important;vertical-align:-.15em}.ui.tabular.menu .item,.ui.secondary.pointing.menu .item{padding:11.55px 12px!important;color:var(--color-text-light-2)}.ui.tabular.menu .item:hover,.ui.secondary.pointing.menu a.item:hover{color:var(--color-text)}.ui.tabular.menu .active.item,.ui.secondary.pointing.menu .active.item,.resize-for-semibold:before{font-weight:var(--font-weight-semibold)}.resize-for-semibold:before{content:attr(data-text);visibility:hidden;display:block;height:0}.flash-error details code,.flash-warning details code{display:block;text-align:left}.truncated-item-container{display:flex!important;align-items:center}.ellipsis-button{padding:0 5px 8px!important;display:inline-block!important;font-weight:var(--font-weight-semibold)!important;line-height:6px!important;vertical-align:middle!important}.truncated-item-name{line-height:2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:-.5em;margin-bottom:-.5em}.precolors{display:flex;flex-direction:column;justify-content:center;margin-left:1em}.precolors .color{display:inline-block;width:15px;height:15px}.ui.dropdown:not(.button){line-height:var(--line-height-default)}.ui.dropdown.mini.button,.ui.dropdown.tiny.button{padding-right:20px}.ui.dropdown.button{padding-right:22px}.ui.dropdown.large.button{padding-right:24px}.ui.ui.dropdown>.icon.icon{position:initial;padding:0;margin:0;height:auto}.ui.ui.dropdown>.icon.icon:hover{opacity:1}.ui.ui.button.dropdown>.icon.icon,.ui.ui.selection.dropdown>.icon.icon{position:absolute;top:50%;transform:translateY(-50%)}.ui.ui.dropdown>.dropdown.icon{right:.5em}.ui.ui.dropdown>.remove.icon{right:2em}.btn,.ui.ui.button,.ui.ui.dropdown,.flex-text-inline{display:inline-flex;align-items:center;gap:.25rem;vertical-align:middle;min-width:0}.ui.ui.dropdown.selection{min-width:14em}.ui.dropdown .ui.label .svg{vertical-align:middle}.ui.ui.labeled.button{gap:0;align-items:stretch}.flex-items-block>.item,.flex-text-block{display:flex;align-items:center;gap:.25rem;min-width:0}.ui.dropdown .menu.flex-items-menu>.item{display:flex!important;align-items:center;gap:.5rem;min-width:0}.ui.dropdown.ellipsis-items-nowrap>.text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ellipsis-items-nowrap>.item,.ui.dropdown.ellipsis-items-nowrap .menu>.item{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.home .logo{max-width:220px}@media (max-width: 767.98px){.home .hero h1{font-size:3.5em}.home .hero h2{font-size:2em}}@media (min-width: 768px){.home .hero h1{font-size:5.5em}.home .hero h2{font-size:3em}}.home .hero .svg{color:var(--color-green);height:40px;width:50px;vertical-align:bottom}.home .hero.header{font-size:20px}.home p.large{font-size:16px}.home .stackable{padding-top:30px}.home a{color:var(--color-green)}.page-footer{display:flex;justify-content:space-between;background-color:var(--color-footer);border-top:1px solid var(--color-secondary);padding:8px 20px}.page-footer .left-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.25em}.page-footer .right-links{min-width:180px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center}.page-footer .right-links>a{border-left:1px solid var(--color-secondary-dark-1);padding-left:8px;margin-left:5px}.page-footer .ui.dropdown.language .menu{max-height:min(500px,calc(100vh - 60px));overflow-y:auto;margin-bottom:10px}@media (max-width: 880px){.page-footer{flex-direction:column;gap:.5em}}.page-content.install .install-config-container{max-width:900px;margin:auto}.page-content.install form.ui.form .inline.field>label{text-align:right;width:30%;padding-right:10px;margin-right:0}.page-content.install .ui.form .field>.help,.page-content.install .ui.form .field>.ui.checkbox:first-child,.page-content.install .ui.form .field>.right-content{margin-left:calc(30% + 5px);width:auto}.page-content.install form.ui.form input:not([type=checkbox],[type=radio]),.page-content.install form.ui.form .ui.selection.dropdown{width:60%}.page-content.install form.ui.form details.optional.field[open]{padding-bottom:10px}.page-content.install form.ui.form details.optional.field[open]:not(:last-child){border-bottom:1px dashed var(--color-secondary)}.page-content.install form.ui.form details.optional.field[open] summary{margin-bottom:10px}.page-content.install form.ui.form details.optional.field *{box-sizing:border-box}.page-content.install form.ui.form .field{text-align:left}.page-content.install .ui .reinstall-message{width:70%;margin:20px auto;color:var(--color-red);text-align:left;font-weight:var(--font-weight-semibold)}.page-content.install .ui .reinstall-confirm{width:70%;text-align:left;margin:10px auto}.ui.input textarea,.ui.form textarea,.ui.form input:not([type]),.ui.form input[type=date],.ui.form input[type=datetime-local],.ui.form input[type=email],.ui.form input[type=number],.ui.form input[type=password],.ui.form input[type=search],.ui.form input[type=tel],.ui.form input[type=time],.ui.form input[type=text],.ui.form input[type=file],.ui.form input[type=url]{transition:none}input,textarea,.ui.input>input,.ui.form input:not([type]),.ui.form select,.ui.form textarea,.ui.form input[type=date],.ui.form input[type=datetime-local],.ui.form input[type=email],.ui.form input[type=file],.ui.form input[type=number],.ui.form input[type=password],.ui.form input[type=search],.ui.form input[type=tel],.ui.form input[type=text],.ui.form input[type=time],.ui.form input[type=url],.ui.selection.dropdown{background:var(--color-input-background);border-color:var(--color-input-border);color:var(--color-input-text)}.ui.small.selection.dropdown{padding:.67857143em 1.6em .67857143em 1em}input:hover,textarea:hover,.ui.input input:hover,.ui.form input:not([type]):hover,.ui.form select:hover,.ui.form textarea:hover,.ui.form input[type=date]:hover,.ui.form input[type=datetime-local]:hover,.ui.form input[type=email]:hover,.ui.form input[type=file]:hover,.ui.form input[type=number]:hover,.ui.form input[type=password]:hover,.ui.form input[type=search]:hover,.ui.form input[type=tel]:hover,.ui.form input[type=text]:hover,.ui.form input[type=time]:hover,.ui.form input[type=url]:hover,.ui.selection.dropdown:hover{background:var(--color-input-background);border-color:var(--color-input-border-hover);color:var(--color-input-text)}input:focus,textarea:focus,.ui.input input:focus,.ui.form input:not([type]):focus,.ui.form select:focus,.ui.form textarea:focus,.ui.form input[type=date]:focus,.ui.form input[type=datetime-local]:focus,.ui.form input[type=email]:focus,.ui.form input[type=file]:focus,.ui.form input[type=number]:focus,.ui.form input[type=password]:focus,.ui.form input[type=search]:focus,.ui.form input[type=tel]:focus,.ui.form input[type=text]:focus,.ui.form input[type=time]:focus,.ui.form input[type=url]:focus,.ui.selection.dropdown:focus{background:var(--color-input-background);border-color:var(--color-primary);color:var(--color-input-text)}.ui.form .field>label,.ui.form .inline.fields>label,.ui.form .inline.fields .field>label,.ui.form .inline.fields .field>p,.ui.form .inline.field>label,.ui.form .inline.field>p{color:var(--color-text)}.ui.form .required.fields:not(.grouped)>.field>label:after,.ui.form .required.fields.grouped>label:after,.ui.form .required.field>label:after,.ui.form label.required:after{color:var(--color-red)}.ui.input{color:var(--color-input-text)}.ui.form select{padding:.67857143em 1em}.form .help{color:var(--color-secondary-dark-5);padding-bottom:.6em;display:inline-block}.m-captcha-style{width:100%;height:5em;vertical-align:middle;display:inline-block}@media (min-width: 768px){.g-recaptcha-style,.h-captcha-style{margin:0 auto!important;width:304px;padding-left:30px}.g-recaptcha-style iframe,.h-captcha-style iframe{border-radius:var(--border-radius)!important;width:302px!important;height:76px!important}.m-captcha-style{width:50%}}@media (max-height: 575px){#rc-imageselect,.g-recaptcha-style,.h-captcha-style{transform:scale(.77);transform-origin:0 0}}.user.forgot.password form,.user.reset.password form,.user.signup form{margin:auto;width:700px!important}.user.activate form .ui.message,.user.forgot.password form .ui.message,.user.reset.password form .ui.message,.user.link-account form .ui.message,.user.signin form .ui.message,.user.signup form .ui.message{text-align:center}@media (min-width: 768px){.user.activate form,.user.forgot.password form,.user.reset.password form,.user.link-account form,.user.signin form,.user.signup form{width:800px!important}.user.activate form .header,.user.forgot.password form .header,.user.reset.password form .header,.user.link-account form .header,.user.signin form .header,.user.signup form .header{padding-left:280px!important}.user.activate form .inline.field>label{text-align:right;width:250px!important;word-wrap:break-word}.user.activate form .help,.user.forgot.password form .help,.user.reset.password form .help,.user.link-account form .help,.user.signin form .help,.user.signup form .help{margin-left:265px!important}.user.activate form .optional .title,.user.forgot.password form .optional .title,.user.reset.password form .optional .title,.user.link-account form .optional .title,.user.signin form .optional .title,.user.signup form .optional .title{margin-left:250px!important}}@media (max-width: 767.98px){.user.activate form .optional .title,.user.forgot.password form .optional .title,.user.reset.password form .optional .title,.user.link-account form .optional .title,.user.signin form .optional .title,.user.signup form .optional .title{margin-left:15px}.user.activate form .inline.field>label,.user.forgot.password form .inline.field>label,.user.reset.password form .inline.field>label,.user.link-account form .inline.field>label,.user.signin form .inline.field>label,.user.signup form .inline.field>label{display:block}}.user.activate form .header,.user.forgot.password form .header,.user.reset.password form .header,.user.link-account form .header,.user.signin form .header,.user.signup form .header{padding-left:0!important;text-align:center}.user.activate form .inline.field>label,.user.forgot.password form .inline.field>label,.user.reset.password form .inline.field>label,.user.link-account form .inline.field>label,.user.signin form .inline.field>label,.user.signup form .inline.field>label{width:200px}@media (max-width: 767.98px){.user.activate form .inline.field>label,.user.forgot.password form .inline.field>label,.user.reset.password form .inline.field>label,.user.link-account form .inline.field>label,.user.signin form .inline.field>label,.user.signup form .inline.field>label{width:100%!important}}.user.activate form input[type=number],.user.forgot.password form input[type=number],.user.reset.password form input[type=number],.user.link-account form input[type=number],.user.signin form input[type=number],.user.signup form input[type=number]{-moz-appearance:textfield}.user.activate form input::-webkit-outer-spin-button,.user.forgot.password form input::-webkit-outer-spin-button,.user.reset.password form input::-webkit-outer-spin-button,.user.link-account form input::-webkit-outer-spin-button,.user.signin form input::-webkit-outer-spin-button,.user.signup form input::-webkit-outer-spin-button,.user.activate form input::-webkit-inner-spin-button,.user.forgot.password form input::-webkit-inner-spin-button,.user.reset.password form input::-webkit-inner-spin-button,.user.link-account form input::-webkit-inner-spin-button,.user.signin form input::-webkit-inner-spin-button,.user.signup form input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.repository.new.repo form,.repository.new.migrate form,.repository.new.fork form{margin:auto}.repository.new.repo form .ui.message,.repository.new.migrate form .ui.message,.repository.new.fork form .ui.message{text-align:center}@media (min-width: 768px){.repository.new.repo form,.repository.new.migrate form,.repository.new.fork form{width:800px!important}.repository.new.repo form .header,.repository.new.migrate form .header,.repository.new.fork form .header{padding-left:280px!important}.repository.new.repo form .inline.field>label,.repository.new.migrate form .inline.field>label,.repository.new.fork form .inline.field>label{text-align:right;width:250px!important;word-wrap:break-word}.repository.new.repo form .help,.repository.new.migrate form .help,.repository.new.fork form .help{margin-left:265px!important}.repository.new.repo form .optional .title,.repository.new.migrate form .optional .title,.repository.new.fork form .optional .title{margin-left:250px!important}.repository.new.repo form .inline.field>input,.repository.new.migrate form .inline.field>input,.repository.new.fork form .inline.field>input,.repository.new.repo form .inline.field>textarea,.repository.new.migrate form .inline.field>textarea,.repository.new.fork form .inline.field>textarea{width:50%}}@media (max-width: 767.98px){.repository.new.repo form .optional .title,.repository.new.migrate form .optional .title,.repository.new.fork form .optional .title{margin-left:15px}.repository.new.repo form .inline.field>label,.repository.new.migrate form .inline.field>label,.repository.new.fork form .inline.field>label{display:block}}.repository.new.repo form .dropdown .text,.repository.new.migrate form .dropdown .text,.repository.new.fork form .dropdown .text{margin-right:0!important}.repository.new.repo form .header,.repository.new.migrate form .header,.repository.new.fork form .header{padding-left:0!important;text-align:center}.repository.new.repo form .selection.dropdown,.repository.new.migrate form .selection.dropdown,.repository.new.fork form .selection.dropdown,.repository.new.fork form .field a{vertical-align:middle;width:50%!important}@media (max-width: 767.98px){.repository.new.repo form label,.repository.new.migrate form label,.repository.new.fork form label,.repository.new.repo form .inline.field>input,.repository.new.migrate form .inline.field>input,.repository.new.fork form .inline.field>input,.repository.new.fork form .field a,.repository.new.repo form .selection.dropdown,.repository.new.migrate form .selection.dropdown,.repository.new.fork form .selection.dropdown{width:100%!important}.repository.new.repo form .field button,.repository.new.migrate form .field button,.repository.new.fork form .field button,.repository.new.repo form .field a,.repository.new.migrate form .field a{margin-bottom:1em;width:100%}}@media (min-width: 768px){.repository.new.repo .ui.form #auto-init{margin-left:265px!important}}.repository.new.repo .ui.form .selection.dropdown:not(.owner){width:50%!important}@media (max-width: 767.98px){.repository.new.repo .ui.form .selection.dropdown:not(.owner){width:100%!important}}.ui.form .field>.selection.dropdown{min-width:14em}.new.webhook form .help{margin-left:25px}.new.webhook .events.fields .column{padding-left:40px}.githook textarea{font-family:var(--fonts-monospace)}@media (max-width: 767.98px){.new.org .ui.form .field button,.new.org .ui.form .field a{margin-bottom:1em;width:100%}.new.org .ui.form .field input{width:100%!important}}.repository .data-table .line-num,.repository .diff-file-box .file-body.file-code .lines-num,.repository .diff-file-box .code-diff tbody tr .lines-type-marker{user-select:none}.repository .owner.dropdown{min-width:40%!important}.repository .unicode-escaped .escaped-code-point[data-escaped]:before{visibility:visible;content:attr(data-escaped);font-family:var(--fonts-monospace);color:var(--color-red)}.repository .unicode-escaped .escaped-code-point .char{display:none}.repository .broken-code-point{font-family:var(--fonts-monospace);color:var(--color-blue)}.repository .unicode-escaped .ambiguous-code-point{border:1px var(--color-yellow) solid}.issue-content{display:flex;align-items:flex-start;gap:16px}@media (max-width: 767.98px){.issue-content{flex-direction:column}}.issue-content-left{margin:0!important;width:calc(100% - 316px)}.issue-content-right{margin:0!important;width:300px}.issue-content-right .dropdown>.menu{max-width:270px;min-width:0}@media (max-width: 767.98px){.issue-content-left,.issue-content-right{width:100%}}.repository .issue-content-right .ui.list .dependency{padding:0;white-space:nowrap}.repository .issue-content-right .ui.list .title{overflow:hidden;text-overflow:ellipsis}.repository .issue-content-right #deadlineForm input{width:12.8rem;border-radius:var(--border-radius) 0 0 var(--border-radius);border-right:0;white-space:nowrap}.repository .issue-content-right .filter.menu{max-height:500px;overflow-x:auto}.repository .filter.menu.labels .label-filter .menu .info{display:inline-block;padding:.5rem 0;font-size:12px;width:100%;white-space:nowrap;margin-left:10px;margin-right:8px;text-align:left}.repository .filter.menu.labels .label-filter .menu .info code{border:1px solid var(--color-secondary);border-radius:var(--border-radius);padding:1px 2px;font-size:11px}.repository .filter.menu .ui.dropdown .menu{max-height:500px;max-width:300px;overflow-x:hidden;right:0;left:auto}.repository .filter.menu .ui.dropdown.label-filter .menu{min-width:max-content;right:unset;left:0}.repository .select-label .desc{padding-left:23px}.repository .ui.tabs.container .ui.menu:not(.secondary.pointing){border-bottom:0}.repository .ui.tabs.divider{margin-top:-1px;margin-bottom:12px}.repository .clone-panel{display:flex;flex:1}.repository.wiki .clone-panel{flex:0}.repository.wiki .clone-panel input{width:20ch}.repository .clone-panel #repo-clone-url{border-radius:0;flex:1}.repository .ui.action.input.clone-panel>button+button,.repository .ui.action.input.clone-panel>button+input{margin-left:-1px}.repository .clone-panel>button:first-of-type{border-radius:var(--border-radius) 0 0 var(--border-radius)!important}.repository .clone-panel>button:last-of-type{border-radius:0 var(--border-radius) var(--border-radius) 0!important}.repository .clone-panel .dropdown .menu{right:0!important;left:auto!important}.repository .repo-description{font-size:16px;margin-bottom:5px}.commit-summary{flex:1;overflow-wrap:anywhere;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.commit-header .commit-summary,td .commit-summary{white-space:normal}.latest-commit{display:flex;flex:1;align-items:center;overflow:hidden;text-overflow:ellipsis}@media (max-width: 767.98px){.latest-commit .sha{display:none}.latest-commit .commit-summary{margin-left:8px}}.repo-path{display:flex;overflow-wrap:anywhere}#repo-files-table th:first-of-type{max-width:calc(min(100vw,1280px) - 145px - calc(2 * var(--page-margin-x)))}.repository.file.list #repo-files-table thead th{font-weight:var(--font-weight-normal)}.repository.file.list #repo-files-table tbody .svg{margin-left:3px;margin-right:5px}.repository.file.list #repo-files-table tbody .svg.octicon-reply{margin-right:10px}.repository.file.list #repo-files-table tbody .svg.octicon-file-directory-fill,.repository.file.list #repo-files-table tbody .svg.octicon-file-submodule{color:var(--color-primary)}.repository.file.list #repo-files-table tbody .svg.octicon-file,.repository.file.list #repo-files-table tbody .svg.octicon-file-symlink-file,.repository.file.list #repo-files-table tbody .svg.octicon-file-directory-symlink{color:var(--color-secondary-dark-7)}.repository.file.list #repo-files-table td{padding-top:0;padding-bottom:0;overflow:initial}.repository.file.list #repo-files-table td.name{width:33%;max-width:calc(100vw - 140px)}@media (min-width: 1201px){.repository.file.list #repo-files-table td.name{max-width:150px}}@media (min-width: 992px) and (max-width: 1200px){.repository.file.list #repo-files-table td.name{max-width:200px}}@media (min-width: 768px) and (max-width: 991.98px){.repository.file.list #repo-files-table td.name{max-width:300px}}.repository.file.list #repo-files-table td.message{color:var(--color-text-light-1);width:66%}@media (min-width: 1201px){.repository.file.list #repo-files-table td.message{max-width:400px}}@media (min-width: 992px) and (max-width: 1200px){.repository.file.list #repo-files-table td.message{max-width:350px}}@media (min-width: 768px) and (max-width: 991.98px){.repository.file.list #repo-files-table td.message{max-width:250px}}.repository.file.list #repo-files-table td.age{color:var(--color-text-light-1)}.repository.file.list #repo-files-table td .truncate{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;padding-top:8px;padding-bottom:8px}.repository.file.list #repo-files-table td a{padding-top:8px;padding-bottom:8px}.repository.file.list #repo-files-table td .at{margin-left:3px;margin-right:3px}.repository.file.list #repo-files-table td>*{vertical-align:middle}.repository.file.list #repo-files-table td.message .isSigned{cursor:default}.repository.file.list #repo-files-table tr:last-of-type td:first-child{border-bottom-left-radius:var(--border-radius)}.repository.file.list #repo-files-table tr:last-of-type td:last-child{border-bottom-right-radius:var(--border-radius)}.repository.file.list #repo-files-table tr:hover{background-color:var(--color-hover)}.repository.file.list #repo-files-table tr.has-parent a{display:inline-block;padding-top:8px;padding-bottom:8px;width:calc(100% - 1.25rem)}.repository.file.list .non-diff-file-content .header .icon{font-size:1em}.repository.file.list .non-diff-file-content .header .small.icon{font-size:.75em}.repository.file.list .non-diff-file-content .header .tiny.icon{font-size:.5em}.repository.file.list .non-diff-file-content .header .file-actions .btn-octicon{line-height:var(--line-height-default);padding:8px;vertical-align:middle;color:var(--color-text)}.repository.file.list .non-diff-file-content .header .file-actions .btn-octicon:hover{color:var(--color-primary)}.repository.file.list .non-diff-file-content .header .file-actions .btn-octicon-danger:hover{color:var(--color-red)}.repository.file.list .non-diff-file-content .header .file-actions .btn-octicon.disabled{color:inherit;opacity:var(--opacity-disabled);cursor:default}.view-raw{display:flex;justify-content:center;align-items:center}.view-raw>*{max-width:100%}.view-raw audio,.view-raw video,.view-raw img{margin:1rem 0;border-radius:0;object-fit:contain}.view-raw img[src$=".svg" i]{max-height:600px!important;max-width:600px!important}.pdf-content{width:100%;height:600px;border:none!important;display:flex;align-items:center;justify-content:center}.pdf-content .pdf-fallback-button{margin:50px auto}.repository.file.list .non-diff-file-content .plain-text{padding:1em 2em}.repository.file.list .non-diff-file-content .plain-text pre{word-break:break-word;white-space:pre-wrap}.repository.file.list .non-diff-file-content .csv{overflow-x:auto;padding:0!important}.repository.file.list .non-diff-file-content pre{overflow:auto}.repository.file.list .non-diff-file-content .asciicast{padding:0!important}.non-diff-file-content .pdfobject{border-radius:0 0 var(--border-radius) var(--border-radius)}.repository.file.list .sidebar{padding-left:0}.repository.file.list .sidebar .svg{width:16px}.repo-editor-header{width:100%}.repo-editor-header input{vertical-align:middle!important;width:auto!important;padding:7px 8px!important;margin-right:5px!important}.repository.file.editor .tabular.menu .svg{margin-right:5px}.repository.file.editor .commit-form-wrapper{padding-left:64px}.repository.file.editor .commit-form-wrapper .commit-avatar{float:left;margin-left:-64px;width:3em;height:auto}.repository.file.editor .commit-form-wrapper .commit-form{position:relative;padding:15px;margin-bottom:10px;border:1px solid var(--color-secondary);background:var(--color-box-body);border-radius:var(--border-radius)}.repository.file.editor .commit-form-wrapper .commit-form:before,.repository.file.editor .commit-form-wrapper .commit-form:after{right:100%;top:20px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.repository.file.editor .commit-form-wrapper .commit-form:before{border-right-color:var(--color-secondary);border-width:9px;margin-top:-9px}.repository.file.editor .commit-form-wrapper .commit-form:after{border-right-color:var(--color-box-body);border-width:8px;margin-top:-8px}.repository.file.editor .commit-form-wrapper .commit-form .quick-pull-choice .branch-name{display:inline-block;padding:2px 4px;font:12px var(--fonts-monospace);color:var(--color-text);background:var(--color-secondary);border-radius:var(--border-radius);margin:0 2px}.repository.file.editor .commit-form-wrapper .commit-form .quick-pull-choice .new-branch-name-input{position:relative;margin-left:25px}.repository.file.editor .commit-form-wrapper .commit-form .quick-pull-choice .new-branch-name-input input{width:240px!important;padding-left:26px!important}.repository.file.editor .commit-form-wrapper .commit-form .quick-pull-choice .octicon-git-branch{position:absolute;top:9px;left:10px;color:var(--color-grey)}.repository.options #interval{width:100px!important;min-width:100px}#new-issue .comment .avatar{width:3em}.repository.new.issue .comment.form .content:before,.repository.new.issue .comment.form .content:after{right:100%;top:20px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.repository.new.issue .comment.form .content:before{border-right-color:var(--color-secondary);border-width:9px;margin-top:-9px}.repository.new.issue .comment.form .content:after{border-right-color:var(--color-box-body);border-width:8px;margin-top:-8px}.repository.new.issue .comment.form .content .markup{font-size:14px}.repository.view.issue .instruct-toggle{display:inline-block}@media (max-width: 767.98px){.comment.form .issue-content-left .avatar{display:none}.comment.form .issue-content-left .content{margin-left:0!important}.comment.form .issue-content-left .content:before,.comment.form .issue-content-left .content:after,.comment.form .content .form:before,.comment.form .content .form:after{display:none}}.issue-title-header{width:100%;padding-bottom:4px;margin-bottom:1rem}.issue-title-meta{display:flex;align-items:center}.repository.view.issue .issue-title-buttons{display:flex;gap:.5em}.repository.view.issue .issue-title-buttons>.ui.button{margin:0;height:35px}.repository.view.issue .issue-title{display:flex;align-items:center;gap:.5em;margin-bottom:8px;min-height:40px}.repository.view.issue .issue-title h1{flex:1;width:100%;font-weight:var(--font-weight-normal);font-size:32px;line-height:40px;margin:0;padding-right:.25rem}@media (max-width: 767.98px){.repository.view.issue .issue-title{flex-direction:column}.repository.view.issue .issue-title-buttons{width:100%;justify-content:space-between}}.repository.view.issue .issue-title .ui.input{width:100%;height:35px}.repository.view.issue .issue-title .ui.input input{font-size:1.5em;padding:2px .5rem}.issue-title .index{color:var(--color-text-light-2)}.issue-title .label{margin-right:10px}.issue-state-label{display:flex!important;align-items:center!important;font-size:14px!important;padding:7px 10px!important;border-radius:var(--border-radius-medium)!important;flex-shrink:0}.issue-state-label .svg{margin-right:4px}.repository.view.issue .pull-desc code{color:var(--color-primary)}.repository.view.issue .pull-desc a[data-clipboard-text]{cursor:pointer}.repository.view.issue .pull-desc a[data-clipboard-text] svg{vertical-align:middle;position:relative;top:-2px;right:1px}.repository.view.issue .pull.tabs.container{width:100%;max-width:100%}.repository.view.issue .pull.tabular.menu{margin-bottom:0;overflow-x:auto;overflow-y:hidden}.repository.view.issue .pull.tabular.menu .svg{margin-right:5px}.repository.view.issue .merge.box .branch-update.grid .row{padding-bottom:1rem}.repository.view.issue .merge.box .branch-update.grid .row .icon{margin-top:1.1rem}.repository.view.issue .comment-list:not(.prevent-before-timeline):before{display:block;content:"";position:absolute;margin-top:12px;margin-bottom:14px;top:0;bottom:0;left:96px;width:2px;background-color:var(--color-timeline);z-index:-1}.repository.view.issue .comment-list .timeline{position:relative;display:block;margin-left:40px;padding-left:16px}.repository.view.issue .comment-list .timeline:before{display:block;content:"";position:absolute;margin-top:12px;margin-bottom:14px;top:0;bottom:0;left:30px;width:2px;background-color:var(--color-timeline);z-index:-1}.repository.view.issue .comment-list .timeline-item,.repository.view.issue .comment-list .timeline-item-group{padding:16px 0}.repository.view.issue .comment-list .timeline-item-group .timeline-item{padding-top:8px;padding-bottom:8px}.repository.view.issue .comment-list .timeline-avatar-offset{margin-top:48px}.repository.view.issue .comment-list .timeline-item{margin-left:16px;position:relative}.repository.view.issue .comment-list .timeline-item .timeline-avatar{position:absolute;left:-68px}.repository.view.issue .comment-list .timeline-item .inline-timeline-avatar{display:none}.repository.view.issue .comment-list .timeline-item:first-child:not(.commit){padding-top:0!important}.repository.view.issue .comment-list .timeline-item:last-child:not(.commit){padding-bottom:0!important}.repository.view.issue .comment-list .timeline-item .badge.badge-commit{border-color:transparent;background:radial-gradient(var(--color-body) 40%,transparent 40%) no-repeat}.repository.view.issue .comment-list .timeline-item .badge{width:34px;height:34px;background-color:var(--color-timeline);border-radius:var(--border-radius-full);display:flex;float:left;margin-left:-33px;margin-right:8px;color:var(--color-text);align-items:center;justify-content:center}.repository.view.issue .comment-list .timeline-item .badge .svg{width:22px;height:22px;padding:3px}.repository.view.issue .comment-list .timeline-item .badge .svg.octicon-comment{margin-top:2px}.repository.view.issue .comment-list .timeline-item.comment>.content{margin-left:-16px}.repository.view.issue .comment-list .timeline-item.event>.text{line-height:32px;vertical-align:middle}.repository.view.issue .comment-list .timeline-item.commits-list{padding-left:15px;padding-top:0}.repository.view.issue .comment-list .timeline-item.commits-list .ui.avatar{margin-right:.25em}.singular-commit{display:flex;align-items:center}.singular-commit .badge{height:30px!important}.singular-commit .shabox .sha.label{margin:0;border:1px solid var(--color-light-border)}.singular-commit .shabox .sha.label.isSigned.isWarning{border:1px solid var(--color-red-badge);background:var(--color-red-badge-bg)}.singular-commit .shabox .sha.label.isSigned.isWarning:hover{background:var(--color-red-badge-hover-bg)!important}.singular-commit .shabox .sha.label.isSigned.isVerified{border:1px solid var(--color-green-badge);background:var(--color-green-badge-bg)}.singular-commit .shabox .sha.label.isSigned.isVerified:hover{background:var(--color-green-badge-hover-bg)!important}.singular-commit .shabox .sha.label.isSigned.isVerifiedUntrusted{border:1px solid var(--color-yellow-badge);background:var(--color-yellow-badge-bg)}.singular-commit .shabox .sha.label.isSigned.isVerifiedUntrusted:hover{background:var(--color-yellow-badge-hover-bg)!important}.singular-commit .shabox .sha.label.isSigned.isVerifiedUnmatched{border:1px solid var(--color-orange-badge);background:var(--color-orange-badge-bg)}.singular-commit .shabox .sha.label.isSigned.isVerifiedUnmatched:hover{background:var(--color-orange-badge-hover-bg)!important}.repository.view.issue .comment-list .timeline-item.event>.commit-status-link{float:right;margin-right:8px;margin-top:4px}.repository.view.issue .comment-list .timeline-item .comparebox{line-height:32px;vertical-align:middle}.repository.view.issue .comment-list .timeline-item .comparebox .compare.label{font-size:1rem;margin:0;border:1px solid var(--color-light-border)}@media (max-width: 767.98px){.repository.view.issue .comment-list .timeline-item .ui.segments{margin-left:-2rem}}.repository.view.issue .comment-list .ui.comments{max-width:100%;display:flex;flex-direction:column;gap:3px}.repository.view.issue .comment-list .comment>.content>div:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.repository.view.issue .comment-list .comment>.content>div:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.repository.view.issue .comment-list .comment .comment-container{border:1px solid var(--color-secondary);border-radius:var(--border-radius);background:var(--color-box-body)}.repository.view.issue .comment-list .conversation-holder .comment .comment-container{border:none}@media (max-width: 767.98px){.repository.view.issue .comment-list .comment .content .form .button{width:100%;margin:0}.repository.view.issue .comment-list .comment .content .form .button:not(:last-child){margin-bottom:1rem}}.repository.view.issue .comment-list .comment .merge-section{background-color:var(--color-box-body)}.repository.view.issue .comment-list .comment .merge-section .item-section{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:0;gap:.5em}.repository.view.issue .comment-list .comment .merge-section .divider{margin-left:-1rem;width:calc(100% + 2rem)}.repository.view.issue .comment-list .comment .merge-section.no-header:before,.repository.view.issue .comment-list .comment .merge-section.no-header:after{right:100%;top:20px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.repository.view.issue .comment-list .comment .merge-section.no-header:before{border-right-color:var(--color-secondary);border-width:9px;margin-top:-9px}.repository.view.issue .comment-list .comment .merge-section.no-header:after{border-right-color:var(--color-box-body);border-width:8px;margin-top:-8px}.merge-section-info code{border:1px solid var(--color-light-border);border-radius:var(--border-radius);padding:2px 4px;background:var(--color-light)}.repository.view.issue .comment-list .comment .markup{font-size:14px}.repository.view.issue .comment-list .comment .no-content{color:var(--color-text-light-2);font-style:italic}.repository.view.issue .comment-list .comment .ui.form .field:first-child{clear:none}.repository.view.issue .comment-list .comment .ui.form .field.footer{overflow:hidden}.repository.view.issue .comment-list .comment .ui.form .field .tab.markup{min-height:5rem}.repository.view.issue .comment-list .comment .edit.buttons{margin-top:10px}.repository.view.issue .comment-list .code-comment{border:1px solid transparent;margin:0}.repository.view.issue .comment-list .code-comment .comment-header{background:transparent;border-bottom:0!important;padding:0!important}.repository.view.issue .comment-list .code-comment .comment-header:after,.repository.view.issue .comment-list .code-comment .comment-header:before{display:none}.repository.view.issue .comment-list .code-comment .comment-content{margin-left:36px}.repository.view.issue .comment-list .comment>.avatar{margin-top:6px}.repository.view.issue .comment-list .comment-code-cloud button.comment-form-reply{margin:0}.repository.view.issue .comment-list .event{padding-left:15px}.repository.view.issue .comment-list .event .detail{margin-top:4px;margin-left:15px}.repository.view.issue .comment-list .event .detail .text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.repository.view.issue .comment-list .event .segments{box-shadow:none}.repository.view.issue .ui.depending .item.is-closed .title{text-decoration:line-through}.repository .comment.form .content .field:first-child{clear:none}.repository .comment.form .content .segment:before,.repository .comment.form .content .segment:after{right:100%;top:20px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.repository .comment.form .content .segment:before{border-right-color:var(--color-secondary);border-width:9px;margin-top:-9px}.repository .comment.form .content .segment:after{border-right-color:var(--color-box-body);border-width:8px;margin-top:-8px}.repository.new.milestone textarea{height:200px}.milestone-progress-big{width:min(420px,96vw);height:10px}.repository.compare.pull .show-form-container{text-align:left}.repository .choose.branch{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.repository .choose .compare-separator{width:100%;margin-top:-1rem;text-align:center}.repository.compare.pull .comment.form .content:before,.repository.compare.pull .comment.form .content:after{right:100%;top:20px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.repository.compare.pull .comment.form .content:before{border-right-color:var(--color-secondary);border-width:9px;margin-top:-9px}.repository.compare.pull .comment.form .content:after{border-right-color:var(--color-box-body);border-width:8px;margin-top:-8px}.repository.compare.pull .pullrequest-form{margin-top:16px;margin-bottom:16px}.repository.compare.pull .markup{font-size:14px}.repository.branches .commit-divergence .bar-group{position:relative;float:left;padding-bottom:6px;width:50%;max-width:90px}.repository.branches .commit-divergence .bar-group:last-child{border-left:1px solid var(--color-secondary-dark-2)}.repository.branches .commit-divergence .count{margin:0 3px}.repository.branches .commit-divergence .count.count-ahead{text-align:left}.repository.branches .commit-divergence .count.count-behind{text-align:right}.repository.branches .commit-divergence .bar{height:4px;position:absolute;background-color:var(--color-secondary-dark-2)}.repository.branches .commit-divergence .bar.bar-behind{right:0}.repository.branches .commit-divergence .bar.bar-ahead{left:0}.repository.commits .header .search input{font-weight:var(--font-weight-normal);padding:5px 10px}.repository #commits-table td:not(.message){white-space:nowrap}.repository #commits-table thead .sha{width:200px}.repository #commits-table thead .shatd{text-align:center}.repository #commits-table td.sha .sha.label{margin:0}.repository #commits-table.ui.basic.striped.table tbody tr:nth-child(2n){background-color:var(--color-light)!important}.repository #commits-table td.sha .sha.label,.repository #repo-files-table .sha.label,.repository #repo-file-commit-box .sha.label,.repository #rev-list .sha.label,.repository .timeline-item.commits-list .singular-commit .sha.label{border:1px solid var(--color-light-border)}.repository #commits-table td.sha .sha.label .ui.signature.avatar,.repository #repo-files-table .sha.label .ui.signature.avatar,.repository #repo-file-commit-box .sha.label .ui.signature.avatar,.repository #rev-list .sha.label .ui.signature.avatar,.repository .timeline-item.commits-list .singular-commit .sha.label .ui.signature.avatar{height:16px;margin-bottom:0;width:16px}.repository #commits-table td.sha .sha.label .detail.icon,.repository #repo-files-table .sha.label .detail.icon,.repository #repo-file-commit-box .sha.label .detail.icon,.repository #rev-list .sha.label .detail.icon,.repository .timeline-item.commits-list .singular-commit .sha.label .detail.icon{background:var(--color-light);margin:-6px -10px -4px 0;padding:5px 4px 5px 6px;border-left:1px solid var(--color-light-border);border-top:0;border-right:0;border-bottom:0;border-top-left-radius:0;border-bottom-left-radius:0}.repository #commits-table td.sha .sha.label .detail.icon img,.repository #repo-files-table .sha.label .detail.icon img,.repository #repo-file-commit-box .sha.label .detail.icon img,.repository #rev-list .sha.label .detail.icon img,.repository .timeline-item.commits-list .singular-commit .sha.label .detail.icon img{margin-right:0}.repository #commits-table td.sha .sha.label .detail.icon .svg,.repository #repo-files-table .sha.label .detail.icon .svg,.repository #repo-file-commit-box .sha.label .detail.icon .svg,.repository #rev-list .sha.label .detail.icon .svg,.repository .timeline-item.commits-list .singular-commit .sha.label .detail.icon .svg{margin:0 .25em 0 0}.repository #commits-table td.sha .sha.label .detail.icon>div,.repository #repo-files-table .sha.label .detail.icon>div,.repository #repo-file-commit-box .sha.label .detail.icon>div,.repository #rev-list .sha.label .detail.icon>div,.repository .timeline-item.commits-list .singular-commit .sha.label .detail.icon>div{display:flex;align-items:center}.repository #commits-table td.sha .sha.label.isSigned.isWarning,.repository #repo-files-table .sha.label.isSigned.isWarning,.repository #repo-file-commit-box .sha.label.isSigned.isWarning,.repository #rev-list .sha.label.isSigned.isWarning,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isWarning{border:1px solid var(--color-red-badge);background:var(--color-red-badge-bg)}.repository #commits-table td.sha .sha.label.isSigned.isWarning .detail.icon,.repository #repo-files-table .sha.label.isSigned.isWarning .detail.icon,.repository #repo-file-commit-box .sha.label.isSigned.isWarning .detail.icon,.repository #rev-list .sha.label.isSigned.isWarning .detail.icon,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isWarning .detail.icon{border-left:1px solid var(--color-red-badge);color:var(--color-red-badge)}.repository #commits-table td.sha .sha.label.isSigned.isWarning:hover,.repository #repo-files-table .sha.label.isSigned.isWarning:hover,.repository #repo-file-commit-box .sha.label.isSigned.isWarning:hover,.repository #rev-list .sha.label.isSigned.isWarning:hover,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isWarning:hover{background:var(--color-red-badge-hover-bg)!important}.repository #commits-table td.sha .sha.label.isSigned.isVerified,.repository #repo-files-table .sha.label.isSigned.isVerified,.repository #repo-file-commit-box .sha.label.isSigned.isVerified,.repository #rev-list .sha.label.isSigned.isVerified,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isVerified{border:1px solid var(--color-green-badge);background:var(--color-green-badge-bg)}.repository #commits-table td.sha .sha.label.isSigned.isVerified .detail.icon,.repository #repo-files-table .sha.label.isSigned.isVerified .detail.icon,.repository #repo-file-commit-box .sha.label.isSigned.isVerified .detail.icon,.repository #rev-list .sha.label.isSigned.isVerified .detail.icon,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isVerified .detail.icon{border-left:1px solid var(--color-green-badge);color:var(--color-green-badge)}.repository #commits-table td.sha .sha.label.isSigned.isVerified:hover,.repository #repo-files-table .sha.label.isSigned.isVerified:hover,.repository #repo-file-commit-box .sha.label.isSigned.isVerified:hover,.repository #rev-list .sha.label.isSigned.isVerified:hover,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isVerified:hover{background:var(--color-green-badge-hover-bg)!important}.repository #commits-table td.sha .sha.label.isSigned.isVerifiedUntrusted,.repository #repo-files-table .sha.label.isSigned.isVerifiedUntrusted,.repository #repo-file-commit-box .sha.label.isSigned.isVerifiedUntrusted,.repository #rev-list .sha.label.isSigned.isVerifiedUntrusted,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isVerifiedUntrusted{border:1px solid var(--color-yellow-badge);background:var(--color-yellow-badge-bg)}.repository #commits-table td.sha .sha.label.isSigned.isVerifiedUntrusted .detail.icon,.repository #repo-files-table .sha.label.isSigned.isVerifiedUntrusted .detail.icon,.repository #repo-file-commit-box .sha.label.isSigned.isVerifiedUntrusted .detail.icon,.repository #rev-list .sha.label.isSigned.isVerifiedUntrusted .detail.icon,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isVerifiedUntrusted .detail.icon{border-left:1px solid var(--color-yellow-badge);color:var(--color-yellow-badge)}.repository #commits-table td.sha .sha.label.isSigned.isVerifiedUntrusted:hover,.repository #repo-files-table .sha.label.isSigned.isVerifiedUntrusted:hover,.repository #repo-file-commit-box .sha.label.isSigned.isVerifiedUntrusted:hover,.repository #rev-list .sha.label.isSigned.isVerifiedUntrusted:hover,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isVerifiedUntrusted:hover{background:var(--color-yellow-badge-hover-bg)!important}.repository #commits-table td.sha .sha.label.isSigned.isVerifiedUnmatched,.repository #repo-files-table .sha.label.isSigned.isVerifiedUnmatched,.repository #repo-file-commit-box .sha.label.isSigned.isVerifiedUnmatched,.repository #rev-list .sha.label.isSigned.isVerifiedUnmatched,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isVerifiedUnmatched{border:1px solid var(--color-orange-badge);background:var(--color-orange-badge-bg)}.repository #commits-table td.sha .sha.label.isSigned.isVerifiedUnmatched .detail.icon,.repository #repo-files-table .sha.label.isSigned.isVerifiedUnmatched .detail.icon,.repository #repo-file-commit-box .sha.label.isSigned.isVerifiedUnmatched .detail.icon,.repository #rev-list .sha.label.isSigned.isVerifiedUnmatched .detail.icon,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isVerifiedUnmatched .detail.icon{border-left:1px solid var(--color-orange-badge);color:var(--color-orange-badge)}.repository #commits-table td.sha .sha.label.isSigned.isVerifiedUnmatched:hover,.repository #repo-files-table .sha.label.isSigned.isVerifiedUnmatched:hover,.repository #repo-file-commit-box .sha.label.isSigned.isVerifiedUnmatched:hover,.repository #rev-list .sha.label.isSigned.isVerifiedUnmatched:hover,.repository .timeline-item.commits-list .singular-commit .sha.label.isSigned.isVerifiedUnmatched:hover{background:var(--color-orange-badge-hover-bg)!important}.repository .data-table{width:100%}.repository .data-table tr{border-top:0;background:none!important}.repository .data-table td,.repository .data-table th{padding:5px!important;overflow:hidden;font-size:12px;text-align:left;white-space:nowrap;border:1px solid var(--color-secondary)}.repository .data-table tr:first-child :is(td,th){border-top:none!important}.repository .data-table tr:last-child :is(td,th){border-bottom:none!important}.repository .data-table tr :is(td,th):first-child{border-left:none!important}.repository .data-table tr :is(td,th):last-child{border-right:none!important}.repository .data-table td{white-space:pre-line}.repository .data-table th{font-weight:var(--font-weight-semibold);background:var(--color-box-header);border-top:0}.repository .data-table td.added,.repository .data-table th.added,.repository .data-table tr.added{background-color:var(--color-diff-added-row-bg)!important}.repository .data-table td.removed,.repository .data-table th.removed,.repository .data-table tr.removed{background-color:var(--color-diff-removed-row-bg)!important}.repository .data-table td.moved,.repository .data-table th.moved,.repository .data-table tr.moved{background-color:var(--color-diff-moved-row-bg)!important}.repository .data-table tbody.section{border-top:2px solid var(--color-secondary)}.repository .data-table .line-num{width:1%;min-width:50px;font-family:monospace;line-height:20px;color:var(--color-text-light-1);white-space:nowrap;vertical-align:top;cursor:pointer;text-align:right;background:var(--color-body);border:0}.repository .diff-detail-box{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:8;padding:7px 5px;margin:0 -5px;height:44px;background:var(--color-body)}@media (max-width: 480px){.repository .diff-detail-box{flex-wrap:wrap}}.repository .diff-detail-box .diff-detail-stats strong{margin-left:.25rem;margin-right:.25rem}.repository .diff-detail-box .diff-detail-stats strong:nth-of-type(1){color:var(--color-yellow)}.repository .diff-detail-box .diff-detail-stats strong:nth-of-type(2){color:var(--color-green)}.repository .diff-detail-box .diff-detail-stats strong:nth-of-type(3){color:var(--color-red)}@media (max-width: 800px){.repository .diff-detail-box .diff-detail-stats{display:none!important}}.diff-detail-actions{display:flex;align-items:center;gap:.25em;justify-content:end}.diff-detail-actions>*,.diff-detail-actions .button{margin-left:0!important;margin-right:0!important}.repository .diff-detail-box span.status{display:inline-block;width:12px;height:12px;margin-right:8px;vertical-align:middle}.repository .diff-detail-box span.status.modify{background-color:var(--color-yellow)}.repository .diff-detail-box span.status.add{background-color:var(--color-green)}.repository .diff-detail-box span.status.del{background-color:var(--color-red)}.repository .diff-detail-box span.status.rename{background-color:var(--color-teal)}.repository .diff-detail-box .ui.button{padding:0 12px;height:30px}.repository .diff-box .resolved-placeholder .button{padding:8px 12px}.repository .diff-file-box .header{background-color:var(--color-box-header)}.repository .diff-file-box .file-body.file-code{background:var(--color-code-bg);border-radius:var(--border-radius)}.repository .diff-file-box .file-body.file-code .lines-num{text-align:right}.repository .diff-file-box .file-body.file-code .lines-num span.fold{display:block;text-align:center}.repository .diff-file-box .code-diff td{padding:0 0 0 10px!important;border-top:0}.repository .diff-file-box .code-diff .lines-num{padding:0 5px!important}.repository .diff-file-box .code-diff .tag-code .lines-num,.repository .diff-file-box .code-diff .tag-code td{padding:0!important}.repository .diff-file-box .code-diff table{table-layout:fixed}.repository .diff-file-box .code-diff tbody tr td.center{text-align:center}.repository .diff-file-box .code-diff tbody tr [data-line-num]:before{content:attr(data-line-num);text-align:right}.repository .diff-file-box .code-diff tbody tr .lines-type-marker{width:10px;min-width:10px}.repository .diff-file-box .code-diff tbody tr [data-type-marker]:before{content:attr(data-type-marker);text-align:right;display:inline-block}.repository .diff-file-box .code-diff-split .tag-code .lines-code code.code-inner{padding-left:10px!important}.repository .diff-file-box .code-diff-split table,.repository .diff-file-box .code-diff-split tbody{width:100%}.repository .diff-file-box.file-content{clear:right}.repository .diff-file-box.file-content .image-diff img{max-width:100%;padding:0;border-radius:0}.repository .diff-file-box .ui.bottom.attached.table.segment{padding-top:5px;padding-bottom:5px}.diff-file-box{border:1px solid transparent;border-radius:var(--border-radius);scroll-margin-top:47px}.file.editor .diff-file-box,.file.editor .diff-file-box .ui.attached.table{border:none}.diff-file-box .ui.attached.header,.diff-file-box .ui.attached.table{margin:0;width:initial;max-width:initial}.repository .diff-stats{clear:both;margin-bottom:5px;max-height:200px;height:fit-content;overflow:auto;padding-left:0}.repository .diff-stats li{list-style:none;padding-bottom:4px;margin-bottom:4px;padding-left:6px}.repository .diff-stats li+li{border-top:1px solid var(--color-secondary)}.repository .repo-search-result{padding-top:10px;padding-bottom:10px}.repository .repo-search-result .lines-num a{color:inherit}.repository.quickstart .guide .item{padding:1em}.repository.quickstart .guide .item small{font-weight:var(--font-weight-normal)}.repository.quickstart .guide #repo-clone-url{border-radius:0;padding:5px 10px;font-size:1.2em;line-height:1.4;flex:1}.empty-placeholder{display:flex;flex-direction:column;align-items:center;padding-top:40px;padding-bottom:40px}.repository.packages .file-size{white-space:nowrap}.file-view.markup{padding:1em 2em}.repository .activity-header{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.repository.settings.branches .branch-protection .ui.checkbox .help,.repository.settings.branches .branch-protection .checkbox-sub-item{padding-left:26px}.repository.settings.branches .branch-protection .status-check-matched-mark{font-weight:var(--font-weight-semibold);font-style:italic}.repository.settings.webhook .events .column{padding-bottom:0}.repository.settings.webhook .events .help{font-size:13px;margin-left:26px;padding-top:0}.repository .ui.attached.isSigned.isWarning{border-left:1px solid var(--color-error-border);border-right:1px solid var(--color-error-border)}.repository .ui.attached.isSigned.isWarning.top,.repository .ui.attached.isSigned.isWarning.message{border-top:1px solid var(--color-error-border)}.repository .ui.attached.isSigned.isWarning.message{box-shadow:none;background-color:var(--color-error-bg);color:var(--color-error-text)}.repository .ui.attached.isSigned.isWarning.message .ui.text{color:var(--color-error-text)}.repository .ui.attached.isSigned.isWarning:last-child,.repository .ui.attached.isSigned.isWarning.bottom{border-bottom:1px solid var(--color-error-border)}.repository .ui.attached.isSigned.isVerified{border-left:1px solid var(--color-success-border);border-right:1px solid var(--color-success-border)}.repository .ui.attached.isSigned.isVerified.top,.repository .ui.attached.isSigned.isVerified.message{border-top:1px solid var(--color-success-border)}.repository .ui.attached.isSigned.isVerified.message{box-shadow:none;background-color:var(--color-success-bg);color:var(--color-success-text)}.repository .ui.attached.isSigned.isVerified.message .pull-right{color:var(--color-text)}.repository .ui.attached.isSigned.isVerified.message .ui.text{color:var(--color-success-text)}.repository .ui.attached.isSigned.isVerified:last-child,.repository .ui.attached.isSigned.isVerified.bottom{border-bottom:1px solid var(--color-success-border)}.repository .ui.attached.isSigned.isVerifiedUntrusted,.repository .ui.attached.isSigned.isVerifiedUnmatched{border-left:1px solid var(--color-warning-border);border-right:1px solid var(--color-warning-border)}.repository .ui.attached.isSigned.isVerifiedUntrusted.top,.repository .ui.attached.isSigned.isVerifiedUnmatched.top,.repository .ui.attached.isSigned.isVerifiedUntrusted.message,.repository .ui.attached.isSigned.isVerifiedUnmatched.message{border-top:1px solid var(--color-warning-border)}.repository .ui.attached.isSigned.isVerifiedUntrusted.message,.repository .ui.attached.isSigned.isVerifiedUnmatched.message{box-shadow:none;background-color:var(--color-warning-bg);color:var(--color-warning-text)}.repository .ui.attached.isSigned.isVerifiedUntrusted.message .ui.text,.repository .ui.attached.isSigned.isVerifiedUnmatched.message .ui.text{color:var(--color-warning-text)}.repository .ui.attached.isSigned.isVerifiedUntrusted:last-child,.repository .ui.attached.isSigned.isVerifiedUnmatched:last-child,.repository .ui.attached.isSigned.isVerifiedUntrusted.bottom,.repository .ui.attached.isSigned.isVerifiedUnmatched.bottom{border-bottom:1px solid var(--color-warning-border)}.repository .ui.fluid.action.input .ui.search.action.input{flex:auto}.repository .repository-summary{box-shadow:none}.repository .repository-summary .segment.sub-menu{border:none;display:flex;align-items:center;padding:0;overflow:hidden}.repository .repository-summary .sub-menu .item{flex:1;height:30px;line-height:var(--line-height-default);display:flex;align-items:center;justify-content:center;gap:.25em;padding:0 .5em;text-decoration:none}.repository .repository-summary .sub-menu .item.active{background:var(--color-secondary)}.repository .repository-summary .segment.language-stats{display:flex;gap:2px;padding:0;height:10px;white-space:nowrap;border-radius:0 0 3px 3px!important;overflow:hidden}#cite-repo-modal #citation-panel{display:flex;width:100%}#cite-repo-modal #citation-panel input{border-radius:0;padding:5px 10px;width:50%;line-height:1.4}#cite-repo-modal #citation-panel .citation.button{font-size:13px;padding:7.5px 5px}#cite-repo-modal #citation-panel #citation-copy-content{border-radius:0;padding:5px 10px;font-size:1.2em;line-height:1.4;flex:1}#cite-repo-modal #citation-panel #citation-copy-apa,#cite-repo-modal #citation-panel #citation-copy-bibtex{border-right:none}#cite-repo-modal #citation-panel #goto-citation-btn{border-left:none}#cite-repo-modal #citation-panel>:first-child{border-radius:var(--border-radius) 0 0 var(--border-radius)!important}#cite-repo-modal #citation-panel>:last-child{border-radius:0 var(--border-radius) var(--border-radius) 0!important}#cite-repo-modal #citation-panel .icon.button{padding:0 10px}.user-cards .list{padding:0;display:flex;flex-wrap:wrap}.user-cards .list .item{list-style:none;width:32%;margin:10px 10px 10px 0;padding-bottom:14px;float:left}.user-cards .list .item .avatar{width:48px;height:48px;float:left;display:block;margin-right:10px}.user-cards .list .item .name{margin-top:0;margin-bottom:0;font-weight:var(--font-weight-normal)}.user-cards .list .item .meta{margin-top:5px}#search-user-box .results .result .image{order:0;margin-right:12px;width:2em;height:2em;min-width:2em;min-height:2em}#search-user-box .results .result .content{margin:0}.ui.menu .item>img:not(.ui){width:auto}.page.buttons{padding-top:15px}.commit-header-row{min-height:50px!important;padding-top:0!important;padding-bottom:0!important}.commit-header-buttons{display:flex;gap:4px;align-items:flex-start;white-space:nowrap}@media (max-width: 767.98px){.commit-header-buttons{flex-direction:column;align-items:stretch}}.settings.webhooks .list>.item:not(:first-child),.settings.githooks .list>.item:not(:first-child),.settings.actions .list>.item:not(:first-child){padding:.25rem 1rem;margin:12px -1rem -1rem}.settings .list>.item:not(:first-child){border-top:1px solid var(--color-secondary);padding:1rem;margin:16px -1rem -1rem}.settings .list>.item>.svg{display:table-cell}.settings .list>.item>.svg+.content{display:table-cell;padding:0 0 0 .5em;vertical-align:top}.settings .list>.item .info{margin-top:10px}.settings .list>.item .info .tab.segment{border:0;padding:10px 0 0}.comment:target .comment-container{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px var(--color-primary-alpha-30)!important}.comment:target .header:before{border-right-color:var(--color-primary)!important;filter:drop-shadow(-3px 0 0 var(--color-primary-alpha-30))!important}.code-comment:target,.diff-file-box:target{border-color:var(--color-primary)!important;border-radius:var(--border-radius)!important;box-shadow:0 0 0 3px var(--color-primary-alpha-30)!important}.code-comment:target .content{box-shadow:none!important}.comment-header{border:none!important;background:var(--color-box-header);border-bottom:1px solid var(--color-secondary)!important;font-weight:var(--font-weight-normal)!important;padding:.5rem 1rem;margin:0!important;position:relative;color:var(--color-text);min-height:41px;background-color:var(--color-box-header);display:flex;justify-content:space-between;align-items:center}.comment-header:before,.comment-header:after{right:100%;top:20px;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.comment-header:before{border-right-color:var(--color-secondary);border-width:9px;margin-top:-9px}.comment-header:after{border-right-color:var(--color-box-header);border-width:8px;margin-top:-8px}.comment-header.arrow-top:before,.comment-header.arrow-top:after{transform:rotate(90deg)}.comment-header.arrow-top:before{top:-9px;left:6px}.comment-header.arrow-top:after{top:-8px;left:7px}.comment-header .actions a:not(.label){padding:.5rem!important}.comment-header .actions .label{margin:0!important}.comment-header-left,.comment-header-right{gap:4px}.comment-body{background:var(--color-box-body);border:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:1em}.edit-label.modal .form .column,.new-label.modal .form .column{padding-right:0}.edit-label.modal .form .buttons,.new-label.modal .form .buttons{margin-left:auto;padding-top:15px}.stats-table{display:table;width:100%;margin:6px 0;border-spacing:2px}.stats-table .table-cell{display:table-cell}.stats-table .table-cell.tiny{height:8px}.stats-table .table-cell:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.stats-table .table-cell:last-child{border-top-right-radius:4px;border-bottom-right-radius:4px}.labels-list{display:inline-flex;flex-wrap:wrap;gap:2.5px;align-items:center}.labels-list .label{padding:0 6px;min-height:20px;line-height:1.3}.ui.label.scope-parent{background:none!important;padding:0!important;gap:0!important}.archived-label{filter:grayscale(.5);opacity:.5}.ui.label.scope-left{border-bottom-right-radius:0;border-top-right-radius:0;margin-right:0}.ui.label.scope-right{border-bottom-left-radius:0;border-top-left-radius:0;margin-left:0}.repo-button-row{margin:8px 0;display:flex;align-items:center;gap:8px;justify-content:space-between}.repo-button-row-left,.repo-button-row-right{display:flex;flex:1;align-items:center;gap:.5rem}.repo-button-row-right{justify-content:flex-end}.repo-button-row[data-is-homepage=false] .repo-button-row-right{flex-grow:0}@media (max-width: 991px){.repository:not(.wiki) .repo-button-row{flex-direction:column;align-items:stretch}}.repo-button-row .button{padding:6px 10px!important;height:30px;flex-shrink:0;margin:0}.repo-button-row .button.dropdown:not(.icon){padding-right:22px!important}.repo-button-row input{height:30px}@media (max-width: 600px){.repo-button-row-left{flex-wrap:wrap}}tbody.commit-list{vertical-align:baseline}.message-wrapper,.author-wrapper{overflow:hidden;text-overflow:ellipsis;max-width:100%;display:inline-block;vertical-align:middle}.author-wrapper{max-width:180px;align-self:center;white-space:nowrap}.commit-list .message-wrapper{display:inline;overflow-wrap:anywhere}#repo-files-table .commit-list .message-wrapper{display:inline-block}@media (max-width: 767.98px){tr.commit-list{width:100%}.author-wrapper{max-width:80px}}@media (min-width: 768px) and (max-width: 991.98px){tr.commit-list{width:723px}}@media (min-width: 992px) and (max-width: 1200px){tr.commit-list{width:933px}}@media (min-width: 1201px){tr.commit-list{width:1127px}}.commit-list .commit-status-link{display:inline-block;vertical-align:middle}.commit-body{margin:.25em 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:initial}.git-notes.top{text-align:left}.comment-diff-data{background:var(--color-code-bg);min-height:12em;max-height:calc(100vh - 10.5rem);overflow-y:auto}.comment-diff-data pre{line-height:18px;margin:1em;white-space:pre-wrap;word-break:break-all;overflow-wrap:break-word}.content-history-detail-dialog .header .avatar{position:relative;top:-2px}#repo-topics .repo-topic{font-weight:var(--font-weight-normal);cursor:pointer;margin:0}#new-dependency-drop-list.ui.selection.dropdown{min-width:0;width:100%;border-radius:var(--border-radius) 0 0 var(--border-radius);border-right:0;white-space:nowrap}#new-dependency-drop-list .text{width:100%;overflow:hidden}.tag-code{height:28px}.tag-code,.tag-code td,.tag-code.line-expanded{background-color:var(--color-box-body-highlight);vertical-align:middle}.diff-file-body tr.tag-code:last-child{background:none}.diff-file-body tr.tag-code:last-child>td{background:var(--color-box-body-highlight)}.diff-file-body tr.tag-code:last-child td:first-child,.diff-file-body tr.tag-code:last-child td:first-child *{border-bottom-left-radius:3px}.diff-file-body tr.tag-code:last-child td:last-child,.diff-file-body tr.tag-code:last-child td:last-child *{border-bottom-right-radius:3px}.resolved-placeholder{display:flex;align-items:center;font-size:14px!important;padding:8px!important;font-weight:var(--font-weight-normal)!important;border:1px solid var(--color-secondary)!important;border-radius:var(--border-radius)!important;margin:4px!important}.resolved-placeholder+.comment-code-cloud{padding-top:0!important}.line-expanded{background-color:var(--color-secondary-alpha-20)}.issue-keyword{border-bottom:1px dotted var(--color-text-light-3)!important}.issue-keyword:hover{border-bottom:none!important}.file-header{align-items:center;display:flex;justify-content:space-between;overflow-x:auto;padding:6px 12px!important;font-size:13px!important}.file-info{display:flex;align-items:center}.file-info-entry{display:flex;align-items:center;width:max-content}.file-info-entry+.file-info-entry{border-left:1px solid currentcolor;margin-left:8px;padding-left:8px}#diff-container{display:flex}#diff-file-boxes{flex:1;max-width:100%;display:flex;flex-direction:column;gap:8px}#diff-file-tree{flex:0 0 20%;max-width:380px;line-height:inherit;position:sticky;padding-top:0;top:47px;max-height:calc(100vh - 47px);height:100%;overflow-y:auto}.ui.message.unicode-escape-prompt{margin-bottom:0;border-radius:0;display:flex;flex-direction:column}.ui.buttons .unescape-button{border-top-right-radius:.28571429rem;border-bottom-right-radius:.28571429rem}.webhook-info{padding:7px 12px;margin:10px 0;background-color:var(--color-markup-code-block);border:1px solid var(--color-secondary);border-radius:var(--border-radius);font-size:13px;line-height:1.5;overflow:auto}.title_wip_desc{margin-top:1em}.sidebar-item-link{display:inline-flex;align-items:center;overflow-wrap:anywhere}.diff-file-header{padding:5px 8px!important;box-shadow:0 -1px 0 1px var(--color-body);font-weight:var(--font-weight-normal);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.diff-file-header .file{min-width:0}.diff-file-header .file-link{max-width:fit-content;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.diff-file-header .button{padding:0 12px;flex:0 0 auto;margin-right:0;height:30px}@media (max-width: 767.98px){.diff-file-header{flex-direction:column;align-items:stretch}}.diff-file-box[data-folded=true] .diff-file-body{display:none}.diff-file-box[data-folded=true] .diff-file-header{border-radius:var(--border-radius)!important}.ui.attached.header.diff-file-header.sticky-2nd-row{position:sticky;top:44px;z-index:7}.diff-file-name{flex:auto;min-width:100px}.diff-file-name .ui.label{margin-left:0!important}.diff-stats-bar{display:inline-block;background-color:var(--color-red);height:12px;width:44px}.diff-stats-bar .diff-stats-add-bar{background-color:var(--color-green);height:100%}.ui.form .right .ui.button{margin-left:.25em;margin-right:0}.removed-code{background:var(--color-diff-removed-word-bg)}.added-code{background:var(--color-diff-added-word-bg)}.code-diff-unified .del-code,.code-diff-unified .del-code td,.code-diff-split .del-code .lines-num-old,.code-diff-split .del-code .lines-escape-old,.code-diff-split .del-code .lines-type-marker-old,.code-diff-split .del-code .lines-code-old{background:var(--color-diff-removed-row-bg);border-color:var(--color-diff-removed-row-border)}.code-diff-unified .add-code,.code-diff-unified .add-code td,.code-diff-split .add-code .lines-type-marker-new,.code-diff-split .add-code .lines-escape-new,.code-diff-split .add-code .lines-code-new,.code-diff-split .del-code .add-code.lines-type-marker-new,.code-diff-split .del-code .add-code.lines-escape-new,.code-diff-split .del-code .add-code.lines-code-new{background:var(--color-diff-added-row-bg);border-color:var(--color-diff-added-row-border)}.code-diff-split .del-code .lines-type-marker-new,.code-diff-split .del-code .lines-code-new,.code-diff-split .del-code .lines-escape-new,.code-diff-split .add-code .lines-escape-old,.code-diff-split .add-code .lines-type-marker-old,.code-diff-split .add-code .lines-code-old,.code-diff-split .add-code .lines-num.lines-num-old,.code-diff-split .del-code .lines-num.lines-num-new{background:var(--color-diff-inactive)}.code-diff-unified .del-code .lines-num,.code-diff-split .del-code .lines-num{background:var(--color-diff-removed-linenum-bg);color:var(--color-text)}.code-diff-unified .add-code .lines-num,.code-diff-split .add-code .lines-num,.code-diff-split .del-code .add-code.lines-num{background:var(--color-diff-added-linenum-bg);color:var(--color-text)}.code-diff-split tbody tr td:nth-child(5),.code-diff-split tbody tr td.add-comment-right{border-left:1px solid var(--color-secondary)}.migrate-entries{display:grid!important;grid-template-columns:repeat(3,1fr);gap:25px;margin:0!important}@media (max-width: 767.98px){.migrate-entries{grid-template-columns:repeat(1,1fr)}}.migrate-entry{transition:all .1s ease-in-out;box-shadow:none!important;border:1px solid var(--color-secondary);color:var(--color-text)!important;width:auto!important;margin:0!important}.migrate-entry:hover{transform:scale(105%);box-shadow:0 .5rem 1rem var(--color-shadow)!important}.migrate-entry .description{text-wrap:balance}.commits-table .commits-table-right form{display:flex;align-items:center;gap:.75em;justify-content:center;flex-wrap:wrap}@media (max-width: 767.98px){.repository.file.list #repo-files-table .entry,.repository.file.list #repo-files-table .commit-list{align-items:center;display:flex!important;padding-top:4px;padding-bottom:4px}.repository.file.list #repo-files-table .entry td.age,.repository.file.list #repo-files-table .commit-list td.age,.repository.file.list #repo-files-table .entry th.age,.repository.file.list #repo-files-table .commit-list th.age{margin-left:auto}.repository.file.list #repo-files-table .entry td.message,.repository.file.list #repo-files-table .commit-list td.message,.repository.file.list #repo-files-table .entry span.commit-summary,.repository.file.list #repo-files-table .commit-list tr span.commit-summary{display:none!important}.repository.view.issue .comment-list .timeline,.repository.view.issue .comment-list .timeline-item{margin-left:0}.repository.view.issue .comment-list .timeline:before{left:14px}.repository.view.issue .comment-list .timeline .inline-timeline-avatar{display:flex;margin-bottom:auto;margin-left:6px;margin-right:2px}.repository.view.issue .comment-list .timeline .comment-header{padding-left:4px}.repository.view.issue .comment-list .timeline .comment-header:before,.repository.view.issue .comment-list .timeline .comment-header:after{content:unset}.repository.view.issue .comment-list .timeline .timeline-avatar,.repository.view.issue .comment-list .timeline .comment-header-right .role-label{display:none}.commit-header-row .ui.horizontal.list{width:100%;overflow-x:auto;margin-top:2px}.commit-header-row .ui.horizontal.list .item{align-items:center;display:flex}.commit-header-row .author{padding:3px 0}.commit-header h3{flex-basis:auto!important;margin-bottom:.5rem!important}.commits-table{flex-direction:column}.commits-table .commits-table-left{align-items:initial!important;margin-bottom:6px}.commits-table .commits-table-right form>div:nth-child(1){order:1}.commits-table .commits-table-right form>div:nth-child(2){order:3}.commits-table .commits-table-right form>button:nth-child(3){order:2}.commit-table{overflow-x:auto}.commit-table td.sha,.commit-table th.sha{display:none!important}.comment-header,.comment-header .comment-header-left{flex-wrap:wrap}.comment-header .comment-header-right{margin-left:auto}}.commit-status-header{border:none!important;border-bottom:1px solid var(--color-secondary)!important;margin:0 0 -1px!important}.commit-status-list{max-height:240px;overflow-x:hidden;transition:max-height .2s}.commit-status-item{height:40px;padding:0 10px;display:flex;gap:8px;align-items:center}.commit-status-item+.commit-status-item{border-top:1px solid var(--color-secondary)}.commit-status-item .commit-status{flex-shrink:0}.commit-status-item .status-context{color:var(--color-text);flex:1}.commit-status-item .status-details{display:flex;align-items:center;justify-content:flex-end;gap:8px}@media (max-width: 767.98px){.commit-status-item .status-details{flex-direction:column;align-items:flex-end;justify-content:center}}.commit-status-item .status-details>span{padding-right:.5em}.search-fullname{color:var(--color-text-light-2)}#issue-pins{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}@media (max-width: 767.98px){#issue-pins{grid-template-columns:repeat(1,1fr)}}#cherry-pick-modal .scrolling.menu{max-height:200px}.branch-selector-dropdown{max-width:100%}.ui.dropdown.branch-selector-dropdown>.menu{margin-top:4px}.ui.dropdown.branch-selector-dropdown .scrolling.menu{max-width:min(400px,90vw)}.branch-selector-dropdown .branch-dropdown-button{margin:0;max-width:340px;line-height:var(--line-height-default)}@media (min-width: 768px) and (max-width: 991.98px){.branch-selector-dropdown .branch-dropdown-button{max-width:185px}}@media (max-width: 767.98px){.branch-selector-dropdown .branch-dropdown-button{max-width:165px}}.branch-selector-dropdown .branch-tag-tab{padding:0 10px}.branch-selector-dropdown .branch-tag-item{display:inline-block;padding:10px;border:1px solid transparent;border-bottom:none}.branch-selector-dropdown .branch-tag-item.active{border-color:var(--color-secondary);background:var(--color-menu);border-top-left-radius:var(--border-radius);border-top-right-radius:var(--border-radius)}.branch-selector-dropdown .branch-tag-divider{margin-top:-1px!important;border-top:1px solid var(--color-secondary)}.branch-selector-dropdown .scrolling.menu{border-top:none!important}.branch-selector-dropdown .menu .item .rss-icon{position:absolute;right:4px;visibility:hidden}.branch-selector-dropdown .menu .item:hover .rss-icon{visibility:visible}.branch-selector-dropdown .scrolling.menu .loading-indicator{height:4em}#release-list{display:flex;flex-direction:column;gap:var(--page-spacing);padding-left:0}#release-list .release-list-title{font-size:2rem;font-weight:var(--font-weight-normal);display:flex;align-items:center;gap:.25em;margin:0}#release-list .release-entry{display:flex;gap:var(--page-spacing)}#release-list .release-entry .meta{flex:0 0 150px;position:relative;text-align:right;display:flex;flex-direction:column;gap:10px}#release-list .release-entry .detail{flex:1;margin:0}@media (max-width: 767.98px){#release-list .release-entry{flex-direction:column;gap:var(--page-spacing)}#release-list .release-entry .meta{margin-left:6px;flex-direction:row;flex-basis:auto;display:flex;align-items:center}#release-list .js-branch-tag-selector{margin-left:auto}#release-list .branch-selector-dropdown .menu{right:0;left:auto}}#release-list .release-entry .detail .author img{margin-bottom:2px}#release-list .release-entry .detail .download .list{padding-left:0;border:1px solid var(--color-secondary);border-radius:var(--border-radius)}#release-list .release-entry .detail .download .list li{display:flex;justify-content:space-between;padding:8px;border-bottom:1px solid var(--color-secondary)}#release-list .release-entry .detail .download[open] summary{margin-bottom:10px}#release-list .download-icon{margin-right:.25rem;color:var(--color-text-light-1)}#release-list .release-entry .detail .download .list li:last-child{border-bottom:none}#tags-table .tag-list-row{padding:8px 12px}#tags-table .tag-list-row-title{font-size:18px;font-weight:var(--font-weight-normal)}.repository.new.release .target{min-width:500px}.repository.new.release .target #tag-name{margin-top:-4px}.repository.new.release .target .at{margin-left:-5px;margin-right:5px}.repository.new.release .target .selection.dropdown{padding-top:10px;padding-bottom:10px}.repository.new.release .prerelease.field{margin-bottom:0}@media (max-width: 438px){.repository.new.release .field button,.repository.new.release .field input{width:100%}}@media (max-width: 767.98px){.repository.new.release .field button{margin-bottom:1em}}.repository.new.release .field .attachment_edit{max-width:48em}.repository.new.release .markup{min-height:240px}.issue-card{display:flex;flex-direction:column;gap:4px;align-items:stretch;border-radius:var(--border-radius);padding:8px 10px;border:1px solid var(--color-secondary);background:var(--color-card)}.issue-card-icon,.issue-card-unpin{margin-top:1px;flex-shrink:0}.issue-card-title{flex:1;font-size:14px}.issue-card.sortable-chosen .issue-card-title{cursor:inherit}.issue-card-bottom{display:flex;width:100%;justify-content:space-between;gap:.25em}.issue-card-assignees{display:flex;align-items:center;gap:.25em;justify-content:end;flex-wrap:wrap}.issue-label-list{list-style:none;padding:0;margin:0}.issue-label-list .item{border-bottom:1px solid var(--color-secondary);display:flex;padding:1em 0;margin:0}.issue-label-list .item:first-child{padding-top:0}.issue-label-list .item:last-child{border-bottom:none;padding-bottom:0}.issue-label-list .item .label-title,.issue-label-list .item .label-issues,.issue-label-list .item .label-operation{width:33%}.issue-label-list .item a{font-size:12px;padding-right:10px;color:var(--color-text-light)}.issue-label-list .item.org-label{opacity:.7}.label-operation .label{height:fit-content}.archived-label-hint{float:right;margin:-12px}.issue-list-toolbar{display:flex;flex-wrap:wrap-reverse;justify-content:space-between;align-items:flex-start;gap:1rem;margin-top:1rem}.issue-list-toolbar-left{display:flex;align-items:center}.issue-list-toolbar-right .filter.menu{flex-direction:row;flex-wrap:wrap}@media (max-width: 767.98px){.issue-list-toolbar-right .dropdown .menu{left:auto!important;right:auto!important}.issue-list-navbar{order:0}.issue-list-new{order:1;margin-left:auto!important}.issue-list-search{order:2!important}}#issue-list .flex-item-body .branches{display:inline-flex}#issue-list .flex-item-body .branches .branch{background-color:var(--color-secondary-alpha-50);border-radius:var(--border-radius);padding:0 4px}#issue-list .flex-item-body .branches .truncated-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px;display:inline-block;vertical-align:top}#issue-list .flex-item-body .checklist progress{margin-left:2px;width:80px;height:6px;display:inline-block}#issue-list .flex-item-body .checklist progress::-webkit-progress-value{background-color:var(--color-secondary-dark-4)}#issue-list .flex-item-body .checklist progress::-moz-progress-bar{background-color:var(--color-secondary-dark-4)}.archived-label-filter{margin-left:10px;font-size:12px;display:flex!important;margin-bottom:8px;min-width:fit-content}.list-header{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.list-header-sort{display:flex;align-items:center;padding-left:1rem;padding-right:1rem}.list-header-search{display:flex;flex:1;align-items:center;flex-wrap:wrap;justify-content:center;min-width:200px}.list-header-search .input{flex:1}@media (max-width: 767.98px){.list-header-search{order:0}.list-header-toggle{order:1}.list-header-sort{order:2;margin-left:auto}}.code-view .lines-num:hover{color:var(--color-text-dark)!important}.code-line-button{border:1px solid var(--color-secondary);border-radius:var(--border-radius);padding:1px 4px!important;position:absolute;font-family:var(--fonts-regular);left:0;transform:translate(calc(-50% + 6px));cursor:pointer}.code-line-button:hover{background:var(--color-secondary)!important}.repository.wiki .wiki-pages-list tr:hover{background-color:var(--color-hover)}.repository.wiki .wiki-pages-list .wiki-git-entry{margin-left:10px;display:none}.repository.wiki .wiki-pages-list tr:hover .wiki-git-entry{display:inline-block}.repository.wiki .markup{overflow:visible}.repository.wiki .markup[data-tab-panel=markdown-previewer]{min-height:340px}.repository.wiki .wiki-content-parts .markup{border:1px solid var(--color-secondary);border-radius:var(--border-radius);padding:1em;margin-top:1em;font-size:1em}.repository.wiki .wiki-content-main.with-sidebar{float:left;width:80%;max-width:calc(100% - 150px - 1em)}.repository.wiki .wiki-content-sidebar{float:right;width:calc(20% - 1em);min-width:150px}.repository.wiki .wiki-content-sidebar .ui.message.unicode-escape-prompt p{display:none}.repository.wiki .wiki-content-footer{margin-top:1em}.repository.wiki .wiki-content-toc ul{margin:0;list-style:none;padding:5px 0 5px 1em}.repository.wiki .wiki-content-toc ul ul{border-left:1px var(--color-secondary);border-left-style:dashed}@media (max-width: 767.98px){.repository.wiki .clone-panel #repo-clone-url{width:160px}.repository.wiki .wiki-content-main.with-sidebar,.repository.wiki .wiki-content-sidebar{float:none;width:100%;min-width:unset;max-width:unset}}.repository .secondary-nav{padding-top:12px}.repository .secondary-nav .fork-flag{margin-top:.5rem;font-size:12px}.repo-header{display:flex;flex-flow:row wrap;justify-content:space-between;gap:.5rem;margin-bottom:4px}.repo-header .flex-item{padding:0}.repo-header .flex-item-main{flex:0;flex-basis:unset}.repo-header .flex-item-trailing{flex-wrap:nowrap}.repo-buttons{align-items:center;display:flex;flex-flow:row wrap;word-break:keep-all;gap:.25em}.repo-buttons button[disabled]~.label{opacity:var(--opacity-disabled);color:var(--color-text-dark);background:var(--color-light-mimic-enabled)!important}.repo-buttons button[disabled]~.label:hover{color:var(--color-primary-dark-1)}.repo-buttons .ui.labeled.button.disabled{pointer-events:inherit!important}.repo-buttons .ui.labeled.button.disabled>.label{color:var(--color-text-dark);background:var(--color-light-mimic-enabled)!important}.repo-buttons .ui.labeled.button.disabled>.label:hover{color:var(--color-primary-dark-1)}.repo-buttons .ui.labeled.button.disabled>.button{pointer-events:none!important}@media (max-width: 767.98px){.repo-buttons .ui.button,.repo-buttons .ui.label{padding-left:8px;padding-right:8px;margin:0}}.bottom-reactions{display:flex;gap:6px;margin:0 1em 1em}.timeline-item .conversation-holder .bottom-reactions{margin:1em 0 0 36px;padding-bottom:8px}.bottom-reactions .ui.label{padding:5px 8px;font-weight:var(--font-weight-normal)}.bottom-reactions .ui.label.primary{background-color:var(--color-reaction-active-bg)!important}.bottom-reactions .ui.label:hover{background-color:var(--color-reaction-hover-bg)!important}.bottom-reactions .ui.label.disabled{cursor:default;opacity:1}.bottom-reactions .ui.label .reaction{font-size:16px;display:flex}.bottom-reactions .ui.label .reaction img{height:16px;aspect-ratio:1}.bottom-reactions .reaction-count{margin-left:4px}.ui.dropdown.select-reaction .menu{min-width:170px}.ui.dropdown.select-reaction .menu>.item{float:left;margin:4px;font-size:20px;width:34px;height:34px;border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center}.bottom-reactions .select-reaction{padding:0 10px}.bottom-reactions .select-reaction:not(.active){visibility:hidden}.bottom-reactions:hover .select-reaction{visibility:visible}.repository.file.editor .tab[data-tab=write]{padding:0!important}.repository.file.editor .tab[data-tab=write] .editor-toolbar{border:0!important}.repository.file.editor .tab[data-tab=write] .CodeMirror{border-left:0;border-right:0;border-bottom:0}.repo-editor-header{display:flex;margin:1rem 0;padding:3px 0}.editor-toolbar{border-color:var(--color-secondary)}.editor-toolbar.fullscreen{background:var(--color-body)}.editor-toolbar button{border:none!important;color:var(--color-text-light)}.editor-toolbar button:not(:hover){background-color:transparent!important}.editor-toolbar i.separator{border-left:none;border-right-color:var(--color-secondary)}.editor-toolbar button:hover{background:var(--color-hover)}.editor-toolbar button.active{background:var(--color-active)}.editor-toolbar:not(.fullscreen) .preview{display:none}.editor-toolbar.fullscreen .revert-to-textarea{display:none}.editor-preview{background-color:var(--color-body)}.editor-preview-side{border-color:var(--color-secondary)}.editor-statusbar{color:var(--color-text-light)}.editor-loading{padding:1rem;text-align:center}.edit-diff{padding:0!important}.edit-diff>div>.ui.table{border-top:none!important;border-bottom:none!important}.combo-markdown-editor{width:100%}.combo-markdown-editor markdown-toolbar{cursor:default;display:flex;align-items:center;padding-bottom:10px;gap:.5rem;flex-wrap:wrap}.combo-markdown-editor .markdown-toolbar-group{display:flex}.combo-markdown-editor .markdown-toolbar-group:last-child{flex:1;justify-content:flex-end}.combo-markdown-editor .markdown-toolbar-button{border:none;background:none;user-select:none;padding:5px;cursor:pointer;color:var(--color-text)}.combo-markdown-editor .markdown-toolbar-button:hover{color:var(--color-primary)}.ui.form .combo-markdown-editor textarea.markdown-text-editor,.combo-markdown-editor textarea.markdown-text-editor{display:block;width:100%;max-height:calc(100vh - var(--min-height-textarea));resize:vertical}.combo-markdown-editor .CodeMirror-scroll{max-height:calc(100vh - var(--min-height-textarea))}.combo-markdown-editor .CodeMirror-scroll .cm-header-1{font-size:2em}.combo-markdown-editor .CodeMirror-scroll .cm-header-2{font-size:1.5em}.combo-markdown-editor .CodeMirror-scroll .cm-header-3{font-size:1.25em}.combo-markdown-editor .CodeMirror-scroll .cm-header-4{font-size:1em}.combo-markdown-editor .CodeMirror-scroll .cm-header-5{font-size:.875em}.combo-markdown-editor .CodeMirror-scroll .cm-header-6{font-size:.85em}text-expander{display:block;position:relative}text-expander .suggestions{position:absolute;min-width:180px;padding:0;margin-top:24px;list-style:none;background:var(--color-box-body);border-radius:var(--border-radius);border:1px solid var(--color-secondary);box-shadow:0 .5rem 1rem var(--color-shadow);z-index:100}text-expander .suggestions li{display:flex;align-items:center;cursor:pointer;padding:4px 8px;font-weight:var(--font-weight-medium)}text-expander .suggestions li+li{border-top:1px solid var(--color-secondary-alpha-40)}text-expander .suggestions li:first-child{border-radius:var(--border-radius) var(--border-radius) 0 0}text-expander .suggestions li:last-child{border-radius:0 0 var(--border-radius) var(--border-radius)}text-expander .suggestions li:only-child{border-radius:var(--border-radius)}text-expander .suggestions li:hover{background:var(--color-hover)}text-expander .suggestions .fullname{font-weight:var(--font-weight-normal);margin-left:4px;color:var(--color-text-light-1)}text-expander .suggestions li[aria-selected=true],text-expander .suggestions li[aria-selected=true] span{background:var(--color-primary);color:var(--color-primary-contrast)}text-expander .suggestions img{width:24px;height:24px;margin-right:8px}#create-page-form form{margin:auto}#create-page-form form .ui.message{text-align:center}@media (min-width: 768px){#create-page-form form{width:800px!important}#create-page-form form .header{padding-left:280px!important}#create-page-form form .inline.field>label{text-align:right;width:250px!important;word-wrap:break-word}#create-page-form form .help{margin-left:265px!important}#create-page-form form .optional .title{margin-left:250px!important}#create-page-form form .inline.field>input,#create-page-form form .inline.field>textarea{width:50%}}@media (max-width: 767.98px){#create-page-form form .optional .title{margin-left:15px}#create-page-form form .inline.field>label{display:block}}.organization .head .ui.header .ui.right{margin-top:5px}.organization.new.org form{margin:auto}.organization.new.org form .ui.message{text-align:center}@media (min-width: 768px){.organization.new.org form{width:800px!important}.organization.new.org form .header{padding-left:280px!important}.organization.new.org form .inline.field>label{text-align:right;width:250px!important;word-wrap:break-word}.organization.new.org form .help{margin-left:265px!important}.organization.new.org form .optional .title{margin-left:250px!important}.organization.new.org form .inline.field>input,.organization.new.org form .inline.field>textarea{width:50%}}@media (max-width: 767.98px){.organization.new.org form .optional .title{margin-left:15px}.organization.new.org form .inline.field>label{display:block}}.organization.new.org form .header{padding-left:0!important;text-align:center}.page-content.organization .org-avatar{margin-right:15px}.page-content.organization #org-info{overflow-wrap:anywhere;flex:1}.page-content.organization #org-info .ui.header{display:flex;align-items:center;font-size:36px;margin-bottom:0}.page-content.organization #org-info .desc{font-size:16px;margin-bottom:10px}.page-content.organization #org-info .meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.page-content.organization .ui.top.header .ui.right{margin-top:0}.page-content.organization .teams .item{padding:10px 15px}.page-content.organization .members .ui.avatar{width:48px;height:48px;margin-right:5px;margin-bottom:5px}.organization.invite #invite-box{margin:50px auto auto;width:500px!important}.organization.invite #invite-box #search-user-box input{margin-left:0;width:300px}.organization.invite #invite-box .ui.button{margin-left:5px;margin-top:-3px}.organization.invite .ui.avatar{width:100%;height:100%}.organization.teams .detail .item{padding:10px 15px}.organization.teams .detail .item:not(:last-child){border-bottom:1px solid var(--color-secondary)}.org-team-navbar .active.item{background:var(--color-box-body)!important}.user.profile .ui.card .header{display:block;font-weight:var(--font-weight-semibold);font-size:1.3rem;margin-top:-.2rem;line-height:1.3rem}.user.profile .ui.card .profile-avatar-name{border-top:none;text-align:center}.user.profile .ui.card .extra.content{padding:0}.user.profile .ui.card .extra.content>ul{margin:0;padding:0}.user.profile .ui.card .extra.content>ul>li{padding:10px;display:flex;list-style:none;align-items:center;gap:.25em}.user.profile .ui.card .extra.content>ul>li:not(:last-child){border-bottom:1px solid var(--color-secondary)}.user.profile .ui.card .extra.content>ul>li.follow .ui.button{width:100%}.user.profile .ui.card #profile-avatar{padding:1rem 1rem .25rem;justify-content:center}.user.profile .ui.card #profile-avatar img{max-width:100%;height:auto}@media (max-width: 767.98px){.user.profile .ui.card #profile-avatar img{width:30vw}.user.profile .ui.card{width:100%}}.user.profile .ui.secondary.stackable.pointing.menu{flex-wrap:wrap}.user.followers .header.name{font-size:20px;line-height:24px;vertical-align:middle}.user.followers .follow .ui.button{padding:8px 15px}.user.link-account:not(.icon){padding-top:15px;padding-bottom:5px}.user-orgs{display:flex;flex-flow:row wrap;padding:0;margin:-3px!important}.user-orgs>li{display:flex;border-bottom:0!important;padding:3px!important;max-width:60px}.user-badges{display:grid;grid-template-columns:repeat(auto-fill,64px);gap:2px}.user-badges img{object-fit:contain}#readme_profile{padding:1em 2em;border-radius:var(--border-radius);background:var(--color-card);border:1px solid var(--color-secondary)}#notification_table{background:var(--color-box-body);border:1px solid var(--color-secondary);border-radius:var(--border-radius)}.notifications-item:hover{background:var(--color-hover)}.notifications-buttons{display:none;min-width:74px}.notifications-updated,.notifications-item:hover .notifications-buttons{display:flex}.notifications-item:hover .notifications-updated{display:none}.dashboard.feeds .context.user.menu,.dashboard.issues .context.user.menu{z-index:101;min-width:200px}.dashboard.feeds .context.user.menu .ui.header,.dashboard.issues .context.user.menu .ui.header{font-size:1rem}.dashboard.feeds .filter.menu,.dashboard.issues .filter.menu{width:initial}.dashboard.feeds .filter.menu .item,.dashboard.issues .filter.menu .item{text-align:left;display:flex;align-items:center;justify-content:space-between}.dashboard.feeds .filter.menu .item .text.truncate,.dashboard.issues .filter.menu .item .text.truncate{width:75%}.dashboard.feeds .filter.menu .jump.item,.dashboard.issues .filter.menu .jump.item{margin:1px;padding-right:0}.dashboard.feeds .filter.menu .menu,.dashboard.issues .filter.menu .menu{max-height:300px;overflow-x:auto;right:0!important;left:auto!important}@media (max-width: 767.98px){.dashboard.feeds .filter.menu,.dashboard.issues .filter.menu{width:100%}}.dashboard.feeds .right.stackable.menu>.item.active,.dashboard.issues .right.stackable.menu>.item.active{color:var(--color-red)}.dashboard .dashboard-repos,.dashboard .dashboard-orgs{margin:0 1px}.dashboard .secondary-nav{padding:1px 12px}.dashboard .secondary-nav .org-visibility .label{margin-left:5px}.dashboard .secondary-nav .ui.dropdown{max-width:100%}.admin.hooks .list>.item:not(:first-child){border-top:1px solid var(--color-secondary);padding:.25rem 1rem;margin:12px -1rem -1rem}.admin dl.admin-dl-horizontal{padding:1em;margin:0;display:flex;flex-wrap:wrap}.admin dl.admin-dl-horizontal dt,.admin dl.admin-dl-horizontal dd{line-height:var(--line-height-default);padding:5px 0}.admin dl.admin-dl-horizontal dt{width:300px;max-width:calc(100% - 100px - 1em);font-weight:var(--font-weight-semibold)}.admin dl.admin-dl-horizontal dd{margin-left:auto;width:calc(100% - 300px - 1em);min-width:100px}.admin code,.admin pre{white-space:pre-wrap;word-wrap:break-word}.admin .ui.table.segment{overflow-x:auto}.admin .table th{white-space:nowrap}.admin-responsive-columns{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.explore .secondary-nav{border-width:1px!important}.explore .secondary-nav .svg{width:16px;text-align:center;margin-right:5px}.ui.repository.branches .info{font-size:12px;color:var(--color-text-light);display:flex;white-space:pre}.ui.repository.branches .info .commit-message{max-width:72em;overflow:hidden;text-overflow:ellipsis}.ui.repository.branches .overflow-visible{overflow:visible}.ui.repository.branches table .ui.popup{text-align:left}.show-outdated,.hide-outdated{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;margin-right:0!important}.ui.button.add-code-comment{padding:2px;position:absolute;margin-left:-22px;z-index:5;opacity:0;transition:transform .1s ease-in-out;transform:scale(1);box-shadow:none!important;border:none!important}.ui.button.add-code-comment:hover{transform:scale(1.1)}.lines-escape .toggle-escape-button:before{visibility:visible;content:"\26a0\fe0f";font-family:var(--fonts-emoji);color:var(--color-red)}.repository .diff-file-box .code-diff td.lines-escape{padding-left:0!important}.diff-file-box .lines-code:hover .ui.button.add-code-comment{opacity:1}.ui.button.add-code-comment:focus{opacity:1}.repository .diff-file-box .code-diff .add-comment-left,.repository .diff-file-box .code-diff .add-comment-right,.repository .diff-file-box .code-diff .add-code-comment .add-comment-left,.repository .diff-file-box .code-diff .add-code-comment .add-comment-right,.repository .diff-file-box .code-diff .add-code-comment .lines-type-marker{padding-left:0!important;padding-right:0!important}.add-comment-left.add-comment-right .ui.attached.header{border:1px solid var(--color-secondary)}.add-comment-left.add-comment-right .ui.attached.header:not(.top){margin-bottom:.5em}.show-outdated:hover,.hide-outdated:hover{text-decoration:underline}.comment-code-cloud{padding:.5rem 1rem!important;position:relative}.code-diff .conversation-holder .comment-code-cloud{max-width:820px}.comment-code-cloud .comments .comment{padding:0}.comment-code-cloud .attached.tab{border:0;padding:0;margin:0}.comment-code-cloud .attached.header{padding:1px 8px 1px 12px}@media (max-width: 767.98px){.comment-code-cloud .attached.header{padding-top:4px;padding-bottom:4px}}.comment-code-cloud .attached.header .text{margin:0}.comment-code-cloud .right.menu.options .item{padding:.85714286em .442857em;cursor:pointer}.comment-code-cloud .ui.active.tab{padding:.5em}.comment-code-cloud .ui.active.tab.markup{padding:1em;min-height:168px}.comment-code-cloud .ui.tabular.menu{margin:.5em}.comment-code-cloud .editor-statusbar{display:none}.comment-code-cloud .footer{padding:10px 0}.comment-code-cloud .footer .markup-info{display:inline-block;margin:5px 0;font-size:12px;color:var(--color-text-light)}.comment-code-cloud .footer .ui.right.floated{padding-top:6px}.comment-code-cloud .footer:after{clear:both;content:"";display:block}.diff-file-body .comment-form{margin:0 0 0 3em}.diff-file-body.binary{padding:5px 10px}.file-comment{color:var(--color-text)}.code-expander-button{border:none;color:var(--color-text-light);height:28px;display:flex;justify-content:center;align-items:center;width:100%;background:var(--color-expand-button);flex:1}.code-expander-buttons[data-expand-direction="3"] .code-expander-button{height:18px}.code-expander-button:hover{background:var(--color-primary);color:var(--color-primary-contrast)}.review-box-panel .ui.segment{border:none}.review-box-panel .CodeMirror-scroll{min-height:80px;max-height:calc(100vh - 360px)}.review-box-panel .combo-markdown-editor{width:730px;max-width:calc(100vw - 70px)}#review-box{position:relative}#review-box .review-comments-counter{background-color:var(--color-primary-light-4);color:var(--color-primary-contrast)}#review-box:hover .review-comments-counter{background-color:var(--color-primary-light-5)}#review-box .review-comments-counter[data-pending-comment-number="0"]{display:none}.pull.files.diff .comment{scroll-margin-top:99px}@media (max-width: 991.98px){.pull.files.diff .comment{scroll-margin-top:130px}}.changed-since-last-review{border:1px var(--color-accent) solid;background-color:var(--color-small-accent);border-radius:var(--border-radius);padding:4px 8px;margin:-8px 0;font-size:.857rem}.viewed-file-form{display:flex;align-items:center;border:1px solid transparent;padding:4px 8px;border-radius:var(--border-radius);font-size:.857rem}@media (max-width: 767.98px){.viewed-file-form{margin-left:auto}}.viewed-file-form input{margin-right:4px}.viewed-file-checked-form{background-color:var(--color-small-accent);border-color:var(--color-accent)}#viewed-files-summary{width:100%;height:8px}.runner-container{padding-bottom:30px}.runner-container .ui.table.segment{overflow-x:auto}.runner-container .runner-ops>a{margin-left:.5em}.runner-container .runner-ops-delete{color:var(--color-red-light)}.runner-container .runner-new-text{color:var(--color-white)}.runner-container #runner-new:hover .runner-new-text{color:var(--color-white)!important}.runner-container .task-status-success{background-color:var(--color-green);color:var(--color-white)}.runner-container .task-status-failure{background-color:var(--color-red-light);color:var(--color-white)}.runner-container .task-status-running{background-color:var(--color-blue);color:var(--color-white)}.runner-container .task-status-cancelled,.runner-container .task-status-blocked{background-color:var(--color-yellow);color:var(--color-white)}.run-list-item-right{width:130px;display:flex;flex-direction:column;flex-shrink:0;gap:3px;color:var(--color-text-light)}.run-list-item-right .run-list-meta{display:flex;flex-wrap:nowrap;gap:.25rem;align-items:center}.run-list .flex-item-trailing{flex-wrap:nowrap;width:280px;flex:0 0 280px}.run-list-ref{display:inline-block!important}@media (max-width: 767.98px){.run-list .flex-item-trailing{flex-direction:column;align-items:flex-end;width:auto;flex-basis:auto}.run-list-item-right,.run-list-ref{max-width:110px}}.gt-word-break{word-wrap:break-word!important;word-break:break-word;overflow-wrap:anywhere}.gt-ellipsis{overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important}.g-table-auto-ellipsis td.auto-ellipsis{position:relative}.g-table-auto-ellipsis td.auto-ellipsis span{position:absolute;inset:0;padding:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.interact-fg{color:inherit!important}.interact-fg:hover{color:var(--color-primary)!important}.interact-fg:active{color:var(--color-primary-active)!important}.interact-bg{background:transparent!important}.interact-bg:hover{background:var(--color-hover)!important}.interact-bg:active{background:var(--color-active)!important}.tw-hidden.tw-hidden{display:none!important}.tw-break-anywhere{overflow-wrap:anywhere!important}@media (max-width: 767.98px){.not-mobile.not-mobile{display:none!important}}@media (min-width: 767.98px){.only-mobile.only-mobile{display:none!important}}.tab-size-1{tab-size:1!important}.tab-size-2{tab-size:2!important}.tab-size-3{tab-size:3!important}.tab-size-4{tab-size:4!important}.tab-size-5{tab-size:5!important}.tab-size-6{tab-size:6!important}.tab-size-7{tab-size:7!important}.tab-size-8{tab-size:8!important}.tab-size-9{tab-size:9!important}.tab-size-10{tab-size:10!important}.tab-size-11{tab-size:11!important}.tab-size-12{tab-size:12!important}.tab-size-13{tab-size:13!important}.tab-size-14{tab-size:14!important}.tab-size-15{tab-size:15!important}.tab-size-16{tab-size:16!important}.tw-pointer-events-none{pointer-events:none!important}.tw-invisible{visibility:hidden!important}.tw-relative{position:relative!important}.tw-float-right{float:right!important}.tw-clear-both{clear:both!important}.tw-m-0{margin:0!important}.tw-m-1{margin:.25rem!important}.tw-m-auto{margin:auto!important}.tw-mx-0{margin-left:0!important;margin-right:0!important}.tw-mx-2{margin-left:.5rem!important;margin-right:.5rem!important}.tw-mx-auto{margin-left:auto!important;margin-right:auto!important}.tw-my-0{margin-top:0!important;margin-bottom:0!important}.tw-my-0\.5{margin-top:.125rem!important;margin-bottom:.125rem!important}.tw-my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.tw-my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.tw-my-8{margin-top:2rem!important;margin-bottom:2rem!important}.tw-my-\[--page-spacing\]{margin-top:var(--page-spacing)!important;margin-bottom:var(--page-spacing)!important}.tw-mb-0{margin-bottom:0!important}.tw-mb-1{margin-bottom:.25rem!important}.tw-mb-2{margin-bottom:.5rem!important}.tw-mb-4{margin-bottom:1rem!important}.tw-mb-8{margin-bottom:2rem!important}.tw-mb-\[--page-spacing\]{margin-bottom:var(--page-spacing)!important}.tw-ml-0{margin-left:0!important}.tw-ml-0\.5{margin-left:.125rem!important}.tw-ml-1{margin-left:.25rem!important}.tw-ml-2{margin-left:.5rem!important}.tw-ml-4{margin-left:1rem!important}.tw-ml-\[33px\]{margin-left:33px!important}.tw-ml-auto{margin-left:auto!important}.tw-mr-0{margin-right:0!important}.tw-mr-1{margin-right:.25rem!important}.tw-mr-2{margin-right:.5rem!important}.tw-mr-4{margin-right:1rem!important}.tw-mr-8{margin-right:2rem!important}.tw-mt-0{margin-top:0!important}.tw-mt-0\.5{margin-top:.125rem!important}.tw-mt-1{margin-top:.25rem!important}.tw-mt-2{margin-top:.5rem!important}.tw-mt-4{margin-top:1rem!important}.tw-mt-8{margin-top:2rem!important}.tw-inline-block{display:inline-block!important}.tw-flex{display:flex!important}.tw-hidden{display:none!important}.tw-h-12{height:3rem!important}.tw-h-\[40px\]{height:40px!important}.tw-w-12{width:3rem!important}.tw-w-2\/5{width:40%!important}.tw-w-4\/5{width:80%!important}.tw-w-\[40px\]{width:40px!important}.tw-w-auto{width:auto!important}.tw-w-full{width:100%!important}.tw-max-w-2xl{max-width:42rem!important}.tw-max-w-48{max-width:12rem!important}.tw-max-w-96{max-width:24rem!important}.tw-max-w-\[300px\]{max-width:300px!important}.tw-max-w-\[80vw\]{max-width:80vw!important}.tw-max-w-full{max-width:100%!important}.tw-flex-1{flex:1 1 0%!important}.tw-shrink-0{flex-shrink:0!important}.tw-cursor-default{cursor:default!important}.tw-cursor-grab{cursor:grab!important}.tw-cursor-grabbing{cursor:grabbing!important}.tw-cursor-pointer{cursor:pointer!important}.tw-flex-col{flex-direction:column!important}.tw-flex-wrap{flex-wrap:wrap!important}.tw-content-center{align-content:center!important}.tw-items-start{align-items:flex-start!important}.tw-items-center{align-items:center!important}.tw-justify-end{justify-content:flex-end!important}.tw-justify-center{justify-content:center!important}.tw-justify-between{justify-content:space-between!important}.tw-gap-1{gap:.25rem!important}.tw-gap-2{gap:.5rem!important}.tw-gap-3{gap:.75rem!important}.tw-gap-4{gap:1rem!important}.tw-gap-\[5px\]{gap:5px!important}.tw-gap-x-2{column-gap:.5rem!important}.tw-self-start{align-self:flex-start!important}.tw-overflow-hidden{overflow:hidden!important}.tw-overflow-x-scroll{overflow-x:scroll!important}.tw-whitespace-nowrap{white-space:nowrap!important}.tw-whitespace-pre{white-space:pre!important}.tw-whitespace-pre-line{white-space:pre-line!important}.tw-whitespace-pre-wrap{white-space:pre-wrap!important}.tw-break-all{word-break:break-all!important}.tw-rounded{border-radius:var(--border-radius)!important}.tw-rounded-b{border-bottom-right-radius:var(--border-radius)!important;border-bottom-left-radius:var(--border-radius)!important}.tw-border{border-width:1px!important}.tw-border-b{border-bottom-width:1px!important}.tw-border-secondary{border-color:var(--color-secondary)!important}.tw-border-b-secondary{border-bottom-color:var(--color-secondary)!important}.tw-bg-green{background-color:var(--color-green)!important}.tw-bg-grey{background-color:var(--color-grey)!important}.tw-bg-purple{background-color:var(--color-purple)!important}.tw-bg-red{background-color:var(--color-red)!important}.tw-bg-transparent{background-color:transparent!important}.tw-object-contain{object-fit:contain!important}.tw-p-0{padding:0!important}.tw-p-1{padding:.25rem!important}.tw-p-16{padding:4rem!important}.tw-p-2{padding:.5rem!important}.tw-p-3{padding:.75rem!important}.tw-p-4{padding:1rem!important}.tw-p-6{padding:1.5rem!important}.tw-px-1{padding-left:.25rem!important;padding-right:.25rem!important}.tw-px-4{padding-left:1rem!important;padding-right:1rem!important}.tw-px-8{padding-left:2rem!important;padding-right:2rem!important}.tw-py-0{padding-top:0!important;padding-bottom:0!important}.tw-py-0\.5{padding-top:.125rem!important;padding-bottom:.125rem!important}.tw-py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.tw-py-16{padding-top:4rem!important;padding-bottom:4rem!important}.tw-py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.tw-py-3{padding-top:.75rem!important;padding-bottom:.75rem!important}.tw-py-32{padding-top:8rem!important;padding-bottom:8rem!important}.tw-py-4{padding-top:1rem!important;padding-bottom:1rem!important}.tw-py-8{padding-top:2rem!important;padding-bottom:2rem!important}.tw-pb-0{padding-bottom:0!important}.tw-pb-1{padding-bottom:.25rem!important}.tw-pb-4{padding-bottom:1rem!important}.tw-pl-1{padding-left:.25rem!important}.tw-pl-2{padding-left:.5rem!important}.tw-pl-3{padding-left:.75rem!important}.tw-pl-4{padding-left:1rem!important}.tw-pl-\[26px\]{padding-left:26px!important}.tw-pr-0{padding-right:0!important}.tw-pr-1{padding-right:.25rem!important}.tw-pr-2{padding-right:.5rem!important}.tw-pr-4{padding-right:1rem!important}.tw-pt-0{padding-top:0!important}.tw-pt-1{padding-top:.25rem!important}.tw-pt-2{padding-top:.5rem!important}.tw-text-left{text-align:left!important}.tw-text-center{text-align:center!important}.tw-text-right{text-align:right!important}.tw-align-middle{vertical-align:middle!important}.tw-font-mono{font-family:var(--fonts-monospace)!important}.tw-text-12{font-size:12px!important}.tw-text-13{font-size:13px!important}.tw-text-14{font-size:14px!important}.tw-text-16{font-size:16px!important}.tw-text-18{font-size:18px!important}.tw-font-bold{font-weight:var(--font-weight-bold)!important}.tw-font-normal{font-weight:var(--font-weight-normal)!important}.tw-font-semibold{font-weight:var(--font-weight-semibold)!important}.tw-italic{font-style:italic!important}.tw-text-text{color:var(--color-text)!important}.tw-text-white{color:var(--color-white)!important}.tw-no-underline{text-decoration-line:none!important}.\[begin\:end\]{begin:end!important}.\[blobPos\:blobPos\+needWrite\]{blob-pos:blobPos+needWrite!important}.\[blobPos\:blobPos\+realRead\]{blob-pos:blobPos+realRead!important}.\[frontMatterStart\:start\]{front-matter-start:start!important}.\[i\:chunk\]{i:chunk!important}.\[i\:i\+8\]{i:i+8!important}.\[idx\:length\]{idx:length!important}.\[lastIndex\:i\]{last-index:i!important}.\[lastStart\:lastEnd\]{last-start:lastEnd!important}.\[left\:left\+right\]{left:left+right!important}.\[messageStart\:msgEnd\]{message-start:msgEnd!important}.\[openActiveIndex\:closeActiveIndex\]{open-active-index:closeActiveIndex!important}.\[p1\:p2\]{p1:p2!important}.\[pageStart\:pageEnd\]{page-start:pageEnd!important}.\[pos1\:end1\]{pos1:end1!important}.\[pos2\:end2\]{pos2:end2!important}.\[pos\:endPos\]{pos:endPos!important}.\[pos\:end\]{pos:end!important}.\[pos\:next\]{pos:next!important}.\[pos\:pos\+6\]{pos:pos+6!important}.\[pos\:pos\+right\]{pos:pos+right!important}.\[pos\:posEnd\]{pos:posEnd!important}.\[posBegin\:posEnd\]{pos-begin:posEnd!important}.\[sepAtPos\:sepEndPos\]{sep-at-pos:sepEndPos!important}.\[signStart\:signEnd\]{sign-start:signEnd!important}.\[start\:end\]{start:end!important}.\[startIndex\:endIndex\]{start-index:endIndex!important}.\[username\:password\@\]{username:password@!important} diff --git a/data/gitea/public/assets/css/katex.fb6ef55c.css b/data/gitea/public/assets/css/katex.fb6ef55c.css new file mode 100644 index 0000000..2ad27f7 --- /dev/null +++ b/data/gitea/public/assets/css/katex.fb6ef55c.css @@ -0,0 +1 @@ +@font-face{font-family:KaTeX_AMS;src:url(../fonts/KaTeX_AMS-Regular.73ea273a.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:KaTeX_Caligraphic;src:url(../fonts/KaTeX_Caligraphic-Bold.a1abf90d.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:KaTeX_Caligraphic;src:url(../fonts/KaTeX_Caligraphic-Regular.d6484fce.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:KaTeX_Fraktur;src:url(../fonts/KaTeX_Fraktur-Bold.931d67ea.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:KaTeX_Fraktur;src:url(../fonts/KaTeX_Fraktur-Regular.172d3529.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:KaTeX_Main;src:url(../fonts/KaTeX_Main-Bold.39890742.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:KaTeX_Main;src:url(../fonts/KaTeX_Main-BoldItalic.20f389c4.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic}@font-face{font-family:KaTeX_Main;src:url(../fonts/KaTeX_Main-Italic.fe2176f7.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype");font-weight:400;font-style:italic}@font-face{font-family:KaTeX_Main;src:url(../fonts/KaTeX_Main-Regular.f650f111.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:KaTeX_Math;src:url(../fonts/KaTeX_Math-BoldItalic.dcbcbd93.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic}@font-face{font-family:KaTeX_Math;src:url(../fonts/KaTeX_Math-Italic.6d3d25f4.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype");font-weight:400;font-style:italic}@font-face{font-family:KaTeX_SansSerif;src:url(../fonts/KaTeX_SansSerif-Bold.95591a92.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:KaTeX_SansSerif;src:url(../fonts/KaTeX_SansSerif-Italic.7d393d38.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype");font-weight:400;font-style:italic}@font-face{font-family:KaTeX_SansSerif;src:url(../fonts/KaTeX_SansSerif-Regular.cd5e231e.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:KaTeX_Script;src:url(../fonts/KaTeX_Script-Regular.c81d1b2a.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:KaTeX_Size1;src:url(../fonts/KaTeX_Size1-Regular.6eec866c.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:KaTeX_Size2;src:url(../fonts/KaTeX_Size2-Regular.2960900c.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:KaTeX_Size3;src:url(../fonts/KaTeX_Size3-Regular.e1951519.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:KaTeX_Size4;src:url(../fonts/KaTeX_Size4-Regular.e418bf25.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:KaTeX_Typewriter;src:url(../fonts/KaTeX_Typewriter-Regular.c295e7f7.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype");font-weight:400;font-style:normal}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.10"}.katex .katex-mathml{position:absolute;clip:rect(1px,1px,1px,1px);padding:0;border:0;height:1px;width:1px;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{position:relative;display:inline-block;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-weight:700;font-style:italic}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{display:inline-table;table-layout:fixed;border-collapse:collapse}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;vertical-align:bottom;position:relative}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;vertical-align:bottom;font-size:1px;width:2px;min-width:2px}.katex .vbox{display:inline-flex;flex-direction:column;align-items:baseline}.katex .hbox{display:inline-flex;flex-direction:row;width:100%}.katex .thinbox{display:inline-flex;flex-direction:row;width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{display:inline-block;width:100%;border-bottom-style:solid}.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .underline .underline-line,.katex .hline,.katex .hdashline,.katex .rule{min-height:1px}.katex .mspace{display:inline-block}.katex .llap,.katex .rlap,.katex .clap{width:0;position:relative}.katex .llap>.inner,.katex .rlap>.inner,.katex .clap>.inner{position:absolute}.katex .llap>.fix,.katex .rlap>.fix,.katex .clap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .rlap>.inner,.katex .clap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{display:inline-block;border:solid 0;position:relative}.katex .overline .overline-line,.katex .underline .underline-line,.katex .hline{display:inline-block;width:100%;border-bottom-style:solid}.katex .hdashline{display:inline-block;width:100%;border-bottom-style:dashed}.katex .sqrt>.root{margin-left:.27777778em;margin-right:-.55555556em}.katex .sizing.reset-size1.size1,.katex .fontsize-ensurer.reset-size1.size1{font-size:1em}.katex .sizing.reset-size1.size2,.katex .fontsize-ensurer.reset-size1.size2{font-size:1.2em}.katex .sizing.reset-size1.size3,.katex .fontsize-ensurer.reset-size1.size3{font-size:1.4em}.katex .sizing.reset-size1.size4,.katex .fontsize-ensurer.reset-size1.size4{font-size:1.6em}.katex .sizing.reset-size1.size5,.katex .fontsize-ensurer.reset-size1.size5{font-size:1.8em}.katex .sizing.reset-size1.size6,.katex .fontsize-ensurer.reset-size1.size6{font-size:2em}.katex .sizing.reset-size1.size7,.katex .fontsize-ensurer.reset-size1.size7{font-size:2.4em}.katex .sizing.reset-size1.size8,.katex .fontsize-ensurer.reset-size1.size8{font-size:2.88em}.katex .sizing.reset-size1.size9,.katex .fontsize-ensurer.reset-size1.size9{font-size:3.456em}.katex .sizing.reset-size1.size10,.katex .fontsize-ensurer.reset-size1.size10{font-size:4.148em}.katex .sizing.reset-size1.size11,.katex .fontsize-ensurer.reset-size1.size11{font-size:4.976em}.katex .sizing.reset-size2.size1,.katex .fontsize-ensurer.reset-size2.size1{font-size:.83333333em}.katex .sizing.reset-size2.size2,.katex .fontsize-ensurer.reset-size2.size2{font-size:1em}.katex .sizing.reset-size2.size3,.katex .fontsize-ensurer.reset-size2.size3{font-size:1.16666667em}.katex .sizing.reset-size2.size4,.katex .fontsize-ensurer.reset-size2.size4{font-size:1.33333333em}.katex .sizing.reset-size2.size5,.katex .fontsize-ensurer.reset-size2.size5{font-size:1.5em}.katex .sizing.reset-size2.size6,.katex .fontsize-ensurer.reset-size2.size6{font-size:1.66666667em}.katex .sizing.reset-size2.size7,.katex .fontsize-ensurer.reset-size2.size7{font-size:2em}.katex .sizing.reset-size2.size8,.katex .fontsize-ensurer.reset-size2.size8{font-size:2.4em}.katex .sizing.reset-size2.size9,.katex .fontsize-ensurer.reset-size2.size9{font-size:2.88em}.katex .sizing.reset-size2.size10,.katex .fontsize-ensurer.reset-size2.size10{font-size:3.45666667em}.katex .sizing.reset-size2.size11,.katex .fontsize-ensurer.reset-size2.size11{font-size:4.14666667em}.katex .sizing.reset-size3.size1,.katex .fontsize-ensurer.reset-size3.size1{font-size:.71428571em}.katex .sizing.reset-size3.size2,.katex .fontsize-ensurer.reset-size3.size2{font-size:.85714286em}.katex .sizing.reset-size3.size3,.katex .fontsize-ensurer.reset-size3.size3{font-size:1em}.katex .sizing.reset-size3.size4,.katex .fontsize-ensurer.reset-size3.size4{font-size:1.14285714em}.katex .sizing.reset-size3.size5,.katex .fontsize-ensurer.reset-size3.size5{font-size:1.28571429em}.katex .sizing.reset-size3.size6,.katex .fontsize-ensurer.reset-size3.size6{font-size:1.42857143em}.katex .sizing.reset-size3.size7,.katex .fontsize-ensurer.reset-size3.size7{font-size:1.71428571em}.katex .sizing.reset-size3.size8,.katex .fontsize-ensurer.reset-size3.size8{font-size:2.05714286em}.katex .sizing.reset-size3.size9,.katex .fontsize-ensurer.reset-size3.size9{font-size:2.46857143em}.katex .sizing.reset-size3.size10,.katex .fontsize-ensurer.reset-size3.size10{font-size:2.96285714em}.katex .sizing.reset-size3.size11,.katex .fontsize-ensurer.reset-size3.size11{font-size:3.55428571em}.katex .sizing.reset-size4.size1,.katex .fontsize-ensurer.reset-size4.size1{font-size:.625em}.katex .sizing.reset-size4.size2,.katex .fontsize-ensurer.reset-size4.size2{font-size:.75em}.katex .sizing.reset-size4.size3,.katex .fontsize-ensurer.reset-size4.size3{font-size:.875em}.katex .sizing.reset-size4.size4,.katex .fontsize-ensurer.reset-size4.size4{font-size:1em}.katex .sizing.reset-size4.size5,.katex .fontsize-ensurer.reset-size4.size5{font-size:1.125em}.katex .sizing.reset-size4.size6,.katex .fontsize-ensurer.reset-size4.size6{font-size:1.25em}.katex .sizing.reset-size4.size7,.katex .fontsize-ensurer.reset-size4.size7{font-size:1.5em}.katex .sizing.reset-size4.size8,.katex .fontsize-ensurer.reset-size4.size8{font-size:1.8em}.katex .sizing.reset-size4.size9,.katex .fontsize-ensurer.reset-size4.size9{font-size:2.16em}.katex .sizing.reset-size4.size10,.katex .fontsize-ensurer.reset-size4.size10{font-size:2.5925em}.katex .sizing.reset-size4.size11,.katex .fontsize-ensurer.reset-size4.size11{font-size:3.11em}.katex .sizing.reset-size5.size1,.katex .fontsize-ensurer.reset-size5.size1{font-size:.55555556em}.katex .sizing.reset-size5.size2,.katex .fontsize-ensurer.reset-size5.size2{font-size:.66666667em}.katex .sizing.reset-size5.size3,.katex .fontsize-ensurer.reset-size5.size3{font-size:.77777778em}.katex .sizing.reset-size5.size4,.katex .fontsize-ensurer.reset-size5.size4{font-size:.88888889em}.katex .sizing.reset-size5.size5,.katex .fontsize-ensurer.reset-size5.size5{font-size:1em}.katex .sizing.reset-size5.size6,.katex .fontsize-ensurer.reset-size5.size6{font-size:1.11111111em}.katex .sizing.reset-size5.size7,.katex .fontsize-ensurer.reset-size5.size7{font-size:1.33333333em}.katex .sizing.reset-size5.size8,.katex .fontsize-ensurer.reset-size5.size8{font-size:1.6em}.katex .sizing.reset-size5.size9,.katex .fontsize-ensurer.reset-size5.size9{font-size:1.92em}.katex .sizing.reset-size5.size10,.katex .fontsize-ensurer.reset-size5.size10{font-size:2.30444444em}.katex .sizing.reset-size5.size11,.katex .fontsize-ensurer.reset-size5.size11{font-size:2.76444444em}.katex .sizing.reset-size6.size1,.katex .fontsize-ensurer.reset-size6.size1{font-size:.5em}.katex .sizing.reset-size6.size2,.katex .fontsize-ensurer.reset-size6.size2{font-size:.6em}.katex .sizing.reset-size6.size3,.katex .fontsize-ensurer.reset-size6.size3{font-size:.7em}.katex .sizing.reset-size6.size4,.katex .fontsize-ensurer.reset-size6.size4{font-size:.8em}.katex .sizing.reset-size6.size5,.katex .fontsize-ensurer.reset-size6.size5{font-size:.9em}.katex .sizing.reset-size6.size6,.katex .fontsize-ensurer.reset-size6.size6{font-size:1em}.katex .sizing.reset-size6.size7,.katex .fontsize-ensurer.reset-size6.size7{font-size:1.2em}.katex .sizing.reset-size6.size8,.katex .fontsize-ensurer.reset-size6.size8{font-size:1.44em}.katex .sizing.reset-size6.size9,.katex .fontsize-ensurer.reset-size6.size9{font-size:1.728em}.katex .sizing.reset-size6.size10,.katex .fontsize-ensurer.reset-size6.size10{font-size:2.074em}.katex .sizing.reset-size6.size11,.katex .fontsize-ensurer.reset-size6.size11{font-size:2.488em}.katex .sizing.reset-size7.size1,.katex .fontsize-ensurer.reset-size7.size1{font-size:.41666667em}.katex .sizing.reset-size7.size2,.katex .fontsize-ensurer.reset-size7.size2{font-size:.5em}.katex .sizing.reset-size7.size3,.katex .fontsize-ensurer.reset-size7.size3{font-size:.58333333em}.katex .sizing.reset-size7.size4,.katex .fontsize-ensurer.reset-size7.size4{font-size:.66666667em}.katex .sizing.reset-size7.size5,.katex .fontsize-ensurer.reset-size7.size5{font-size:.75em}.katex .sizing.reset-size7.size6,.katex .fontsize-ensurer.reset-size7.size6{font-size:.83333333em}.katex .sizing.reset-size7.size7,.katex .fontsize-ensurer.reset-size7.size7{font-size:1em}.katex .sizing.reset-size7.size8,.katex .fontsize-ensurer.reset-size7.size8{font-size:1.2em}.katex .sizing.reset-size7.size9,.katex .fontsize-ensurer.reset-size7.size9{font-size:1.44em}.katex .sizing.reset-size7.size10,.katex .fontsize-ensurer.reset-size7.size10{font-size:1.72833333em}.katex .sizing.reset-size7.size11,.katex .fontsize-ensurer.reset-size7.size11{font-size:2.07333333em}.katex .sizing.reset-size8.size1,.katex .fontsize-ensurer.reset-size8.size1{font-size:.34722222em}.katex .sizing.reset-size8.size2,.katex .fontsize-ensurer.reset-size8.size2{font-size:.41666667em}.katex .sizing.reset-size8.size3,.katex .fontsize-ensurer.reset-size8.size3{font-size:.48611111em}.katex .sizing.reset-size8.size4,.katex .fontsize-ensurer.reset-size8.size4{font-size:.55555556em}.katex .sizing.reset-size8.size5,.katex .fontsize-ensurer.reset-size8.size5{font-size:.625em}.katex .sizing.reset-size8.size6,.katex .fontsize-ensurer.reset-size8.size6{font-size:.69444444em}.katex .sizing.reset-size8.size7,.katex .fontsize-ensurer.reset-size8.size7{font-size:.83333333em}.katex .sizing.reset-size8.size8,.katex .fontsize-ensurer.reset-size8.size8{font-size:1em}.katex .sizing.reset-size8.size9,.katex .fontsize-ensurer.reset-size8.size9{font-size:1.2em}.katex .sizing.reset-size8.size10,.katex .fontsize-ensurer.reset-size8.size10{font-size:1.44027778em}.katex .sizing.reset-size8.size11,.katex .fontsize-ensurer.reset-size8.size11{font-size:1.72777778em}.katex .sizing.reset-size9.size1,.katex .fontsize-ensurer.reset-size9.size1{font-size:.28935185em}.katex .sizing.reset-size9.size2,.katex .fontsize-ensurer.reset-size9.size2{font-size:.34722222em}.katex .sizing.reset-size9.size3,.katex .fontsize-ensurer.reset-size9.size3{font-size:.40509259em}.katex .sizing.reset-size9.size4,.katex .fontsize-ensurer.reset-size9.size4{font-size:.46296296em}.katex .sizing.reset-size9.size5,.katex .fontsize-ensurer.reset-size9.size5{font-size:.52083333em}.katex .sizing.reset-size9.size6,.katex .fontsize-ensurer.reset-size9.size6{font-size:.5787037em}.katex .sizing.reset-size9.size7,.katex .fontsize-ensurer.reset-size9.size7{font-size:.69444444em}.katex .sizing.reset-size9.size8,.katex .fontsize-ensurer.reset-size9.size8{font-size:.83333333em}.katex .sizing.reset-size9.size9,.katex .fontsize-ensurer.reset-size9.size9{font-size:1em}.katex .sizing.reset-size9.size10,.katex .fontsize-ensurer.reset-size9.size10{font-size:1.20023148em}.katex .sizing.reset-size9.size11,.katex .fontsize-ensurer.reset-size9.size11{font-size:1.43981481em}.katex .sizing.reset-size10.size1,.katex .fontsize-ensurer.reset-size10.size1{font-size:.24108004em}.katex .sizing.reset-size10.size2,.katex .fontsize-ensurer.reset-size10.size2{font-size:.28929605em}.katex .sizing.reset-size10.size3,.katex .fontsize-ensurer.reset-size10.size3{font-size:.33751205em}.katex .sizing.reset-size10.size4,.katex .fontsize-ensurer.reset-size10.size4{font-size:.38572806em}.katex .sizing.reset-size10.size5,.katex .fontsize-ensurer.reset-size10.size5{font-size:.43394407em}.katex .sizing.reset-size10.size6,.katex .fontsize-ensurer.reset-size10.size6{font-size:.48216008em}.katex .sizing.reset-size10.size7,.katex .fontsize-ensurer.reset-size10.size7{font-size:.57859209em}.katex .sizing.reset-size10.size8,.katex .fontsize-ensurer.reset-size10.size8{font-size:.69431051em}.katex .sizing.reset-size10.size9,.katex .fontsize-ensurer.reset-size10.size9{font-size:.83317261em}.katex .sizing.reset-size10.size10,.katex .fontsize-ensurer.reset-size10.size10{font-size:1em}.katex .sizing.reset-size10.size11,.katex .fontsize-ensurer.reset-size10.size11{font-size:1.19961427em}.katex .sizing.reset-size11.size1,.katex .fontsize-ensurer.reset-size11.size1{font-size:.20096463em}.katex .sizing.reset-size11.size2,.katex .fontsize-ensurer.reset-size11.size2{font-size:.24115756em}.katex .sizing.reset-size11.size3,.katex .fontsize-ensurer.reset-size11.size3{font-size:.28135048em}.katex .sizing.reset-size11.size4,.katex .fontsize-ensurer.reset-size11.size4{font-size:.32154341em}.katex .sizing.reset-size11.size5,.katex .fontsize-ensurer.reset-size11.size5{font-size:.36173633em}.katex .sizing.reset-size11.size6,.katex .fontsize-ensurer.reset-size11.size6{font-size:.40192926em}.katex .sizing.reset-size11.size7,.katex .fontsize-ensurer.reset-size11.size7{font-size:.48231511em}.katex .sizing.reset-size11.size8,.katex .fontsize-ensurer.reset-size11.size8{font-size:.57877814em}.katex .sizing.reset-size11.size9,.katex .fontsize-ensurer.reset-size11.size9{font-size:.69453376em}.katex .sizing.reset-size11.size10,.katex .fontsize-ensurer.reset-size11.size10{font-size:.83360129em}.katex .sizing.reset-size11.size11,.katex .fontsize-ensurer.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .op-limits>.vlist-t{text-align:center}.katex .accent>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{display:block;position:absolute;width:100%;height:inherit;fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex svg path{stroke:none}.katex img{border-style:none;min-width:0;min-height:0;max-width:none;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:before,.katex .stretchy:after{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{position:absolute;left:0;width:50.2%;overflow:hidden}.katex .halfarrow-right{position:absolute;right:0;width:50.2%;overflow:hidden}.katex .brace-left{position:absolute;left:0;width:25.1%;overflow:hidden}.katex .brace-center{position:absolute;left:25%;width:50%;overflow:hidden}.katex .brace-right{position:absolute;right:0;width:25.1%;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .x-arrow,.katex .mover,.katex .munder{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{counter-increment:katexEqnNo;content:"(" counter(katexEqnNo) ")"}.katex .mml-eqn-num:before{counter-increment:mmlEqnNo;content:"(" counter(mmlEqnNo) ")"}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;position:absolute;left:calc(50% + .3em);text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo} diff --git a/data/gitea/public/assets/css/monaco.a3a0a182.css b/data/gitea/public/assets/css/monaco.a3a0a182.css new file mode 100644 index 0000000..d5be343 --- /dev/null +++ b/data/gitea/public/assets/css/monaco.a3a0a182.css @@ -0,0 +1 @@ +.monaco-aria-container{position:absolute;left:-999em}.monaco-editor .selection-anchor{background-color:#007acc;width:2px!important}.monaco-editor .bracket-match{box-sizing:border-box;background-color:var(--vscode-editorBracketMatch-background);border:1px solid var(--vscode-editorBracketMatch-border)}.inline-editor-progress-decoration{display:inline-block;width:1em;height:1em}.inline-progress-widget{display:flex!important;justify-content:center;align-items:center}.inline-progress-widget .icon{font-size:80%!important}.inline-progress-widget:hover .icon{font-size:90%!important;animation:none}.inline-progress-widget:hover .icon:before{content:"\ea76"}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px;z-index:10000}.monaco-editor .monaco-editor-overlaymessage.below{padding-bottom:0;padding-top:8px;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:fadeIn .15s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:2px 4px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0px}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;border-color:transparent;border-style:solid;z-index:1000;border-width:8px;position:absolute;left:2px}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,.monaco-editor .monaco-editor-overlaymessage.below .anchor.below{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-editor .rendered-markdown kbd{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);vertical-align:middle;padding:1px 3px}.rendered-markdown li:has(input[type=checkbox]){list-style-type:none}.monaco-text-button{box-sizing:border-box;display:flex;width:100%;padding:4px;border-radius:2px;text-align:center;cursor:pointer;justify-content:center;align-items:center;border:1px solid var(--vscode-button-border, transparent);line-height:18px}.monaco-text-button:focus{outline-offset:2px!important}.monaco-text-button:hover{text-decoration:none!important}.monaco-button.disabled:focus,.monaco-button.disabled{opacity:.4!important;cursor:default}.monaco-text-button .codicon{margin:0 .2em;color:inherit!important}.monaco-text-button.monaco-text-button-with-short-label{flex-direction:row;flex-wrap:wrap;padding:0 4px;overflow:hidden;height:28px}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label{flex-basis:100%}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{flex-grow:1;width:0;overflow:hidden}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label,.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{display:flex;justify-content:center;align-items:center;font-weight:400;font-style:inherit;padding:4px 0}.monaco-button-dropdown{display:flex;cursor:pointer}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px!important}.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus,.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator{opacity:.4!important}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-right-width:0!important}.monaco-button-dropdown .monaco-button-dropdown-separator{padding:4px 0;cursor:default}.monaco-button-dropdown .monaco-button-dropdown-separator>div{height:100%;width:1px}.monaco-button-dropdown>.monaco-button.monaco-dropdown-button{border:1px solid var(--vscode-button-border, transparent);border-left-width:0!important;border-radius:0 2px 2px 0;display:flex;align-items:center}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-radius:2px 0 0 2px}.monaco-description-button{display:flex;flex-direction:column;align-items:center;margin:4px 5px}.monaco-description-button .monaco-button-description{font-style:italic;font-size:11px;padding:4px 20px}.monaco-description-button .monaco-button-label,.monaco-description-button .monaco-button-description{display:flex;justify-content:center;align-items:center}.monaco-description-button .monaco-button-label>.codicon,.monaco-description-button .monaco-button-description>.codicon{margin:0 .2em;color:inherit!important}.monaco-button.default-colors,.monaco-button-dropdown.default-colors>.monaco-button{color:var(--vscode-button-foreground);background-color:var(--vscode-button-background)}.monaco-button.default-colors:hover,.monaco-button-dropdown.default-colors>.monaco-button:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-button.default-colors.secondary,.monaco-button-dropdown.default-colors>.monaco-button.secondary{color:var(--vscode-button-secondaryForeground);background-color:var(--vscode-button-secondaryBackground)}.monaco-button.default-colors.secondary:hover,.monaco-button-dropdown.default-colors>.monaco-button.secondary:hover{background-color:var(--vscode-button-secondaryHoverBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator{background-color:var(--vscode-button-background);border-top:1px solid var(--vscode-button-border);border-bottom:1px solid var(--vscode-button-border)}.monaco-button-dropdown.default-colors .monaco-button.secondary+.monaco-button-dropdown-separator{background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator>div{background-color:var(--vscode-button-separator)}.post-edit-widget{box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:1px solid var(--vscode-widget-border, transparent);border-radius:4px;background-color:var(--vscode-editorWidget-background);overflow:hidden}.post-edit-widget .monaco-button{padding:2px;border:none;border-radius:0}.post-edit-widget .monaco-button:hover{background-color:var(--vscode-button-secondaryHoverBackground)!important}.post-edit-widget .monaco-button .codicon{margin:0}@font-face{font-family:codicon;font-display:block;src:url(../fonts/codicon.762fced4.ttf) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none}.codicon-wrench-subaction{opacity:.5}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-value,.monaco-editor .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-enum{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.monaco-editor .lightBulbWidget{display:flex;align-items:center;justify-content:center}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget.codicon-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.monaco-editor .lightBulbWidget:before{position:relative;z-index:2}.monaco-editor .lightBulbWidget:after{position:absolute;top:0;left:0;content:"";display:block;width:100%;height:100%;opacity:.3;background-color:var(--vscode-editor-background);z-index:1}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{user-select:none;-webkit-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list .monaco-scrollable-element>.scrollbar.vertical,.monaco-pane-view>.monaco-split-view2.vertical>.monaco-scrollable-element>.scrollbar.vertical{z-index:14}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-single,.monaco-list.selection-multiple{outline:0!important}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute;z-index:1000}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.monaco-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.scrollbar>.slider{background:var(--vscode-scrollbarSlider-background)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-scrollable-element>.scrollbar>.slider.active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-select-box-dropdown-padding{--dropdown-padding-top: 1px;--dropdown-padding-bottom: 1px}.hc-black .monaco-select-box-dropdown-padding,.hc-light .monaco-select-box-dropdown-padding{--dropdown-padding-top: 3px;--dropdown-padding-bottom: 4px}.monaco-select-box-dropdown-container{display:none;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown *{margin:0}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown a:focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown code{line-height:15px;font-family:var(--monaco-monospace-font)}.monaco-select-box-dropdown-container.visible{display:flex;flex-direction:column;text-align:left;width:1px;overflow:hidden;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container{flex:0 0 auto;align-self:flex-start;padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom);padding-left:1px;padding-right:1px;width:100%;overflow:hidden;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane{padding:5px}.hc-black .monaco-select-box-dropdown-container>.select-box-dropdown-list-container{padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom)}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row{cursor:pointer}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-text{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-detail{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left;opacity:.7}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-decorator-right{text-overflow:ellipsis;overflow:hidden;padding-right:10px;white-space:nowrap;float:right}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.visually-hidden{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control{flex:1 1 auto;align-self:flex-start;opacity:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div{overflow:hidden;max-height:0px}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div>.option-text-width-control{padding-left:4px;padding-right:8px;white-space:nowrap}.monaco-select-box{width:100%;cursor:pointer;border-radius:2px}.monaco-select-box-dropdown-container{font-size:13px;font-weight:400;text-transform:none}.monaco-action-bar .action-item.select-container{cursor:default}.monaco-action-bar .action-item .monaco-select-box{cursor:pointer;min-width:100px;min-height:18px;padding:2px 23px 2px 8px}.mac .monaco-action-bar .action-item .monaco-select-box{font-size:11px;border-radius:5px}.monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;height:100%;width:100%;align-items:center}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{display:block;align-items:center;justify-content:center;cursor:pointer;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .icon,.monaco-action-bar .action-item .codicon{display:block}.monaco-action-bar .action-item .codicon{display:flex;align-items:center;width:16px;height:16px}.monaco-action-bar .action-label{display:flex;font-size:11px;padding:3px;border-radius:5px}.monaco-action-bar .action-item.disabled .action-label,.monaco-action-bar .action-item.disabled .action-label:before,.monaco-action-bar .action-item.disabled .action-label:hover{color:var(--vscode-disabledForeground)}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid #bbb;padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar .action-item .action-label.separator{width:1px;height:16px;margin:5px 4px!important;cursor:default;min-width:1px;padding:0;background-color:#bbb}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{display:flex;align-items:center;cursor:default}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{width:1px}.action-widget{font-size:13px;min-width:160px;max-width:80vw;z-index:40;display:block;width:100%;border:1px solid var(--vscode-editorWidget-border)!important;border-radius:2px;background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground)}.context-view-block{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:-1}.context-view-pointerBlock{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:2}.action-widget .monaco-list{user-select:none;-webkit-user-select:none;border:none!important;border-width:0!important}.action-widget .monaco-list:focus:before{outline:0!important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{padding:0 10px;white-space:nowrap;cursor:pointer;touch-action:none;width:100%}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){background-color:var(--vscode-quickInputList-focusBackground)!important;color:var(--vscode-quickInputList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.action-widget .monaco-list-row.group-header{color:var(--vscode-descriptionForeground)!important;font-weight:600}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled:before,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before{cursor:default!important;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-color:transparent!important;outline:0 solid!important}.action-widget .monaco-list-row.action{display:flex;gap:6px;align-items:center}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{flex:1;overflow:hidden;text-overflow:ellipsis}.action-widget .monaco-list-row.action .monaco-keybinding>.monaco-keybinding-key{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow)}.action-widget .action-widget-action-bar{background-color:var(--vscode-editorHoverWidget-statusBarBackground);border-top:1px solid var(--vscode-editorHoverWidget-border)}.action-widget .action-widget-action-bar:before{display:block;content:"";width:100%}.action-widget .action-widget-action-bar .actions-container{padding:0 8px}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);font-size:12px;line-height:22px;padding:0;pointer-events:all}.action-widget-action-bar .action-item{margin-right:16px;pointer-events:none}.action-widget-action-bar .action-label:hover{background-color:transparent!important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground)!important}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border-style:solid;border-width:1px;border-radius:3px;vertical-align:middle;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%;color:var(--vscode-editor-foreground);background-color:var(--vscode-editor-background)}.monaco-editor-background{background-color:var(--vscode-editor-background)}.monaco-editor .rangeHighlight{background-color:var(--vscode-editor-rangeHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-rangeHighlightBorder)}.monaco-editor.hc-black .rangeHighlight,.monaco-editor.hc-light .rangeHighlight{border-style:dotted}.monaco-editor .symbolHighlight{background-color:var(--vscode-editor-symbolHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-symbolHighlightBorder)}.monaco-editor.hc-black .symbolHighlight,.monaco-editor.hc-light .symbolHighlight{border-style:dotted}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .view-overlays>div,.monaco-editor .margin-view-overlays>div{position:absolute;width:100%}.monaco-editor .view-overlays>div>div,.monaco-editor .margin-view-overlays>div>div{bottom:0}.monaco-editor .squiggly-error{border-bottom:4px double var(--vscode-editorError-border)}.monaco-editor .squiggly-error:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorError-background)}.monaco-editor .squiggly-warning{border-bottom:4px double var(--vscode-editorWarning-border)}.monaco-editor .squiggly-warning:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorWarning-background)}.monaco-editor .squiggly-info{border-bottom:4px double var(--vscode-editorInfo-border)}.monaco-editor .squiggly-info:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorInfo-background)}.monaco-editor .squiggly-hint{border-bottom:2px dotted var(--vscode-editorHint-border)}.monaco-editor.showUnused .squiggly-unnecessary{border-bottom:2px dashed var(--vscode-editorUnnecessaryCode-border)}.monaco-editor.showDeprecated .squiggly-inline-deprecated{text-decoration:line-through;text-decoration-color:var(--vscode-editor-foreground, inherit)}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .inputarea.ime-input{z-index:10;caret-color:var(--vscode-editorCursor-foreground);color:var(--vscode-editor-foreground)}.monaco-editor .margin-view-overlays .line-numbers{bottom:0;font-variant-numeric:tabular-nums;position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .line-numbers{color:var(--vscode-editorLineNumber-foreground)}.monaco-editor .line-numbers.active-line-number{color:var(--vscode-editorLineNumber-activeForeground)}.monaco-editor .margin{background-color:var(--vscode-editorGutter-background)}.monaco-mouse-cursor-text{cursor:text}.monaco-editor .blockDecorations-container{position:absolute;top:0;pointer-events:none}.monaco-editor .blockDecorations-block{position:absolute;box-sizing:border-box}.monaco-editor .view-overlays .current-line,.monaco-editor .margin-view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box;height:100%}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute;height:100%}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .glyph-margin-widgets .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin:before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.monaco-editor .lines-content .core-guide{position:absolute;box-sizing:border-box;height:100%}.mtkcontrol{color:#fff!important;background:#960000!important}.mtkoverflow{background-color:var(--vscode-button-background, var(--vscode-editor-background));color:var(--vscode-button-foreground, var(--vscode-editor-foreground));border-width:1px;border-style:solid;border-color:var(--vscode-contrastBorder);border-radius:2px;padding:4px;cursor:pointer}.mtkoverflow:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{user-select:none;-webkit-user-select:none}.monaco-editor.mac .lines-content:hover,.monaco-editor.mac .view-line:hover,.monaco-editor.mac .view-lines:hover{user-select:text;-webkit-user-select:text;-ms-user-select:text}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{position:absolute;width:100%}.monaco-editor .lines-content>.view-lines>.view-line>span{top:0;bottom:0;position:absolute}.monaco-editor .mtkw{color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .mtkz{display:inline-block;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover:hover .minimap-slider,.monaco-editor .minimap.slider-mouseover .minimap-slider.active{opacity:1}.monaco-editor .minimap-slider .minimap-slider-horizontal{background:var(--vscode-minimapSlider-background)}.monaco-editor .minimap-slider:hover .minimap-slider-horizontal{background:var(--vscode-minimapSlider-hoverBackground)}.monaco-editor .minimap-slider.active .minimap-slider-horizontal{background:var(--vscode-minimapSlider-activeBackground)}.monaco-editor .minimap-shadow-visible{box-shadow:var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{position:absolute;left:-1px;width:1px}.minimap.autohide{opacity:0;transition:opacity .5s}.minimap.autohide:hover{opacity:1}.monaco-editor .minimap{z-index:5}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0;box-shadow:1px 0 0 0 var(--vscode-editorRuler-foreground) inset}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .focused .selected-text{background-color:var(--vscode-editor-selectionBackground)}.monaco-editor .selected-text{background-color:var(--vscode-editor-inactiveSelectionBackground)}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-editor .mwh{position:absolute;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-block;text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize);padding-right:calc(var(--vscode-editorCodeLens-fontSize)*.5);font-feature-settings:var(--vscode-editorCodeLens-fontFeatureSettings);font-family:var(--vscode-editorCodeLens-fontFamily),var(--vscode-editorCodeLens-fontFamilyDefault)}.monaco-editor .codelens-decoration>span,.monaco-editor .codelens-decoration>a{user-select:none;-webkit-user-select:none;white-space:nowrap;vertical-align:sub}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration .codicon{vertical-align:middle;color:currentColor!important;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize)}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0;visibility:visible}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:fadein .1s linear}.colorpicker-widget{height:190px;user-select:none;-webkit-user-select:none}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{border:solid .1em #000;box-sizing:border-box;margin:.1em .2em 0;width:.8em;height:.8em;line-height:.8em;display:inline-block;cursor:pointer}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:solid .1em #eee}.colorpicker-header{display:flex;height:24px;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-header .picked-color{width:240px;display:flex;align-items:center;justify-content:center;line-height:24px;cursor:pointer;color:#fff;flex:1;white-space:nowrap;overflow:hidden}.colorpicker-header .picked-color .picked-color-presentation{white-space:nowrap;margin-left:5px;margin-right:5px}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.standalone-colorpicker{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header.standalone-colorpicker{border-bottom:none}.colorpicker-header .close-button{cursor:pointer;background-color:var(--vscode-editorHoverWidget-background);border-left:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header .close-button-inner-div{width:100%;height:100%;text-align:center}.colorpicker-header .close-button-inner-div:hover{background-color:var(--vscode-toolbar-hoverBackground)}.colorpicker-header .close-icon{padding:3px}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid rgb(255,255,255);border-radius:100%;box-shadow:0 0 2px #000c;position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .standalone-strip{width:25px;height:122px}.colorpicker-body .hue-strip{position:relative;margin-left:8px;cursor:grab;background:linear-gradient(to bottom,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:grab;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid rgba(255,255,255,.71);box-shadow:0 0 1px #000000d9}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.colorpicker-body .standalone-strip .standalone-overlay{height:122px;pointer-events:none}.standalone-colorpicker-body{display:block;border:1px solid transparent;border-bottom:1px solid var(--vscode-editorHoverWidget-border);overflow:hidden}.colorpicker-body .insert-button{position:absolute;height:20px;width:58px;padding:0;right:8px;bottom:8px;background:var(--vscode-button-background);color:var(--vscode-button-foreground);border-radius:2px;border:none;cursor:pointer}.colorpicker-body .insert-button:hover{background:var(--vscode-button-hoverBackground)}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex;justify-content:space-between;flex-wrap:nowrap}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:baseline;font-size:13px;margin-left:20px;min-width:0;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px;align-self:center}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit!important}:root{--vscode-sash-size: 4px;--vscode-sash-hover-size: 4px}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.vertical{cursor:ew-resize;top:0;width:var(--vscode-sash-size);height:100%}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:var(--vscode-sash-size)}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:" ";height:calc(var(--vscode-sash-size) * 2);width:calc(var(--vscode-sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--vscode-sash-size) * -.5);top:calc(var(--vscode-sash-size) * -1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--vscode-sash-size) * -.5);bottom:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--vscode-sash-size) * -.5);left:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--vscode-sash-size) * -.5);right:calc(var(--vscode-sash-size) * -1)}.monaco-sash:before{content:"";pointer-events:none;position:absolute;width:100%;height:100%;background:transparent}.monaco-workbench:not(.reduce-motion) .monaco-sash:before{transition:background-color .1s ease-out}.monaco-sash.hover:before,.monaco-sash.active:before{background:var(--vscode-sash-hoverBorder)}.monaco-sash.vertical:before{width:var(--vscode-sash-hover-size);left:calc(50% - (var(--vscode-sash-hover-size) / 2))}.monaco-sash.horizontal:before{height:var(--vscode-sash-hover-size);top:calc(50% - (var(--vscode-sash-hover-size) / 2))}.pointer-events-disabled{pointer-events:none!important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:#0ff3}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.monaco-action-bar .action-item.menu-entry .action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:initial}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:initial;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-table{display:flex;flex-direction:column;position:relative;height:100%;width:100%;white-space:nowrap;overflow:hidden}.monaco-table>.monaco-split-view2{border-bottom:1px solid transparent}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{display:flex;height:100%}.monaco-table-th{width:100%;height:100%;font-weight:700;overflow:hidden;text-overflow:ellipsis}.monaco-table-th,.monaco-table-td{box-sizing:border-box;flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:"";position:absolute;left:calc(var(--vscode-sash-size) / 2);width:0;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2,.monaco-workbench:not(.reduce-motion) .monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color .2s ease-out}.monaco-custom-toggle{margin-left:2px;float:left;cursor:pointer;overflow:hidden;width:20px;height:20px;border-radius:3px;border:1px solid transparent;padding:1px;box-sizing:border-box;user-select:none;-webkit-user-select:none}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-light .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{background:none}.monaco-custom-toggle.monaco-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-action-bar .checkbox-action-item{display:flex;align-items:center}.monaco-action-bar .checkbox-action-item>.monaco-custom-toggle.monaco-checkbox{margin-right:4px}.monaco-action-bar .checkbox-action-item>.checkbox-label{font-size:12px}.monaco-custom-toggle.monaco-checkbox:not(.checked):before{visibility:hidden}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;border-radius:2px;font-size:inherit}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px 6px}.monaco-inputbox>.ibwrapper{position:relative;width:100%;height:100%}.monaco-inputbox>.ibwrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{display:block;scrollbar-width:none;outline:none}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls,.hc-light .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls,.hc-light .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@keyframes monaco-findInput-highlight-0{0%{background:#fdff00cc}to{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:#fdff00cc}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:#ffffff70}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:#ffffff70}99%{background:transparent}}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-row.disabled{cursor:default}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent}.monaco-workbench:not(.reduce-motion) .monaco-tl-indent>.indent-guide{transition:border-color .1s linear}.monaco-tl-twistie,.monaco-tl-contents{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex!important;align-items:center;justify-content:center;transform:translate(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:codicon-spin 1.25s steps(30) infinite}.monaco-tree-type-filter{position:absolute;top:0;display:flex;padding:3px;max-width:200px;z-index:100;margin:0 6px;border:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-workbench:not(.reduce-motion) .monaco-tree-type-filter{transition:top .3s}.monaco-tree-type-filter.disabled{top:-40px!important}.monaco-tree-type-filter-grab{display:flex!important;align-items:center;justify-content:center;cursor:grab;margin-right:2px}.monaco-tree-type-filter-grab.grabbing{cursor:grabbing}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox{height:23px}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px 4px}.monaco-tree-type-filter-input .monaco-findInput>.controls{top:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{position:absolute;top:0;left:0;width:100%;height:0;z-index:13;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{position:absolute;width:100%;opacity:1!important;overflow:hidden;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{background-color:var(--vscode-list-hoverBackground)!important;cursor:pointer}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty,.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty .monaco-tree-sticky-container-shadow{display:none}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow{position:absolute;bottom:-3px;left:0;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container[tabindex="0"]:focus{outline:none}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px;background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground)}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{background-color:var(--vscode-peekViewResult-matchHighlightBackground)}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder, transparent);box-sizing:border-box}.monaco-count-badge{padding:3px 6px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-count-badge.long{padding:2px 3px;border-radius:2px;min-height:auto;line-height:normal}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label-container.disabled{color:var(--vscode-disabledForeground)}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-suffix-container>.label-suffix{opacity:.7;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.95}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{font-style:italic}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-icon-label.italic:after{font-style:italic}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{text-decoration:line-through}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;margin:auto 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:.8}.monaco-hover{cursor:default;position:absolute;overflow:hidden;user-select:text;-webkit-user-select:text;box-sizing:border-box;animation:fadein .1s linear;line-height:1.5em;white-space:var(--vscode-hover-whiteSpace, normal)}.monaco-hover.hidden{display:none}.monaco-hover a:hover:not(.disabled){cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:var(--vscode-hover-maxWidth, 500px);word-wrap:break-word}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover p,.monaco-hover .code,.monaco-hover ul,.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{margin:8px 0}.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{line-height:1.1}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0px;border-right:0px;margin:4px -8px -4px;height:1px}.monaco-hover p:first-child,.monaco-hover .code:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover p:last-child,.monaco-hover .code:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ul,.monaco-hover ol{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 .4em}.monaco-hover .monaco-tokenized-source{white-space:var(--vscode-hover-sourceWhiteSpace, pre-wrap)}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .info{font-style:italic;padding:0 8px}.monaco-hover .hover-row.status-bar .actions{display:flex;padding:0 8px}.monaco-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link:hover,.monaco-hover .hover-contents a.code-link{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:"("}.monaco-hover .hover-contents a.code-link:after{content:")"}.monaco-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-hover .hover-contents a.code-link>span:hover{color:var(--vscode-textLink-activeForeground)}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span{margin-bottom:4px;display:inline-block}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:.4;cursor:default}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;user-select:text;-webkit-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-activeForeground)}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer;color:var(--vscode-textLink-activeForeground)}.monaco-editor .zone-widget .codicon.codicon-error,.markers-panel .marker-icon.error,.markers-panel .marker-icon .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.extension-editor .codicon.codicon-error,.preferences-editor .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-warning,.markers-panel .marker-icon.warning,.markers-panel .marker-icon .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.extension-editor .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-info,.markers-panel .marker-icon.info,.markers-panel .marker-icon .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.extension-editor .codicon.codicon-info,.preferences-editor .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineSuggestionsHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{display:flex;min-width:19px;justify-content:center}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.monaco-toolbar{height:100%}.monaco-toolbar .toolbar-toggle-more{display:inline-block;padding:0}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-hover{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .diff-hidden-lines-widget{width:100%}.monaco-editor .diff-hidden-lines{height:0px;transform:translateY(-10px);font-size:13px;line-height:14px}.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover,.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,.monaco-editor .diff-hidden-lines .top.dragging,.monaco-editor .diff-hidden-lines .bottom.dragging{background-color:var(--vscode-focusBorder)}.monaco-editor .diff-hidden-lines .top,.monaco-editor .diff-hidden-lines .bottom{transition:background-color .1s ease-out;height:4px;background-color:transparent;background-clip:padding-box;border-bottom:2px solid transparent;border-top:4px solid transparent}.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *,.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom){cursor:n-resize!important}.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *,.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom{cursor:s-resize!important}.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *,.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom{cursor:ns-resize!important}.monaco-editor .diff-hidden-lines .top{transform:translateY(4px)}.monaco-editor .diff-hidden-lines .bottom{transform:translateY(-6px)}.monaco-editor .diff-unchanged-lines{background:var(--vscode-diffEditor-unchangedCodeBackground)}.monaco-editor .noModificationsOverlay{z-index:1;background:var(--vscode-editor-background);display:flex;justify-content:center;align-items:center}.monaco-editor .diff-hidden-lines .center{background:var(--vscode-diffEditor-unchangedRegionBackground);color:var(--vscode-diffEditor-unchangedRegionForeground);overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap;height:24px;box-shadow:inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow),inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow)}.monaco-editor .diff-hidden-lines .center span.codicon{vertical-align:middle}.monaco-editor .diff-hidden-lines .center a:hover .codicon{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .diff-hidden-lines div.breadcrumb-item{cursor:pointer}.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover{color:var(--vscode-editorLink-activeForeground)}.monaco-editor .movedOriginal,.monaco-editor .movedModified{border:2px solid var(--vscode-diffEditor-move-border)}.monaco-editor .movedOriginal.currentMove,.monaco-editor .movedModified.currentMove{border:2px solid var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path.currentMove{stroke:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path{pointer-events:visiblestroke}.monaco-diff-editor .moved-blocks-lines .arrow{fill:var(--vscode-diffEditor-move-border)}.monaco-diff-editor .moved-blocks-lines .arrow.currentMove{fill:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines .arrow-rectangle{fill:var(--vscode-editor-background)}.monaco-diff-editor .moved-blocks-lines{position:absolute;pointer-events:none}.monaco-diff-editor .moved-blocks-lines path{fill:none;stroke:var(--vscode-diffEditor-move-border);stroke-width:2}.monaco-editor .char-delete.diff-range-empty{margin-left:-1px;border-left:solid var(--vscode-diffEditor-removedTextBackground) 3px}.monaco-editor .char-insert.diff-range-empty{border-left:solid var(--vscode-diffEditor-insertedTextBackground) 3px}.monaco-editor .fold-unchanged{cursor:pointer}.monaco-diff-editor .diff-moved-code-block{display:flex;justify-content:flex-end;margin-top:-4px}.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon{width:12px;height:12px;font-size:12px}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:#00000008}.monaco-diff-editor.vs-dark .diffOverview{background:#ffffff03}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar{background:#0000}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:#ababab66}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:none}.monaco-editor .insert-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-diff-editor .delete-sign{font-size:11px!important;opacity:.7!important;display:flex!important;align-items:center}.monaco-editor.hc-black .insert-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .delete-sign,.monaco-editor.hc-light .insert-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .delete-sign{opacity:1}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .inline-added-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .char-insert,.monaco-diff-editor .char-insert{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-editor .line-insert,.monaco-diff-editor .line-insert{background-color:var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .line-insert,.monaco-editor .char-insert{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-insertedTextBorder)}.monaco-editor.hc-black .line-insert,.monaco-editor.hc-light .line-insert,.monaco-editor.hc-black .char-insert,.monaco-editor.hc-light .char-insert{border-style:dashed}.monaco-editor .line-delete,.monaco-editor .char-delete{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-removedTextBorder)}.monaco-editor.hc-black .line-delete,.monaco-editor.hc-light .line-delete,.monaco-editor.hc-black .char-delete,.monaco-editor.hc-light .char-delete{border-style:dashed}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .gutter-insert,.monaco-diff-editor .gutter-insert{background-color:var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .char-delete,.monaco-diff-editor .char-delete{background-color:var(--vscode-diffEditor-removedTextBackground)}.monaco-editor .line-delete,.monaco-diff-editor .line-delete{background-color:var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground))}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .gutter-delete,.monaco-diff-editor .gutter-delete{background-color:var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor.side-by-side .editor.modified{box-shadow:-6px 0 5px -5px var(--vscode-scrollbar-shadow);border-left:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor.side-by-side .editor.original{box-shadow:6px 0 5px -5px var(--vscode-scrollbar-shadow);border-right:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor .diffViewport{background:var(--vscode-scrollbarSlider-background)}.monaco-diff-editor .diffViewport:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-diff-editor .diffViewport:active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .diagonal-fill{background-image:linear-gradient(-45deg,var(--vscode-diffEditor-diagonalFill) 12.5%,#0000 12.5%,#0000 50%,var(--vscode-diffEditor-diagonalFill) 50%,var(--vscode-diffEditor-diagonalFill) 62.5%,#0000 62.5%,#0000 100%);background-size:8px 8px}.monaco-diff-editor .gutter{position:relative;overflow:hidden;flex-shrink:0;flex-grow:0}:is(.monaco-diff-editor .gutter) .gutterItem{opacity:0;transition:opacity .7s}.showAlways:is(:is(.monaco-diff-editor .gutter) .gutterItem){opacity:1;transition:none}.noTransition:is(:is(.monaco-diff-editor .gutter) .gutterItem){transition:none}:is(.monaco-diff-editor .gutter):hover .gutterItem{opacity:1;transition:opacity .1s ease-in-out}:is(:is(.monaco-diff-editor .gutter) .gutterItem) .background{position:absolute;height:100%;left:50%;width:1px;border-left:2px var(--vscode-menu-border) solid}:is(:is(.monaco-diff-editor .gutter) .gutterItem) .buttons{position:absolute;width:100%;display:flex;justify-content:center;align-items:center}:is(:is(:is(.monaco-diff-editor .gutter) .gutterItem) .buttons) .monaco-toolbar{height:fit-content}:is(:is(:is(:is(.monaco-diff-editor .gutter) .gutterItem) .buttons) .monaco-toolbar) .monaco-action-bar{line-height:1}:is(:is(:is(:is(:is(.monaco-diff-editor .gutter) .gutterItem) .buttons) .monaco-toolbar) .monaco-action-bar) .actions-container{width:fit-content;border-radius:4px;border:1px var(--vscode-menu-border) solid;background:var(--vscode-editor-background)}:is(:is(:is(:is(:is(:is(:is(.monaco-diff-editor .gutter) .gutterItem) .buttons) .monaco-toolbar) .monaco-action-bar) .actions-container) .action-item):hover{background:var(--vscode-toolbar-hoverBackground)}:is(:is(:is(:is(:is(:is(:is(.monaco-diff-editor .gutter) .gutterItem) .buttons) .monaco-toolbar) .monaco-action-bar) .actions-container) .action-item) .action-label{padding:.5px 1px}.monaco-component.diff-review{user-select:none;-webkit-user-select:none;z-index:99}.monaco-diff-editor .diff-review{position:absolute}.monaco-component.diff-review .diff-review-line-number{text-align:right;display:inline-block;color:var(--vscode-editorLineNumber-foreground)}.monaco-component.diff-review .diff-review-summary{padding-left:10px}.monaco-component.diff-review .diff-review-shadow{position:absolute;box-shadow:var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset}.monaco-component.diff-review .diff-review-row{white-space:pre}.monaco-component.diff-review .diff-review-table{display:table;min-width:100%}.monaco-component.diff-review .diff-review-row{display:table-row;width:100%}.monaco-component.diff-review .diff-review-spacer{display:inline-block;width:10px;vertical-align:middle}.monaco-component.diff-review .diff-review-spacer>.codicon{font-size:9px!important}.monaco-component.diff-review .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px;z-index:100}.monaco-component.diff-review .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-component.diff-review .revertButton{cursor:pointer}.monaco-editor.vs .dnd-target,.monaco-editor.hc-light .dnd-target{border-right:2px dotted black;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #AEAFAD;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines,.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines{cursor:default}.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines,.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines{cursor:copy}.monaco-editor .findOptionsWidget{background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground);box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:2px solid var(--vscode-contrastBorder)}.monaco-editor .find-widget{position:absolute;z-index:35;height:33px;overflow:hidden;line-height:19px;transition:transform .2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px));box-shadow:0 0 8px 2px var(--vscode-widget-shadow);color:var(--vscode-editorWidget-foreground);border-left:1px solid var(--vscode-widget-border);border-right:1px solid var(--vscode-widget-border);border-bottom:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px;background-color:var(--vscode-editorWidget-background)}.monaco-workbench.reduce-motion .monaco-editor .find-widget{transition:transform 0ms linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px;outline-color:var(--vscode-focusBorder)}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:3px 25px 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:16px;height:16px;padding:3px;border-radius:5px;flex:initial;margin-left:3px;background-position:center center;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .codicon-find-selection{width:22px;height:22px;padding:3px;border-radius:5px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;border-radius:0;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .find-widget.no-results .matchesCount{color:var(--vscode-errorForeground)}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit!important;background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor .currentFindMatch{background-color:var(--vscode-editor-findMatchBackground);border:2px solid var(--vscode-editor-findMatchBorder);padding:1px;box-sizing:border-box}.monaco-editor .findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor .find-widget .monaco-sash{left:0!important;background-color:var(--vscode-editorWidget-resizeBorder, var(--vscode-editorWidget-border))}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .find-widget .button:not(.disabled):hover,.monaco-editor .find-widget .codicon-find-selection:hover{background-color:var(--vscode-toolbar-hoverBackground)!important}.monaco-editor.findMatch{background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor.currentFindMatch{background-color:var(--vscode-editor-findMatchBackground)}.monaco-editor.findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor.findMatch{background-color:var(--vscode-editorWidget-background)}.monaco-editor .find-widget>.button.codicon-widget-close{position:absolute;top:5px;right:4px}.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-editor .margin-view-overlays .codicon-folding-collapsed{cursor:pointer;opacity:0;transition:opacity .5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-workbench.reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed{transition:initial}.monaco-editor .margin-view-overlays:hover .codicon,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons{opacity:1}.monaco-editor .inline-folded:after{color:gray;margin:.1em .2em 0;content:"\22ef";display:inline;line-height:1em;cursor:pointer}.monaco-editor .folded-background{background-color:var(--vscode-editor-foldBackground)}.monaco-editor .cldr.codicon.codicon-folding-expanded,.monaco-editor .cldr.codicon.codicon-folding-collapsed,.monaco-editor .cldr.codicon.codicon-folding-manual-expanded,.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed{color:var(--vscode-editorGutter-foldingControlForeground)!important}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #F6F6F6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #252526}.monaco-editor.vs .valueSetReplacement{outline:solid 2px var(--vscode-editorBracketMatch-border)}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:transparent;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text .ghost-text{font-style:italic}.monaco-editor .ghost-text-decoration,.monaco-editor .ghost-text-decoration-preview,.monaco-editor .suggest-preview-text .ghost-text{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .snippet-placeholder{min-width:2px;outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetTabstopHighlightBorder, transparent)}.monaco-editor .finish-snippet-placeholder{outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent)}.monaco-editor .suggest-widget{width:430px;z-index:40;display:flex;flex-direction:column;border-radius:3px}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-widget,.monaco-editor .suggest-details{flex:0 1 auto;width:100%;border-style:solid;border-width:1px;border-color:var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background)}.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-light .suggest-widget,.monaco-editor.hc-light .suggest-details{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;display:none;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;padding:0 4px;border-top:1px solid var(--vscode-editorSuggestWidget-border);overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:", ";margin-right:.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%;width:100%}.monaco-editor .suggest-widget .monaco-list{user-select:none;-webkit-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{overflow:hidden;text-overflow:ellipsis;opacity:.6}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:12px;opacity:.4;font-size:85%;line-height:initial;text-overflow:ellipsis;overflow:hidden;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{font-size:85%;margin-left:1.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;flex-grow:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:4;max-width:70%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{display:flex;flex-direction:column;cursor:default;color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-details.focused{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;white-space:pre;margin:0 24px 0 0;padding:4px 0 12px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:initial;min-height:calc(1rem + 8px)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-details ul,.monaco-editor .suggest-details ol{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.monaco-editor .inline-edit-remove{background-color:var(--vscode-editorGhostText-background);font-style:italic;text-decoration:line-through}.monaco-editor .inline-edit-remove.backgroundColoring{background-color:var(--vscode-diffEditor-removedLineBackground)}.monaco-editor .inline-edit-hidden{opacity:0;font-size:0}.monaco-editor .inline-edit-decoration,.monaco-editor .suggest-preview-text .inline-edit{font-style:italic}.monaco-editor .inline-completion-text-to-replace{text-decoration:underline;text-underline-position:under}.monaco-editor .inline-edit-decoration,.monaco-editor .inline-edit-decoration-preview,.monaco-editor .suggest-preview-text .inline-edit{color:var(--vscode-editorGhostText-foreground)!important;background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .inlineEditHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineEditHints a,.monaco-editor .inlineEditHints a:hover{color:var(--vscode-foreground)}.monaco-editor .inlineEditHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineEditHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineEditStatusBarItemLabel{margin-right:2px}.monaco-editor .tokens-inspect-widget{z-index:50;user-select:text;-webkit-user-select:text;padding:10px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor.hc-black .tokens-inspect-widget,.monaco-editor.hc-light .tokens-inspect-widget{border-width:2px}.monaco-editor .tokens-inspect-widget .tokens-inspect-separator{height:1px;border:0;background-color:var(--vscode-editorHoverWidget-border)}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}.monaco-editor .linked-editing-decoration{background-color:var(--vscode-editor-linkedEditingBackground);min-width:1px}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .focused .selectionHighlight{background-color:var(--vscode-editor-selectionHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-selectionHighlightBorder)}.monaco-editor.hc-black .focused .selectionHighlight,.monaco-editor.hc-light .focused .selectionHighlight{border-style:dotted}.monaco-editor .wordHighlight{background-color:var(--vscode-editor-wordHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightBorder)}.monaco-editor.hc-black .wordHighlight,.monaco-editor.hc-light .wordHighlight{border-style:dotted}.monaco-editor .wordHighlightStrong{background-color:var(--vscode-editor-wordHighlightStrongBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightStrongBorder)}.monaco-editor.hc-black .wordHighlightStrong,.monaco-editor.hc-light .wordHighlightStrong{border-style:dotted}.monaco-editor .wordHighlightText{background-color:var(--vscode-editor-wordHighlightTextBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightTextBorder)}.monaco-editor.hc-black .wordHighlightText,.monaco-editor.hc-light .wordHighlightText{border-style:dotted}.monaco-editor .parameter-hints-widget{z-index:39;display:flex;flex-direction:column;line-height:1.5em;cursor:default;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.hc-black .monaco-editor .parameter-hints-widget,.hc-light .monaco-editor .parameter-hints-widget{border-width:2px}.monaco-editor .parameter-hints-widget>.phwrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.multiple .body:before{content:"";display:block;height:100%;position:absolute;opacity:.5;border-left:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .monaco-scrollable-element,.monaco-editor .parameter-hints-widget .body{display:flex;flex:1;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px;position:relative}.monaco-editor .parameter-hints-widget .signature.has-docs:after{content:"";display:block;position:absolute;left:0;width:100%;padding-top:4px;opacity:.5;border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs a{color:var(--vscode-textLink-foreground)}.monaco-editor .parameter-hints-widget .docs a:hover{color:var(--vscode-textLink-activeForeground);cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:initial}.monaco-editor .parameter-hints-widget .docs code{font-family:var(--monaco-monospace-font);border-radius:3px;padding:0 .4em;background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source,.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{color:var(--vscode-editorHoverWidget-highlightForeground);font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .rename-box{z-index:100;color:inherit;border-radius:4px}.monaco-editor .rename-box.preview{padding:4px 4px 0}.monaco-editor .rename-box .rename-input{padding:3px;border-radius:2px;width:calc(100% - 8px)}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .sticky-widget{overflow:hidden}.monaco-editor .sticky-widget-line-numbers{float:left;background-color:inherit}.monaco-editor .sticky-widget-lines-scrollable{display:inline-block;position:absolute;overflow:hidden;width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit}.monaco-editor .sticky-widget-lines{position:absolute;background-color:inherit}.monaco-editor .sticky-line-number,.monaco-editor .sticky-line-content{color:var(--vscode-editorLineNumber-foreground);white-space:nowrap;display:inline-block;position:absolute;background-color:inherit}.monaco-editor .sticky-line-number .codicon-folding-expanded,.monaco-editor .sticky-line-number .codicon-folding-collapsed{float:right;transition:var(--vscode-editorStickyScroll-foldingOpacityTransition)}.monaco-editor .sticky-line-content{width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit;white-space:nowrap}.monaco-editor .sticky-line-number-inner{display:inline-block;text-align:right}.monaco-editor .sticky-widget{border-bottom:1px solid var(--vscode-editorStickyScroll-border)}.monaco-editor .sticky-line-content:hover{background-color:var(--vscode-editorStickyScrollHover-background);cursor:pointer}.monaco-editor .sticky-widget{width:100%;box-shadow:var(--vscode-editorStickyScroll-shadow) 0 3px 2px -2px;z-index:4;background-color:var(--vscode-editorStickyScroll-background)}.monaco-editor .sticky-widget.peek{background-color:var(--vscode-peekViewEditorStickyScroll-background)}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.editor-banner{box-sizing:border-box;cursor:default;width:100%;font-size:12px;display:flex;overflow:visible;height:26px;background:var(--vscode-banner-background)}.editor-banner .icon-container{display:flex;flex-shrink:0;align-items:center;padding:0 6px 0 10px}.editor-banner .icon-container.custom-icon{background-repeat:no-repeat;background-position:center center;background-size:16px;width:16px;padding:0;margin:0 6px 0 10px}.editor-banner .message-container{display:flex;align-items:center;line-height:26px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-banner .message-container p{margin-block-start:0;margin-block-end:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;line-height:26px;margin:0 4px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{padding:3px;margin-left:12px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-link{color:var(--vscode-textLink-foreground)}.monaco-link:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,system-ui,Ubuntu,Droid Sans,sans-serif;--monaco-monospace-font: "SF Mono", Monaco, Menlo, Consolas, "Ubuntu Mono", "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace}.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{position:absolute!important;top:0;height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%)}.monaco-editor,.monaco-diff-editor .synthetic-focus,.monaco-diff-editor [tabindex="0"]:focus,.monaco-diff-editor [tabindex="-1"]:focus,.monaco-diff-editor button:focus,.monaco-diff-editor input[type=button]:focus,.monaco-diff-editor input[type=checkbox]:focus,.monaco-diff-editor input[type=search]:focus,.monaco-diff-editor input[type=text]:focus,.monaco-diff-editor select:focus,.monaco-diff-editor textarea:focus{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:var(--vscode-focusBorder);opacity:1}.monaco-workbench .workbench-hover{position:relative;font-size:13px;line-height:19px;z-index:40;overflow:hidden;max-width:700px;background:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px;color:var(--vscode-editorHoverWidget-foreground);box-shadow:0 2px 8px var(--vscode-widget-shadow)}.monaco-workbench .workbench-hover hr{border-bottom:none}.monaco-workbench .workbench-hover:not(.skip-fade-in){animation:fadein .1s linear}.monaco-workbench .workbench-hover.compact{font-size:12px}.monaco-workbench .workbench-hover.compact .hover-contents{padding:2px 8px}.monaco-workbench .workbench-hover-container.locked .workbench-hover{outline:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .workbench-hover-container.locked .workbench-hover:focus,.monaco-workbench .workbench-hover-lock:focus{outline:1px solid var(--vscode-focusBorder)}.monaco-workbench .workbench-hover-container.locked .workbench-hover-lock:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-workbench .workbench-hover-pointer{position:absolute;z-index:41;pointer-events:none}.monaco-workbench .workbench-hover-pointer:after{content:"";position:absolute;width:5px;height:5px;background-color:var(--vscode-editorHoverWidget-background);border-right:1px solid var(--vscode-editorHoverWidget-border);border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-workbench .locked .workbench-hover-pointer:after{width:4px;height:4px;border-right-width:2px;border-bottom-width:2px}.monaco-workbench .workbench-hover-pointer.left{left:-3px}.monaco-workbench .workbench-hover-pointer.right{right:3px}.monaco-workbench .workbench-hover-pointer.top{top:-3px}.monaco-workbench .workbench-hover-pointer.bottom{bottom:3px}.monaco-workbench .workbench-hover-pointer.left:after{transform:rotate(135deg)}.monaco-workbench .workbench-hover-pointer.right:after{transform:rotate(315deg)}.monaco-workbench .workbench-hover-pointer.top:after{transform:rotate(225deg)}.monaco-workbench .workbench-hover-pointer.bottom:after{transform:rotate(45deg)}.monaco-workbench .workbench-hover a{color:var(--vscode-textLink-foreground)}.monaco-workbench .workbench-hover a:focus{outline:1px solid;outline-offset:-1px;text-decoration:underline;outline-color:var(--vscode-focusBorder)}.monaco-workbench .workbench-hover a:hover,.monaco-workbench .workbench-hover a:active{color:var(--vscode-textLink-activeForeground)}.monaco-workbench .workbench-hover code{background:var(--vscode-textCodeBlock-background)}.monaco-workbench .workbench-hover .hover-row .actions{background:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-workbench .workbench-hover.right-aligned{left:1px}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions{flex-direction:row-reverse}.monaco-workbench .workbench-hover.right-aligned .hover-row.status-bar .actions .action-container{margin-right:0;margin-left:16px}.context-view{position:absolute}.context-view.fixed{all:initial;font-family:inherit;font-size:13px;position:fixed;color:inherit}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{background-color:#ddd6;border:solid 1px rgba(204,204,204,.4);border-bottom-color:#bbb6;box-shadow:inset 0 -1px #bbb6;color:#555}.hc-black .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px rgb(111,195,223);box-shadow:none;color:#fff}.hc-light .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px #0F4A85;box-shadow:none;color:#292929}.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:#8080802b;border:solid 1px rgba(51,51,51,.6);border-bottom-color:#4449;box-shadow:inset 0 -1px #4449;color:#ccc}.quick-input-widget{position:absolute;width:600px;z-index:2550;left:50%;margin-left:-300px;-webkit-app-region:no-drag;border-radius:6px}.quick-input-titlebar{display:flex;align-items:center;border-radius:inherit}.quick-input-left-action-bar{display:flex;margin-left:4px;flex:1}.quick-input-title{padding:3px 0;text-align:center;text-overflow:ellipsis;overflow:hidden}.quick-input-right-action-bar{display:flex;margin-right:4px;flex:1}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:center;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px 6px 6px 11px}.quick-input-header .quick-input-description{margin:4px 2px;flex:1}.quick-input-header{display:flex;padding:8px 6px 2px}.quick-input-widget.hidden-input .quick-input-header{padding:0;margin-bottom:0}.quick-input-and-message{display:flex;flex-direction:column;flex-grow:1;min-width:0;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;position:absolute;right:4px;display:flex;align-items:center}.quick-input-count .monaco-count-badge{vertical-align:middle;padding:2px 4px;border-radius:2px;min-height:auto;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{font-size:11px;padding:0 6px;display:flex;height:25px;align-items:center}.quick-input-message{margin-top:-1px;padding:5px;overflow-wrap:break-word}.quick-input-message>.codicon{margin:0 .2em;vertical-align:text-bottom}.quick-input-message a{color:inherit}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-list{line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:4px;padding-bottom:4px}.quick-input-list .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-list .monaco-scrollable-element{padding:0 5px}.quick-input-list .quick-input-list-entry{box-sizing:border-box;overflow:hidden;display:flex;height:100%;padding:0 6px}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-width:1px;border-top-style:solid}.quick-input-list .monaco-list-row{border-radius:3px}.quick-input-list .monaco-list-row[data-index="0"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-list .quick-input-list-checkbox{align-self:center;margin:0}.quick-input-list .quick-input-list-icon{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-list .quick-input-list-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-rows{margin-left:10px}.quick-input-widget .quick-input-list .quick-input-list-checkbox{display:none}.quick-input-widget.show-checkboxes .quick-input-list .quick-input-list-checkbox{display:inline}.quick-input-list .quick-input-list-rows>.quick-input-list-row{display:flex;align-items:center}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label>span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:.7;line-height:normal;text-overflow:ellipsis;overflow:hidden}.quick-input-list .monaco-list .monaco-list-row .monaco-highlighted-label .highlight{font-weight:700;background-color:unset;color:var(--vscode-list-highlightForeground)!important}.quick-input-list .monaco-list .monaco-list-row.focused .monaco-highlighted-label .highlight{color:var(--vscode-list-focusHighlightForeground)!important}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:4px}.quick-input-list .quick-input-list-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:0 2px 2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px;margin-right:4px}.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label,.quick-input-list .quick-input-list-entry.focus-inside .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.passive-focused .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:none}.quick-input-list .quick-input-list-separator-as-item{padding:4px 6px;font-size:12px}.quick-input-list .quick-input-list-separator-as-item .label-name{font-weight:600}.quick-input-list .quick-input-list-separator-as-item .label-description{opacity:1!important}.quick-input-list .monaco-tree-sticky-row .quick-input-list-entry.quick-input-list-separator-as-item.quick-input-list-separator-border{border-top-style:none}.quick-input-list .monaco-tree-sticky-row{padding:0 5px}.quick-input-list .monaco-tl-twistie{display:none!important}.monaco-progress-container{width:100%;height:2px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:2px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-iteration-count:infinite;transform:translateZ(0);animation-timing-function:linear}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100)}@keyframes progress{0%{transform:translate(0) scaleX(1)}50%{transform:translate(2500%) scaleX(3)}to{transform:translate(4900%) scaleX(1)}}.monaco-component.multiDiffEditor{background:var(--vscode-multiDiffEditor-background);overflow-y:hidden}.monaco-component.multiDiffEditor .focused{--vscode-multiDiffEditor-border: var(--vscode-focusBorder)}.monaco-component.multiDiffEditor .multiDiffEntry{display:flex;flex-direction:column;flex:1;overflow:hidden}:is(.monaco-component.multiDiffEditor .multiDiffEntry) .collapse-button{margin:0 5px;cursor:pointer}:is(:is(.monaco-component.multiDiffEditor .multiDiffEntry) .collapse-button) a{display:block}:is(.monaco-component.multiDiffEditor .multiDiffEntry) .header{z-index:1000;background:var(--vscode-editor-background)}:is(:is(.monaco-component.multiDiffEditor .multiDiffEntry) .header):not(.collapsed) .header-content{border-bottom:1px solid var(--vscode-sideBarSectionHeader-border)}:is(:is(.monaco-component.multiDiffEditor .multiDiffEntry) .header) .header-content{margin:8px 8px 0;padding:4px 5px;border-top:1px solid var(--vscode-multiDiffEditor-border);border-right:1px solid var(--vscode-multiDiffEditor-border);border-left:1px solid var(--vscode-multiDiffEditor-border);border-top-left-radius:2px;border-top-right-radius:2px;display:flex;align-items:center;color:var(--vscode-foreground);background:var(--vscode-multiDiffEditor-headerBackground)}.shadow:is(:is(:is(.monaco-component.multiDiffEditor .multiDiffEntry) .header) .header-content){box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px}:is(:is(:is(.monaco-component.multiDiffEditor .multiDiffEntry) .header) .header-content) .file-path{display:flex;flex:1;min-width:0}:is(:is(:is(:is(.monaco-component.multiDiffEditor .multiDiffEntry) .header) .header-content) .file-path) .title{font-size:14px;line-height:22px}.original:is(:is(:is(:is(:is(.monaco-component.multiDiffEditor .multiDiffEntry) .header) .header-content) .file-path) .title){flex:1;min-width:0;text-overflow:ellipsis}:is(:is(:is(:is(.monaco-component.multiDiffEditor .multiDiffEntry) .header) .header-content) .file-path) .status{font-weight:600;opacity:.75;margin:0 10px;line-height:22px}:is(:is(:is(.monaco-component.multiDiffEditor .multiDiffEntry) .header) .header-content) .actions{padding:0 8px}:is(.monaco-component.multiDiffEditor .multiDiffEntry) .editorParent{flex:1;display:flex;flex-direction:column;margin-right:8px;margin-left:8px;border-right:1px solid var(--vscode-multiDiffEditor-border);border-left:1px solid var(--vscode-multiDiffEditor-border);border-bottom:1px solid var(--vscode-multiDiffEditor-border);border-radius:2px;overflow:hidden}:is(.monaco-component.multiDiffEditor .multiDiffEntry) .editorContainer{flex:1} diff --git a/data/gitea/public/assets/css/recent-commits-graph.45c55234.css b/data/gitea/public/assets/css/recent-commits-graph.45c55234.css new file mode 100644 index 0000000..7df2421 --- /dev/null +++ b/data/gitea/public/assets/css/recent-commits-graph.45c55234.css @@ -0,0 +1 @@ +.main-graph[data-v-33ced179]{height:250px} diff --git a/data/gitea/public/assets/css/swagger.css b/data/gitea/public/assets/css/swagger.css new file mode 100644 index 0000000..2f717f5 --- /dev/null +++ b/data/gitea/public/assets/css/swagger.css @@ -0,0 +1 @@ +.swagger-ui{color:#3b4151;font-family:sans-serif}.swagger-ui html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}.swagger-ui body{margin:0}.swagger-ui article,.swagger-ui aside,.swagger-ui footer,.swagger-ui header,.swagger-ui nav,.swagger-ui section{display:block}.swagger-ui h1{font-size:2em;margin:.67em 0}.swagger-ui figcaption,.swagger-ui figure,.swagger-ui main{display:block}.swagger-ui figure{margin:1em 40px}.swagger-ui hr{box-sizing:content-box;height:0;overflow:visible}.swagger-ui pre{font-family:monospace,monospace;font-size:1em}.swagger-ui a{background-color:transparent;-webkit-text-decoration-skip:objects}.swagger-ui abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.swagger-ui b,.swagger-ui strong{font-weight:inherit;font-weight:bolder}.swagger-ui code,.swagger-ui kbd,.swagger-ui samp{font-family:monospace,monospace;font-size:1em}.swagger-ui dfn{font-style:italic}.swagger-ui mark{background-color:#ff0;color:#000}.swagger-ui small{font-size:80%}.swagger-ui sub,.swagger-ui sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.swagger-ui sub{bottom:-.25em}.swagger-ui sup{top:-.5em}.swagger-ui audio,.swagger-ui video{display:inline-block}.swagger-ui audio:not([controls]){display:none;height:0}.swagger-ui img{border-style:none}.swagger-ui svg:not(:root){overflow:hidden}.swagger-ui button,.swagger-ui input,.swagger-ui optgroup,.swagger-ui select,.swagger-ui textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}.swagger-ui button,.swagger-ui input{overflow:visible}.swagger-ui button,.swagger-ui select{text-transform:none}.swagger-ui [type=reset],.swagger-ui [type=submit],.swagger-ui button,.swagger-ui html [type=button]{-webkit-appearance:button}.swagger-ui [type=button]::-moz-focus-inner,.swagger-ui [type=reset]::-moz-focus-inner,.swagger-ui [type=submit]::-moz-focus-inner,.swagger-ui button::-moz-focus-inner{border-style:none;padding:0}.swagger-ui [type=button]:-moz-focusring,.swagger-ui [type=reset]:-moz-focusring,.swagger-ui [type=submit]:-moz-focusring,.swagger-ui button:-moz-focusring{outline:1px dotted ButtonText}.swagger-ui fieldset{padding:.35em .75em .625em}.swagger-ui legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}.swagger-ui progress{display:inline-block;vertical-align:baseline}.swagger-ui textarea{overflow:auto}.swagger-ui [type=checkbox],.swagger-ui [type=radio]{box-sizing:border-box;padding:0}.swagger-ui [type=number]::-webkit-inner-spin-button,.swagger-ui [type=number]::-webkit-outer-spin-button{height:auto}.swagger-ui [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.swagger-ui [type=search]::-webkit-search-cancel-button,.swagger-ui [type=search]::-webkit-search-decoration{-webkit-appearance:none}.swagger-ui ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.swagger-ui details,.swagger-ui menu{display:block}.swagger-ui summary{display:list-item}.swagger-ui canvas{display:inline-block}.swagger-ui [hidden],.swagger-ui template{display:none}.swagger-ui .debug *{outline:1px solid gold}.swagger-ui .debug-white *{outline:1px solid #fff}.swagger-ui .debug-black *{outline:1px solid #000}.swagger-ui .debug-grid{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTRDOTY4N0U2N0VFMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTRDOTY4N0Q2N0VFMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NjcyQkQ3NjY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NjcyQkQ3NzY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PsBS+GMAAAAjSURBVHjaYvz//z8DLsD4gcGXiYEAGBIKGBne//fFpwAgwAB98AaF2pjlUQAAAABJRU5ErkJggg==) repeat 0 0}.swagger-ui .debug-grid-16{background:transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODYyRjhERDU2N0YyMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODYyRjhERDQ2N0YyMTFFNjg2MzZDQjkwNkQ4MjgwMEIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NjcyQkQ3QTY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NjcyQkQ3QjY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvCS01IAAABMSURBVHjaYmR4/5+BFPBfAMFm/MBgx8RAGWCn1AAmSg34Q6kBDKMGMDCwICeMIemF/5QawEipAWwUhwEjMDvbAWlWkvVBwu8vQIABAEwBCph8U6c0AAAAAElFTkSuQmCC) repeat 0 0}.swagger-ui .debug-grid-8-solid{background:#fff url(data:image/jpeg;base64,/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAAAAAD/4QMxaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzExMSA3OS4xNTgzMjUsIDIwMTUvMDkvMTAtMDE6MTA6MjAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE1IChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkIxMjI0OTczNjdCMzExRTZCMkJDRTI0MDgxMDAyMTcxIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkIxMjI0OTc0NjdCMzExRTZCMkJDRTI0MDgxMDAyMTcxIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QjEyMjQ5NzE2N0IzMTFFNkIyQkNFMjQwODEwMDIxNzEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QjEyMjQ5NzI2N0IzMTFFNkIyQkNFMjQwODEwMDIxNzEiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7/7gAOQWRvYmUAZMAAAAAB/9sAhAAbGhopHSlBJiZBQi8vL0JHPz4+P0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHAR0pKTQmND8oKD9HPzU/R0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0f/wAARCAAIAAgDASIAAhEBAxEB/8QAWQABAQAAAAAAAAAAAAAAAAAAAAYBAQEAAAAAAAAAAAAAAAAAAAIEEAEBAAMBAAAAAAAAAAAAAAABADECA0ERAAEDBQAAAAAAAAAAAAAAAAARITFBUWESIv/aAAwDAQACEQMRAD8AoOnTV1QTD7JJshP3vSM3P//Z) repeat 0 0}.swagger-ui .debug-grid-16-solid{background:#fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NzY3MkJEN0U2N0M1MTFFNkIyQkNFMjQwODEwMDIxNzEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NzY3MkJEN0Y2N0M1MTFFNkIyQkNFMjQwODEwMDIxNzEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3NjcyQkQ3QzY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3NjcyQkQ3RDY3QzUxMUU2QjJCQ0UyNDA4MTAwMjE3MSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pve6J3kAAAAzSURBVHjaYvz//z8D0UDsMwMjSRoYP5Gq4SPNbRjVMEQ1fCRDg+in/6+J1AJUxsgAEGAA31BAJMS0GYEAAAAASUVORK5CYII=) repeat 0 0}.swagger-ui .border-box,.swagger-ui a,.swagger-ui article,.swagger-ui body,.swagger-ui code,.swagger-ui dd,.swagger-ui div,.swagger-ui dl,.swagger-ui dt,.swagger-ui fieldset,.swagger-ui footer,.swagger-ui form,.swagger-ui h1,.swagger-ui h2,.swagger-ui h3,.swagger-ui h4,.swagger-ui h5,.swagger-ui h6,.swagger-ui header,.swagger-ui html,.swagger-ui input[type=email],.swagger-ui input[type=number],.swagger-ui input[type=password],.swagger-ui input[type=tel],.swagger-ui input[type=text],.swagger-ui input[type=url],.swagger-ui legend,.swagger-ui li,.swagger-ui main,.swagger-ui ol,.swagger-ui p,.swagger-ui pre,.swagger-ui section,.swagger-ui table,.swagger-ui td,.swagger-ui textarea,.swagger-ui th,.swagger-ui tr,.swagger-ui ul{box-sizing:border-box}.swagger-ui .aspect-ratio{height:0;position:relative}.swagger-ui .aspect-ratio--16x9{padding-bottom:56.25%}.swagger-ui .aspect-ratio--9x16{padding-bottom:177.77%}.swagger-ui .aspect-ratio--4x3{padding-bottom:75%}.swagger-ui .aspect-ratio--3x4{padding-bottom:133.33%}.swagger-ui .aspect-ratio--6x4{padding-bottom:66.6%}.swagger-ui .aspect-ratio--4x6{padding-bottom:150%}.swagger-ui .aspect-ratio--8x5{padding-bottom:62.5%}.swagger-ui .aspect-ratio--5x8{padding-bottom:160%}.swagger-ui .aspect-ratio--7x5{padding-bottom:71.42%}.swagger-ui .aspect-ratio--5x7{padding-bottom:140%}.swagger-ui .aspect-ratio--1x1{padding-bottom:100%}.swagger-ui .aspect-ratio--object{height:100%;inset:0;position:absolute;width:100%;z-index:100}@media screen and (min-width:30em){.swagger-ui .aspect-ratio-ns{height:0;position:relative}.swagger-ui .aspect-ratio--16x9-ns{padding-bottom:56.25%}.swagger-ui .aspect-ratio--9x16-ns{padding-bottom:177.77%}.swagger-ui .aspect-ratio--4x3-ns{padding-bottom:75%}.swagger-ui .aspect-ratio--3x4-ns{padding-bottom:133.33%}.swagger-ui .aspect-ratio--6x4-ns{padding-bottom:66.6%}.swagger-ui .aspect-ratio--4x6-ns{padding-bottom:150%}.swagger-ui .aspect-ratio--8x5-ns{padding-bottom:62.5%}.swagger-ui .aspect-ratio--5x8-ns{padding-bottom:160%}.swagger-ui .aspect-ratio--7x5-ns{padding-bottom:71.42%}.swagger-ui .aspect-ratio--5x7-ns{padding-bottom:140%}.swagger-ui .aspect-ratio--1x1-ns{padding-bottom:100%}.swagger-ui .aspect-ratio--object-ns{height:100%;inset:0;position:absolute;width:100%;z-index:100}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .aspect-ratio-m{height:0;position:relative}.swagger-ui .aspect-ratio--16x9-m{padding-bottom:56.25%}.swagger-ui .aspect-ratio--9x16-m{padding-bottom:177.77%}.swagger-ui .aspect-ratio--4x3-m{padding-bottom:75%}.swagger-ui .aspect-ratio--3x4-m{padding-bottom:133.33%}.swagger-ui .aspect-ratio--6x4-m{padding-bottom:66.6%}.swagger-ui .aspect-ratio--4x6-m{padding-bottom:150%}.swagger-ui .aspect-ratio--8x5-m{padding-bottom:62.5%}.swagger-ui .aspect-ratio--5x8-m{padding-bottom:160%}.swagger-ui .aspect-ratio--7x5-m{padding-bottom:71.42%}.swagger-ui .aspect-ratio--5x7-m{padding-bottom:140%}.swagger-ui .aspect-ratio--1x1-m{padding-bottom:100%}.swagger-ui .aspect-ratio--object-m{height:100%;inset:0;position:absolute;width:100%;z-index:100}}@media screen and (min-width:60em){.swagger-ui .aspect-ratio-l{height:0;position:relative}.swagger-ui .aspect-ratio--16x9-l{padding-bottom:56.25%}.swagger-ui .aspect-ratio--9x16-l{padding-bottom:177.77%}.swagger-ui .aspect-ratio--4x3-l{padding-bottom:75%}.swagger-ui .aspect-ratio--3x4-l{padding-bottom:133.33%}.swagger-ui .aspect-ratio--6x4-l{padding-bottom:66.6%}.swagger-ui .aspect-ratio--4x6-l{padding-bottom:150%}.swagger-ui .aspect-ratio--8x5-l{padding-bottom:62.5%}.swagger-ui .aspect-ratio--5x8-l{padding-bottom:160%}.swagger-ui .aspect-ratio--7x5-l{padding-bottom:71.42%}.swagger-ui .aspect-ratio--5x7-l{padding-bottom:140%}.swagger-ui .aspect-ratio--1x1-l{padding-bottom:100%}.swagger-ui .aspect-ratio--object-l{height:100%;inset:0;position:absolute;width:100%;z-index:100}}.swagger-ui img{max-width:100%}.swagger-ui .cover{background-size:cover!important}.swagger-ui .contain{background-size:contain!important}@media screen and (min-width:30em){.swagger-ui .cover-ns{background-size:cover!important}.swagger-ui .contain-ns{background-size:contain!important}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .cover-m{background-size:cover!important}.swagger-ui .contain-m{background-size:contain!important}}@media screen and (min-width:60em){.swagger-ui .cover-l{background-size:cover!important}.swagger-ui .contain-l{background-size:contain!important}}.swagger-ui .bg-center{background-position:50%;background-repeat:no-repeat}.swagger-ui .bg-top{background-position:top;background-repeat:no-repeat}.swagger-ui .bg-right{background-position:100%;background-repeat:no-repeat}.swagger-ui .bg-bottom{background-position:bottom;background-repeat:no-repeat}.swagger-ui .bg-left{background-position:0;background-repeat:no-repeat}@media screen and (min-width:30em){.swagger-ui .bg-center-ns{background-position:50%;background-repeat:no-repeat}.swagger-ui .bg-top-ns{background-position:top;background-repeat:no-repeat}.swagger-ui .bg-right-ns{background-position:100%;background-repeat:no-repeat}.swagger-ui .bg-bottom-ns{background-position:bottom;background-repeat:no-repeat}.swagger-ui .bg-left-ns{background-position:0;background-repeat:no-repeat}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .bg-center-m{background-position:50%;background-repeat:no-repeat}.swagger-ui .bg-top-m{background-position:top;background-repeat:no-repeat}.swagger-ui .bg-right-m{background-position:100%;background-repeat:no-repeat}.swagger-ui .bg-bottom-m{background-position:bottom;background-repeat:no-repeat}.swagger-ui .bg-left-m{background-position:0;background-repeat:no-repeat}}@media screen and (min-width:60em){.swagger-ui .bg-center-l{background-position:50%;background-repeat:no-repeat}.swagger-ui .bg-top-l{background-position:top;background-repeat:no-repeat}.swagger-ui .bg-right-l{background-position:100%;background-repeat:no-repeat}.swagger-ui .bg-bottom-l{background-position:bottom;background-repeat:no-repeat}.swagger-ui .bg-left-l{background-position:0;background-repeat:no-repeat}}.swagger-ui .outline{outline:1px solid}.swagger-ui .outline-transparent{outline:1px solid transparent}.swagger-ui .outline-0{outline:0}@media screen and (min-width:30em){.swagger-ui .outline-ns{outline:1px solid}.swagger-ui .outline-transparent-ns{outline:1px solid transparent}.swagger-ui .outline-0-ns{outline:0}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .outline-m{outline:1px solid}.swagger-ui .outline-transparent-m{outline:1px solid transparent}.swagger-ui .outline-0-m{outline:0}}@media screen and (min-width:60em){.swagger-ui .outline-l{outline:1px solid}.swagger-ui .outline-transparent-l{outline:1px solid transparent}.swagger-ui .outline-0-l{outline:0}}.swagger-ui .ba{border-style:solid;border-width:1px}.swagger-ui .bt{border-top-style:solid;border-top-width:1px}.swagger-ui .br{border-right-style:solid;border-right-width:1px}.swagger-ui .bb{border-bottom-style:solid;border-bottom-width:1px}.swagger-ui .bl{border-left-style:solid;border-left-width:1px}.swagger-ui .bn{border-style:none;border-width:0}@media screen and (min-width:30em){.swagger-ui .ba-ns{border-style:solid;border-width:1px}.swagger-ui .bt-ns{border-top-style:solid;border-top-width:1px}.swagger-ui .br-ns{border-right-style:solid;border-right-width:1px}.swagger-ui .bb-ns{border-bottom-style:solid;border-bottom-width:1px}.swagger-ui .bl-ns{border-left-style:solid;border-left-width:1px}.swagger-ui .bn-ns{border-style:none;border-width:0}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .ba-m{border-style:solid;border-width:1px}.swagger-ui .bt-m{border-top-style:solid;border-top-width:1px}.swagger-ui .br-m{border-right-style:solid;border-right-width:1px}.swagger-ui .bb-m{border-bottom-style:solid;border-bottom-width:1px}.swagger-ui .bl-m{border-left-style:solid;border-left-width:1px}.swagger-ui .bn-m{border-style:none;border-width:0}}@media screen and (min-width:60em){.swagger-ui .ba-l{border-style:solid;border-width:1px}.swagger-ui .bt-l{border-top-style:solid;border-top-width:1px}.swagger-ui .br-l{border-right-style:solid;border-right-width:1px}.swagger-ui .bb-l{border-bottom-style:solid;border-bottom-width:1px}.swagger-ui .bl-l{border-left-style:solid;border-left-width:1px}.swagger-ui .bn-l{border-style:none;border-width:0}}.swagger-ui .b--black{border-color:#000}.swagger-ui .b--near-black{border-color:#111}.swagger-ui .b--dark-gray{border-color:#333}.swagger-ui .b--mid-gray{border-color:#555}.swagger-ui .b--gray{border-color:#777}.swagger-ui .b--silver{border-color:#999}.swagger-ui .b--light-silver{border-color:#aaa}.swagger-ui .b--moon-gray{border-color:#ccc}.swagger-ui .b--light-gray{border-color:#eee}.swagger-ui .b--near-white{border-color:#f4f4f4}.swagger-ui .b--white{border-color:#fff}.swagger-ui .b--white-90{border-color:#ffffffe6}.swagger-ui .b--white-80{border-color:#fffc}.swagger-ui .b--white-70{border-color:#ffffffb3}.swagger-ui .b--white-60{border-color:#fff9}.swagger-ui .b--white-50{border-color:#ffffff80}.swagger-ui .b--white-40{border-color:#fff6}.swagger-ui .b--white-30{border-color:#ffffff4d}.swagger-ui .b--white-20{border-color:#fff3}.swagger-ui .b--white-10{border-color:#ffffff1a}.swagger-ui .b--white-05{border-color:#ffffff0d}.swagger-ui .b--white-025{border-color:#ffffff06}.swagger-ui .b--white-0125{border-color:#ffffff03}.swagger-ui .b--black-90{border-color:#000000e6}.swagger-ui .b--black-80{border-color:#000c}.swagger-ui .b--black-70{border-color:#000000b3}.swagger-ui .b--black-60{border-color:#0009}.swagger-ui .b--black-50{border-color:#00000080}.swagger-ui .b--black-40{border-color:#0006}.swagger-ui .b--black-30{border-color:#0000004d}.swagger-ui .b--black-20{border-color:#0003}.swagger-ui .b--black-10{border-color:#0000001a}.swagger-ui .b--black-05{border-color:#0000000d}.swagger-ui .b--black-025{border-color:#00000006}.swagger-ui .b--black-0125{border-color:#00000003}.swagger-ui .b--dark-red{border-color:#e7040f}.swagger-ui .b--red{border-color:#ff4136}.swagger-ui .b--light-red{border-color:#ff725c}.swagger-ui .b--orange{border-color:#ff6300}.swagger-ui .b--gold{border-color:#ffb700}.swagger-ui .b--yellow{border-color:gold}.swagger-ui .b--light-yellow{border-color:#fbf1a9}.swagger-ui .b--purple{border-color:#5e2ca5}.swagger-ui .b--light-purple{border-color:#a463f2}.swagger-ui .b--dark-pink{border-color:#d5008f}.swagger-ui .b--hot-pink{border-color:#ff41b4}.swagger-ui .b--pink{border-color:#ff80cc}.swagger-ui .b--light-pink{border-color:#ffa3d7}.swagger-ui .b--dark-green{border-color:#137752}.swagger-ui .b--green{border-color:#19a974}.swagger-ui .b--light-green{border-color:#9eebcf}.swagger-ui .b--navy{border-color:#001b44}.swagger-ui .b--dark-blue{border-color:#00449e}.swagger-ui .b--blue{border-color:#357edd}.swagger-ui .b--light-blue{border-color:#96ccff}.swagger-ui .b--lightest-blue{border-color:#cdecff}.swagger-ui .b--washed-blue{border-color:#f6fffe}.swagger-ui .b--washed-green{border-color:#e8fdf5}.swagger-ui .b--washed-yellow{border-color:#fffceb}.swagger-ui .b--washed-red{border-color:#ffdfdf}.swagger-ui .b--transparent{border-color:transparent}.swagger-ui .b--inherit{border-color:inherit}.swagger-ui .br0{border-radius:0}.swagger-ui .br1{border-radius:.125rem}.swagger-ui .br2{border-radius:.25rem}.swagger-ui .br3{border-radius:.5rem}.swagger-ui .br4{border-radius:1rem}.swagger-ui .br-100{border-radius:100%}.swagger-ui .br-pill{border-radius:9999px}.swagger-ui .br--bottom{border-top-left-radius:0;border-top-right-radius:0}.swagger-ui .br--top{border-bottom-left-radius:0;border-bottom-right-radius:0}.swagger-ui .br--right{border-bottom-left-radius:0;border-top-left-radius:0}.swagger-ui .br--left{border-bottom-right-radius:0;border-top-right-radius:0}@media screen and (min-width:30em){.swagger-ui .br0-ns{border-radius:0}.swagger-ui .br1-ns{border-radius:.125rem}.swagger-ui .br2-ns{border-radius:.25rem}.swagger-ui .br3-ns{border-radius:.5rem}.swagger-ui .br4-ns{border-radius:1rem}.swagger-ui .br-100-ns{border-radius:100%}.swagger-ui .br-pill-ns{border-radius:9999px}.swagger-ui .br--bottom-ns{border-top-left-radius:0;border-top-right-radius:0}.swagger-ui .br--top-ns{border-bottom-left-radius:0;border-bottom-right-radius:0}.swagger-ui .br--right-ns{border-bottom-left-radius:0;border-top-left-radius:0}.swagger-ui .br--left-ns{border-bottom-right-radius:0;border-top-right-radius:0}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .br0-m{border-radius:0}.swagger-ui .br1-m{border-radius:.125rem}.swagger-ui .br2-m{border-radius:.25rem}.swagger-ui .br3-m{border-radius:.5rem}.swagger-ui .br4-m{border-radius:1rem}.swagger-ui .br-100-m{border-radius:100%}.swagger-ui .br-pill-m{border-radius:9999px}.swagger-ui .br--bottom-m{border-top-left-radius:0;border-top-right-radius:0}.swagger-ui .br--top-m{border-bottom-left-radius:0;border-bottom-right-radius:0}.swagger-ui .br--right-m{border-bottom-left-radius:0;border-top-left-radius:0}.swagger-ui .br--left-m{border-bottom-right-radius:0;border-top-right-radius:0}}@media screen and (min-width:60em){.swagger-ui .br0-l{border-radius:0}.swagger-ui .br1-l{border-radius:.125rem}.swagger-ui .br2-l{border-radius:.25rem}.swagger-ui .br3-l{border-radius:.5rem}.swagger-ui .br4-l{border-radius:1rem}.swagger-ui .br-100-l{border-radius:100%}.swagger-ui .br-pill-l{border-radius:9999px}.swagger-ui .br--bottom-l{border-top-left-radius:0;border-top-right-radius:0}.swagger-ui .br--top-l{border-bottom-left-radius:0;border-bottom-right-radius:0}.swagger-ui .br--right-l{border-bottom-left-radius:0;border-top-left-radius:0}.swagger-ui .br--left-l{border-bottom-right-radius:0;border-top-right-radius:0}}.swagger-ui .b--dotted{border-style:dotted}.swagger-ui .b--dashed{border-style:dashed}.swagger-ui .b--solid{border-style:solid}.swagger-ui .b--none{border-style:none}@media screen and (min-width:30em){.swagger-ui .b--dotted-ns{border-style:dotted}.swagger-ui .b--dashed-ns{border-style:dashed}.swagger-ui .b--solid-ns{border-style:solid}.swagger-ui .b--none-ns{border-style:none}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .b--dotted-m{border-style:dotted}.swagger-ui .b--dashed-m{border-style:dashed}.swagger-ui .b--solid-m{border-style:solid}.swagger-ui .b--none-m{border-style:none}}@media screen and (min-width:60em){.swagger-ui .b--dotted-l{border-style:dotted}.swagger-ui .b--dashed-l{border-style:dashed}.swagger-ui .b--solid-l{border-style:solid}.swagger-ui .b--none-l{border-style:none}}.swagger-ui .bw0{border-width:0}.swagger-ui .bw1{border-width:.125rem}.swagger-ui .bw2{border-width:.25rem}.swagger-ui .bw3{border-width:.5rem}.swagger-ui .bw4{border-width:1rem}.swagger-ui .bw5{border-width:2rem}.swagger-ui .bt-0{border-top-width:0}.swagger-ui .br-0{border-right-width:0}.swagger-ui .bb-0{border-bottom-width:0}.swagger-ui .bl-0{border-left-width:0}@media screen and (min-width:30em){.swagger-ui .bw0-ns{border-width:0}.swagger-ui .bw1-ns{border-width:.125rem}.swagger-ui .bw2-ns{border-width:.25rem}.swagger-ui .bw3-ns{border-width:.5rem}.swagger-ui .bw4-ns{border-width:1rem}.swagger-ui .bw5-ns{border-width:2rem}.swagger-ui .bt-0-ns{border-top-width:0}.swagger-ui .br-0-ns{border-right-width:0}.swagger-ui .bb-0-ns{border-bottom-width:0}.swagger-ui .bl-0-ns{border-left-width:0}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .bw0-m{border-width:0}.swagger-ui .bw1-m{border-width:.125rem}.swagger-ui .bw2-m{border-width:.25rem}.swagger-ui .bw3-m{border-width:.5rem}.swagger-ui .bw4-m{border-width:1rem}.swagger-ui .bw5-m{border-width:2rem}.swagger-ui .bt-0-m{border-top-width:0}.swagger-ui .br-0-m{border-right-width:0}.swagger-ui .bb-0-m{border-bottom-width:0}.swagger-ui .bl-0-m{border-left-width:0}}@media screen and (min-width:60em){.swagger-ui .bw0-l{border-width:0}.swagger-ui .bw1-l{border-width:.125rem}.swagger-ui .bw2-l{border-width:.25rem}.swagger-ui .bw3-l{border-width:.5rem}.swagger-ui .bw4-l{border-width:1rem}.swagger-ui .bw5-l{border-width:2rem}.swagger-ui .bt-0-l{border-top-width:0}.swagger-ui .br-0-l{border-right-width:0}.swagger-ui .bb-0-l{border-bottom-width:0}.swagger-ui .bl-0-l{border-left-width:0}}.swagger-ui .shadow-1{box-shadow:0 0 4px 2px #0003}.swagger-ui .shadow-2{box-shadow:0 0 8px 2px #0003}.swagger-ui .shadow-3{box-shadow:2px 2px 4px 2px #0003}.swagger-ui .shadow-4{box-shadow:2px 2px 8px #0003}.swagger-ui .shadow-5{box-shadow:4px 4px 8px #0003}@media screen and (min-width:30em){.swagger-ui .shadow-1-ns{box-shadow:0 0 4px 2px #0003}.swagger-ui .shadow-2-ns{box-shadow:0 0 8px 2px #0003}.swagger-ui .shadow-3-ns{box-shadow:2px 2px 4px 2px #0003}.swagger-ui .shadow-4-ns{box-shadow:2px 2px 8px #0003}.swagger-ui .shadow-5-ns{box-shadow:4px 4px 8px #0003}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .shadow-1-m{box-shadow:0 0 4px 2px #0003}.swagger-ui .shadow-2-m{box-shadow:0 0 8px 2px #0003}.swagger-ui .shadow-3-m{box-shadow:2px 2px 4px 2px #0003}.swagger-ui .shadow-4-m{box-shadow:2px 2px 8px #0003}.swagger-ui .shadow-5-m{box-shadow:4px 4px 8px #0003}}@media screen and (min-width:60em){.swagger-ui .shadow-1-l{box-shadow:0 0 4px 2px #0003}.swagger-ui .shadow-2-l{box-shadow:0 0 8px 2px #0003}.swagger-ui .shadow-3-l{box-shadow:2px 2px 4px 2px #0003}.swagger-ui .shadow-4-l{box-shadow:2px 2px 8px #0003}.swagger-ui .shadow-5-l{box-shadow:4px 4px 8px #0003}}.swagger-ui .pre{overflow-x:auto;overflow-y:hidden;overflow:scroll}.swagger-ui .top-0{top:0}.swagger-ui .right-0{right:0}.swagger-ui .bottom-0{bottom:0}.swagger-ui .left-0{left:0}.swagger-ui .top-1{top:1rem}.swagger-ui .right-1{right:1rem}.swagger-ui .bottom-1{bottom:1rem}.swagger-ui .left-1{left:1rem}.swagger-ui .top-2{top:2rem}.swagger-ui .right-2{right:2rem}.swagger-ui .bottom-2{bottom:2rem}.swagger-ui .left-2{left:2rem}.swagger-ui .top--1{top:-1rem}.swagger-ui .right--1{right:-1rem}.swagger-ui .bottom--1{bottom:-1rem}.swagger-ui .left--1{left:-1rem}.swagger-ui .top--2{top:-2rem}.swagger-ui .right--2{right:-2rem}.swagger-ui .bottom--2{bottom:-2rem}.swagger-ui .left--2{left:-2rem}.swagger-ui .absolute--fill{inset:0}@media screen and (min-width:30em){.swagger-ui .top-0-ns{top:0}.swagger-ui .left-0-ns{left:0}.swagger-ui .right-0-ns{right:0}.swagger-ui .bottom-0-ns{bottom:0}.swagger-ui .top-1-ns{top:1rem}.swagger-ui .left-1-ns{left:1rem}.swagger-ui .right-1-ns{right:1rem}.swagger-ui .bottom-1-ns{bottom:1rem}.swagger-ui .top-2-ns{top:2rem}.swagger-ui .left-2-ns{left:2rem}.swagger-ui .right-2-ns{right:2rem}.swagger-ui .bottom-2-ns{bottom:2rem}.swagger-ui .top--1-ns{top:-1rem}.swagger-ui .right--1-ns{right:-1rem}.swagger-ui .bottom--1-ns{bottom:-1rem}.swagger-ui .left--1-ns{left:-1rem}.swagger-ui .top--2-ns{top:-2rem}.swagger-ui .right--2-ns{right:-2rem}.swagger-ui .bottom--2-ns{bottom:-2rem}.swagger-ui .left--2-ns{left:-2rem}.swagger-ui .absolute--fill-ns{inset:0}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .top-0-m{top:0}.swagger-ui .left-0-m{left:0}.swagger-ui .right-0-m{right:0}.swagger-ui .bottom-0-m{bottom:0}.swagger-ui .top-1-m{top:1rem}.swagger-ui .left-1-m{left:1rem}.swagger-ui .right-1-m{right:1rem}.swagger-ui .bottom-1-m{bottom:1rem}.swagger-ui .top-2-m{top:2rem}.swagger-ui .left-2-m{left:2rem}.swagger-ui .right-2-m{right:2rem}.swagger-ui .bottom-2-m{bottom:2rem}.swagger-ui .top--1-m{top:-1rem}.swagger-ui .right--1-m{right:-1rem}.swagger-ui .bottom--1-m{bottom:-1rem}.swagger-ui .left--1-m{left:-1rem}.swagger-ui .top--2-m{top:-2rem}.swagger-ui .right--2-m{right:-2rem}.swagger-ui .bottom--2-m{bottom:-2rem}.swagger-ui .left--2-m{left:-2rem}.swagger-ui .absolute--fill-m{inset:0}}@media screen and (min-width:60em){.swagger-ui .top-0-l{top:0}.swagger-ui .left-0-l{left:0}.swagger-ui .right-0-l{right:0}.swagger-ui .bottom-0-l{bottom:0}.swagger-ui .top-1-l{top:1rem}.swagger-ui .left-1-l{left:1rem}.swagger-ui .right-1-l{right:1rem}.swagger-ui .bottom-1-l{bottom:1rem}.swagger-ui .top-2-l{top:2rem}.swagger-ui .left-2-l{left:2rem}.swagger-ui .right-2-l{right:2rem}.swagger-ui .bottom-2-l{bottom:2rem}.swagger-ui .top--1-l{top:-1rem}.swagger-ui .right--1-l{right:-1rem}.swagger-ui .bottom--1-l{bottom:-1rem}.swagger-ui .left--1-l{left:-1rem}.swagger-ui .top--2-l{top:-2rem}.swagger-ui .right--2-l{right:-2rem}.swagger-ui .bottom--2-l{bottom:-2rem}.swagger-ui .left--2-l{left:-2rem}.swagger-ui .absolute--fill-l{inset:0}}.swagger-ui .cf:after,.swagger-ui .cf:before{content:" ";display:table}.swagger-ui .cf:after{clear:both}.swagger-ui .cf{zoom:1}.swagger-ui .cl{clear:left}.swagger-ui .cr{clear:right}.swagger-ui .cb{clear:both}.swagger-ui .cn{clear:none}@media screen and (min-width:30em){.swagger-ui .cl-ns{clear:left}.swagger-ui .cr-ns{clear:right}.swagger-ui .cb-ns{clear:both}.swagger-ui .cn-ns{clear:none}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .cl-m{clear:left}.swagger-ui .cr-m{clear:right}.swagger-ui .cb-m{clear:both}.swagger-ui .cn-m{clear:none}}@media screen and (min-width:60em){.swagger-ui .cl-l{clear:left}.swagger-ui .cr-l{clear:right}.swagger-ui .cb-l{clear:both}.swagger-ui .cn-l{clear:none}}.swagger-ui .flex{display:flex}.swagger-ui .inline-flex{display:inline-flex}.swagger-ui .flex-auto{flex:1 1 auto;min-height:0;min-width:0}.swagger-ui .flex-none{flex:none}.swagger-ui .flex-column{flex-direction:column}.swagger-ui .flex-row{flex-direction:row}.swagger-ui .flex-wrap{flex-wrap:wrap}.swagger-ui .flex-nowrap{flex-wrap:nowrap}.swagger-ui .flex-wrap-reverse{flex-wrap:wrap-reverse}.swagger-ui .flex-column-reverse{flex-direction:column-reverse}.swagger-ui .flex-row-reverse{flex-direction:row-reverse}.swagger-ui .items-start{align-items:flex-start}.swagger-ui .items-end{align-items:flex-end}.swagger-ui .items-center{align-items:center}.swagger-ui .items-baseline{align-items:baseline}.swagger-ui .items-stretch{align-items:stretch}.swagger-ui .self-start{align-self:flex-start}.swagger-ui .self-end{align-self:flex-end}.swagger-ui .self-center{align-self:center}.swagger-ui .self-baseline{align-self:baseline}.swagger-ui .self-stretch{align-self:stretch}.swagger-ui .justify-start{justify-content:flex-start}.swagger-ui .justify-end{justify-content:flex-end}.swagger-ui .justify-center{justify-content:center}.swagger-ui .justify-between{justify-content:space-between}.swagger-ui .justify-around{justify-content:space-around}.swagger-ui .content-start{align-content:flex-start}.swagger-ui .content-end{align-content:flex-end}.swagger-ui .content-center{align-content:center}.swagger-ui .content-between{align-content:space-between}.swagger-ui .content-around{align-content:space-around}.swagger-ui .content-stretch{align-content:stretch}.swagger-ui .order-0{order:0}.swagger-ui .order-1{order:1}.swagger-ui .order-2{order:2}.swagger-ui .order-3{order:3}.swagger-ui .order-4{order:4}.swagger-ui .order-5{order:5}.swagger-ui .order-6{order:6}.swagger-ui .order-7{order:7}.swagger-ui .order-8{order:8}.swagger-ui .order-last{order:99999}.swagger-ui .flex-grow-0{flex-grow:0}.swagger-ui .flex-grow-1{flex-grow:1}.swagger-ui .flex-shrink-0{flex-shrink:0}.swagger-ui .flex-shrink-1{flex-shrink:1}@media screen and (min-width:30em){.swagger-ui .flex-ns{display:flex}.swagger-ui .inline-flex-ns{display:inline-flex}.swagger-ui .flex-auto-ns{flex:1 1 auto;min-height:0;min-width:0}.swagger-ui .flex-none-ns{flex:none}.swagger-ui .flex-column-ns{flex-direction:column}.swagger-ui .flex-row-ns{flex-direction:row}.swagger-ui .flex-wrap-ns{flex-wrap:wrap}.swagger-ui .flex-nowrap-ns{flex-wrap:nowrap}.swagger-ui .flex-wrap-reverse-ns{flex-wrap:wrap-reverse}.swagger-ui .flex-column-reverse-ns{flex-direction:column-reverse}.swagger-ui .flex-row-reverse-ns{flex-direction:row-reverse}.swagger-ui .items-start-ns{align-items:flex-start}.swagger-ui .items-end-ns{align-items:flex-end}.swagger-ui .items-center-ns{align-items:center}.swagger-ui .items-baseline-ns{align-items:baseline}.swagger-ui .items-stretch-ns{align-items:stretch}.swagger-ui .self-start-ns{align-self:flex-start}.swagger-ui .self-end-ns{align-self:flex-end}.swagger-ui .self-center-ns{align-self:center}.swagger-ui .self-baseline-ns{align-self:baseline}.swagger-ui .self-stretch-ns{align-self:stretch}.swagger-ui .justify-start-ns{justify-content:flex-start}.swagger-ui .justify-end-ns{justify-content:flex-end}.swagger-ui .justify-center-ns{justify-content:center}.swagger-ui .justify-between-ns{justify-content:space-between}.swagger-ui .justify-around-ns{justify-content:space-around}.swagger-ui .content-start-ns{align-content:flex-start}.swagger-ui .content-end-ns{align-content:flex-end}.swagger-ui .content-center-ns{align-content:center}.swagger-ui .content-between-ns{align-content:space-between}.swagger-ui .content-around-ns{align-content:space-around}.swagger-ui .content-stretch-ns{align-content:stretch}.swagger-ui .order-0-ns{order:0}.swagger-ui .order-1-ns{order:1}.swagger-ui .order-2-ns{order:2}.swagger-ui .order-3-ns{order:3}.swagger-ui .order-4-ns{order:4}.swagger-ui .order-5-ns{order:5}.swagger-ui .order-6-ns{order:6}.swagger-ui .order-7-ns{order:7}.swagger-ui .order-8-ns{order:8}.swagger-ui .order-last-ns{order:99999}.swagger-ui .flex-grow-0-ns{flex-grow:0}.swagger-ui .flex-grow-1-ns{flex-grow:1}.swagger-ui .flex-shrink-0-ns{flex-shrink:0}.swagger-ui .flex-shrink-1-ns{flex-shrink:1}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .flex-m{display:flex}.swagger-ui .inline-flex-m{display:inline-flex}.swagger-ui .flex-auto-m{flex:1 1 auto;min-height:0;min-width:0}.swagger-ui .flex-none-m{flex:none}.swagger-ui .flex-column-m{flex-direction:column}.swagger-ui .flex-row-m{flex-direction:row}.swagger-ui .flex-wrap-m{flex-wrap:wrap}.swagger-ui .flex-nowrap-m{flex-wrap:nowrap}.swagger-ui .flex-wrap-reverse-m{flex-wrap:wrap-reverse}.swagger-ui .flex-column-reverse-m{flex-direction:column-reverse}.swagger-ui .flex-row-reverse-m{flex-direction:row-reverse}.swagger-ui .items-start-m{align-items:flex-start}.swagger-ui .items-end-m{align-items:flex-end}.swagger-ui .items-center-m{align-items:center}.swagger-ui .items-baseline-m{align-items:baseline}.swagger-ui .items-stretch-m{align-items:stretch}.swagger-ui .self-start-m{align-self:flex-start}.swagger-ui .self-end-m{align-self:flex-end}.swagger-ui .self-center-m{align-self:center}.swagger-ui .self-baseline-m{align-self:baseline}.swagger-ui .self-stretch-m{align-self:stretch}.swagger-ui .justify-start-m{justify-content:flex-start}.swagger-ui .justify-end-m{justify-content:flex-end}.swagger-ui .justify-center-m{justify-content:center}.swagger-ui .justify-between-m{justify-content:space-between}.swagger-ui .justify-around-m{justify-content:space-around}.swagger-ui .content-start-m{align-content:flex-start}.swagger-ui .content-end-m{align-content:flex-end}.swagger-ui .content-center-m{align-content:center}.swagger-ui .content-between-m{align-content:space-between}.swagger-ui .content-around-m{align-content:space-around}.swagger-ui .content-stretch-m{align-content:stretch}.swagger-ui .order-0-m{order:0}.swagger-ui .order-1-m{order:1}.swagger-ui .order-2-m{order:2}.swagger-ui .order-3-m{order:3}.swagger-ui .order-4-m{order:4}.swagger-ui .order-5-m{order:5}.swagger-ui .order-6-m{order:6}.swagger-ui .order-7-m{order:7}.swagger-ui .order-8-m{order:8}.swagger-ui .order-last-m{order:99999}.swagger-ui .flex-grow-0-m{flex-grow:0}.swagger-ui .flex-grow-1-m{flex-grow:1}.swagger-ui .flex-shrink-0-m{flex-shrink:0}.swagger-ui .flex-shrink-1-m{flex-shrink:1}}@media screen and (min-width:60em){.swagger-ui .flex-l{display:flex}.swagger-ui .inline-flex-l{display:inline-flex}.swagger-ui .flex-auto-l{flex:1 1 auto;min-height:0;min-width:0}.swagger-ui .flex-none-l{flex:none}.swagger-ui .flex-column-l{flex-direction:column}.swagger-ui .flex-row-l{flex-direction:row}.swagger-ui .flex-wrap-l{flex-wrap:wrap}.swagger-ui .flex-nowrap-l{flex-wrap:nowrap}.swagger-ui .flex-wrap-reverse-l{flex-wrap:wrap-reverse}.swagger-ui .flex-column-reverse-l{flex-direction:column-reverse}.swagger-ui .flex-row-reverse-l{flex-direction:row-reverse}.swagger-ui .items-start-l{align-items:flex-start}.swagger-ui .items-end-l{align-items:flex-end}.swagger-ui .items-center-l{align-items:center}.swagger-ui .items-baseline-l{align-items:baseline}.swagger-ui .items-stretch-l{align-items:stretch}.swagger-ui .self-start-l{align-self:flex-start}.swagger-ui .self-end-l{align-self:flex-end}.swagger-ui .self-center-l{align-self:center}.swagger-ui .self-baseline-l{align-self:baseline}.swagger-ui .self-stretch-l{align-self:stretch}.swagger-ui .justify-start-l{justify-content:flex-start}.swagger-ui .justify-end-l{justify-content:flex-end}.swagger-ui .justify-center-l{justify-content:center}.swagger-ui .justify-between-l{justify-content:space-between}.swagger-ui .justify-around-l{justify-content:space-around}.swagger-ui .content-start-l{align-content:flex-start}.swagger-ui .content-end-l{align-content:flex-end}.swagger-ui .content-center-l{align-content:center}.swagger-ui .content-between-l{align-content:space-between}.swagger-ui .content-around-l{align-content:space-around}.swagger-ui .content-stretch-l{align-content:stretch}.swagger-ui .order-0-l{order:0}.swagger-ui .order-1-l{order:1}.swagger-ui .order-2-l{order:2}.swagger-ui .order-3-l{order:3}.swagger-ui .order-4-l{order:4}.swagger-ui .order-5-l{order:5}.swagger-ui .order-6-l{order:6}.swagger-ui .order-7-l{order:7}.swagger-ui .order-8-l{order:8}.swagger-ui .order-last-l{order:99999}.swagger-ui .flex-grow-0-l{flex-grow:0}.swagger-ui .flex-grow-1-l{flex-grow:1}.swagger-ui .flex-shrink-0-l{flex-shrink:0}.swagger-ui .flex-shrink-1-l{flex-shrink:1}}.swagger-ui .dn{display:none}.swagger-ui .di{display:inline}.swagger-ui .db{display:block}.swagger-ui .dib{display:inline-block}.swagger-ui .dit{display:inline-table}.swagger-ui .dt{display:table}.swagger-ui .dtc{display:table-cell}.swagger-ui .dt-row{display:table-row}.swagger-ui .dt-row-group{display:table-row-group}.swagger-ui .dt-column{display:table-column}.swagger-ui .dt-column-group{display:table-column-group}.swagger-ui .dt--fixed{table-layout:fixed;width:100%}@media screen and (min-width:30em){.swagger-ui .dn-ns{display:none}.swagger-ui .di-ns{display:inline}.swagger-ui .db-ns{display:block}.swagger-ui .dib-ns{display:inline-block}.swagger-ui .dit-ns{display:inline-table}.swagger-ui .dt-ns{display:table}.swagger-ui .dtc-ns{display:table-cell}.swagger-ui .dt-row-ns{display:table-row}.swagger-ui .dt-row-group-ns{display:table-row-group}.swagger-ui .dt-column-ns{display:table-column}.swagger-ui .dt-column-group-ns{display:table-column-group}.swagger-ui .dt--fixed-ns{table-layout:fixed;width:100%}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .dn-m{display:none}.swagger-ui .di-m{display:inline}.swagger-ui .db-m{display:block}.swagger-ui .dib-m{display:inline-block}.swagger-ui .dit-m{display:inline-table}.swagger-ui .dt-m{display:table}.swagger-ui .dtc-m{display:table-cell}.swagger-ui .dt-row-m{display:table-row}.swagger-ui .dt-row-group-m{display:table-row-group}.swagger-ui .dt-column-m{display:table-column}.swagger-ui .dt-column-group-m{display:table-column-group}.swagger-ui .dt--fixed-m{table-layout:fixed;width:100%}}@media screen and (min-width:60em){.swagger-ui .dn-l{display:none}.swagger-ui .di-l{display:inline}.swagger-ui .db-l{display:block}.swagger-ui .dib-l{display:inline-block}.swagger-ui .dit-l{display:inline-table}.swagger-ui .dt-l{display:table}.swagger-ui .dtc-l{display:table-cell}.swagger-ui .dt-row-l{display:table-row}.swagger-ui .dt-row-group-l{display:table-row-group}.swagger-ui .dt-column-l{display:table-column}.swagger-ui .dt-column-group-l{display:table-column-group}.swagger-ui .dt--fixed-l{table-layout:fixed;width:100%}}.swagger-ui .fl{_display:inline;float:left}.swagger-ui .fr{_display:inline;float:right}.swagger-ui .fn{float:none}@media screen and (min-width:30em){.swagger-ui .fl-ns{_display:inline;float:left}.swagger-ui .fr-ns{_display:inline;float:right}.swagger-ui .fn-ns{float:none}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .fl-m{_display:inline;float:left}.swagger-ui .fr-m{_display:inline;float:right}.swagger-ui .fn-m{float:none}}@media screen and (min-width:60em){.swagger-ui .fl-l{_display:inline;float:left}.swagger-ui .fr-l{_display:inline;float:right}.swagger-ui .fn-l{float:none}}.swagger-ui .sans-serif{font-family:-apple-system,BlinkMacSystemFont,avenir next,avenir,helvetica,helvetica neue,ubuntu,roboto,noto,segoe ui,arial,sans-serif}.swagger-ui .serif{font-family:georgia,serif}.swagger-ui .system-sans-serif{font-family:sans-serif}.swagger-ui .system-serif{font-family:serif}.swagger-ui .code,.swagger-ui code{font-family:Consolas,monaco,monospace}.swagger-ui .courier{font-family:Courier Next,courier,monospace}.swagger-ui .helvetica{font-family:helvetica neue,helvetica,sans-serif}.swagger-ui .avenir{font-family:avenir next,avenir,sans-serif}.swagger-ui .athelas{font-family:athelas,georgia,serif}.swagger-ui .georgia{font-family:georgia,serif}.swagger-ui .times{font-family:times,serif}.swagger-ui .bodoni{font-family:Bodoni MT,serif}.swagger-ui .calisto{font-family:Calisto MT,serif}.swagger-ui .garamond{font-family:garamond,serif}.swagger-ui .baskerville{font-family:baskerville,serif}.swagger-ui .i{font-style:italic}.swagger-ui .fs-normal{font-style:normal}@media screen and (min-width:30em){.swagger-ui .i-ns{font-style:italic}.swagger-ui .fs-normal-ns{font-style:normal}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .i-m{font-style:italic}.swagger-ui .fs-normal-m{font-style:normal}}@media screen and (min-width:60em){.swagger-ui .i-l{font-style:italic}.swagger-ui .fs-normal-l{font-style:normal}}.swagger-ui .normal{font-weight:400}.swagger-ui .b{font-weight:700}.swagger-ui .fw1{font-weight:100}.swagger-ui .fw2{font-weight:200}.swagger-ui .fw3{font-weight:300}.swagger-ui .fw4{font-weight:400}.swagger-ui .fw5{font-weight:500}.swagger-ui .fw6{font-weight:600}.swagger-ui .fw7{font-weight:700}.swagger-ui .fw8{font-weight:800}.swagger-ui .fw9{font-weight:900}@media screen and (min-width:30em){.swagger-ui .normal-ns{font-weight:400}.swagger-ui .b-ns{font-weight:700}.swagger-ui .fw1-ns{font-weight:100}.swagger-ui .fw2-ns{font-weight:200}.swagger-ui .fw3-ns{font-weight:300}.swagger-ui .fw4-ns{font-weight:400}.swagger-ui .fw5-ns{font-weight:500}.swagger-ui .fw6-ns{font-weight:600}.swagger-ui .fw7-ns{font-weight:700}.swagger-ui .fw8-ns{font-weight:800}.swagger-ui .fw9-ns{font-weight:900}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .normal-m{font-weight:400}.swagger-ui .b-m{font-weight:700}.swagger-ui .fw1-m{font-weight:100}.swagger-ui .fw2-m{font-weight:200}.swagger-ui .fw3-m{font-weight:300}.swagger-ui .fw4-m{font-weight:400}.swagger-ui .fw5-m{font-weight:500}.swagger-ui .fw6-m{font-weight:600}.swagger-ui .fw7-m{font-weight:700}.swagger-ui .fw8-m{font-weight:800}.swagger-ui .fw9-m{font-weight:900}}@media screen and (min-width:60em){.swagger-ui .normal-l{font-weight:400}.swagger-ui .b-l{font-weight:700}.swagger-ui .fw1-l{font-weight:100}.swagger-ui .fw2-l{font-weight:200}.swagger-ui .fw3-l{font-weight:300}.swagger-ui .fw4-l{font-weight:400}.swagger-ui .fw5-l{font-weight:500}.swagger-ui .fw6-l{font-weight:600}.swagger-ui .fw7-l{font-weight:700}.swagger-ui .fw8-l{font-weight:800}.swagger-ui .fw9-l{font-weight:900}}.swagger-ui .input-reset{-webkit-appearance:none;-moz-appearance:none}.swagger-ui .button-reset::-moz-focus-inner,.swagger-ui .input-reset::-moz-focus-inner{border:0;padding:0}.swagger-ui .h1{height:1rem}.swagger-ui .h2{height:2rem}.swagger-ui .h3{height:4rem}.swagger-ui .h4{height:8rem}.swagger-ui .h5{height:16rem}.swagger-ui .h-25{height:25%}.swagger-ui .h-50{height:50%}.swagger-ui .h-75{height:75%}.swagger-ui .h-100{height:100%}.swagger-ui .min-h-100{min-height:100%}.swagger-ui .vh-25{height:25vh}.swagger-ui .vh-50{height:50vh}.swagger-ui .vh-75{height:75vh}.swagger-ui .vh-100{height:100vh}.swagger-ui .min-vh-100{min-height:100vh}.swagger-ui .h-auto{height:auto}.swagger-ui .h-inherit{height:inherit}@media screen and (min-width:30em){.swagger-ui .h1-ns{height:1rem}.swagger-ui .h2-ns{height:2rem}.swagger-ui .h3-ns{height:4rem}.swagger-ui .h4-ns{height:8rem}.swagger-ui .h5-ns{height:16rem}.swagger-ui .h-25-ns{height:25%}.swagger-ui .h-50-ns{height:50%}.swagger-ui .h-75-ns{height:75%}.swagger-ui .h-100-ns{height:100%}.swagger-ui .min-h-100-ns{min-height:100%}.swagger-ui .vh-25-ns{height:25vh}.swagger-ui .vh-50-ns{height:50vh}.swagger-ui .vh-75-ns{height:75vh}.swagger-ui .vh-100-ns{height:100vh}.swagger-ui .min-vh-100-ns{min-height:100vh}.swagger-ui .h-auto-ns{height:auto}.swagger-ui .h-inherit-ns{height:inherit}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .h1-m{height:1rem}.swagger-ui .h2-m{height:2rem}.swagger-ui .h3-m{height:4rem}.swagger-ui .h4-m{height:8rem}.swagger-ui .h5-m{height:16rem}.swagger-ui .h-25-m{height:25%}.swagger-ui .h-50-m{height:50%}.swagger-ui .h-75-m{height:75%}.swagger-ui .h-100-m{height:100%}.swagger-ui .min-h-100-m{min-height:100%}.swagger-ui .vh-25-m{height:25vh}.swagger-ui .vh-50-m{height:50vh}.swagger-ui .vh-75-m{height:75vh}.swagger-ui .vh-100-m{height:100vh}.swagger-ui .min-vh-100-m{min-height:100vh}.swagger-ui .h-auto-m{height:auto}.swagger-ui .h-inherit-m{height:inherit}}@media screen and (min-width:60em){.swagger-ui .h1-l{height:1rem}.swagger-ui .h2-l{height:2rem}.swagger-ui .h3-l{height:4rem}.swagger-ui .h4-l{height:8rem}.swagger-ui .h5-l{height:16rem}.swagger-ui .h-25-l{height:25%}.swagger-ui .h-50-l{height:50%}.swagger-ui .h-75-l{height:75%}.swagger-ui .h-100-l{height:100%}.swagger-ui .min-h-100-l{min-height:100%}.swagger-ui .vh-25-l{height:25vh}.swagger-ui .vh-50-l{height:50vh}.swagger-ui .vh-75-l{height:75vh}.swagger-ui .vh-100-l{height:100vh}.swagger-ui .min-vh-100-l{min-height:100vh}.swagger-ui .h-auto-l{height:auto}.swagger-ui .h-inherit-l{height:inherit}}.swagger-ui .tracked{letter-spacing:.1em}.swagger-ui .tracked-tight{letter-spacing:-.05em}.swagger-ui .tracked-mega{letter-spacing:.25em}@media screen and (min-width:30em){.swagger-ui .tracked-ns{letter-spacing:.1em}.swagger-ui .tracked-tight-ns{letter-spacing:-.05em}.swagger-ui .tracked-mega-ns{letter-spacing:.25em}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .tracked-m{letter-spacing:.1em}.swagger-ui .tracked-tight-m{letter-spacing:-.05em}.swagger-ui .tracked-mega-m{letter-spacing:.25em}}@media screen and (min-width:60em){.swagger-ui .tracked-l{letter-spacing:.1em}.swagger-ui .tracked-tight-l{letter-spacing:-.05em}.swagger-ui .tracked-mega-l{letter-spacing:.25em}}.swagger-ui .lh-solid{line-height:1}.swagger-ui .lh-title{line-height:1.25}.swagger-ui .lh-copy{line-height:1.5}@media screen and (min-width:30em){.swagger-ui .lh-solid-ns{line-height:1}.swagger-ui .lh-title-ns{line-height:1.25}.swagger-ui .lh-copy-ns{line-height:1.5}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .lh-solid-m{line-height:1}.swagger-ui .lh-title-m{line-height:1.25}.swagger-ui .lh-copy-m{line-height:1.5}}@media screen and (min-width:60em){.swagger-ui .lh-solid-l{line-height:1}.swagger-ui .lh-title-l{line-height:1.25}.swagger-ui .lh-copy-l{line-height:1.5}}.swagger-ui .link{-webkit-text-decoration:none;text-decoration:none}.swagger-ui .link,.swagger-ui .link:active,.swagger-ui .link:focus,.swagger-ui .link:hover,.swagger-ui .link:link,.swagger-ui .link:visited{transition:color .15s ease-in}.swagger-ui .link:focus{outline:1px dotted currentColor}.swagger-ui .list{list-style-type:none}.swagger-ui .mw-100{max-width:100%}.swagger-ui .mw1{max-width:1rem}.swagger-ui .mw2{max-width:2rem}.swagger-ui .mw3{max-width:4rem}.swagger-ui .mw4{max-width:8rem}.swagger-ui .mw5{max-width:16rem}.swagger-ui .mw6{max-width:32rem}.swagger-ui .mw7{max-width:48rem}.swagger-ui .mw8{max-width:64rem}.swagger-ui .mw9{max-width:96rem}.swagger-ui .mw-none{max-width:none}@media screen and (min-width:30em){.swagger-ui .mw-100-ns{max-width:100%}.swagger-ui .mw1-ns{max-width:1rem}.swagger-ui .mw2-ns{max-width:2rem}.swagger-ui .mw3-ns{max-width:4rem}.swagger-ui .mw4-ns{max-width:8rem}.swagger-ui .mw5-ns{max-width:16rem}.swagger-ui .mw6-ns{max-width:32rem}.swagger-ui .mw7-ns{max-width:48rem}.swagger-ui .mw8-ns{max-width:64rem}.swagger-ui .mw9-ns{max-width:96rem}.swagger-ui .mw-none-ns{max-width:none}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .mw-100-m{max-width:100%}.swagger-ui .mw1-m{max-width:1rem}.swagger-ui .mw2-m{max-width:2rem}.swagger-ui .mw3-m{max-width:4rem}.swagger-ui .mw4-m{max-width:8rem}.swagger-ui .mw5-m{max-width:16rem}.swagger-ui .mw6-m{max-width:32rem}.swagger-ui .mw7-m{max-width:48rem}.swagger-ui .mw8-m{max-width:64rem}.swagger-ui .mw9-m{max-width:96rem}.swagger-ui .mw-none-m{max-width:none}}@media screen and (min-width:60em){.swagger-ui .mw-100-l{max-width:100%}.swagger-ui .mw1-l{max-width:1rem}.swagger-ui .mw2-l{max-width:2rem}.swagger-ui .mw3-l{max-width:4rem}.swagger-ui .mw4-l{max-width:8rem}.swagger-ui .mw5-l{max-width:16rem}.swagger-ui .mw6-l{max-width:32rem}.swagger-ui .mw7-l{max-width:48rem}.swagger-ui .mw8-l{max-width:64rem}.swagger-ui .mw9-l{max-width:96rem}.swagger-ui .mw-none-l{max-width:none}}.swagger-ui .w1{width:1rem}.swagger-ui .w2{width:2rem}.swagger-ui .w3{width:4rem}.swagger-ui .w4{width:8rem}.swagger-ui .w5{width:16rem}.swagger-ui .w-10{width:10%}.swagger-ui .w-20{width:20%}.swagger-ui .w-25{width:25%}.swagger-ui .w-30{width:30%}.swagger-ui .w-33{width:33%}.swagger-ui .w-34{width:34%}.swagger-ui .w-40{width:40%}.swagger-ui .w-50{width:50%}.swagger-ui .w-60{width:60%}.swagger-ui .w-70{width:70%}.swagger-ui .w-75{width:75%}.swagger-ui .w-80{width:80%}.swagger-ui .w-90{width:90%}.swagger-ui .w-100{width:100%}.swagger-ui .w-third{width:33.3333333333%}.swagger-ui .w-two-thirds{width:66.6666666667%}.swagger-ui .w-auto{width:auto}@media screen and (min-width:30em){.swagger-ui .w1-ns{width:1rem}.swagger-ui .w2-ns{width:2rem}.swagger-ui .w3-ns{width:4rem}.swagger-ui .w4-ns{width:8rem}.swagger-ui .w5-ns{width:16rem}.swagger-ui .w-10-ns{width:10%}.swagger-ui .w-20-ns{width:20%}.swagger-ui .w-25-ns{width:25%}.swagger-ui .w-30-ns{width:30%}.swagger-ui .w-33-ns{width:33%}.swagger-ui .w-34-ns{width:34%}.swagger-ui .w-40-ns{width:40%}.swagger-ui .w-50-ns{width:50%}.swagger-ui .w-60-ns{width:60%}.swagger-ui .w-70-ns{width:70%}.swagger-ui .w-75-ns{width:75%}.swagger-ui .w-80-ns{width:80%}.swagger-ui .w-90-ns{width:90%}.swagger-ui .w-100-ns{width:100%}.swagger-ui .w-third-ns{width:33.3333333333%}.swagger-ui .w-two-thirds-ns{width:66.6666666667%}.swagger-ui .w-auto-ns{width:auto}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .w1-m{width:1rem}.swagger-ui .w2-m{width:2rem}.swagger-ui .w3-m{width:4rem}.swagger-ui .w4-m{width:8rem}.swagger-ui .w5-m{width:16rem}.swagger-ui .w-10-m{width:10%}.swagger-ui .w-20-m{width:20%}.swagger-ui .w-25-m{width:25%}.swagger-ui .w-30-m{width:30%}.swagger-ui .w-33-m{width:33%}.swagger-ui .w-34-m{width:34%}.swagger-ui .w-40-m{width:40%}.swagger-ui .w-50-m{width:50%}.swagger-ui .w-60-m{width:60%}.swagger-ui .w-70-m{width:70%}.swagger-ui .w-75-m{width:75%}.swagger-ui .w-80-m{width:80%}.swagger-ui .w-90-m{width:90%}.swagger-ui .w-100-m{width:100%}.swagger-ui .w-third-m{width:33.3333333333%}.swagger-ui .w-two-thirds-m{width:66.6666666667%}.swagger-ui .w-auto-m{width:auto}}@media screen and (min-width:60em){.swagger-ui .w1-l{width:1rem}.swagger-ui .w2-l{width:2rem}.swagger-ui .w3-l{width:4rem}.swagger-ui .w4-l{width:8rem}.swagger-ui .w5-l{width:16rem}.swagger-ui .w-10-l{width:10%}.swagger-ui .w-20-l{width:20%}.swagger-ui .w-25-l{width:25%}.swagger-ui .w-30-l{width:30%}.swagger-ui .w-33-l{width:33%}.swagger-ui .w-34-l{width:34%}.swagger-ui .w-40-l{width:40%}.swagger-ui .w-50-l{width:50%}.swagger-ui .w-60-l{width:60%}.swagger-ui .w-70-l{width:70%}.swagger-ui .w-75-l{width:75%}.swagger-ui .w-80-l{width:80%}.swagger-ui .w-90-l{width:90%}.swagger-ui .w-100-l{width:100%}.swagger-ui .w-third-l{width:33.3333333333%}.swagger-ui .w-two-thirds-l{width:66.6666666667%}.swagger-ui .w-auto-l{width:auto}}.swagger-ui .overflow-visible{overflow:visible}.swagger-ui .overflow-hidden{overflow:hidden}.swagger-ui .overflow-scroll{overflow:scroll}.swagger-ui .overflow-auto{overflow:auto}.swagger-ui .overflow-x-visible{overflow-x:visible}.swagger-ui .overflow-x-hidden{overflow-x:hidden}.swagger-ui .overflow-x-scroll{overflow-x:scroll}.swagger-ui .overflow-x-auto{overflow-x:auto}.swagger-ui .overflow-y-visible{overflow-y:visible}.swagger-ui .overflow-y-hidden{overflow-y:hidden}.swagger-ui .overflow-y-scroll{overflow-y:scroll}.swagger-ui .overflow-y-auto{overflow-y:auto}@media screen and (min-width:30em){.swagger-ui .overflow-visible-ns{overflow:visible}.swagger-ui .overflow-hidden-ns{overflow:hidden}.swagger-ui .overflow-scroll-ns{overflow:scroll}.swagger-ui .overflow-auto-ns{overflow:auto}.swagger-ui .overflow-x-visible-ns{overflow-x:visible}.swagger-ui .overflow-x-hidden-ns{overflow-x:hidden}.swagger-ui .overflow-x-scroll-ns{overflow-x:scroll}.swagger-ui .overflow-x-auto-ns{overflow-x:auto}.swagger-ui .overflow-y-visible-ns{overflow-y:visible}.swagger-ui .overflow-y-hidden-ns{overflow-y:hidden}.swagger-ui .overflow-y-scroll-ns{overflow-y:scroll}.swagger-ui .overflow-y-auto-ns{overflow-y:auto}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .overflow-visible-m{overflow:visible}.swagger-ui .overflow-hidden-m{overflow:hidden}.swagger-ui .overflow-scroll-m{overflow:scroll}.swagger-ui .overflow-auto-m{overflow:auto}.swagger-ui .overflow-x-visible-m{overflow-x:visible}.swagger-ui .overflow-x-hidden-m{overflow-x:hidden}.swagger-ui .overflow-x-scroll-m{overflow-x:scroll}.swagger-ui .overflow-x-auto-m{overflow-x:auto}.swagger-ui .overflow-y-visible-m{overflow-y:visible}.swagger-ui .overflow-y-hidden-m{overflow-y:hidden}.swagger-ui .overflow-y-scroll-m{overflow-y:scroll}.swagger-ui .overflow-y-auto-m{overflow-y:auto}}@media screen and (min-width:60em){.swagger-ui .overflow-visible-l{overflow:visible}.swagger-ui .overflow-hidden-l{overflow:hidden}.swagger-ui .overflow-scroll-l{overflow:scroll}.swagger-ui .overflow-auto-l{overflow:auto}.swagger-ui .overflow-x-visible-l{overflow-x:visible}.swagger-ui .overflow-x-hidden-l{overflow-x:hidden}.swagger-ui .overflow-x-scroll-l{overflow-x:scroll}.swagger-ui .overflow-x-auto-l{overflow-x:auto}.swagger-ui .overflow-y-visible-l{overflow-y:visible}.swagger-ui .overflow-y-hidden-l{overflow-y:hidden}.swagger-ui .overflow-y-scroll-l{overflow-y:scroll}.swagger-ui .overflow-y-auto-l{overflow-y:auto}}.swagger-ui .static{position:static}.swagger-ui .relative{position:relative}.swagger-ui .absolute{position:absolute}.swagger-ui .fixed{position:fixed}@media screen and (min-width:30em){.swagger-ui .static-ns{position:static}.swagger-ui .relative-ns{position:relative}.swagger-ui .absolute-ns{position:absolute}.swagger-ui .fixed-ns{position:fixed}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .static-m{position:static}.swagger-ui .relative-m{position:relative}.swagger-ui .absolute-m{position:absolute}.swagger-ui .fixed-m{position:fixed}}@media screen and (min-width:60em){.swagger-ui .static-l{position:static}.swagger-ui .relative-l{position:relative}.swagger-ui .absolute-l{position:absolute}.swagger-ui .fixed-l{position:fixed}}.swagger-ui .o-100{opacity:1}.swagger-ui .o-90{opacity:.9}.swagger-ui .o-80{opacity:.8}.swagger-ui .o-70{opacity:.7}.swagger-ui .o-60{opacity:.6}.swagger-ui .o-50{opacity:.5}.swagger-ui .o-40{opacity:.4}.swagger-ui .o-30{opacity:.3}.swagger-ui .o-20{opacity:.2}.swagger-ui .o-10{opacity:.1}.swagger-ui .o-05{opacity:.05}.swagger-ui .o-025{opacity:.025}.swagger-ui .o-0{opacity:0}.swagger-ui .rotate-45{transform:rotate(45deg)}.swagger-ui .rotate-90{transform:rotate(90deg)}.swagger-ui .rotate-135{transform:rotate(135deg)}.swagger-ui .rotate-180{transform:rotate(180deg)}.swagger-ui .rotate-225{transform:rotate(225deg)}.swagger-ui .rotate-270{transform:rotate(270deg)}.swagger-ui .rotate-315{transform:rotate(315deg)}@media screen and (min-width:30em){.swagger-ui .rotate-45-ns{transform:rotate(45deg)}.swagger-ui .rotate-90-ns{transform:rotate(90deg)}.swagger-ui .rotate-135-ns{transform:rotate(135deg)}.swagger-ui .rotate-180-ns{transform:rotate(180deg)}.swagger-ui .rotate-225-ns{transform:rotate(225deg)}.swagger-ui .rotate-270-ns{transform:rotate(270deg)}.swagger-ui .rotate-315-ns{transform:rotate(315deg)}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .rotate-45-m{transform:rotate(45deg)}.swagger-ui .rotate-90-m{transform:rotate(90deg)}.swagger-ui .rotate-135-m{transform:rotate(135deg)}.swagger-ui .rotate-180-m{transform:rotate(180deg)}.swagger-ui .rotate-225-m{transform:rotate(225deg)}.swagger-ui .rotate-270-m{transform:rotate(270deg)}.swagger-ui .rotate-315-m{transform:rotate(315deg)}}@media screen and (min-width:60em){.swagger-ui .rotate-45-l{transform:rotate(45deg)}.swagger-ui .rotate-90-l{transform:rotate(90deg)}.swagger-ui .rotate-135-l{transform:rotate(135deg)}.swagger-ui .rotate-180-l{transform:rotate(180deg)}.swagger-ui .rotate-225-l{transform:rotate(225deg)}.swagger-ui .rotate-270-l{transform:rotate(270deg)}.swagger-ui .rotate-315-l{transform:rotate(315deg)}}.swagger-ui .black-90{color:#000000e6}.swagger-ui .black-80{color:#000c}.swagger-ui .black-70{color:#000000b3}.swagger-ui .black-60{color:#0009}.swagger-ui .black-50{color:#00000080}.swagger-ui .black-40{color:#0006}.swagger-ui .black-30{color:#0000004d}.swagger-ui .black-20{color:#0003}.swagger-ui .black-10{color:#0000001a}.swagger-ui .black-05{color:#0000000d}.swagger-ui .white-90{color:#ffffffe6}.swagger-ui .white-80{color:#fffc}.swagger-ui .white-70{color:#ffffffb3}.swagger-ui .white-60{color:#fff9}.swagger-ui .white-50{color:#ffffff80}.swagger-ui .white-40{color:#fff6}.swagger-ui .white-30{color:#ffffff4d}.swagger-ui .white-20{color:#fff3}.swagger-ui .white-10{color:#ffffff1a}.swagger-ui .black{color:#000}.swagger-ui .near-black{color:#111}.swagger-ui .dark-gray{color:#333}.swagger-ui .mid-gray{color:#555}.swagger-ui .gray{color:#777}.swagger-ui .silver{color:#999}.swagger-ui .light-silver{color:#aaa}.swagger-ui .moon-gray{color:#ccc}.swagger-ui .light-gray{color:#eee}.swagger-ui .near-white{color:#f4f4f4}.swagger-ui .white{color:#fff}.swagger-ui .dark-red{color:#e7040f}.swagger-ui .red{color:#ff4136}.swagger-ui .light-red{color:#ff725c}.swagger-ui .orange{color:#ff6300}.swagger-ui .gold{color:#ffb700}.swagger-ui .yellow{color:gold}.swagger-ui .light-yellow{color:#fbf1a9}.swagger-ui .purple{color:#5e2ca5}.swagger-ui .light-purple{color:#a463f2}.swagger-ui .dark-pink{color:#d5008f}.swagger-ui .hot-pink{color:#ff41b4}.swagger-ui .pink{color:#ff80cc}.swagger-ui .light-pink{color:#ffa3d7}.swagger-ui .dark-green{color:#137752}.swagger-ui .green{color:#19a974}.swagger-ui .light-green{color:#9eebcf}.swagger-ui .navy{color:#001b44}.swagger-ui .dark-blue{color:#00449e}.swagger-ui .blue{color:#357edd}.swagger-ui .light-blue{color:#96ccff}.swagger-ui .lightest-blue{color:#cdecff}.swagger-ui .washed-blue{color:#f6fffe}.swagger-ui .washed-green{color:#e8fdf5}.swagger-ui .washed-yellow{color:#fffceb}.swagger-ui .washed-red{color:#ffdfdf}.swagger-ui .color-inherit{color:inherit}.swagger-ui .bg-black-90{background-color:#000000e6}.swagger-ui .bg-black-80{background-color:#000c}.swagger-ui .bg-black-70{background-color:#000000b3}.swagger-ui .bg-black-60{background-color:#0009}.swagger-ui .bg-black-50{background-color:#00000080}.swagger-ui .bg-black-40{background-color:#0006}.swagger-ui .bg-black-30{background-color:#0000004d}.swagger-ui .bg-black-20{background-color:#0003}.swagger-ui .bg-black-10{background-color:#0000001a}.swagger-ui .bg-black-05{background-color:#0000000d}.swagger-ui .bg-white-90{background-color:#ffffffe6}.swagger-ui .bg-white-80{background-color:#fffc}.swagger-ui .bg-white-70{background-color:#ffffffb3}.swagger-ui .bg-white-60{background-color:#fff9}.swagger-ui .bg-white-50{background-color:#ffffff80}.swagger-ui .bg-white-40{background-color:#fff6}.swagger-ui .bg-white-30{background-color:#ffffff4d}.swagger-ui .bg-white-20{background-color:#fff3}.swagger-ui .bg-white-10{background-color:#ffffff1a}.swagger-ui .bg-black{background-color:#000}.swagger-ui .bg-near-black{background-color:#111}.swagger-ui .bg-dark-gray{background-color:#333}.swagger-ui .bg-mid-gray{background-color:#555}.swagger-ui .bg-gray{background-color:#777}.swagger-ui .bg-silver{background-color:#999}.swagger-ui .bg-light-silver{background-color:#aaa}.swagger-ui .bg-moon-gray{background-color:#ccc}.swagger-ui .bg-light-gray{background-color:#eee}.swagger-ui .bg-near-white{background-color:#f4f4f4}.swagger-ui .bg-white{background-color:#fff}.swagger-ui .bg-transparent{background-color:transparent}.swagger-ui .bg-dark-red{background-color:#e7040f}.swagger-ui .bg-red{background-color:#ff4136}.swagger-ui .bg-light-red{background-color:#ff725c}.swagger-ui .bg-orange{background-color:#ff6300}.swagger-ui .bg-gold{background-color:#ffb700}.swagger-ui .bg-yellow{background-color:gold}.swagger-ui .bg-light-yellow{background-color:#fbf1a9}.swagger-ui .bg-purple{background-color:#5e2ca5}.swagger-ui .bg-light-purple{background-color:#a463f2}.swagger-ui .bg-dark-pink{background-color:#d5008f}.swagger-ui .bg-hot-pink{background-color:#ff41b4}.swagger-ui .bg-pink{background-color:#ff80cc}.swagger-ui .bg-light-pink{background-color:#ffa3d7}.swagger-ui .bg-dark-green{background-color:#137752}.swagger-ui .bg-green{background-color:#19a974}.swagger-ui .bg-light-green{background-color:#9eebcf}.swagger-ui .bg-navy{background-color:#001b44}.swagger-ui .bg-dark-blue{background-color:#00449e}.swagger-ui .bg-blue{background-color:#357edd}.swagger-ui .bg-light-blue{background-color:#96ccff}.swagger-ui .bg-lightest-blue{background-color:#cdecff}.swagger-ui .bg-washed-blue{background-color:#f6fffe}.swagger-ui .bg-washed-green{background-color:#e8fdf5}.swagger-ui .bg-washed-yellow{background-color:#fffceb}.swagger-ui .bg-washed-red{background-color:#ffdfdf}.swagger-ui .bg-inherit{background-color:inherit}.swagger-ui .hover-black:focus,.swagger-ui .hover-black:hover{color:#000}.swagger-ui .hover-near-black:focus,.swagger-ui .hover-near-black:hover{color:#111}.swagger-ui .hover-dark-gray:focus,.swagger-ui .hover-dark-gray:hover{color:#333}.swagger-ui .hover-mid-gray:focus,.swagger-ui .hover-mid-gray:hover{color:#555}.swagger-ui .hover-gray:focus,.swagger-ui .hover-gray:hover{color:#777}.swagger-ui .hover-silver:focus,.swagger-ui .hover-silver:hover{color:#999}.swagger-ui .hover-light-silver:focus,.swagger-ui .hover-light-silver:hover{color:#aaa}.swagger-ui .hover-moon-gray:focus,.swagger-ui .hover-moon-gray:hover{color:#ccc}.swagger-ui .hover-light-gray:focus,.swagger-ui .hover-light-gray:hover{color:#eee}.swagger-ui .hover-near-white:focus,.swagger-ui .hover-near-white:hover{color:#f4f4f4}.swagger-ui .hover-white:focus,.swagger-ui .hover-white:hover{color:#fff}.swagger-ui .hover-black-90:focus,.swagger-ui .hover-black-90:hover{color:#000000e6}.swagger-ui .hover-black-80:focus,.swagger-ui .hover-black-80:hover{color:#000c}.swagger-ui .hover-black-70:focus,.swagger-ui .hover-black-70:hover{color:#000000b3}.swagger-ui .hover-black-60:focus,.swagger-ui .hover-black-60:hover{color:#0009}.swagger-ui .hover-black-50:focus,.swagger-ui .hover-black-50:hover{color:#00000080}.swagger-ui .hover-black-40:focus,.swagger-ui .hover-black-40:hover{color:#0006}.swagger-ui .hover-black-30:focus,.swagger-ui .hover-black-30:hover{color:#0000004d}.swagger-ui .hover-black-20:focus,.swagger-ui .hover-black-20:hover{color:#0003}.swagger-ui .hover-black-10:focus,.swagger-ui .hover-black-10:hover{color:#0000001a}.swagger-ui .hover-white-90:focus,.swagger-ui .hover-white-90:hover{color:#ffffffe6}.swagger-ui .hover-white-80:focus,.swagger-ui .hover-white-80:hover{color:#fffc}.swagger-ui .hover-white-70:focus,.swagger-ui .hover-white-70:hover{color:#ffffffb3}.swagger-ui .hover-white-60:focus,.swagger-ui .hover-white-60:hover{color:#fff9}.swagger-ui .hover-white-50:focus,.swagger-ui .hover-white-50:hover{color:#ffffff80}.swagger-ui .hover-white-40:focus,.swagger-ui .hover-white-40:hover{color:#fff6}.swagger-ui .hover-white-30:focus,.swagger-ui .hover-white-30:hover{color:#ffffff4d}.swagger-ui .hover-white-20:focus,.swagger-ui .hover-white-20:hover{color:#fff3}.swagger-ui .hover-white-10:focus,.swagger-ui .hover-white-10:hover{color:#ffffff1a}.swagger-ui .hover-inherit:focus,.swagger-ui .hover-inherit:hover{color:inherit}.swagger-ui .hover-bg-black:focus,.swagger-ui .hover-bg-black:hover{background-color:#000}.swagger-ui .hover-bg-near-black:focus,.swagger-ui .hover-bg-near-black:hover{background-color:#111}.swagger-ui .hover-bg-dark-gray:focus,.swagger-ui .hover-bg-dark-gray:hover{background-color:#333}.swagger-ui .hover-bg-mid-gray:focus,.swagger-ui .hover-bg-mid-gray:hover{background-color:#555}.swagger-ui .hover-bg-gray:focus,.swagger-ui .hover-bg-gray:hover{background-color:#777}.swagger-ui .hover-bg-silver:focus,.swagger-ui .hover-bg-silver:hover{background-color:#999}.swagger-ui .hover-bg-light-silver:focus,.swagger-ui .hover-bg-light-silver:hover{background-color:#aaa}.swagger-ui .hover-bg-moon-gray:focus,.swagger-ui .hover-bg-moon-gray:hover{background-color:#ccc}.swagger-ui .hover-bg-light-gray:focus,.swagger-ui .hover-bg-light-gray:hover{background-color:#eee}.swagger-ui .hover-bg-near-white:focus,.swagger-ui .hover-bg-near-white:hover{background-color:#f4f4f4}.swagger-ui .hover-bg-white:focus,.swagger-ui .hover-bg-white:hover{background-color:#fff}.swagger-ui .hover-bg-transparent:focus,.swagger-ui .hover-bg-transparent:hover{background-color:transparent}.swagger-ui .hover-bg-black-90:focus,.swagger-ui .hover-bg-black-90:hover{background-color:#000000e6}.swagger-ui .hover-bg-black-80:focus,.swagger-ui .hover-bg-black-80:hover{background-color:#000c}.swagger-ui .hover-bg-black-70:focus,.swagger-ui .hover-bg-black-70:hover{background-color:#000000b3}.swagger-ui .hover-bg-black-60:focus,.swagger-ui .hover-bg-black-60:hover{background-color:#0009}.swagger-ui .hover-bg-black-50:focus,.swagger-ui .hover-bg-black-50:hover{background-color:#00000080}.swagger-ui .hover-bg-black-40:focus,.swagger-ui .hover-bg-black-40:hover{background-color:#0006}.swagger-ui .hover-bg-black-30:focus,.swagger-ui .hover-bg-black-30:hover{background-color:#0000004d}.swagger-ui .hover-bg-black-20:focus,.swagger-ui .hover-bg-black-20:hover{background-color:#0003}.swagger-ui .hover-bg-black-10:focus,.swagger-ui .hover-bg-black-10:hover{background-color:#0000001a}.swagger-ui .hover-bg-white-90:focus,.swagger-ui .hover-bg-white-90:hover{background-color:#ffffffe6}.swagger-ui .hover-bg-white-80:focus,.swagger-ui .hover-bg-white-80:hover{background-color:#fffc}.swagger-ui .hover-bg-white-70:focus,.swagger-ui .hover-bg-white-70:hover{background-color:#ffffffb3}.swagger-ui .hover-bg-white-60:focus,.swagger-ui .hover-bg-white-60:hover{background-color:#fff9}.swagger-ui .hover-bg-white-50:focus,.swagger-ui .hover-bg-white-50:hover{background-color:#ffffff80}.swagger-ui .hover-bg-white-40:focus,.swagger-ui .hover-bg-white-40:hover{background-color:#fff6}.swagger-ui .hover-bg-white-30:focus,.swagger-ui .hover-bg-white-30:hover{background-color:#ffffff4d}.swagger-ui .hover-bg-white-20:focus,.swagger-ui .hover-bg-white-20:hover{background-color:#fff3}.swagger-ui .hover-bg-white-10:focus,.swagger-ui .hover-bg-white-10:hover{background-color:#ffffff1a}.swagger-ui .hover-dark-red:focus,.swagger-ui .hover-dark-red:hover{color:#e7040f}.swagger-ui .hover-red:focus,.swagger-ui .hover-red:hover{color:#ff4136}.swagger-ui .hover-light-red:focus,.swagger-ui .hover-light-red:hover{color:#ff725c}.swagger-ui .hover-orange:focus,.swagger-ui .hover-orange:hover{color:#ff6300}.swagger-ui .hover-gold:focus,.swagger-ui .hover-gold:hover{color:#ffb700}.swagger-ui .hover-yellow:focus,.swagger-ui .hover-yellow:hover{color:gold}.swagger-ui .hover-light-yellow:focus,.swagger-ui .hover-light-yellow:hover{color:#fbf1a9}.swagger-ui .hover-purple:focus,.swagger-ui .hover-purple:hover{color:#5e2ca5}.swagger-ui .hover-light-purple:focus,.swagger-ui .hover-light-purple:hover{color:#a463f2}.swagger-ui .hover-dark-pink:focus,.swagger-ui .hover-dark-pink:hover{color:#d5008f}.swagger-ui .hover-hot-pink:focus,.swagger-ui .hover-hot-pink:hover{color:#ff41b4}.swagger-ui .hover-pink:focus,.swagger-ui .hover-pink:hover{color:#ff80cc}.swagger-ui .hover-light-pink:focus,.swagger-ui .hover-light-pink:hover{color:#ffa3d7}.swagger-ui .hover-dark-green:focus,.swagger-ui .hover-dark-green:hover{color:#137752}.swagger-ui .hover-green:focus,.swagger-ui .hover-green:hover{color:#19a974}.swagger-ui .hover-light-green:focus,.swagger-ui .hover-light-green:hover{color:#9eebcf}.swagger-ui .hover-navy:focus,.swagger-ui .hover-navy:hover{color:#001b44}.swagger-ui .hover-dark-blue:focus,.swagger-ui .hover-dark-blue:hover{color:#00449e}.swagger-ui .hover-blue:focus,.swagger-ui .hover-blue:hover{color:#357edd}.swagger-ui .hover-light-blue:focus,.swagger-ui .hover-light-blue:hover{color:#96ccff}.swagger-ui .hover-lightest-blue:focus,.swagger-ui .hover-lightest-blue:hover{color:#cdecff}.swagger-ui .hover-washed-blue:focus,.swagger-ui .hover-washed-blue:hover{color:#f6fffe}.swagger-ui .hover-washed-green:focus,.swagger-ui .hover-washed-green:hover{color:#e8fdf5}.swagger-ui .hover-washed-yellow:focus,.swagger-ui .hover-washed-yellow:hover{color:#fffceb}.swagger-ui .hover-washed-red:focus,.swagger-ui .hover-washed-red:hover{color:#ffdfdf}.swagger-ui .hover-bg-dark-red:focus,.swagger-ui .hover-bg-dark-red:hover{background-color:#e7040f}.swagger-ui .hover-bg-red:focus,.swagger-ui .hover-bg-red:hover{background-color:#ff4136}.swagger-ui .hover-bg-light-red:focus,.swagger-ui .hover-bg-light-red:hover{background-color:#ff725c}.swagger-ui .hover-bg-orange:focus,.swagger-ui .hover-bg-orange:hover{background-color:#ff6300}.swagger-ui .hover-bg-gold:focus,.swagger-ui .hover-bg-gold:hover{background-color:#ffb700}.swagger-ui .hover-bg-yellow:focus,.swagger-ui .hover-bg-yellow:hover{background-color:gold}.swagger-ui .hover-bg-light-yellow:focus,.swagger-ui .hover-bg-light-yellow:hover{background-color:#fbf1a9}.swagger-ui .hover-bg-purple:focus,.swagger-ui .hover-bg-purple:hover{background-color:#5e2ca5}.swagger-ui .hover-bg-light-purple:focus,.swagger-ui .hover-bg-light-purple:hover{background-color:#a463f2}.swagger-ui .hover-bg-dark-pink:focus,.swagger-ui .hover-bg-dark-pink:hover{background-color:#d5008f}.swagger-ui .hover-bg-hot-pink:focus,.swagger-ui .hover-bg-hot-pink:hover{background-color:#ff41b4}.swagger-ui .hover-bg-pink:focus,.swagger-ui .hover-bg-pink:hover{background-color:#ff80cc}.swagger-ui .hover-bg-light-pink:focus,.swagger-ui .hover-bg-light-pink:hover{background-color:#ffa3d7}.swagger-ui .hover-bg-dark-green:focus,.swagger-ui .hover-bg-dark-green:hover{background-color:#137752}.swagger-ui .hover-bg-green:focus,.swagger-ui .hover-bg-green:hover{background-color:#19a974}.swagger-ui .hover-bg-light-green:focus,.swagger-ui .hover-bg-light-green:hover{background-color:#9eebcf}.swagger-ui .hover-bg-navy:focus,.swagger-ui .hover-bg-navy:hover{background-color:#001b44}.swagger-ui .hover-bg-dark-blue:focus,.swagger-ui .hover-bg-dark-blue:hover{background-color:#00449e}.swagger-ui .hover-bg-blue:focus,.swagger-ui .hover-bg-blue:hover{background-color:#357edd}.swagger-ui .hover-bg-light-blue:focus,.swagger-ui .hover-bg-light-blue:hover{background-color:#96ccff}.swagger-ui .hover-bg-lightest-blue:focus,.swagger-ui .hover-bg-lightest-blue:hover{background-color:#cdecff}.swagger-ui .hover-bg-washed-blue:focus,.swagger-ui .hover-bg-washed-blue:hover{background-color:#f6fffe}.swagger-ui .hover-bg-washed-green:focus,.swagger-ui .hover-bg-washed-green:hover{background-color:#e8fdf5}.swagger-ui .hover-bg-washed-yellow:focus,.swagger-ui .hover-bg-washed-yellow:hover{background-color:#fffceb}.swagger-ui .hover-bg-washed-red:focus,.swagger-ui .hover-bg-washed-red:hover{background-color:#ffdfdf}.swagger-ui .hover-bg-inherit:focus,.swagger-ui .hover-bg-inherit:hover{background-color:inherit}.swagger-ui .pa0{padding:0}.swagger-ui .pa1{padding:.25rem}.swagger-ui .pa2{padding:.5rem}.swagger-ui .pa3{padding:1rem}.swagger-ui .pa4{padding:2rem}.swagger-ui .pa5{padding:4rem}.swagger-ui .pa6{padding:8rem}.swagger-ui .pa7{padding:16rem}.swagger-ui .pl0{padding-left:0}.swagger-ui .pl1{padding-left:.25rem}.swagger-ui .pl2{padding-left:.5rem}.swagger-ui .pl3{padding-left:1rem}.swagger-ui .pl4{padding-left:2rem}.swagger-ui .pl5{padding-left:4rem}.swagger-ui .pl6{padding-left:8rem}.swagger-ui .pl7{padding-left:16rem}.swagger-ui .pr0{padding-right:0}.swagger-ui .pr1{padding-right:.25rem}.swagger-ui .pr2{padding-right:.5rem}.swagger-ui .pr3{padding-right:1rem}.swagger-ui .pr4{padding-right:2rem}.swagger-ui .pr5{padding-right:4rem}.swagger-ui .pr6{padding-right:8rem}.swagger-ui .pr7{padding-right:16rem}.swagger-ui .pb0{padding-bottom:0}.swagger-ui .pb1{padding-bottom:.25rem}.swagger-ui .pb2{padding-bottom:.5rem}.swagger-ui .pb3{padding-bottom:1rem}.swagger-ui .pb4{padding-bottom:2rem}.swagger-ui .pb5{padding-bottom:4rem}.swagger-ui .pb6{padding-bottom:8rem}.swagger-ui .pb7{padding-bottom:16rem}.swagger-ui .pt0{padding-top:0}.swagger-ui .pt1{padding-top:.25rem}.swagger-ui .pt2{padding-top:.5rem}.swagger-ui .pt3{padding-top:1rem}.swagger-ui .pt4{padding-top:2rem}.swagger-ui .pt5{padding-top:4rem}.swagger-ui .pt6{padding-top:8rem}.swagger-ui .pt7{padding-top:16rem}.swagger-ui .pv0{padding-bottom:0;padding-top:0}.swagger-ui .pv1{padding-bottom:.25rem;padding-top:.25rem}.swagger-ui .pv2{padding-bottom:.5rem;padding-top:.5rem}.swagger-ui .pv3{padding-bottom:1rem;padding-top:1rem}.swagger-ui .pv4{padding-bottom:2rem;padding-top:2rem}.swagger-ui .pv5{padding-bottom:4rem;padding-top:4rem}.swagger-ui .pv6{padding-bottom:8rem;padding-top:8rem}.swagger-ui .pv7{padding-bottom:16rem;padding-top:16rem}.swagger-ui .ph0{padding-left:0;padding-right:0}.swagger-ui .ph1{padding-left:.25rem;padding-right:.25rem}.swagger-ui .ph2{padding-left:.5rem;padding-right:.5rem}.swagger-ui .ph3{padding-left:1rem;padding-right:1rem}.swagger-ui .ph4{padding-left:2rem;padding-right:2rem}.swagger-ui .ph5{padding-left:4rem;padding-right:4rem}.swagger-ui .ph6{padding-left:8rem;padding-right:8rem}.swagger-ui .ph7{padding-left:16rem;padding-right:16rem}.swagger-ui .ma0{margin:0}.swagger-ui .ma1{margin:.25rem}.swagger-ui .ma2{margin:.5rem}.swagger-ui .ma3{margin:1rem}.swagger-ui .ma4{margin:2rem}.swagger-ui .ma5{margin:4rem}.swagger-ui .ma6{margin:8rem}.swagger-ui .ma7{margin:16rem}.swagger-ui .ml0{margin-left:0}.swagger-ui .ml1{margin-left:.25rem}.swagger-ui .ml2{margin-left:.5rem}.swagger-ui .ml3{margin-left:1rem}.swagger-ui .ml4{margin-left:2rem}.swagger-ui .ml5{margin-left:4rem}.swagger-ui .ml6{margin-left:8rem}.swagger-ui .ml7{margin-left:16rem}.swagger-ui .mr0{margin-right:0}.swagger-ui .mr1{margin-right:.25rem}.swagger-ui .mr2{margin-right:.5rem}.swagger-ui .mr3{margin-right:1rem}.swagger-ui .mr4{margin-right:2rem}.swagger-ui .mr5{margin-right:4rem}.swagger-ui .mr6{margin-right:8rem}.swagger-ui .mr7{margin-right:16rem}.swagger-ui .mb0{margin-bottom:0}.swagger-ui .mb1{margin-bottom:.25rem}.swagger-ui .mb2{margin-bottom:.5rem}.swagger-ui .mb3{margin-bottom:1rem}.swagger-ui .mb4{margin-bottom:2rem}.swagger-ui .mb5{margin-bottom:4rem}.swagger-ui .mb6{margin-bottom:8rem}.swagger-ui .mb7{margin-bottom:16rem}.swagger-ui .mt0{margin-top:0}.swagger-ui .mt1{margin-top:.25rem}.swagger-ui .mt2{margin-top:.5rem}.swagger-ui .mt3{margin-top:1rem}.swagger-ui .mt4{margin-top:2rem}.swagger-ui .mt5{margin-top:4rem}.swagger-ui .mt6{margin-top:8rem}.swagger-ui .mt7{margin-top:16rem}.swagger-ui .mv0{margin-bottom:0;margin-top:0}.swagger-ui .mv1{margin-bottom:.25rem;margin-top:.25rem}.swagger-ui .mv2{margin-bottom:.5rem;margin-top:.5rem}.swagger-ui .mv3{margin-bottom:1rem;margin-top:1rem}.swagger-ui .mv4{margin-bottom:2rem;margin-top:2rem}.swagger-ui .mv5{margin-bottom:4rem;margin-top:4rem}.swagger-ui .mv6{margin-bottom:8rem;margin-top:8rem}.swagger-ui .mv7{margin-bottom:16rem;margin-top:16rem}.swagger-ui .mh0{margin-left:0;margin-right:0}.swagger-ui .mh1{margin-left:.25rem;margin-right:.25rem}.swagger-ui .mh2{margin-left:.5rem;margin-right:.5rem}.swagger-ui .mh3{margin-left:1rem;margin-right:1rem}.swagger-ui .mh4{margin-left:2rem;margin-right:2rem}.swagger-ui .mh5{margin-left:4rem;margin-right:4rem}.swagger-ui .mh6{margin-left:8rem;margin-right:8rem}.swagger-ui .mh7{margin-left:16rem;margin-right:16rem}@media screen and (min-width:30em){.swagger-ui .pa0-ns{padding:0}.swagger-ui .pa1-ns{padding:.25rem}.swagger-ui .pa2-ns{padding:.5rem}.swagger-ui .pa3-ns{padding:1rem}.swagger-ui .pa4-ns{padding:2rem}.swagger-ui .pa5-ns{padding:4rem}.swagger-ui .pa6-ns{padding:8rem}.swagger-ui .pa7-ns{padding:16rem}.swagger-ui .pl0-ns{padding-left:0}.swagger-ui .pl1-ns{padding-left:.25rem}.swagger-ui .pl2-ns{padding-left:.5rem}.swagger-ui .pl3-ns{padding-left:1rem}.swagger-ui .pl4-ns{padding-left:2rem}.swagger-ui .pl5-ns{padding-left:4rem}.swagger-ui .pl6-ns{padding-left:8rem}.swagger-ui .pl7-ns{padding-left:16rem}.swagger-ui .pr0-ns{padding-right:0}.swagger-ui .pr1-ns{padding-right:.25rem}.swagger-ui .pr2-ns{padding-right:.5rem}.swagger-ui .pr3-ns{padding-right:1rem}.swagger-ui .pr4-ns{padding-right:2rem}.swagger-ui .pr5-ns{padding-right:4rem}.swagger-ui .pr6-ns{padding-right:8rem}.swagger-ui .pr7-ns{padding-right:16rem}.swagger-ui .pb0-ns{padding-bottom:0}.swagger-ui .pb1-ns{padding-bottom:.25rem}.swagger-ui .pb2-ns{padding-bottom:.5rem}.swagger-ui .pb3-ns{padding-bottom:1rem}.swagger-ui .pb4-ns{padding-bottom:2rem}.swagger-ui .pb5-ns{padding-bottom:4rem}.swagger-ui .pb6-ns{padding-bottom:8rem}.swagger-ui .pb7-ns{padding-bottom:16rem}.swagger-ui .pt0-ns{padding-top:0}.swagger-ui .pt1-ns{padding-top:.25rem}.swagger-ui .pt2-ns{padding-top:.5rem}.swagger-ui .pt3-ns{padding-top:1rem}.swagger-ui .pt4-ns{padding-top:2rem}.swagger-ui .pt5-ns{padding-top:4rem}.swagger-ui .pt6-ns{padding-top:8rem}.swagger-ui .pt7-ns{padding-top:16rem}.swagger-ui .pv0-ns{padding-bottom:0;padding-top:0}.swagger-ui .pv1-ns{padding-bottom:.25rem;padding-top:.25rem}.swagger-ui .pv2-ns{padding-bottom:.5rem;padding-top:.5rem}.swagger-ui .pv3-ns{padding-bottom:1rem;padding-top:1rem}.swagger-ui .pv4-ns{padding-bottom:2rem;padding-top:2rem}.swagger-ui .pv5-ns{padding-bottom:4rem;padding-top:4rem}.swagger-ui .pv6-ns{padding-bottom:8rem;padding-top:8rem}.swagger-ui .pv7-ns{padding-bottom:16rem;padding-top:16rem}.swagger-ui .ph0-ns{padding-left:0;padding-right:0}.swagger-ui .ph1-ns{padding-left:.25rem;padding-right:.25rem}.swagger-ui .ph2-ns{padding-left:.5rem;padding-right:.5rem}.swagger-ui .ph3-ns{padding-left:1rem;padding-right:1rem}.swagger-ui .ph4-ns{padding-left:2rem;padding-right:2rem}.swagger-ui .ph5-ns{padding-left:4rem;padding-right:4rem}.swagger-ui .ph6-ns{padding-left:8rem;padding-right:8rem}.swagger-ui .ph7-ns{padding-left:16rem;padding-right:16rem}.swagger-ui .ma0-ns{margin:0}.swagger-ui .ma1-ns{margin:.25rem}.swagger-ui .ma2-ns{margin:.5rem}.swagger-ui .ma3-ns{margin:1rem}.swagger-ui .ma4-ns{margin:2rem}.swagger-ui .ma5-ns{margin:4rem}.swagger-ui .ma6-ns{margin:8rem}.swagger-ui .ma7-ns{margin:16rem}.swagger-ui .ml0-ns{margin-left:0}.swagger-ui .ml1-ns{margin-left:.25rem}.swagger-ui .ml2-ns{margin-left:.5rem}.swagger-ui .ml3-ns{margin-left:1rem}.swagger-ui .ml4-ns{margin-left:2rem}.swagger-ui .ml5-ns{margin-left:4rem}.swagger-ui .ml6-ns{margin-left:8rem}.swagger-ui .ml7-ns{margin-left:16rem}.swagger-ui .mr0-ns{margin-right:0}.swagger-ui .mr1-ns{margin-right:.25rem}.swagger-ui .mr2-ns{margin-right:.5rem}.swagger-ui .mr3-ns{margin-right:1rem}.swagger-ui .mr4-ns{margin-right:2rem}.swagger-ui .mr5-ns{margin-right:4rem}.swagger-ui .mr6-ns{margin-right:8rem}.swagger-ui .mr7-ns{margin-right:16rem}.swagger-ui .mb0-ns{margin-bottom:0}.swagger-ui .mb1-ns{margin-bottom:.25rem}.swagger-ui .mb2-ns{margin-bottom:.5rem}.swagger-ui .mb3-ns{margin-bottom:1rem}.swagger-ui .mb4-ns{margin-bottom:2rem}.swagger-ui .mb5-ns{margin-bottom:4rem}.swagger-ui .mb6-ns{margin-bottom:8rem}.swagger-ui .mb7-ns{margin-bottom:16rem}.swagger-ui .mt0-ns{margin-top:0}.swagger-ui .mt1-ns{margin-top:.25rem}.swagger-ui .mt2-ns{margin-top:.5rem}.swagger-ui .mt3-ns{margin-top:1rem}.swagger-ui .mt4-ns{margin-top:2rem}.swagger-ui .mt5-ns{margin-top:4rem}.swagger-ui .mt6-ns{margin-top:8rem}.swagger-ui .mt7-ns{margin-top:16rem}.swagger-ui .mv0-ns{margin-bottom:0;margin-top:0}.swagger-ui .mv1-ns{margin-bottom:.25rem;margin-top:.25rem}.swagger-ui .mv2-ns{margin-bottom:.5rem;margin-top:.5rem}.swagger-ui .mv3-ns{margin-bottom:1rem;margin-top:1rem}.swagger-ui .mv4-ns{margin-bottom:2rem;margin-top:2rem}.swagger-ui .mv5-ns{margin-bottom:4rem;margin-top:4rem}.swagger-ui .mv6-ns{margin-bottom:8rem;margin-top:8rem}.swagger-ui .mv7-ns{margin-bottom:16rem;margin-top:16rem}.swagger-ui .mh0-ns{margin-left:0;margin-right:0}.swagger-ui .mh1-ns{margin-left:.25rem;margin-right:.25rem}.swagger-ui .mh2-ns{margin-left:.5rem;margin-right:.5rem}.swagger-ui .mh3-ns{margin-left:1rem;margin-right:1rem}.swagger-ui .mh4-ns{margin-left:2rem;margin-right:2rem}.swagger-ui .mh5-ns{margin-left:4rem;margin-right:4rem}.swagger-ui .mh6-ns{margin-left:8rem;margin-right:8rem}.swagger-ui .mh7-ns{margin-left:16rem;margin-right:16rem}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .pa0-m{padding:0}.swagger-ui .pa1-m{padding:.25rem}.swagger-ui .pa2-m{padding:.5rem}.swagger-ui .pa3-m{padding:1rem}.swagger-ui .pa4-m{padding:2rem}.swagger-ui .pa5-m{padding:4rem}.swagger-ui .pa6-m{padding:8rem}.swagger-ui .pa7-m{padding:16rem}.swagger-ui .pl0-m{padding-left:0}.swagger-ui .pl1-m{padding-left:.25rem}.swagger-ui .pl2-m{padding-left:.5rem}.swagger-ui .pl3-m{padding-left:1rem}.swagger-ui .pl4-m{padding-left:2rem}.swagger-ui .pl5-m{padding-left:4rem}.swagger-ui .pl6-m{padding-left:8rem}.swagger-ui .pl7-m{padding-left:16rem}.swagger-ui .pr0-m{padding-right:0}.swagger-ui .pr1-m{padding-right:.25rem}.swagger-ui .pr2-m{padding-right:.5rem}.swagger-ui .pr3-m{padding-right:1rem}.swagger-ui .pr4-m{padding-right:2rem}.swagger-ui .pr5-m{padding-right:4rem}.swagger-ui .pr6-m{padding-right:8rem}.swagger-ui .pr7-m{padding-right:16rem}.swagger-ui .pb0-m{padding-bottom:0}.swagger-ui .pb1-m{padding-bottom:.25rem}.swagger-ui .pb2-m{padding-bottom:.5rem}.swagger-ui .pb3-m{padding-bottom:1rem}.swagger-ui .pb4-m{padding-bottom:2rem}.swagger-ui .pb5-m{padding-bottom:4rem}.swagger-ui .pb6-m{padding-bottom:8rem}.swagger-ui .pb7-m{padding-bottom:16rem}.swagger-ui .pt0-m{padding-top:0}.swagger-ui .pt1-m{padding-top:.25rem}.swagger-ui .pt2-m{padding-top:.5rem}.swagger-ui .pt3-m{padding-top:1rem}.swagger-ui .pt4-m{padding-top:2rem}.swagger-ui .pt5-m{padding-top:4rem}.swagger-ui .pt6-m{padding-top:8rem}.swagger-ui .pt7-m{padding-top:16rem}.swagger-ui .pv0-m{padding-bottom:0;padding-top:0}.swagger-ui .pv1-m{padding-bottom:.25rem;padding-top:.25rem}.swagger-ui .pv2-m{padding-bottom:.5rem;padding-top:.5rem}.swagger-ui .pv3-m{padding-bottom:1rem;padding-top:1rem}.swagger-ui .pv4-m{padding-bottom:2rem;padding-top:2rem}.swagger-ui .pv5-m{padding-bottom:4rem;padding-top:4rem}.swagger-ui .pv6-m{padding-bottom:8rem;padding-top:8rem}.swagger-ui .pv7-m{padding-bottom:16rem;padding-top:16rem}.swagger-ui .ph0-m{padding-left:0;padding-right:0}.swagger-ui .ph1-m{padding-left:.25rem;padding-right:.25rem}.swagger-ui .ph2-m{padding-left:.5rem;padding-right:.5rem}.swagger-ui .ph3-m{padding-left:1rem;padding-right:1rem}.swagger-ui .ph4-m{padding-left:2rem;padding-right:2rem}.swagger-ui .ph5-m{padding-left:4rem;padding-right:4rem}.swagger-ui .ph6-m{padding-left:8rem;padding-right:8rem}.swagger-ui .ph7-m{padding-left:16rem;padding-right:16rem}.swagger-ui .ma0-m{margin:0}.swagger-ui .ma1-m{margin:.25rem}.swagger-ui .ma2-m{margin:.5rem}.swagger-ui .ma3-m{margin:1rem}.swagger-ui .ma4-m{margin:2rem}.swagger-ui .ma5-m{margin:4rem}.swagger-ui .ma6-m{margin:8rem}.swagger-ui .ma7-m{margin:16rem}.swagger-ui .ml0-m{margin-left:0}.swagger-ui .ml1-m{margin-left:.25rem}.swagger-ui .ml2-m{margin-left:.5rem}.swagger-ui .ml3-m{margin-left:1rem}.swagger-ui .ml4-m{margin-left:2rem}.swagger-ui .ml5-m{margin-left:4rem}.swagger-ui .ml6-m{margin-left:8rem}.swagger-ui .ml7-m{margin-left:16rem}.swagger-ui .mr0-m{margin-right:0}.swagger-ui .mr1-m{margin-right:.25rem}.swagger-ui .mr2-m{margin-right:.5rem}.swagger-ui .mr3-m{margin-right:1rem}.swagger-ui .mr4-m{margin-right:2rem}.swagger-ui .mr5-m{margin-right:4rem}.swagger-ui .mr6-m{margin-right:8rem}.swagger-ui .mr7-m{margin-right:16rem}.swagger-ui .mb0-m{margin-bottom:0}.swagger-ui .mb1-m{margin-bottom:.25rem}.swagger-ui .mb2-m{margin-bottom:.5rem}.swagger-ui .mb3-m{margin-bottom:1rem}.swagger-ui .mb4-m{margin-bottom:2rem}.swagger-ui .mb5-m{margin-bottom:4rem}.swagger-ui .mb6-m{margin-bottom:8rem}.swagger-ui .mb7-m{margin-bottom:16rem}.swagger-ui .mt0-m{margin-top:0}.swagger-ui .mt1-m{margin-top:.25rem}.swagger-ui .mt2-m{margin-top:.5rem}.swagger-ui .mt3-m{margin-top:1rem}.swagger-ui .mt4-m{margin-top:2rem}.swagger-ui .mt5-m{margin-top:4rem}.swagger-ui .mt6-m{margin-top:8rem}.swagger-ui .mt7-m{margin-top:16rem}.swagger-ui .mv0-m{margin-bottom:0;margin-top:0}.swagger-ui .mv1-m{margin-bottom:.25rem;margin-top:.25rem}.swagger-ui .mv2-m{margin-bottom:.5rem;margin-top:.5rem}.swagger-ui .mv3-m{margin-bottom:1rem;margin-top:1rem}.swagger-ui .mv4-m{margin-bottom:2rem;margin-top:2rem}.swagger-ui .mv5-m{margin-bottom:4rem;margin-top:4rem}.swagger-ui .mv6-m{margin-bottom:8rem;margin-top:8rem}.swagger-ui .mv7-m{margin-bottom:16rem;margin-top:16rem}.swagger-ui .mh0-m{margin-left:0;margin-right:0}.swagger-ui .mh1-m{margin-left:.25rem;margin-right:.25rem}.swagger-ui .mh2-m{margin-left:.5rem;margin-right:.5rem}.swagger-ui .mh3-m{margin-left:1rem;margin-right:1rem}.swagger-ui .mh4-m{margin-left:2rem;margin-right:2rem}.swagger-ui .mh5-m{margin-left:4rem;margin-right:4rem}.swagger-ui .mh6-m{margin-left:8rem;margin-right:8rem}.swagger-ui .mh7-m{margin-left:16rem;margin-right:16rem}}@media screen and (min-width:60em){.swagger-ui .pa0-l{padding:0}.swagger-ui .pa1-l{padding:.25rem}.swagger-ui .pa2-l{padding:.5rem}.swagger-ui .pa3-l{padding:1rem}.swagger-ui .pa4-l{padding:2rem}.swagger-ui .pa5-l{padding:4rem}.swagger-ui .pa6-l{padding:8rem}.swagger-ui .pa7-l{padding:16rem}.swagger-ui .pl0-l{padding-left:0}.swagger-ui .pl1-l{padding-left:.25rem}.swagger-ui .pl2-l{padding-left:.5rem}.swagger-ui .pl3-l{padding-left:1rem}.swagger-ui .pl4-l{padding-left:2rem}.swagger-ui .pl5-l{padding-left:4rem}.swagger-ui .pl6-l{padding-left:8rem}.swagger-ui .pl7-l{padding-left:16rem}.swagger-ui .pr0-l{padding-right:0}.swagger-ui .pr1-l{padding-right:.25rem}.swagger-ui .pr2-l{padding-right:.5rem}.swagger-ui .pr3-l{padding-right:1rem}.swagger-ui .pr4-l{padding-right:2rem}.swagger-ui .pr5-l{padding-right:4rem}.swagger-ui .pr6-l{padding-right:8rem}.swagger-ui .pr7-l{padding-right:16rem}.swagger-ui .pb0-l{padding-bottom:0}.swagger-ui .pb1-l{padding-bottom:.25rem}.swagger-ui .pb2-l{padding-bottom:.5rem}.swagger-ui .pb3-l{padding-bottom:1rem}.swagger-ui .pb4-l{padding-bottom:2rem}.swagger-ui .pb5-l{padding-bottom:4rem}.swagger-ui .pb6-l{padding-bottom:8rem}.swagger-ui .pb7-l{padding-bottom:16rem}.swagger-ui .pt0-l{padding-top:0}.swagger-ui .pt1-l{padding-top:.25rem}.swagger-ui .pt2-l{padding-top:.5rem}.swagger-ui .pt3-l{padding-top:1rem}.swagger-ui .pt4-l{padding-top:2rem}.swagger-ui .pt5-l{padding-top:4rem}.swagger-ui .pt6-l{padding-top:8rem}.swagger-ui .pt7-l{padding-top:16rem}.swagger-ui .pv0-l{padding-bottom:0;padding-top:0}.swagger-ui .pv1-l{padding-bottom:.25rem;padding-top:.25rem}.swagger-ui .pv2-l{padding-bottom:.5rem;padding-top:.5rem}.swagger-ui .pv3-l{padding-bottom:1rem;padding-top:1rem}.swagger-ui .pv4-l{padding-bottom:2rem;padding-top:2rem}.swagger-ui .pv5-l{padding-bottom:4rem;padding-top:4rem}.swagger-ui .pv6-l{padding-bottom:8rem;padding-top:8rem}.swagger-ui .pv7-l{padding-bottom:16rem;padding-top:16rem}.swagger-ui .ph0-l{padding-left:0;padding-right:0}.swagger-ui .ph1-l{padding-left:.25rem;padding-right:.25rem}.swagger-ui .ph2-l{padding-left:.5rem;padding-right:.5rem}.swagger-ui .ph3-l{padding-left:1rem;padding-right:1rem}.swagger-ui .ph4-l{padding-left:2rem;padding-right:2rem}.swagger-ui .ph5-l{padding-left:4rem;padding-right:4rem}.swagger-ui .ph6-l{padding-left:8rem;padding-right:8rem}.swagger-ui .ph7-l{padding-left:16rem;padding-right:16rem}.swagger-ui .ma0-l{margin:0}.swagger-ui .ma1-l{margin:.25rem}.swagger-ui .ma2-l{margin:.5rem}.swagger-ui .ma3-l{margin:1rem}.swagger-ui .ma4-l{margin:2rem}.swagger-ui .ma5-l{margin:4rem}.swagger-ui .ma6-l{margin:8rem}.swagger-ui .ma7-l{margin:16rem}.swagger-ui .ml0-l{margin-left:0}.swagger-ui .ml1-l{margin-left:.25rem}.swagger-ui .ml2-l{margin-left:.5rem}.swagger-ui .ml3-l{margin-left:1rem}.swagger-ui .ml4-l{margin-left:2rem}.swagger-ui .ml5-l{margin-left:4rem}.swagger-ui .ml6-l{margin-left:8rem}.swagger-ui .ml7-l{margin-left:16rem}.swagger-ui .mr0-l{margin-right:0}.swagger-ui .mr1-l{margin-right:.25rem}.swagger-ui .mr2-l{margin-right:.5rem}.swagger-ui .mr3-l{margin-right:1rem}.swagger-ui .mr4-l{margin-right:2rem}.swagger-ui .mr5-l{margin-right:4rem}.swagger-ui .mr6-l{margin-right:8rem}.swagger-ui .mr7-l{margin-right:16rem}.swagger-ui .mb0-l{margin-bottom:0}.swagger-ui .mb1-l{margin-bottom:.25rem}.swagger-ui .mb2-l{margin-bottom:.5rem}.swagger-ui .mb3-l{margin-bottom:1rem}.swagger-ui .mb4-l{margin-bottom:2rem}.swagger-ui .mb5-l{margin-bottom:4rem}.swagger-ui .mb6-l{margin-bottom:8rem}.swagger-ui .mb7-l{margin-bottom:16rem}.swagger-ui .mt0-l{margin-top:0}.swagger-ui .mt1-l{margin-top:.25rem}.swagger-ui .mt2-l{margin-top:.5rem}.swagger-ui .mt3-l{margin-top:1rem}.swagger-ui .mt4-l{margin-top:2rem}.swagger-ui .mt5-l{margin-top:4rem}.swagger-ui .mt6-l{margin-top:8rem}.swagger-ui .mt7-l{margin-top:16rem}.swagger-ui .mv0-l{margin-bottom:0;margin-top:0}.swagger-ui .mv1-l{margin-bottom:.25rem;margin-top:.25rem}.swagger-ui .mv2-l{margin-bottom:.5rem;margin-top:.5rem}.swagger-ui .mv3-l{margin-bottom:1rem;margin-top:1rem}.swagger-ui .mv4-l{margin-bottom:2rem;margin-top:2rem}.swagger-ui .mv5-l{margin-bottom:4rem;margin-top:4rem}.swagger-ui .mv6-l{margin-bottom:8rem;margin-top:8rem}.swagger-ui .mv7-l{margin-bottom:16rem;margin-top:16rem}.swagger-ui .mh0-l{margin-left:0;margin-right:0}.swagger-ui .mh1-l{margin-left:.25rem;margin-right:.25rem}.swagger-ui .mh2-l{margin-left:.5rem;margin-right:.5rem}.swagger-ui .mh3-l{margin-left:1rem;margin-right:1rem}.swagger-ui .mh4-l{margin-left:2rem;margin-right:2rem}.swagger-ui .mh5-l{margin-left:4rem;margin-right:4rem}.swagger-ui .mh6-l{margin-left:8rem;margin-right:8rem}.swagger-ui .mh7-l{margin-left:16rem;margin-right:16rem}}.swagger-ui .na1{margin:-.25rem}.swagger-ui .na2{margin:-.5rem}.swagger-ui .na3{margin:-1rem}.swagger-ui .na4{margin:-2rem}.swagger-ui .na5{margin:-4rem}.swagger-ui .na6{margin:-8rem}.swagger-ui .na7{margin:-16rem}.swagger-ui .nl1{margin-left:-.25rem}.swagger-ui .nl2{margin-left:-.5rem}.swagger-ui .nl3{margin-left:-1rem}.swagger-ui .nl4{margin-left:-2rem}.swagger-ui .nl5{margin-left:-4rem}.swagger-ui .nl6{margin-left:-8rem}.swagger-ui .nl7{margin-left:-16rem}.swagger-ui .nr1{margin-right:-.25rem}.swagger-ui .nr2{margin-right:-.5rem}.swagger-ui .nr3{margin-right:-1rem}.swagger-ui .nr4{margin-right:-2rem}.swagger-ui .nr5{margin-right:-4rem}.swagger-ui .nr6{margin-right:-8rem}.swagger-ui .nr7{margin-right:-16rem}.swagger-ui .nb1{margin-bottom:-.25rem}.swagger-ui .nb2{margin-bottom:-.5rem}.swagger-ui .nb3{margin-bottom:-1rem}.swagger-ui .nb4{margin-bottom:-2rem}.swagger-ui .nb5{margin-bottom:-4rem}.swagger-ui .nb6{margin-bottom:-8rem}.swagger-ui .nb7{margin-bottom:-16rem}.swagger-ui .nt1{margin-top:-.25rem}.swagger-ui .nt2{margin-top:-.5rem}.swagger-ui .nt3{margin-top:-1rem}.swagger-ui .nt4{margin-top:-2rem}.swagger-ui .nt5{margin-top:-4rem}.swagger-ui .nt6{margin-top:-8rem}.swagger-ui .nt7{margin-top:-16rem}@media screen and (min-width:30em){.swagger-ui .na1-ns{margin:-.25rem}.swagger-ui .na2-ns{margin:-.5rem}.swagger-ui .na3-ns{margin:-1rem}.swagger-ui .na4-ns{margin:-2rem}.swagger-ui .na5-ns{margin:-4rem}.swagger-ui .na6-ns{margin:-8rem}.swagger-ui .na7-ns{margin:-16rem}.swagger-ui .nl1-ns{margin-left:-.25rem}.swagger-ui .nl2-ns{margin-left:-.5rem}.swagger-ui .nl3-ns{margin-left:-1rem}.swagger-ui .nl4-ns{margin-left:-2rem}.swagger-ui .nl5-ns{margin-left:-4rem}.swagger-ui .nl6-ns{margin-left:-8rem}.swagger-ui .nl7-ns{margin-left:-16rem}.swagger-ui .nr1-ns{margin-right:-.25rem}.swagger-ui .nr2-ns{margin-right:-.5rem}.swagger-ui .nr3-ns{margin-right:-1rem}.swagger-ui .nr4-ns{margin-right:-2rem}.swagger-ui .nr5-ns{margin-right:-4rem}.swagger-ui .nr6-ns{margin-right:-8rem}.swagger-ui .nr7-ns{margin-right:-16rem}.swagger-ui .nb1-ns{margin-bottom:-.25rem}.swagger-ui .nb2-ns{margin-bottom:-.5rem}.swagger-ui .nb3-ns{margin-bottom:-1rem}.swagger-ui .nb4-ns{margin-bottom:-2rem}.swagger-ui .nb5-ns{margin-bottom:-4rem}.swagger-ui .nb6-ns{margin-bottom:-8rem}.swagger-ui .nb7-ns{margin-bottom:-16rem}.swagger-ui .nt1-ns{margin-top:-.25rem}.swagger-ui .nt2-ns{margin-top:-.5rem}.swagger-ui .nt3-ns{margin-top:-1rem}.swagger-ui .nt4-ns{margin-top:-2rem}.swagger-ui .nt5-ns{margin-top:-4rem}.swagger-ui .nt6-ns{margin-top:-8rem}.swagger-ui .nt7-ns{margin-top:-16rem}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .na1-m{margin:-.25rem}.swagger-ui .na2-m{margin:-.5rem}.swagger-ui .na3-m{margin:-1rem}.swagger-ui .na4-m{margin:-2rem}.swagger-ui .na5-m{margin:-4rem}.swagger-ui .na6-m{margin:-8rem}.swagger-ui .na7-m{margin:-16rem}.swagger-ui .nl1-m{margin-left:-.25rem}.swagger-ui .nl2-m{margin-left:-.5rem}.swagger-ui .nl3-m{margin-left:-1rem}.swagger-ui .nl4-m{margin-left:-2rem}.swagger-ui .nl5-m{margin-left:-4rem}.swagger-ui .nl6-m{margin-left:-8rem}.swagger-ui .nl7-m{margin-left:-16rem}.swagger-ui .nr1-m{margin-right:-.25rem}.swagger-ui .nr2-m{margin-right:-.5rem}.swagger-ui .nr3-m{margin-right:-1rem}.swagger-ui .nr4-m{margin-right:-2rem}.swagger-ui .nr5-m{margin-right:-4rem}.swagger-ui .nr6-m{margin-right:-8rem}.swagger-ui .nr7-m{margin-right:-16rem}.swagger-ui .nb1-m{margin-bottom:-.25rem}.swagger-ui .nb2-m{margin-bottom:-.5rem}.swagger-ui .nb3-m{margin-bottom:-1rem}.swagger-ui .nb4-m{margin-bottom:-2rem}.swagger-ui .nb5-m{margin-bottom:-4rem}.swagger-ui .nb6-m{margin-bottom:-8rem}.swagger-ui .nb7-m{margin-bottom:-16rem}.swagger-ui .nt1-m{margin-top:-.25rem}.swagger-ui .nt2-m{margin-top:-.5rem}.swagger-ui .nt3-m{margin-top:-1rem}.swagger-ui .nt4-m{margin-top:-2rem}.swagger-ui .nt5-m{margin-top:-4rem}.swagger-ui .nt6-m{margin-top:-8rem}.swagger-ui .nt7-m{margin-top:-16rem}}@media screen and (min-width:60em){.swagger-ui .na1-l{margin:-.25rem}.swagger-ui .na2-l{margin:-.5rem}.swagger-ui .na3-l{margin:-1rem}.swagger-ui .na4-l{margin:-2rem}.swagger-ui .na5-l{margin:-4rem}.swagger-ui .na6-l{margin:-8rem}.swagger-ui .na7-l{margin:-16rem}.swagger-ui .nl1-l{margin-left:-.25rem}.swagger-ui .nl2-l{margin-left:-.5rem}.swagger-ui .nl3-l{margin-left:-1rem}.swagger-ui .nl4-l{margin-left:-2rem}.swagger-ui .nl5-l{margin-left:-4rem}.swagger-ui .nl6-l{margin-left:-8rem}.swagger-ui .nl7-l{margin-left:-16rem}.swagger-ui .nr1-l{margin-right:-.25rem}.swagger-ui .nr2-l{margin-right:-.5rem}.swagger-ui .nr3-l{margin-right:-1rem}.swagger-ui .nr4-l{margin-right:-2rem}.swagger-ui .nr5-l{margin-right:-4rem}.swagger-ui .nr6-l{margin-right:-8rem}.swagger-ui .nr7-l{margin-right:-16rem}.swagger-ui .nb1-l{margin-bottom:-.25rem}.swagger-ui .nb2-l{margin-bottom:-.5rem}.swagger-ui .nb3-l{margin-bottom:-1rem}.swagger-ui .nb4-l{margin-bottom:-2rem}.swagger-ui .nb5-l{margin-bottom:-4rem}.swagger-ui .nb6-l{margin-bottom:-8rem}.swagger-ui .nb7-l{margin-bottom:-16rem}.swagger-ui .nt1-l{margin-top:-.25rem}.swagger-ui .nt2-l{margin-top:-.5rem}.swagger-ui .nt3-l{margin-top:-1rem}.swagger-ui .nt4-l{margin-top:-2rem}.swagger-ui .nt5-l{margin-top:-4rem}.swagger-ui .nt6-l{margin-top:-8rem}.swagger-ui .nt7-l{margin-top:-16rem}}.swagger-ui .collapse{border-collapse:collapse;border-spacing:0}.swagger-ui .striped--light-silver:nth-child(odd){background-color:#aaa}.swagger-ui .striped--moon-gray:nth-child(odd){background-color:#ccc}.swagger-ui .striped--light-gray:nth-child(odd){background-color:#eee}.swagger-ui .striped--near-white:nth-child(odd){background-color:#f4f4f4}.swagger-ui .stripe-light:nth-child(odd){background-color:#ffffff1a}.swagger-ui .stripe-dark:nth-child(odd){background-color:#0000001a}.swagger-ui .strike{-webkit-text-decoration:line-through;text-decoration:line-through}.swagger-ui .underline{-webkit-text-decoration:underline;text-decoration:underline}.swagger-ui .no-underline{-webkit-text-decoration:none;text-decoration:none}@media screen and (min-width:30em){.swagger-ui .strike-ns{-webkit-text-decoration:line-through;text-decoration:line-through}.swagger-ui .underline-ns{-webkit-text-decoration:underline;text-decoration:underline}.swagger-ui .no-underline-ns{-webkit-text-decoration:none;text-decoration:none}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .strike-m{-webkit-text-decoration:line-through;text-decoration:line-through}.swagger-ui .underline-m{-webkit-text-decoration:underline;text-decoration:underline}.swagger-ui .no-underline-m{-webkit-text-decoration:none;text-decoration:none}}@media screen and (min-width:60em){.swagger-ui .strike-l{-webkit-text-decoration:line-through;text-decoration:line-through}.swagger-ui .underline-l{-webkit-text-decoration:underline;text-decoration:underline}.swagger-ui .no-underline-l{-webkit-text-decoration:none;text-decoration:none}}.swagger-ui .tl{text-align:left}.swagger-ui .tr{text-align:right}.swagger-ui .tc{text-align:center}.swagger-ui .tj{text-align:justify}@media screen and (min-width:30em){.swagger-ui .tl-ns{text-align:left}.swagger-ui .tr-ns{text-align:right}.swagger-ui .tc-ns{text-align:center}.swagger-ui .tj-ns{text-align:justify}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .tl-m{text-align:left}.swagger-ui .tr-m{text-align:right}.swagger-ui .tc-m{text-align:center}.swagger-ui .tj-m{text-align:justify}}@media screen and (min-width:60em){.swagger-ui .tl-l{text-align:left}.swagger-ui .tr-l{text-align:right}.swagger-ui .tc-l{text-align:center}.swagger-ui .tj-l{text-align:justify}}.swagger-ui .ttc{text-transform:capitalize}.swagger-ui .ttl{text-transform:lowercase}.swagger-ui .ttu{text-transform:uppercase}.swagger-ui .ttn{text-transform:none}@media screen and (min-width:30em){.swagger-ui .ttc-ns{text-transform:capitalize}.swagger-ui .ttl-ns{text-transform:lowercase}.swagger-ui .ttu-ns{text-transform:uppercase}.swagger-ui .ttn-ns{text-transform:none}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .ttc-m{text-transform:capitalize}.swagger-ui .ttl-m{text-transform:lowercase}.swagger-ui .ttu-m{text-transform:uppercase}.swagger-ui .ttn-m{text-transform:none}}@media screen and (min-width:60em){.swagger-ui .ttc-l{text-transform:capitalize}.swagger-ui .ttl-l{text-transform:lowercase}.swagger-ui .ttu-l{text-transform:uppercase}.swagger-ui .ttn-l{text-transform:none}}.swagger-ui .f-6,.swagger-ui .f-headline{font-size:6rem}.swagger-ui .f-5,.swagger-ui .f-subheadline{font-size:5rem}.swagger-ui .f1{font-size:3rem}.swagger-ui .f2{font-size:2.25rem}.swagger-ui .f3{font-size:1.5rem}.swagger-ui .f4{font-size:1.25rem}.swagger-ui .f5{font-size:1rem}.swagger-ui .f6{font-size:.875rem}.swagger-ui .f7{font-size:.75rem}@media screen and (min-width:30em){.swagger-ui .f-6-ns,.swagger-ui .f-headline-ns{font-size:6rem}.swagger-ui .f-5-ns,.swagger-ui .f-subheadline-ns{font-size:5rem}.swagger-ui .f1-ns{font-size:3rem}.swagger-ui .f2-ns{font-size:2.25rem}.swagger-ui .f3-ns{font-size:1.5rem}.swagger-ui .f4-ns{font-size:1.25rem}.swagger-ui .f5-ns{font-size:1rem}.swagger-ui .f6-ns{font-size:.875rem}.swagger-ui .f7-ns{font-size:.75rem}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .f-6-m,.swagger-ui .f-headline-m{font-size:6rem}.swagger-ui .f-5-m,.swagger-ui .f-subheadline-m{font-size:5rem}.swagger-ui .f1-m{font-size:3rem}.swagger-ui .f2-m{font-size:2.25rem}.swagger-ui .f3-m{font-size:1.5rem}.swagger-ui .f4-m{font-size:1.25rem}.swagger-ui .f5-m{font-size:1rem}.swagger-ui .f6-m{font-size:.875rem}.swagger-ui .f7-m{font-size:.75rem}}@media screen and (min-width:60em){.swagger-ui .f-6-l,.swagger-ui .f-headline-l{font-size:6rem}.swagger-ui .f-5-l,.swagger-ui .f-subheadline-l{font-size:5rem}.swagger-ui .f1-l{font-size:3rem}.swagger-ui .f2-l{font-size:2.25rem}.swagger-ui .f3-l{font-size:1.5rem}.swagger-ui .f4-l{font-size:1.25rem}.swagger-ui .f5-l{font-size:1rem}.swagger-ui .f6-l{font-size:.875rem}.swagger-ui .f7-l{font-size:.75rem}}.swagger-ui .measure{max-width:30em}.swagger-ui .measure-wide{max-width:34em}.swagger-ui .measure-narrow{max-width:20em}.swagger-ui .indent{margin-bottom:0;margin-top:0;text-indent:1em}.swagger-ui .small-caps{font-feature-settings:"smcp";font-variant:small-caps}.swagger-ui .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media screen and (min-width:30em){.swagger-ui .measure-ns{max-width:30em}.swagger-ui .measure-wide-ns{max-width:34em}.swagger-ui .measure-narrow-ns{max-width:20em}.swagger-ui .indent-ns{margin-bottom:0;margin-top:0;text-indent:1em}.swagger-ui .small-caps-ns{font-feature-settings:"smcp";font-variant:small-caps}.swagger-ui .truncate-ns{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .measure-m{max-width:30em}.swagger-ui .measure-wide-m{max-width:34em}.swagger-ui .measure-narrow-m{max-width:20em}.swagger-ui .indent-m{margin-bottom:0;margin-top:0;text-indent:1em}.swagger-ui .small-caps-m{font-feature-settings:"smcp";font-variant:small-caps}.swagger-ui .truncate-m{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media screen and (min-width:60em){.swagger-ui .measure-l{max-width:30em}.swagger-ui .measure-wide-l{max-width:34em}.swagger-ui .measure-narrow-l{max-width:20em}.swagger-ui .indent-l{margin-bottom:0;margin-top:0;text-indent:1em}.swagger-ui .small-caps-l{font-feature-settings:"smcp";font-variant:small-caps}.swagger-ui .truncate-l{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.swagger-ui .overflow-container{overflow-y:scroll}.swagger-ui .center{margin-left:auto;margin-right:auto}.swagger-ui .mr-auto{margin-right:auto}.swagger-ui .ml-auto{margin-left:auto}@media screen and (min-width:30em){.swagger-ui .center-ns{margin-left:auto;margin-right:auto}.swagger-ui .mr-auto-ns{margin-right:auto}.swagger-ui .ml-auto-ns{margin-left:auto}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .center-m{margin-left:auto;margin-right:auto}.swagger-ui .mr-auto-m{margin-right:auto}.swagger-ui .ml-auto-m{margin-left:auto}}@media screen and (min-width:60em){.swagger-ui .center-l{margin-left:auto;margin-right:auto}.swagger-ui .mr-auto-l{margin-right:auto}.swagger-ui .ml-auto-l{margin-left:auto}}.swagger-ui .clip{position:fixed!important;_position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}@media screen and (min-width:30em){.swagger-ui .clip-ns{position:fixed!important;_position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .clip-m{position:fixed!important;_position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}}@media screen and (min-width:60em){.swagger-ui .clip-l{position:fixed!important;_position:absolute!important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px)}}.swagger-ui .ws-normal{white-space:normal}.swagger-ui .nowrap{white-space:nowrap}.swagger-ui .pre{white-space:pre}@media screen and (min-width:30em){.swagger-ui .ws-normal-ns{white-space:normal}.swagger-ui .nowrap-ns{white-space:nowrap}.swagger-ui .pre-ns{white-space:pre}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .ws-normal-m{white-space:normal}.swagger-ui .nowrap-m{white-space:nowrap}.swagger-ui .pre-m{white-space:pre}}@media screen and (min-width:60em){.swagger-ui .ws-normal-l{white-space:normal}.swagger-ui .nowrap-l{white-space:nowrap}.swagger-ui .pre-l{white-space:pre}}.swagger-ui .v-base{vertical-align:baseline}.swagger-ui .v-mid{vertical-align:middle}.swagger-ui .v-top{vertical-align:top}.swagger-ui .v-btm{vertical-align:bottom}@media screen and (min-width:30em){.swagger-ui .v-base-ns{vertical-align:baseline}.swagger-ui .v-mid-ns{vertical-align:middle}.swagger-ui .v-top-ns{vertical-align:top}.swagger-ui .v-btm-ns{vertical-align:bottom}}@media screen and (min-width:30em)and (max-width:60em){.swagger-ui .v-base-m{vertical-align:baseline}.swagger-ui .v-mid-m{vertical-align:middle}.swagger-ui .v-top-m{vertical-align:top}.swagger-ui .v-btm-m{vertical-align:bottom}}@media screen and (min-width:60em){.swagger-ui .v-base-l{vertical-align:baseline}.swagger-ui .v-mid-l{vertical-align:middle}.swagger-ui .v-top-l{vertical-align:top}.swagger-ui .v-btm-l{vertical-align:bottom}}.swagger-ui .dim{opacity:1;transition:opacity .15s ease-in}.swagger-ui .dim:focus,.swagger-ui .dim:hover{opacity:.5;transition:opacity .15s ease-in}.swagger-ui .dim:active{opacity:.8;transition:opacity .15s ease-out}.swagger-ui .glow{transition:opacity .15s ease-in}.swagger-ui .glow:focus,.swagger-ui .glow:hover{opacity:1;transition:opacity .15s ease-in}.swagger-ui .hide-child .child{opacity:0;transition:opacity .15s ease-in}.swagger-ui .hide-child:active .child,.swagger-ui .hide-child:focus .child,.swagger-ui .hide-child:hover .child{opacity:1;transition:opacity .15s ease-in}.swagger-ui .underline-hover:focus,.swagger-ui .underline-hover:hover{-webkit-text-decoration:underline;text-decoration:underline}.swagger-ui .grow{-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0);transition:transform .25s ease-out}.swagger-ui .grow:focus,.swagger-ui .grow:hover{transform:scale(1.05)}.swagger-ui .grow:active{transform:scale(.9)}.swagger-ui .grow-large{-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;transform:translateZ(0);transition:transform .25s ease-in-out}.swagger-ui .grow-large:focus,.swagger-ui .grow-large:hover{transform:scale(1.2)}.swagger-ui .grow-large:active{transform:scale(.95)}.swagger-ui .pointer:hover{cursor:pointer}.swagger-ui .shadow-hover{cursor:pointer;position:relative;transition:all .5s cubic-bezier(.165,.84,.44,1)}.swagger-ui .shadow-hover:after{border-radius:inherit;box-shadow:0 0 16px 2px #0003;content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .5s cubic-bezier(.165,.84,.44,1);width:100%;z-index:-1}.swagger-ui .shadow-hover:focus:after,.swagger-ui .shadow-hover:hover:after{opacity:1}.swagger-ui .bg-animate,.swagger-ui .bg-animate:focus,.swagger-ui .bg-animate:hover{transition:background-color .15s ease-in-out}.swagger-ui .z-0{z-index:0}.swagger-ui .z-1{z-index:1}.swagger-ui .z-2{z-index:2}.swagger-ui .z-3{z-index:3}.swagger-ui .z-4{z-index:4}.swagger-ui .z-5{z-index:5}.swagger-ui .z-999{z-index:999}.swagger-ui .z-9999{z-index:9999}.swagger-ui .z-max{z-index:2147483647}.swagger-ui .z-inherit{z-index:inherit}.swagger-ui .z-initial,.swagger-ui .z-unset{z-index:auto}.swagger-ui .nested-copy-line-height ol,.swagger-ui .nested-copy-line-height p,.swagger-ui .nested-copy-line-height ul{line-height:1.5}.swagger-ui .nested-headline-line-height h1,.swagger-ui .nested-headline-line-height h2,.swagger-ui .nested-headline-line-height h3,.swagger-ui .nested-headline-line-height h4,.swagger-ui .nested-headline-line-height h5,.swagger-ui .nested-headline-line-height h6{line-height:1.25}.swagger-ui .nested-list-reset ol,.swagger-ui .nested-list-reset ul{list-style-type:none;margin-left:0;padding-left:0}.swagger-ui .nested-copy-indent p+p{margin-bottom:0;margin-top:0;text-indent:.1em}.swagger-ui .nested-copy-seperator p+p{margin-top:1.5em}.swagger-ui .nested-img img{display:block;max-width:100%;width:100%}.swagger-ui .nested-links a{color:#357edd;transition:color .15s ease-in}.swagger-ui .nested-links a:focus,.swagger-ui .nested-links a:hover{color:#96ccff;transition:color .15s ease-in}.swagger-ui .wrapper{box-sizing:border-box;margin:0 auto;max-width:1460px;padding:0 20px;width:100%}.swagger-ui .opblock-tag-section{display:flex;flex-direction:column}.swagger-ui .try-out.btn-group{display:flex;flex:.1 2 auto;padding:0}.swagger-ui .try-out__btn{margin-left:1.25rem}.swagger-ui .opblock-tag{align-items:center;border-bottom:1px solid rgba(59,65,81,.3);cursor:pointer;display:flex;padding:10px 20px 10px 10px;transition:all .2s}.swagger-ui .opblock-tag:hover{background:#00000005}.swagger-ui .opblock-tag{color:#3b4151;font-family:sans-serif;font-size:24px;margin:0 0 5px}.swagger-ui .opblock-tag.no-desc span{flex:1}.swagger-ui .opblock-tag svg{transition:all .4s}.swagger-ui .opblock-tag small{color:#3b4151;flex:2;font-family:sans-serif;font-size:14px;font-weight:400;padding:0 10px}.swagger-ui .opblock-tag>div{flex:1 1 150px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:640px){.swagger-ui .opblock-tag small,.swagger-ui .opblock-tag>div{flex:1}}.swagger-ui .opblock-tag .info__externaldocs{text-align:right}.swagger-ui .parameter__type{color:#3b4151;font-family:monospace;font-size:12px;font-weight:600;padding:5px 0}.swagger-ui .parameter-controls{margin-top:.75em}.swagger-ui .examples__title{display:block;font-size:1.1em;font-weight:700;margin-bottom:.75em}.swagger-ui .examples__section{margin-top:1.5em}.swagger-ui .examples__section-header{font-size:.9rem;font-weight:700;margin-bottom:.5rem}.swagger-ui .examples-select{display:inline-block;margin-bottom:.75em}.swagger-ui .examples-select .examples-select-element{width:100%}.swagger-ui .examples-select__section-label{font-size:.9rem;font-weight:700;margin-right:.5rem}.swagger-ui .example__section{margin-top:1.5em}.swagger-ui .example__section-header{font-size:.9rem;font-weight:700;margin-bottom:.5rem}.swagger-ui .view-line-link{cursor:pointer;margin:0 5px;position:relative;top:3px;transition:all .5s;width:20px}.swagger-ui .opblock{border:1px solid #000;border-radius:4px;box-shadow:0 0 3px #00000030;margin:0 0 15px}.swagger-ui .opblock .tab-header{display:flex;flex:1}.swagger-ui .opblock .tab-header .tab-item{cursor:pointer;padding:0 40px}.swagger-ui .opblock .tab-header .tab-item:first-of-type{padding:0 40px 0 0}.swagger-ui .opblock .tab-header .tab-item.active h4 span{position:relative}.swagger-ui .opblock .tab-header .tab-item.active h4 span:after{background:gray;bottom:-15px;content:"";height:4px;left:50%;position:absolute;transform:translate(-50%);width:120%}.swagger-ui .opblock.is-open .opblock-summary{border-bottom:1px solid #000}.swagger-ui .opblock .opblock-section-header{align-items:center;background:#fffc;box-shadow:0 1px 2px #0000001a;display:flex;min-height:50px;padding:8px 20px}.swagger-ui .opblock .opblock-section-header>label{align-items:center;color:#3b4151;display:flex;font-family:sans-serif;font-size:12px;font-weight:700;margin:0 0 0 auto}.swagger-ui .opblock .opblock-section-header>label>span{padding:0 10px 0 0}.swagger-ui .opblock .opblock-section-header h4{color:#3b4151;flex:1;font-family:sans-serif;font-size:14px;margin:0}.swagger-ui .opblock .opblock-summary-method{background:#000;border-radius:3px;color:#fff;font-family:sans-serif;font-size:14px;font-weight:700;min-width:80px;padding:6px 0;text-align:center;text-shadow:0 1px 0 rgba(0,0,0,.1)}@media (max-width:768px){.swagger-ui .opblock .opblock-summary-method{font-size:12px}}.swagger-ui .opblock .opblock-summary-operation-id,.swagger-ui .opblock .opblock-summary-path,.swagger-ui .opblock .opblock-summary-path__deprecated{align-items:center;color:#3b4151;display:flex;font-family:monospace;font-size:16px;font-weight:600;word-break:break-word}@media (max-width:768px){.swagger-ui .opblock .opblock-summary-operation-id,.swagger-ui .opblock .opblock-summary-path,.swagger-ui .opblock .opblock-summary-path__deprecated{font-size:12px}}.swagger-ui .opblock .opblock-summary-path{flex-shrink:1}@media (max-width:640px){.swagger-ui .opblock .opblock-summary-path{max-width:100%}}.swagger-ui .opblock .opblock-summary-path__deprecated{-webkit-text-decoration:line-through;text-decoration:line-through}.swagger-ui .opblock .opblock-summary-operation-id{font-size:14px}.swagger-ui .opblock .opblock-summary-description{color:#3b4151;font-family:sans-serif;font-size:13px;word-break:break-word}.swagger-ui .opblock .opblock-summary-path-description-wrapper{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:0 10px;padding:0 10px;width:100%}@media (max-width:550px){.swagger-ui .opblock .opblock-summary-path-description-wrapper{align-items:flex-start;flex-direction:column}}.swagger-ui .opblock .opblock-summary{align-items:center;cursor:pointer;display:flex;padding:5px}.swagger-ui .opblock .opblock-summary .view-line-link{cursor:pointer;margin:0;position:relative;top:2px;transition:all .5s;width:0}.swagger-ui .opblock .opblock-summary:hover .view-line-link{margin:0 5px;width:18px}.swagger-ui .opblock .opblock-summary:hover .view-line-link.copy-to-clipboard{width:24px}.swagger-ui .opblock.opblock-post{background:#49cc901a;border-color:#49cc90}.swagger-ui .opblock.opblock-post .opblock-summary-method{background:#49cc90}.swagger-ui .opblock.opblock-post .opblock-summary{border-color:#49cc90}.swagger-ui .opblock.opblock-post .tab-header .tab-item.active h4 span:after{background:#49cc90}.swagger-ui .opblock.opblock-put{background:#fca1301a;border-color:#fca130}.swagger-ui .opblock.opblock-put .opblock-summary-method{background:#fca130}.swagger-ui .opblock.opblock-put .opblock-summary{border-color:#fca130}.swagger-ui .opblock.opblock-put .tab-header .tab-item.active h4 span:after{background:#fca130}.swagger-ui .opblock.opblock-delete{background:#f93e3e1a;border-color:#f93e3e}.swagger-ui .opblock.opblock-delete .opblock-summary-method{background:#f93e3e}.swagger-ui .opblock.opblock-delete .opblock-summary{border-color:#f93e3e}.swagger-ui .opblock.opblock-delete .tab-header .tab-item.active h4 span:after{background:#f93e3e}.swagger-ui .opblock.opblock-get{background:#61affe1a;border-color:#61affe}.swagger-ui .opblock.opblock-get .opblock-summary-method{background:#61affe}.swagger-ui .opblock.opblock-get .opblock-summary{border-color:#61affe}.swagger-ui .opblock.opblock-get .tab-header .tab-item.active h4 span:after{background:#61affe}.swagger-ui .opblock.opblock-patch{background:#50e3c21a;border-color:#50e3c2}.swagger-ui .opblock.opblock-patch .opblock-summary-method{background:#50e3c2}.swagger-ui .opblock.opblock-patch .opblock-summary{border-color:#50e3c2}.swagger-ui .opblock.opblock-patch .tab-header .tab-item.active h4 span:after{background:#50e3c2}.swagger-ui .opblock.opblock-head{background:#9012fe1a;border-color:#9012fe}.swagger-ui .opblock.opblock-head .opblock-summary-method{background:#9012fe}.swagger-ui .opblock.opblock-head .opblock-summary{border-color:#9012fe}.swagger-ui .opblock.opblock-head .tab-header .tab-item.active h4 span:after{background:#9012fe}.swagger-ui .opblock.opblock-options{background:#0d5aa71a;border-color:#0d5aa7}.swagger-ui .opblock.opblock-options .opblock-summary-method{background:#0d5aa7}.swagger-ui .opblock.opblock-options .opblock-summary{border-color:#0d5aa7}.swagger-ui .opblock.opblock-options .tab-header .tab-item.active h4 span:after{background:#0d5aa7}.swagger-ui .opblock.opblock-deprecated{background:#ebebeb1a;border-color:#ebebeb;opacity:.6}.swagger-ui .opblock.opblock-deprecated .opblock-summary-method{background:#ebebeb}.swagger-ui .opblock.opblock-deprecated .opblock-summary{border-color:#ebebeb}.swagger-ui .opblock.opblock-deprecated .tab-header .tab-item.active h4 span:after{background:#ebebeb}.swagger-ui .opblock .opblock-schemes{padding:8px 20px}.swagger-ui .opblock .opblock-schemes .schemes-title{padding:0 10px 0 0}.swagger-ui .filter .operation-filter-input{border:2px solid #d8dde7;margin:20px 0;padding:10px;width:100%}.swagger-ui .download-url-wrapper .failed,.swagger-ui .filter .failed{color:red}.swagger-ui .download-url-wrapper .loading,.swagger-ui .filter .loading{color:#aaa}.swagger-ui .model-example{margin-top:1em}.swagger-ui .tab{display:flex;list-style:none;padding:0}.swagger-ui .tab li{color:#3b4151;cursor:pointer;font-family:sans-serif;font-size:12px;min-width:60px;padding:0}.swagger-ui .tab li:first-of-type{padding-left:0;padding-right:12px;position:relative}.swagger-ui .tab li:first-of-type:after{background:#0003;content:"";height:100%;position:absolute;right:6px;top:0;width:1px}.swagger-ui .tab li.active{font-weight:700}.swagger-ui .tab li button.tablinks{background:none;border:0;color:inherit;font-family:inherit;font-weight:inherit;padding:0}.swagger-ui .opblock-description-wrapper,.swagger-ui .opblock-external-docs-wrapper,.swagger-ui .opblock-title_normal{color:#3b4151;font-family:sans-serif;font-size:12px;margin:0 0 5px;padding:15px 20px}.swagger-ui .opblock-description-wrapper h4,.swagger-ui .opblock-external-docs-wrapper h4,.swagger-ui .opblock-title_normal h4{color:#3b4151;font-family:sans-serif;font-size:12px;margin:0 0 5px}.swagger-ui .opblock-description-wrapper p,.swagger-ui .opblock-external-docs-wrapper p,.swagger-ui .opblock-title_normal p{color:#3b4151;font-family:sans-serif;font-size:14px;margin:0}.swagger-ui .opblock-external-docs-wrapper h4{padding-left:0}.swagger-ui .execute-wrapper{padding:20px;text-align:right}.swagger-ui .execute-wrapper .btn{padding:8px 40px;width:100%}.swagger-ui .body-param-options{display:flex;flex-direction:column}.swagger-ui .body-param-options .body-param-edit{padding:10px 0}.swagger-ui .body-param-options label{padding:8px 0}.swagger-ui .body-param-options label select{margin:3px 0 0}.swagger-ui .responses-inner{padding:20px}.swagger-ui .responses-inner h4,.swagger-ui .responses-inner h5{color:#3b4151;font-family:sans-serif;font-size:12px;margin:10px 0 5px}.swagger-ui .responses-inner .curl{max-height:400px;min-height:6em;overflow-y:auto}.swagger-ui .response-col_status{color:#3b4151;font-family:sans-serif;font-size:14px}.swagger-ui .response-col_status .response-undocumented{color:#909090;font-family:monospace;font-size:11px;font-weight:600}.swagger-ui .response-col_links{color:#3b4151;font-family:sans-serif;font-size:14px;max-width:40em;padding-left:2em}.swagger-ui .response-col_links .response-undocumented{color:#909090;font-family:monospace;font-size:11px;font-weight:600}.swagger-ui .response-col_links .operation-link{margin-bottom:1.5em}.swagger-ui .response-col_links .operation-link .description{margin-bottom:.5em}.swagger-ui .opblock-body .opblock-loading-animation{display:block;margin:3em auto}.swagger-ui .opblock-body pre.microlight{background:#333;border-radius:4px;font-size:12px;-webkit-hyphens:auto;hyphens:auto;margin:0;padding:10px;white-space:pre-wrap;word-break:break-all;word-break:break-word;word-wrap:break-word;color:#fff;font-family:monospace;font-weight:600}.swagger-ui .opblock-body pre.microlight .headerline{display:block}.swagger-ui .highlight-code{position:relative}.swagger-ui .highlight-code>.microlight{max-height:400px;min-height:6em;overflow-y:auto}.swagger-ui .highlight-code>.microlight code{white-space:pre-wrap!important;word-break:break-all}.swagger-ui .curl-command{position:relative}.swagger-ui .download-contents{align-items:center;background:#7d8293;border:none;border-radius:4px;bottom:10px;color:#fff;display:flex;font-family:sans-serif;font-size:14px;font-weight:600;height:30px;justify-content:center;padding:5px;position:absolute;right:10px;text-align:center}.swagger-ui .scheme-container{background:#fff;box-shadow:0 1px 2px #00000026;margin:0 0 20px;padding:30px 0}.swagger-ui .scheme-container .schemes{align-items:flex-end;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.swagger-ui .scheme-container .schemes>.schemes-server-container{display:flex;flex-wrap:wrap;gap:10px}.swagger-ui .scheme-container .schemes>.schemes-server-container>label{color:#3b4151;display:flex;flex-direction:column;font-family:sans-serif;font-size:12px;font-weight:700;margin:-20px 15px 0 0}.swagger-ui .scheme-container .schemes>.schemes-server-container>label select{min-width:130px;text-transform:uppercase}.swagger-ui .scheme-container .schemes:not(:has(.schemes-server-container)){justify-content:flex-end}.swagger-ui .scheme-container .schemes .auth-wrapper{flex:none;justify-content:start}.swagger-ui .scheme-container .schemes .auth-wrapper .authorize{display:flex;flex-wrap:nowrap;margin:0;padding-right:20px}.swagger-ui .loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-top:1em;min-height:1px;padding:40px 0 60px}.swagger-ui .loading-container .loading{position:relative}.swagger-ui .loading-container .loading:after{color:#3b4151;content:"loading";font-family:sans-serif;font-size:10px;font-weight:700;left:50%;position:absolute;text-transform:uppercase;top:50%;transform:translate(-50%,-50%)}.swagger-ui .loading-container .loading:before{animation:rotation 1s linear infinite,opacity .5s;backface-visibility:hidden;border:2px solid rgba(85,85,85,.1);border-radius:100%;border-top-color:#0009;content:"";display:block;height:60px;left:50%;margin:-30px;opacity:1;position:absolute;top:50%;width:60px}@keyframes rotation{to{transform:rotate(1turn)}}.swagger-ui .response-controls{display:flex;padding-top:1em}.swagger-ui .response-control-media-type{margin-right:1em}.swagger-ui .response-control-media-type--accept-controller select{border-color:green}.swagger-ui .response-control-media-type__accept-message{color:green;font-size:.7em}.swagger-ui .response-control-examples__title,.swagger-ui .response-control-media-type__title{display:block;font-size:.7em;margin-bottom:.2em}@keyframes blinker{50%{opacity:0}}.swagger-ui .hidden{display:none}.swagger-ui .no-margin{border:none;height:auto;margin:0;padding:0}.swagger-ui .float-right{float:right}.swagger-ui .svg-assets{height:0;position:absolute;width:0}.swagger-ui section h3{color:#3b4151;font-family:sans-serif}.swagger-ui a.nostyle{display:inline}.swagger-ui a.nostyle,.swagger-ui a.nostyle:visited{color:inherit;cursor:pointer;text-decoration:inherit}.swagger-ui .fallback{color:#aaa;padding:1em}.swagger-ui .version-pragma{height:100%;padding:5em 0}.swagger-ui .version-pragma__message{display:flex;font-size:1.2em;height:100%;justify-content:center;line-height:1.5em;padding:0 .6em;text-align:center}.swagger-ui .version-pragma__message>div{flex:1;max-width:55ch}.swagger-ui .version-pragma__message code{background-color:#dedede;padding:4px 4px 2px;white-space:pre}.swagger-ui .opblock-link{font-weight:400}.swagger-ui .opblock-link.shown{font-weight:700}.swagger-ui span.token-string{color:#555}.swagger-ui span.token-not-formatted{color:#555;font-weight:700}.swagger-ui .btn{background:transparent;border:2px solid gray;border-radius:4px;box-shadow:0 1px 2px #0000001a;color:#3b4151;font-family:sans-serif;font-size:14px;font-weight:700;padding:5px 23px;transition:all .3s}.swagger-ui .btn.btn-sm{font-size:12px;padding:4px 23px}.swagger-ui .btn[disabled]{cursor:not-allowed;opacity:.3}.swagger-ui .btn:hover{box-shadow:0 0 5px #0000004d}.swagger-ui .btn.cancel{background-color:transparent;border-color:#ff6060;color:#ff6060;font-family:sans-serif}.swagger-ui .btn.authorize{background-color:transparent;border-color:#49cc90;color:#49cc90;display:inline;line-height:1}.swagger-ui .btn.authorize span{float:left;padding:4px 20px 0 0}.swagger-ui .btn.authorize svg{fill:#49cc90}.swagger-ui .btn.execute{background-color:#4990e2;border-color:#4990e2;color:#fff}.swagger-ui .btn-group{display:flex;padding:30px}.swagger-ui .btn-group .btn{flex:1}.swagger-ui .btn-group .btn:first-child{border-radius:4px 0 0 4px}.swagger-ui .btn-group .btn:last-child{border-radius:0 4px 4px 0}.swagger-ui .authorization__btn{background:none;border:none;padding:0 0 0 10px}.swagger-ui .authorization__btn .locked{opacity:1}.swagger-ui .authorization__btn .unlocked{opacity:.4}.swagger-ui .model-box-control,.swagger-ui .models-control,.swagger-ui .opblock-summary-control{all:inherit;border-bottom:0;cursor:pointer;flex:1;padding:0}.swagger-ui .model-box-control:focus,.swagger-ui .models-control:focus,.swagger-ui .opblock-summary-control:focus{outline:auto}.swagger-ui .expand-methods,.swagger-ui .expand-operation{background:none;border:none}.swagger-ui .expand-methods svg,.swagger-ui .expand-operation svg{height:20px;width:20px}.swagger-ui .expand-methods{padding:0 10px}.swagger-ui .expand-methods:hover svg{fill:#404040}.swagger-ui .expand-methods svg{transition:all .3s;fill:#707070}.swagger-ui button{cursor:pointer}.swagger-ui button.invalid{animation:shake .4s 1;background:#feebeb;border-color:#f93e3e}.swagger-ui .copy-to-clipboard{align-items:center;background:#7d8293;border:none;border-radius:4px;bottom:10px;display:flex;height:30px;justify-content:center;position:absolute;right:100px;width:30px}.swagger-ui .copy-to-clipboard button{background:url('data:image/svg+xml;charset=utf-8,') 50% no-repeat;border:none;flex-grow:1;flex-shrink:1;height:25px}.swagger-ui .copy-to-clipboard:active{background:#5e626f}.swagger-ui .opblock-control-arrow{background:none;border:none;text-align:center}.swagger-ui .curl-command .copy-to-clipboard{bottom:5px;height:20px;right:10px;width:20px}.swagger-ui .curl-command .copy-to-clipboard button{height:18px}.swagger-ui .opblock .opblock-summary .view-line-link.copy-to-clipboard{height:26px;position:static}.swagger-ui select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#f7f7f7 url('data:image/svg+xml;charset=utf-8,') right 10px center no-repeat;background-size:20px;border:2px solid #41444e;border-radius:4px;box-shadow:0 1px 2px #00000040;color:#3b4151;font-family:sans-serif;font-size:14px;font-weight:700;padding:5px 40px 5px 10px}.swagger-ui select[multiple]{background:#f7f7f7;margin:5px 0;padding:5px}.swagger-ui select.invalid{animation:shake .4s 1;background:#feebeb;border-color:#f93e3e}.swagger-ui .opblock-body select{min-width:230px}@media (max-width:768px){.swagger-ui .opblock-body select{min-width:180px}}@media (max-width:640px){.swagger-ui .opblock-body select{min-width:100%;width:100%}}.swagger-ui label{color:#3b4151;font-family:sans-serif;font-size:12px;font-weight:700;margin:0 0 5px}.swagger-ui input[type=email],.swagger-ui input[type=file],.swagger-ui input[type=password],.swagger-ui input[type=search],.swagger-ui input[type=text]{line-height:1}@media (max-width:768px){.swagger-ui input[type=email],.swagger-ui input[type=file],.swagger-ui input[type=password],.swagger-ui input[type=search],.swagger-ui input[type=text]{max-width:175px}}.swagger-ui input[type=email],.swagger-ui input[type=file],.swagger-ui input[type=password],.swagger-ui input[type=search],.swagger-ui input[type=text],.swagger-ui textarea{background:#fff;border:1px solid #d9d9d9;border-radius:4px;margin:5px 0;min-width:100px;padding:8px 10px}.swagger-ui input[type=email].invalid,.swagger-ui input[type=file].invalid,.swagger-ui input[type=password].invalid,.swagger-ui input[type=search].invalid,.swagger-ui input[type=text].invalid,.swagger-ui textarea.invalid{animation:shake .4s 1;background:#feebeb;border-color:#f93e3e}.swagger-ui input[disabled],.swagger-ui select[disabled],.swagger-ui textarea[disabled]{background-color:#fafafa;color:#888;cursor:not-allowed}.swagger-ui select[disabled]{border-color:#888}.swagger-ui textarea[disabled]{background-color:#41444e;color:#fff}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.swagger-ui textarea{background:#fffc;border:none;border-radius:4px;color:#3b4151;font-family:monospace;font-size:12px;font-weight:600;min-height:280px;outline:none;padding:10px;width:100%}.swagger-ui textarea:focus{border:2px solid #61affe}.swagger-ui textarea.curl{background:#41444e;border-radius:4px;color:#fff;font-family:monospace;font-size:12px;font-weight:600;margin:0;min-height:100px;padding:10px;resize:none}.swagger-ui .checkbox{color:#303030;padding:5px 0 10px;transition:opacity .5s}.swagger-ui .checkbox label{display:flex}.swagger-ui .checkbox p{color:#3b4151;font-family:monospace;font-style:italic;font-weight:600;margin:0!important}.swagger-ui .checkbox input[type=checkbox]{display:none}.swagger-ui .checkbox input[type=checkbox]+label>.item{background:#e8e8e8;border-radius:1px;box-shadow:0 0 0 2px #e8e8e8;cursor:pointer;display:inline-block;flex:none;height:16px;margin:0 8px 0 0;padding:5px;position:relative;top:3px;width:16px}.swagger-ui .checkbox input[type=checkbox]+label>.item:active{transform:scale(.9)}.swagger-ui .checkbox input[type=checkbox]:checked+label>.item{background:#e8e8e8 url('data:image/svg+xml;charset=utf-8,') 50% no-repeat}.swagger-ui .dialog-ux{inset:0;position:fixed;z-index:9999}.swagger-ui .dialog-ux .backdrop-ux{background:#000c;inset:0;position:fixed}.swagger-ui .dialog-ux .modal-ux{background:#fff;border:1px solid #ebebeb;border-radius:4px;box-shadow:0 10px 30px #0003;left:50%;max-width:650px;min-width:300px;position:absolute;top:50%;transform:translate(-50%,-50%);width:100%;z-index:9999}.swagger-ui .dialog-ux .modal-ux-content{max-height:540px;overflow-y:auto;padding:20px}.swagger-ui .dialog-ux .modal-ux-content p{color:#41444e;color:#3b4151;font-family:sans-serif;font-size:12px;margin:0 0 5px}.swagger-ui .dialog-ux .modal-ux-content h4{color:#3b4151;font-family:sans-serif;font-size:18px;font-weight:600;margin:15px 0 0}.swagger-ui .dialog-ux .modal-ux-header{align-items:center;border-bottom:1px solid #ebebeb;display:flex;padding:12px 0}.swagger-ui .dialog-ux .modal-ux-header .close-modal{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0 10px}.swagger-ui .dialog-ux .modal-ux-header h3{color:#3b4151;flex:1;font-family:sans-serif;font-size:20px;font-weight:600;margin:0;padding:0 20px}.swagger-ui .model{color:#3b4151;font-family:monospace;font-size:12px;font-weight:600}.swagger-ui .model .deprecated span,.swagger-ui .model .deprecated td{color:#a0a0a0!important}.swagger-ui .model .deprecated>td:first-of-type{-webkit-text-decoration:line-through;text-decoration:line-through}.swagger-ui .model-toggle{cursor:pointer;display:inline-block;font-size:10px;margin:auto .3em;position:relative;top:6px;transform:rotate(90deg);transform-origin:50% 50%;transition:transform .15s ease-in}.swagger-ui .model-toggle.collapsed{transform:rotate(0)}.swagger-ui .model-toggle:after{background:url('data:image/svg+xml;charset=utf-8,') 50% no-repeat;background-size:100%;content:"";display:block;height:20px;width:20px}.swagger-ui .model-jump-to-path{cursor:pointer;position:relative}.swagger-ui .model-jump-to-path .view-line-link{cursor:pointer;position:absolute;top:-.4em}.swagger-ui .model-title{position:relative}.swagger-ui .model-title:hover .model-hint{visibility:visible}.swagger-ui .model-hint{background:#000000b3;border-radius:4px;color:#ebebeb;padding:.1em .5em;position:absolute;top:-1.8em;visibility:hidden;white-space:nowrap}.swagger-ui .model p{margin:0 0 1em}.swagger-ui .model .property{color:#999;font-style:italic}.swagger-ui .model .property.primitive{color:#6b6b6b}.swagger-ui .model .external-docs,.swagger-ui table.model tr.description{color:#666;font-weight:400}.swagger-ui table.model tr.description td:first-child,.swagger-ui table.model tr.property-row.required td:first-child{font-weight:700}.swagger-ui table.model tr.property-row td{vertical-align:top}.swagger-ui table.model tr.property-row td:first-child{padding-right:.2em}.swagger-ui table.model tr.property-row .star{color:red}.swagger-ui table.model tr.extension{color:#777}.swagger-ui table.model tr.extension td:last-child{vertical-align:top}.swagger-ui table.model tr.external-docs td:first-child{font-weight:700}.swagger-ui table.model tr .renderedMarkdown p:first-child{margin-top:0}.swagger-ui section.models{border:1px solid rgba(59,65,81,.3);border-radius:4px;margin:30px 0}.swagger-ui section.models .pointer{cursor:pointer}.swagger-ui section.models.is-open{padding:0 0 20px}.swagger-ui section.models.is-open h4{border-bottom:1px solid rgba(59,65,81,.3);margin:0 0 5px}.swagger-ui section.models h4{align-items:center;color:#606060;cursor:pointer;display:flex;font-family:sans-serif;font-size:16px;margin:0;padding:10px 20px 10px 10px;transition:all .2s}.swagger-ui section.models h4 svg{transition:all .4s}.swagger-ui section.models h4 span{flex:1}.swagger-ui section.models h4:hover{background:#00000005}.swagger-ui section.models h5{color:#707070;font-family:sans-serif;font-size:16px;margin:0 0 10px}.swagger-ui section.models .model-jump-to-path{position:relative;top:5px}.swagger-ui section.models .model-container{background:#0000000d;border-radius:4px;margin:0 20px 15px;position:relative;transition:all .5s}.swagger-ui section.models .model-container:hover{background:#00000012}.swagger-ui section.models .model-container:first-of-type{margin:20px}.swagger-ui section.models .model-container:last-of-type{margin:0 20px}.swagger-ui section.models .model-container .models-jump-to-path{opacity:.65;position:absolute;right:5px;top:8px}.swagger-ui section.models .model-box{background:none}.swagger-ui .model-box{background:#0000001a;border-radius:4px;display:inline-block;padding:10px}.swagger-ui .model-box .model-jump-to-path{position:relative;top:4px}.swagger-ui .model-box.deprecated{opacity:.5}.swagger-ui .model-title{color:#505050;font-family:sans-serif;font-size:16px}.swagger-ui .model-title img{bottom:0;margin-left:1em;position:relative}.swagger-ui .model-deprecated-warning{color:#f93e3e;font-family:sans-serif;font-size:16px;font-weight:600;margin-right:1em}.swagger-ui span>span.model .brace-close{padding:0 0 0 10px}.swagger-ui .prop-name{display:inline-block;margin-right:1em}.swagger-ui .prop-type{color:#55a}.swagger-ui .prop-enum{display:block}.swagger-ui .prop-format{color:#606060}.swagger-ui .servers>label{color:#3b4151;font-family:sans-serif;font-size:12px;margin:-20px 15px 0 0}.swagger-ui .servers>label select{max-width:100%;min-width:130px;width:100%}.swagger-ui .servers h4.message{padding-bottom:2em}.swagger-ui .servers table tr{width:30em}.swagger-ui .servers table td{display:inline-block;max-width:15em;padding-bottom:10px;padding-top:10px;vertical-align:middle}.swagger-ui .servers table td:first-of-type{padding-right:1em}.swagger-ui .servers table td input{height:100%;width:100%}.swagger-ui .servers .computed-url{margin:2em 0}.swagger-ui .servers .computed-url code{display:inline-block;font-size:16px;margin:0 1em;padding:4px}.swagger-ui .servers-title{font-size:12px;font-weight:700}.swagger-ui .operation-servers h4.message{margin-bottom:2em}.swagger-ui table{border-collapse:collapse;padding:0 10px;width:100%}.swagger-ui table.model tbody tr td{padding:0;vertical-align:top}.swagger-ui table.model tbody tr td:first-of-type{padding:0 0 0 2em;width:174px}.swagger-ui table.headers td{color:#3b4151;font-family:monospace;font-size:12px;font-weight:600;vertical-align:middle}.swagger-ui table.headers .header-example{color:#999;font-style:italic}.swagger-ui table tbody tr td{padding:10px 0 0;vertical-align:top}.swagger-ui table tbody tr td:first-of-type{min-width:6em;padding:10px 0}.swagger-ui table thead tr td,.swagger-ui table thead tr th{border-bottom:1px solid rgba(59,65,81,.2);color:#3b4151;font-family:sans-serif;font-size:12px;font-weight:700;padding:12px 0;text-align:left}.swagger-ui .parameters-col_description{margin-bottom:2em;width:99%}.swagger-ui .parameters-col_description input{max-width:340px;width:100%}.swagger-ui .parameters-col_description select{border-width:1px}.swagger-ui .parameters-col_description .markdown p,.swagger-ui .parameters-col_description .renderedMarkdown p{margin:0}.swagger-ui .parameter__name{color:#3b4151;font-family:sans-serif;font-size:16px;font-weight:400;margin-right:.75em}.swagger-ui .parameter__name.required{font-weight:700}.swagger-ui .parameter__name.required span{color:red}.swagger-ui .parameter__name.required:after{color:#f009;content:"required";font-size:10px;padding:5px;position:relative;top:-6px}.swagger-ui .parameter__extension,.swagger-ui .parameter__in{color:gray;font-family:monospace;font-size:12px;font-style:italic;font-weight:600}.swagger-ui .parameter__deprecated{color:red;font-family:monospace;font-size:12px;font-style:italic;font-weight:600}.swagger-ui .parameter__empty_value_toggle{display:block;font-size:13px;padding-bottom:12px;padding-top:5px}.swagger-ui .parameter__empty_value_toggle input{margin-right:7px;width:auto}.swagger-ui .parameter__empty_value_toggle.disabled{opacity:.7}.swagger-ui .table-container{padding:20px}.swagger-ui .response-col_description{width:99%}.swagger-ui .response-col_description .markdown p,.swagger-ui .response-col_description .renderedMarkdown p{margin:0}.swagger-ui .response-col_links{min-width:6em}.swagger-ui .response__extension{color:gray;font-family:monospace;font-size:12px;font-style:italic;font-weight:600}.swagger-ui .topbar{background-color:#1b1b1b;padding:10px 0}.swagger-ui .topbar .topbar-wrapper{align-items:center;display:flex;flex-wrap:wrap;gap:10px}@media (max-width:550px){.swagger-ui .topbar .topbar-wrapper{align-items:start;flex-direction:column}}.swagger-ui .topbar a{align-items:center;color:#fff;display:flex;flex:1;font-family:sans-serif;font-size:1.5em;font-weight:700;max-width:300px;-webkit-text-decoration:none;text-decoration:none}.swagger-ui .topbar a span{margin:0;padding:0 10px}.swagger-ui .topbar .download-url-wrapper{display:flex;flex:3;justify-content:flex-end}.swagger-ui .topbar .download-url-wrapper input[type=text]{border:2px solid #62a03f;border-radius:4px 0 0 4px;margin:0;max-width:100%;outline:none;width:100%}.swagger-ui .topbar .download-url-wrapper .select-label{align-items:center;color:#f0f0f0;display:flex;margin:0;max-width:600px;width:100%}.swagger-ui .topbar .download-url-wrapper .select-label span{flex:1;font-size:16px;padding:0 10px 0 0;text-align:right}.swagger-ui .topbar .download-url-wrapper .select-label select{border:2px solid #62a03f;box-shadow:none;flex:2;outline:none;width:100%}.swagger-ui .topbar .download-url-wrapper .download-url-button{background:#62a03f;border:none;border-radius:0 4px 4px 0;color:#fff;font-family:sans-serif;font-size:16px;font-weight:700;padding:4px 30px}@media (max-width:550px){.swagger-ui .topbar .download-url-wrapper{width:100%}}.swagger-ui .info{margin:50px 0}.swagger-ui .info.failed-config{margin-left:auto;margin-right:auto;max-width:880px;text-align:center}.swagger-ui .info hgroup.main{margin:0 0 20px}.swagger-ui .info hgroup.main a{font-size:12px}.swagger-ui .info pre{font-size:14px}.swagger-ui .info li,.swagger-ui .info p,.swagger-ui .info table{color:#3b4151;font-family:sans-serif;font-size:14px}.swagger-ui .info h1,.swagger-ui .info h2,.swagger-ui .info h3,.swagger-ui .info h4,.swagger-ui .info h5{color:#3b4151;font-family:sans-serif}.swagger-ui .info a{color:#4990e2;font-family:sans-serif;font-size:14px;transition:all .4s}.swagger-ui .info a:hover{color:#1f69c0}.swagger-ui .info>div{margin:0 0 5px}.swagger-ui .info .base-url{color:#3b4151;font-family:monospace;font-size:12px;font-weight:600;margin:0}.swagger-ui .info .title{color:#3b4151;font-family:sans-serif;font-size:36px;margin:0}.swagger-ui .info .title small{background:#7d8492;border-radius:57px;display:inline-block;font-size:10px;margin:0 0 0 5px;padding:2px 4px;position:relative;top:-5px;vertical-align:super}.swagger-ui .info .title small.version-stamp{background-color:#89bf04}.swagger-ui .info .title small pre{color:#fff;font-family:sans-serif;margin:0;padding:0}.swagger-ui .auth-btn-wrapper{display:flex;justify-content:center;padding:10px 0}.swagger-ui .auth-btn-wrapper .btn-done{margin-right:1em}.swagger-ui .auth-wrapper{display:flex;flex:1;justify-content:flex-end}.swagger-ui .auth-wrapper .authorize{margin-left:10px;margin-right:10px;padding-right:20px}.swagger-ui .auth-container{border-bottom:1px solid #ebebeb;margin:0 0 10px;padding:10px 20px}.swagger-ui .auth-container:last-of-type{border:0;margin:0;padding:10px 20px}.swagger-ui .auth-container h4{margin:5px 0 15px!important}.swagger-ui .auth-container .wrapper{margin:0;padding:0}.swagger-ui .auth-container input[type=password],.swagger-ui .auth-container input[type=text]{min-width:230px}.swagger-ui .auth-container .errors{background-color:#fee;border-radius:4px;color:red;color:#3b4151;font-family:monospace;font-size:12px;font-weight:600;margin:1em;padding:10px}.swagger-ui .auth-container .errors b{margin-right:1em;text-transform:capitalize}.swagger-ui .scopes h2{color:#3b4151;font-family:sans-serif;font-size:14px}.swagger-ui .scopes h2 a{color:#4990e2;cursor:pointer;font-size:12px;padding-left:10px;-webkit-text-decoration:underline;text-decoration:underline}.swagger-ui .scope-def{padding:0 0 20px}.swagger-ui .errors-wrapper{animation:scaleUp .5s;background:#f93e3e1a;border:2px solid #f93e3e;border-radius:4px;margin:20px;padding:10px 20px}.swagger-ui .errors-wrapper .error-wrapper{margin:0 0 10px}.swagger-ui .errors-wrapper .errors h4{color:#3b4151;font-family:monospace;font-size:14px;font-weight:600;margin:0}.swagger-ui .errors-wrapper .errors small{color:#606060}.swagger-ui .errors-wrapper .errors .message{white-space:pre-line}.swagger-ui .errors-wrapper .errors .message.thrown{max-width:100%}.swagger-ui .errors-wrapper .errors .error-line{cursor:pointer;-webkit-text-decoration:underline;text-decoration:underline}.swagger-ui .errors-wrapper hgroup{align-items:center;display:flex}.swagger-ui .errors-wrapper hgroup h4{color:#3b4151;flex:1;font-family:sans-serif;font-size:20px;margin:0}@keyframes scaleUp{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.swagger-ui .Resizer.vertical.disabled{display:none}.swagger-ui .markdown p,.swagger-ui .markdown pre,.swagger-ui .renderedMarkdown p,.swagger-ui .renderedMarkdown pre{margin:1em auto;word-break:break-all;word-break:break-word}.swagger-ui .markdown pre,.swagger-ui .renderedMarkdown pre{background:none;color:#000;font-weight:400;padding:0;white-space:pre-wrap}.swagger-ui .markdown code,.swagger-ui .renderedMarkdown code{background:#0000000d;border-radius:4px;color:#9012fe;font-family:monospace;font-size:14px;font-weight:600;padding:5px 7px}.swagger-ui .markdown pre>code,.swagger-ui .renderedMarkdown pre>code{display:block}.swagger-ui .json-schema-2020-12{background-color:#0000000d;border-radius:4px;margin:0 20px 15px;padding:12px 0 12px 20px}.swagger-ui .json-schema-2020-12:first-of-type{margin:20px}.swagger-ui .json-schema-2020-12:last-of-type{margin:0 20px}.swagger-ui .json-schema-2020-12--embedded{background-color:inherit;padding-bottom:0;padding-left:inherit;padding-right:inherit;padding-top:0}.swagger-ui .json-schema-2020-12-body{border-left:1px dashed rgba(0,0,0,.1);margin:2px 0}.swagger-ui .json-schema-2020-12-body--collapsed{display:none}.swagger-ui .json-schema-2020-12-accordion{border:none;outline:none;padding-left:0}.swagger-ui .json-schema-2020-12-accordion__children{display:inline-block}.swagger-ui .json-schema-2020-12-accordion__icon{display:inline-block;height:18px;vertical-align:bottom;width:18px}.swagger-ui .json-schema-2020-12-accordion__icon--expanded{transform:rotate(-90deg);transform-origin:50% 50%;transition:transform .15s ease-in}.swagger-ui .json-schema-2020-12-accordion__icon--collapsed{transform:rotate(0);transform-origin:50% 50%;transition:transform .15s ease-in}.swagger-ui .json-schema-2020-12-accordion__icon svg{height:20px;width:20px}.swagger-ui .json-schema-2020-12-expand-deep-button{border:none;color:#505050;color:#afaeae;font-family:sans-serif;font-size:12px;padding-right:0}.swagger-ui .json-schema-2020-12-keyword{margin:5px 0}.swagger-ui .json-schema-2020-12-keyword__children{border-left:1px dashed rgba(0,0,0,.1);margin:0 0 0 20px;padding:0}.swagger-ui .json-schema-2020-12-keyword__children--collapsed{display:none}.swagger-ui .json-schema-2020-12-keyword__name{font-size:12px;font-weight:700;margin-left:20px}.swagger-ui .json-schema-2020-12-keyword__name--primary{color:#3b4151;font-style:normal}.swagger-ui .json-schema-2020-12-keyword__name--secondary{color:#6b6b6b;font-style:italic}.swagger-ui .json-schema-2020-12-keyword__value{color:#6b6b6b;font-size:12px;font-style:italic;font-weight:400}.swagger-ui .json-schema-2020-12-keyword__value--primary{color:#3b4151;font-style:normal}.swagger-ui .json-schema-2020-12-keyword__value--secondary{color:#6b6b6b;font-style:italic}.swagger-ui .json-schema-2020-12-keyword__value--const,.swagger-ui .json-schema-2020-12-keyword__value--warning{border:1px dashed #6b6b6b;border-radius:4px;color:#3b4151;color:#6b6b6b;display:inline-block;font-family:monospace;font-style:normal;font-weight:600;line-height:1.5;margin-left:10px;padding:1px 4px}.swagger-ui .json-schema-2020-12-keyword__value--warning{border:1px dashed red;color:red}.swagger-ui .json-schema-2020-12-keyword__name--secondary+.json-schema-2020-12-keyword__value--secondary:before{content:"="}.swagger-ui .json-schema-2020-12__attribute{color:#3b4151;font-family:monospace;font-size:12px;padding-left:10px;text-transform:lowercase}.swagger-ui .json-schema-2020-12__attribute--primary{color:#55a}.swagger-ui .json-schema-2020-12__attribute--muted{color:gray}.swagger-ui .json-schema-2020-12__attribute--warning{color:red}.swagger-ui .json-schema-2020-12-keyword--\$vocabulary ul{border-left:1px dashed rgba(0,0,0,.1);margin:0 0 0 20px}.swagger-ui .json-schema-2020-12-\$vocabulary-uri{margin-left:35px}.swagger-ui .json-schema-2020-12-\$vocabulary-uri--disabled{-webkit-text-decoration:line-through;text-decoration:line-through}.swagger-ui .json-schema-2020-12-keyword--description{color:#6b6b6b;font-size:12px;margin-left:20px}.swagger-ui .json-schema-2020-12-keyword--description p{margin:0}.swagger-ui .json-schema-2020-12__title{color:#505050;display:inline-block;font-family:sans-serif;font-size:12px;font-weight:700;line-height:normal}.swagger-ui .json-schema-2020-12__title .json-schema-2020-12-keyword__name{margin:0}.swagger-ui .json-schema-2020-12-property{margin:7px 0}.swagger-ui .json-schema-2020-12-property .json-schema-2020-12__title{color:#3b4151;font-family:monospace;font-size:12px;font-weight:600;vertical-align:middle}.swagger-ui .json-schema-2020-12-keyword--properties>ul{border:none;margin:0;padding:0}.swagger-ui .json-schema-2020-12-property{list-style-type:none}.swagger-ui .json-schema-2020-12-property--required>.json-schema-2020-12:first-of-type>.json-schema-2020-12-head .json-schema-2020-12__title:after{color:red;content:"*";font-weight:700}.swagger-ui .json-schema-2020-12-keyword--patternProperties ul{border:none;margin:0;padding:0}.swagger-ui .json-schema-2020-12-keyword--patternProperties .json-schema-2020-12__title:first-of-type:after,.swagger-ui .json-schema-2020-12-keyword--patternProperties .json-schema-2020-12__title:first-of-type:before{color:#55a;content:"/"}.swagger-ui .json-schema-2020-12-keyword--enum>ul{display:inline-block;margin:0;padding:0}.swagger-ui .json-schema-2020-12-keyword--enum>ul li{display:inline;list-style-type:none}.swagger-ui .json-schema-2020-12__constraint{background-color:#805ad5;border-radius:4px;color:#3b4151;color:#fff;font-family:monospace;font-weight:600;line-height:1.5;margin-left:10px;padding:1px 3px}.swagger-ui .json-schema-2020-12__constraint--string{background-color:#d69e2e;color:#fff}.swagger-ui .json-schema-2020-12-keyword--dependentRequired>ul{display:inline-block;margin:0;padding:0}.swagger-ui .json-schema-2020-12-keyword--dependentRequired>ul li{display:inline;list-style-type:none}.swagger-ui .model-box .json-schema-2020-12:not(.json-schema-2020-12--embedded)>.json-schema-2020-12-head .json-schema-2020-12__title:first-of-type{font-size:16px}.swagger-ui .model-box>.json-schema-2020-12{margin:0}.swagger-ui .model-box .json-schema-2020-12{background-color:transparent;padding:0}.swagger-ui .model-box .json-schema-2020-12-accordion,.swagger-ui .model-box .json-schema-2020-12-expand-deep-button{background-color:transparent}.swagger-ui .models .json-schema-2020-12:not(.json-schema-2020-12--embedded)>.json-schema-2020-12-head .json-schema-2020-12__title:first-of-type{font-size:16px}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:#fff}.swagger-back-link{color:#1f69c0;text-decoration:none;position:absolute;top:1rem;right:1.5rem;display:flex;align-items:center}.swagger-back-link:hover{text-decoration:underline}.swagger-back-link svg{color:inherit;fill:currentcolor;margin-right:.5rem}@media (prefers-color-scheme: dark){body{background:#1e1e1e}.swagger-ui,.swagger-back-link{filter:invert(88%) hue-rotate(180deg)}.swagger-ui .microlight{filter:invert(100%) hue-rotate(180deg)}} diff --git a/data/gitea/public/assets/css/theme-gitea-auto.css b/data/gitea/public/assets/css/theme-gitea-auto.css new file mode 100644 index 0000000..fa18e7c --- /dev/null +++ b/data/gitea/public/assets/css/theme-gitea-auto.css @@ -0,0 +1 @@ +@media (prefers-color-scheme: light){.chroma .bp{color:#999}.chroma .c,.chroma .c1,.chroma .ch{color:#6a737d}.chroma .cm{color:#998}.chroma .cp{color:#109295}.chroma .cpf{color:#4c4dbc}.chroma .cs{color:#999}.chroma .dl{color:#106303}.chroma .gd{color:#000;background-color:#fdd}.chroma .ge{color:#000}.chroma .gh{color:#999}.chroma .gi{color:#000;background-color:#dfd}.chroma .go{color:#888}.chroma .gp{color:#555}.chroma .gr,.chroma .gt{color:#a00}.chroma .gu{color:#aaa}.chroma .il{color:#099}.chroma .k,.chroma .kc,.chroma .kd,.chroma .kn,.chroma .kp,.chroma .kr{color:#d73a49}.chroma .kt{color:#458}.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:#099}.chroma .na{color:#d73a49}.chroma .nb{color:#005cc5}.chroma .nc{color:#458}.chroma .nd{color:#3c5d5d}.chroma .ne{color:#900}.chroma .nf{color:#005cc5}.chroma .ni{color:#6f42c1}.chroma .nl{color:#900}.chroma .nn{color:#555}.chroma .no{color:teal}.chroma .nt{color:#22863a}.chroma .nv{color:teal}.chroma .nx{color:#24292e}.chroma .o,.chroma .ow{color:#d73a49}.chroma .s,.chroma .s1,.chroma .s2{color:#106303}.chroma .sa{color:#cc7a00}.chroma .sb{color:#106303}.chroma .sc{color:#cc7a00}.chroma .sd{color:#106303}.chroma .se{color:#940}.chroma .sh{color:#106303}.chroma .si{color:#cc7a00}.chroma .sr{color:#4c4dbc}.chroma .ss{color:#940}.chroma .sx{color:#106303}.chroma .vc,.chroma .vg,.chroma .vi{color:teal}.chroma .w{color:#bbb}}@media (prefers-color-scheme: light){:root{--is-dark-theme: false;--color-primary: #4183c4;--color-primary-contrast: #ffffff;--color-primary-dark-1: #3876b3;--color-primary-dark-2: #31699f;--color-primary-dark-3: #2b5c8b;--color-primary-dark-4: #254f77;--color-primary-dark-5: #193450;--color-primary-dark-6: #0c1a28;--color-primary-dark-7: #04080c;--color-primary-light-1: #548fca;--color-primary-light-2: #679cd0;--color-primary-light-3: #7aa8d6;--color-primary-light-4: #8db5dc;--color-primary-light-5: #b3cde7;--color-primary-light-6: #d9e6f3;--color-primary-light-7: #f4f8fb;--color-primary-alpha-10: #4183c419;--color-primary-alpha-20: #4183c433;--color-primary-alpha-30: #4183c44b;--color-primary-alpha-40: #4183c466;--color-primary-alpha-50: #4183c480;--color-primary-alpha-60: #4183c499;--color-primary-alpha-70: #4183c4b3;--color-primary-alpha-80: #4183c4cc;--color-primary-alpha-90: #4183c4e1;--color-primary-hover: var(--color-primary-dark-1);--color-primary-active: var(--color-primary-dark-2);--color-secondary: #d0d7de;--color-secondary-dark-1: #c7ced5;--color-secondary-dark-2: #b9c0c7;--color-secondary-dark-3: #99a0a7;--color-secondary-dark-4: #899097;--color-secondary-dark-5: #7a8188;--color-secondary-dark-6: #6a7178;--color-secondary-dark-7: #5b6269;--color-secondary-dark-8: #4b5259;--color-secondary-dark-9: #3c434a;--color-secondary-dark-10: #2c333a;--color-secondary-dark-11: #1d242b;--color-secondary-dark-12: #0d141b;--color-secondary-dark-13: #00040b;--color-secondary-light-1: #dee5ec;--color-secondary-light-2: #e4ebf2;--color-secondary-light-3: #ebf2f9;--color-secondary-light-4: #f1f8ff;--color-secondary-alpha-10: #d0d7de19;--color-secondary-alpha-20: #d0d7de33;--color-secondary-alpha-30: #d0d7de4b;--color-secondary-alpha-40: #d0d7de66;--color-secondary-alpha-50: #d0d7de80;--color-secondary-alpha-60: #d0d7de99;--color-secondary-alpha-70: #d0d7deb3;--color-secondary-alpha-80: #d0d7decc;--color-secondary-alpha-90: #d0d7dee1;--color-secondary-button: var(--color-secondary-dark-4);--color-secondary-hover: var(--color-secondary-dark-5);--color-secondary-active: var(--color-secondary-dark-6);--color-console-fg: #f7f8f9;--color-console-fg-subtle: #bdc4cc;--color-console-bg: #171b1e;--color-console-border: #2e353b;--color-console-hover-bg: #272d33;--color-console-active-bg: #2e353b;--color-console-menu-bg: #262b31;--color-console-menu-border: #414b55;--color-red: #db2828;--color-orange: #f2711c;--color-yellow: #fbbd08;--color-olive: #b5cc18;--color-green: #21ba45;--color-teal: #00b5ad;--color-blue: #2185d0;--color-violet: #6435c9;--color-purple: #a333c8;--color-pink: #e03997;--color-brown: #a5673f;--color-black: #1d2328;--color-red-light: #e45e5e;--color-orange-light: #f59555;--color-yellow-light: #fcce46;--color-olive-light: #d3e942;--color-green-light: #46de6a;--color-teal-light: #08fff4;--color-blue-light: #51a5e3;--color-violet-light: #8b67d7;--color-purple-light: #bb64d8;--color-pink-light: #e86bb1;--color-brown-light: #c58b66;--color-black-light: #4b5b68;--color-red-dark-1: #c82121;--color-orange-dark-1: #e6630d;--color-yellow-dark-1: #e5ac04;--color-olive-dark-1: #a3b816;--color-green-dark-1: #1ea73e;--color-teal-dark-1: #00a39c;--color-blue-dark-1: #1e78bb;--color-violet-dark-1: #5a30b5;--color-purple-dark-1: #932eb4;--color-pink-dark-1: #db228a;--color-brown-dark-1: #955d39;--color-black-dark-1: #2c3339;--color-red-dark-2: #b11e1e;--color-orange-dark-2: #cc580c;--color-yellow-dark-2: #cc9903;--color-olive-dark-2: #91a313;--color-green-dark-2: #1a9537;--color-teal-dark-2: #00918a;--color-blue-dark-2: #1a6aa6;--color-violet-dark-2: #502aa1;--color-purple-dark-2: #8229a0;--color-pink-dark-2: #c21e7b;--color-brown-dark-2: #845232;--color-black-dark-2: #131619;--color-ansi-black: #1e2327;--color-ansi-red: #cc4848;--color-ansi-green: #87ab63;--color-ansi-yellow: #cc9903;--color-ansi-blue: #3a8ac6;--color-ansi-magenta: #d22e8b;--color-ansi-cyan: #00918a;--color-ansi-white: var(--color-console-fg-subtle);--color-ansi-bright-black: #46494d;--color-ansi-bright-red: #d15a5a;--color-ansi-bright-green: #93b373;--color-ansi-bright-yellow: #eaaf03;--color-ansi-bright-blue: #4e96cc;--color-ansi-bright-magenta: #d74397;--color-ansi-bright-cyan: #00b6ad;--color-ansi-bright-white: var(--color-console-fg);--color-grey: #697077;--color-grey-light: #7c838a;--color-gold: #a1882b;--color-white: #ffffff;--color-diff-added-linenum-bg: #d1f8d9;--color-diff-added-row-bg: #e6ffed;--color-diff-added-row-border: #e6ffed;--color-diff-added-word-bg: #acf2bd;--color-diff-moved-row-bg: #f1f8d1;--color-diff-moved-row-border: #d0e27f;--color-diff-removed-linenum-bg: #ffcecb;--color-diff-removed-row-bg: #ffeef0;--color-diff-removed-row-border: #f1c0c0;--color-diff-removed-word-bg: #fdb8c0;--color-diff-inactive: #f0f2f4;--color-error-border: #e0b4b4;--color-error-bg: #fff6f6;--color-error-bg-active: #fbb;--color-error-bg-hover: #fdd;--color-error-text: #9f3a38;--color-success-border: #a3c293;--color-success-bg: #fcfff5;--color-success-text: #2c662d;--color-warning-border: #c9ba9b;--color-warning-bg: #fffaf3;--color-warning-text: #573a08;--color-info-border: #a9d5de;--color-info-bg: #f8ffff;--color-info-text: #276f86;--color-red-badge: #db2828;--color-red-badge-bg: #db28281a;--color-red-badge-hover-bg: #db28284d;--color-green-badge: #21ba45;--color-green-badge-bg: #21ba451a;--color-green-badge-hover-bg: #21ba454d;--color-yellow-badge: #fbbd08;--color-yellow-badge-bg: #fbbd081a;--color-yellow-badge-hover-bg: #fbbd084d;--color-orange-badge: #f2711c;--color-orange-badge-bg: #f2711c1a;--color-orange-badge-hover-bg: #f2711c4d;--color-git: #f05133;--color-body: #ffffff;--color-box-header: #f1f3f5;--color-box-body: #ffffff;--color-box-body-highlight: #ecf5fd;--color-text-dark: #01050a;--color-text: #181c21;--color-text-light: #30363b;--color-text-light-1: #40474d;--color-text-light-2: #5b6167;--color-text-light-3: #747c84;--color-footer: var(--color-nav-bg);--color-timeline: #d0d7de;--color-input-text: var(--color-text-dark);--color-input-background: #fff;--color-input-toggle-background: #d0d7de;--color-input-border: var(--color-secondary);--color-input-border-hover: var(--color-secondary-dark-1);--color-light: #00001706;--color-light-mimic-enabled: rgba(0, 0, 0, calc(6 / 255 * 222 / 255 / var(--opacity-disabled)));--color-light-border: #0000171d;--color-hover: #00001708;--color-active: #00001714;--color-menu: #f8f9fb;--color-card: #f8f9fb;--color-markup-table-row: #0030600a;--color-markup-code-block: #00306010;--color-markup-code-inline: #00306012;--color-button: #f8f9fb;--color-code-bg: #fafdff;--color-shadow: #00001726;--color-secondary-bg: #f2f5f8;--color-expand-button: #cfe8fa;--color-placeholder-text: var(--color-text-light-3);--color-editor-line-highlight: var(--color-primary-light-6);--color-project-board-bg: var(--color-secondary-light-4);--color-caret: var(--color-text-dark);--color-reaction-bg: #0000170a;--color-reaction-hover-bg: var(--color-primary-light-5);--color-reaction-active-bg: var(--color-primary-light-6);--color-tooltip-text: #fbfdff;--color-tooltip-bg: #000017f0;--color-nav-bg: #f6f7fa;--color-nav-hover-bg: var(--color-secondary-light-1);--color-nav-text: var(--color-text);--color-secondary-nav-bg: #f9fafb;--color-label-text: var(--color-text);--color-label-bg: #949da64b;--color-label-hover-bg: #949da6a0;--color-label-active-bg: #949da6ff;--color-accent: var(--color-primary-light-1);--color-small-accent: var(--color-primary-light-6);--color-highlight-fg: #eed200;--color-highlight-bg: #fffbdd;--color-overlay-backdrop: #080808c0;accent-color:var(--color-accent);color-scheme:light}}@media (prefers-color-scheme: dark){.chroma .bp{color:#fabd2f}.chroma .c,.chroma .c1,.chroma .ch,.chroma .cm{color:#777e94}.chroma .cp{color:#8ec07c}.chroma .cpf{color:#649bc4}.chroma .cs{color:#9075cd}.chroma .dl{color:#649bc4}.chroma .gd{color:#fff;background-color:#5f3737}.chroma .ge{color:#ddee30}.chroma .gh{color:#ffaa10}.chroma .gi{color:#fff;background-color:#3a523a}.chroma .go{color:#777e94}.chroma .gp{color:#ebdbb2}.chroma .gr{color:#f43}.chroma .gs{color:#ebdbb2}.chroma .gt{color:#ff7540}.chroma .gu{color:#b8bb26}.chroma .il{color:#649bc4}.chroma .k{color:#ff7540}.chroma .kc{color:#649bc4}.chroma .kd{color:#ff7540}.chroma .kn{color:#ffaa10}.chroma .kp{color:#5f8700}.chroma .kr{color:#ff7540}.chroma .kt{color:#ff7b72}.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:#649bc4}.chroma .n{color:#c9d1d9}.chroma .na,.chroma .nb{color:#fabd2f}.chroma .nc{color:#ffaa10}.chroma .nd{color:#8ec07c}.chroma .ne{color:#ff7540}.chroma .nf,.chroma .ni{color:#fabd2f}.chroma .nl{color:#ff7540}.chroma .nn{color:#c9d1d9}.chroma .no{color:#649bc4}.chroma .nt{color:#ff7540}.chroma .nv{color:#ebdbb2}.chroma .nx{color:#b6bac5}.chroma .o{color:#ff7540}.chroma .ow{color:#5f8700}.chroma .p{color:#d2d4db}.chroma .s,.chroma .s1,.chroma .s2{color:#b8bb26}.chroma .sa{color:#ffaa10}.chroma .sb{color:#b8bb26}.chroma .sc{color:#ffaa10}.chroma .sd{color:#b8bb26}.chroma .se{color:#ff8540}.chroma .sh{color:#b8bb26}.chroma .si{color:#ffaa10}.chroma .sr{color:#9075cd}.chroma .ss{color:#ff8540}.chroma .sx{color:#ffaa10}.chroma .vc,.chroma .vg,.chroma .vi{color:#649bee}.chroma .w{color:#7f8699}}@media (prefers-color-scheme: dark){.CodeMirror.cm-s-default .cm-property,.CodeMirror.cm-s-paper .cm-property{color:#a0cc75}.CodeMirror.cm-s-default .cm-header,.CodeMirror.cm-s-paper .cm-header{color:#9daccc}.CodeMirror.cm-s-default .cm-quote,.CodeMirror.cm-s-paper .cm-quote{color:#090}.CodeMirror.cm-s-default .cm-keyword,.CodeMirror.cm-s-paper .cm-keyword{color:#cc8a61}.CodeMirror.cm-s-default .cm-atom,.CodeMirror.cm-s-paper .cm-atom{color:#ef5e77}.CodeMirror.cm-s-default .cm-number,.CodeMirror.cm-s-paper .cm-number{color:#ff5656}.CodeMirror.cm-s-default .cm-def,.CodeMirror.cm-s-paper .cm-def{color:#e4e4e4}.CodeMirror.cm-s-default .cm-variable-2,.CodeMirror.cm-s-paper .cm-variable-2{color:#00bdbf}.CodeMirror.cm-s-default .cm-variable-3,.CodeMirror.cm-s-paper .cm-variable-3{color:#085}.CodeMirror.cm-s-default .cm-comment,.CodeMirror.cm-s-paper .cm-comment{color:#8e9ab3}.CodeMirror.cm-s-default .cm-string,.CodeMirror.cm-s-paper .cm-string{color:#a77272}.CodeMirror.cm-s-default .cm-string-2,.CodeMirror.cm-s-paper .cm-string-2{color:#f50}.CodeMirror.cm-s-default .cm-meta,.CodeMirror.cm-s-paper .cm-meta,.CodeMirror.cm-s-default .cm-qualifier,.CodeMirror.cm-s-paper .cm-qualifier{color:#ffb176}.CodeMirror.cm-s-default .cm-builtin,.CodeMirror.cm-s-paper .cm-builtin{color:#b7c951}.CodeMirror.cm-s-default .cm-bracket,.CodeMirror.cm-s-paper .cm-bracket{color:#997}.CodeMirror.cm-s-default .cm-tag,.CodeMirror.cm-s-paper .cm-tag{color:#f1d273}.CodeMirror.cm-s-default .cm-attribute,.CodeMirror.cm-s-paper .cm-attribute{color:#bfcc70}.CodeMirror.cm-s-default .cm-hr,.CodeMirror.cm-s-paper .cm-hr{color:#999}.CodeMirror.cm-s-default .cm-url,.CodeMirror.cm-s-paper .cm-url{color:#c5cfd0}.CodeMirror.cm-s-default .cm-link,.CodeMirror.cm-s-paper .cm-link{color:#d8c792}.CodeMirror.cm-s-default .cm-error,.CodeMirror.cm-s-paper .cm-error{color:#dbdbeb}}@media (prefers-color-scheme: dark){:root{--is-dark-theme: true;--color-primary: #4183c4;--color-primary-contrast: #ffffff;--color-primary-dark-1: #548fca;--color-primary-dark-2: #679cd0;--color-primary-dark-3: #7aa8d6;--color-primary-dark-4: #8db5dc;--color-primary-dark-5: #b3cde7;--color-primary-dark-6: #d9e6f3;--color-primary-dark-7: #f4f8fb;--color-primary-light-1: #3876b3;--color-primary-light-2: #31699f;--color-primary-light-3: #2b5c8b;--color-primary-light-4: #254f77;--color-primary-light-5: #193450;--color-primary-light-6: #0c1a28;--color-primary-light-7: #04080c;--color-primary-alpha-10: #4183c419;--color-primary-alpha-20: #4183c433;--color-primary-alpha-30: #4183c44b;--color-primary-alpha-40: #4183c466;--color-primary-alpha-50: #4183c480;--color-primary-alpha-60: #4183c499;--color-primary-alpha-70: #4183c4b3;--color-primary-alpha-80: #4183c4cc;--color-primary-alpha-90: #4183c4e1;--color-primary-hover: var(--color-primary-light-1);--color-primary-active: var(--color-primary-light-2);--color-secondary: #3b444c;--color-secondary-dark-1: #414b54;--color-secondary-dark-2: #49545f;--color-secondary-dark-3: #576471;--color-secondary-dark-4: #677685;--color-secondary-dark-5: #758594;--color-secondary-dark-6: #8392a0;--color-secondary-dark-7: #929eab;--color-secondary-dark-8: #a2acb7;--color-secondary-dark-9: #a9b3bd;--color-secondary-dark-10: #b7bfc7;--color-secondary-dark-11: #c5cbd2;--color-secondary-dark-12: #cfd4da;--color-secondary-dark-13: #d2d7dc;--color-secondary-light-1: #313940;--color-secondary-light-2: #292f35;--color-secondary-light-3: #1d2226;--color-secondary-light-4: #171b1e;--color-secondary-alpha-10: #3b444c19;--color-secondary-alpha-20: #3b444c33;--color-secondary-alpha-30: #3b444c4b;--color-secondary-alpha-40: #3b444c66;--color-secondary-alpha-50: #3b444c80;--color-secondary-alpha-60: #3b444c99;--color-secondary-alpha-70: #3b444cb3;--color-secondary-alpha-80: #3b444ccc;--color-secondary-alpha-90: #3b444ce1;--color-secondary-button: var(--color-secondary-dark-4);--color-secondary-hover: var(--color-secondary-dark-3);--color-secondary-active: var(--color-secondary-dark-2);--color-console-fg: #f7f8f9;--color-console-fg-subtle: #bdc4cc;--color-console-bg: #171b1e;--color-console-border: #2e353b;--color-console-hover-bg: #272d33;--color-console-active-bg: #2e353b;--color-console-menu-bg: #262b31;--color-console-menu-border: #414b55;--color-red: #cc4848;--color-orange: #cc580c;--color-yellow: #cc9903;--color-olive: #91a313;--color-green: #87ab63;--color-teal: #00918a;--color-blue: #3a8ac6;--color-violet: #906ae1;--color-purple: #b259d0;--color-pink: #d22e8b;--color-brown: #a47252;--color-black: #1d2328;--color-red-light: #d15a5a;--color-orange-light: #f6a066;--color-yellow-light: #eaaf03;--color-olive-light: #abc016;--color-green-light: #93b373;--color-teal-light: #00b6ad;--color-blue-light: #4e96cc;--color-violet-light: #9b79e4;--color-purple-light: #ba6ad5;--color-pink-light: #d74397;--color-brown-light: #b08061;--color-black-light: #424851;--color-red-dark-1: #c23636;--color-orange-dark-1: #f38236;--color-yellow-dark-1: #b88a03;--color-olive-dark-1: #839311;--color-green-dark-1: #7a9e55;--color-teal-dark-1: #00837c;--color-blue-dark-1: #347cb3;--color-violet-dark-1: #7b4edb;--color-purple-dark-1: #a742c9;--color-pink-dark-1: #be297d;--color-brown-dark-1: #94674a;--color-black-dark-1: #292e38;--color-red-dark-2: #ad3030;--color-orange-dark-2: #f16e17;--color-yellow-dark-2: #a37a02;--color-olive-dark-2: #74820f;--color-green-dark-2: #6c8c4c;--color-teal-dark-2: #00746e;--color-blue-dark-2: #2e6e9f;--color-violet-dark-2: #6733d6;--color-purple-dark-2: #9834b9;--color-pink-dark-2: #a9246f;--color-brown-dark-2: #835b42;--color-black-dark-2: #272930;--color-ansi-black: #1e2327;--color-ansi-red: #cc4848;--color-ansi-green: #87ab63;--color-ansi-yellow: #cc9903;--color-ansi-blue: #3a8ac6;--color-ansi-magenta: #d22e8b;--color-ansi-cyan: #00918a;--color-ansi-white: var(--color-console-fg-subtle);--color-ansi-bright-black: #424851;--color-ansi-bright-red: #d15a5a;--color-ansi-bright-green: #93b373;--color-ansi-bright-yellow: #eaaf03;--color-ansi-bright-blue: #4e96cc;--color-ansi-bright-magenta: #d74397;--color-ansi-bright-cyan: #00b6ad;--color-ansi-bright-white: var(--color-console-fg);--color-grey: #384149;--color-grey-light: #818f9e;--color-gold: #b1983b;--color-white: #ffffff;--color-diff-added-linenum-bg: #274227;--color-diff-added-row-bg: #203224;--color-diff-added-row-border: #314a37;--color-diff-added-word-bg: #3c653c;--color-diff-moved-row-bg: #818044;--color-diff-moved-row-border: #bcca6f;--color-diff-removed-linenum-bg: #482121;--color-diff-removed-row-bg: #301e1e;--color-diff-removed-row-border: #634343;--color-diff-removed-word-bg: #6f3333;--color-diff-inactive: #22282d;--color-error-border: #a04141;--color-error-bg: #522;--color-error-bg-active: #744;--color-error-bg-hover: #633;--color-error-text: #f9cbcb;--color-success-border: #458a57;--color-success-bg: #284034;--color-success-text: #6cc664;--color-warning-border: #bb9d00;--color-warning-bg: #3a3a30;--color-warning-text: #fbbd08;--color-info-border: #306090;--color-info-bg: #26354c;--color-info-text: #38a8e8;--color-red-badge: #db2828;--color-red-badge-bg: #db28281a;--color-red-badge-hover-bg: #db28284d;--color-green-badge: #21ba45;--color-green-badge-bg: #21ba451a;--color-green-badge-hover-bg: #21ba454d;--color-yellow-badge: #fbbd08;--color-yellow-badge-bg: #fbbd081a;--color-yellow-badge-hover-bg: #fbbd084d;--color-orange-badge: #f2711c;--color-orange-badge-bg: #f2711c1a;--color-orange-badge-hover-bg: #f2711c4d;--color-git: #f05133;--color-body: #1b1f23;--color-box-header: #1a1d1f;--color-box-body: #14171a;--color-box-body-highlight: #1e2226;--color-text-dark: #f7f8f9;--color-text: #d0d5da;--color-text-light: #bcc3cb;--color-text-light-1: #a5afb9;--color-text-light-2: #8f9ba8;--color-text-light-3: #788797;--color-footer: var(--color-nav-bg);--color-timeline: #343c44;--color-input-text: var(--color-text-dark);--color-input-background: #171a1e;--color-input-toggle-background: #2e353c;--color-input-border: var(--color-secondary);--color-input-border-hover: var(--color-secondary-dark-1);--color-light: #00001728;--color-light-mimic-enabled: rgba(0, 0, 0, calc(40 / 255 * 222 / 255 / var(--opacity-disabled)));--color-light-border: #e8f3ff28;--color-hover: #e8f3ff19;--color-active: #e8f3ff24;--color-menu: #171a1e;--color-card: #171a1e;--color-markup-table-row: #e8f3ff0f;--color-markup-code-block: #e8f3ff12;--color-markup-code-inline: #e8f3ff28;--color-button: #171a1e;--color-code-bg: #14171a;--color-shadow: #00001758;--color-secondary-bg: #2a3137;--color-expand-button: #2f363d;--color-placeholder-text: var(--color-text-light-3);--color-editor-line-highlight: var(--color-primary-light-5);--color-project-board-bg: var(--color-secondary-light-2);--color-caret: var(--color-text);--color-reaction-bg: #e8f3ff12;--color-reaction-hover-bg: var(--color-primary-light-4);--color-reaction-active-bg: var(--color-primary-light-5);--color-tooltip-text: #f9fafb;--color-tooltip-bg: #000b17f0;--color-nav-bg: #16191d;--color-nav-hover-bg: var(--color-secondary-light-1);--color-nav-text: var(--color-text);--color-secondary-nav-bg: #181c20;--color-label-text: var(--color-text);--color-label-bg: #7282924b;--color-label-hover-bg: #728292a0;--color-label-active-bg: #728292ff;--color-accent: var(--color-primary-light-1);--color-small-accent: var(--color-primary-light-5);--color-highlight-fg: #87651e;--color-highlight-bg: #352c1c;--color-overlay-backdrop: #080808c0;accent-color:var(--color-accent);color-scheme:dark}.emoji[aria-label="check mark"],.emoji[aria-label="currency exchange"],.emoji[aria-label="TOP arrow"],.emoji[aria-label="END arrow"],.emoji[aria-label="ON! arrow"],.emoji[aria-label="SOON arrow"],.emoji[aria-label="heavy dollar sign"],.emoji[aria-label=copyright],.emoji[aria-label=registered],.emoji[aria-label="trade mark"],.emoji[aria-label=multiply],.emoji[aria-label=plus],.emoji[aria-label=minus],.emoji[aria-label=divide],.emoji[aria-label="curly loop"],.emoji[aria-label="double curly loop"],.emoji[aria-label="wavy dash"],.emoji[aria-label="paw prints"],.emoji[aria-label="musical note"],.emoji[aria-label="musical notes"]{filter:invert(100%) hue-rotate(180deg)}} diff --git a/data/gitea/public/assets/css/theme-gitea-dark-protanopia-deuteranopia.css b/data/gitea/public/assets/css/theme-gitea-dark-protanopia-deuteranopia.css new file mode 100644 index 0000000..5d440de --- /dev/null +++ b/data/gitea/public/assets/css/theme-gitea-dark-protanopia-deuteranopia.css @@ -0,0 +1 @@ +.chroma .bp{color:#fabd2f}.chroma .c,.chroma .c1,.chroma .ch,.chroma .cm{color:#777e94}.chroma .cp{color:#8ec07c}.chroma .cpf{color:#649bc4}.chroma .cs{color:#9075cd}.chroma .dl{color:#649bc4}.chroma .gd{color:#fff;background-color:#5f3737}.chroma .ge{color:#ddee30}.chroma .gh{color:#ffaa10}.chroma .gi{color:#fff;background-color:#3a523a}.chroma .go{color:#777e94}.chroma .gp{color:#ebdbb2}.chroma .gr{color:#f43}.chroma .gs{color:#ebdbb2}.chroma .gt{color:#ff7540}.chroma .gu{color:#b8bb26}.chroma .il{color:#649bc4}.chroma .k{color:#ff7540}.chroma .kc{color:#649bc4}.chroma .kd{color:#ff7540}.chroma .kn{color:#ffaa10}.chroma .kp{color:#5f8700}.chroma .kr{color:#ff7540}.chroma .kt{color:#ff7b72}.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:#649bc4}.chroma .n{color:#c9d1d9}.chroma .na,.chroma .nb{color:#fabd2f}.chroma .nc{color:#ffaa10}.chroma .nd{color:#8ec07c}.chroma .ne{color:#ff7540}.chroma .nf,.chroma .ni{color:#fabd2f}.chroma .nl{color:#ff7540}.chroma .nn{color:#c9d1d9}.chroma .no{color:#649bc4}.chroma .nt{color:#ff7540}.chroma .nv{color:#ebdbb2}.chroma .nx{color:#b6bac5}.chroma .o{color:#ff7540}.chroma .ow{color:#5f8700}.chroma .p{color:#d2d4db}.chroma .s,.chroma .s1,.chroma .s2{color:#b8bb26}.chroma .sa{color:#ffaa10}.chroma .sb{color:#b8bb26}.chroma .sc{color:#ffaa10}.chroma .sd{color:#b8bb26}.chroma .se{color:#ff8540}.chroma .sh{color:#b8bb26}.chroma .si{color:#ffaa10}.chroma .sr{color:#9075cd}.chroma .ss{color:#ff8540}.chroma .sx{color:#ffaa10}.chroma .vc,.chroma .vg,.chroma .vi{color:#649bee}.chroma .w{color:#7f8699}.CodeMirror.cm-s-default .cm-property,.CodeMirror.cm-s-paper .cm-property{color:#a0cc75}.CodeMirror.cm-s-default .cm-header,.CodeMirror.cm-s-paper .cm-header{color:#9daccc}.CodeMirror.cm-s-default .cm-quote,.CodeMirror.cm-s-paper .cm-quote{color:#090}.CodeMirror.cm-s-default .cm-keyword,.CodeMirror.cm-s-paper .cm-keyword{color:#cc8a61}.CodeMirror.cm-s-default .cm-atom,.CodeMirror.cm-s-paper .cm-atom{color:#ef5e77}.CodeMirror.cm-s-default .cm-number,.CodeMirror.cm-s-paper .cm-number{color:#ff5656}.CodeMirror.cm-s-default .cm-def,.CodeMirror.cm-s-paper .cm-def{color:#e4e4e4}.CodeMirror.cm-s-default .cm-variable-2,.CodeMirror.cm-s-paper .cm-variable-2{color:#00bdbf}.CodeMirror.cm-s-default .cm-variable-3,.CodeMirror.cm-s-paper .cm-variable-3{color:#085}.CodeMirror.cm-s-default .cm-comment,.CodeMirror.cm-s-paper .cm-comment{color:#8e9ab3}.CodeMirror.cm-s-default .cm-string,.CodeMirror.cm-s-paper .cm-string{color:#a77272}.CodeMirror.cm-s-default .cm-string-2,.CodeMirror.cm-s-paper .cm-string-2{color:#f50}.CodeMirror.cm-s-default .cm-meta,.CodeMirror.cm-s-paper .cm-meta,.CodeMirror.cm-s-default .cm-qualifier,.CodeMirror.cm-s-paper .cm-qualifier{color:#ffb176}.CodeMirror.cm-s-default .cm-builtin,.CodeMirror.cm-s-paper .cm-builtin{color:#b7c951}.CodeMirror.cm-s-default .cm-bracket,.CodeMirror.cm-s-paper .cm-bracket{color:#997}.CodeMirror.cm-s-default .cm-tag,.CodeMirror.cm-s-paper .cm-tag{color:#f1d273}.CodeMirror.cm-s-default .cm-attribute,.CodeMirror.cm-s-paper .cm-attribute{color:#bfcc70}.CodeMirror.cm-s-default .cm-hr,.CodeMirror.cm-s-paper .cm-hr{color:#999}.CodeMirror.cm-s-default .cm-url,.CodeMirror.cm-s-paper .cm-url{color:#c5cfd0}.CodeMirror.cm-s-default .cm-link,.CodeMirror.cm-s-paper .cm-link{color:#d8c792}.CodeMirror.cm-s-default .cm-error,.CodeMirror.cm-s-paper .cm-error{color:#dbdbeb}:root{--is-dark-theme: true;--color-primary: #4183c4;--color-primary-contrast: #ffffff;--color-primary-dark-1: #548fca;--color-primary-dark-2: #679cd0;--color-primary-dark-3: #7aa8d6;--color-primary-dark-4: #8db5dc;--color-primary-dark-5: #b3cde7;--color-primary-dark-6: #d9e6f3;--color-primary-dark-7: #f4f8fb;--color-primary-light-1: #3876b3;--color-primary-light-2: #31699f;--color-primary-light-3: #2b5c8b;--color-primary-light-4: #254f77;--color-primary-light-5: #193450;--color-primary-light-6: #0c1a28;--color-primary-light-7: #04080c;--color-primary-alpha-10: #4183c419;--color-primary-alpha-20: #4183c433;--color-primary-alpha-30: #4183c44b;--color-primary-alpha-40: #4183c466;--color-primary-alpha-50: #4183c480;--color-primary-alpha-60: #4183c499;--color-primary-alpha-70: #4183c4b3;--color-primary-alpha-80: #4183c4cc;--color-primary-alpha-90: #4183c4e1;--color-primary-hover: var(--color-primary-light-1);--color-primary-active: var(--color-primary-light-2);--color-secondary: #3b444c;--color-secondary-dark-1: #414b54;--color-secondary-dark-2: #49545f;--color-secondary-dark-3: #576471;--color-secondary-dark-4: #677685;--color-secondary-dark-5: #758594;--color-secondary-dark-6: #8392a0;--color-secondary-dark-7: #929eab;--color-secondary-dark-8: #a2acb7;--color-secondary-dark-9: #a9b3bd;--color-secondary-dark-10: #b7bfc7;--color-secondary-dark-11: #c5cbd2;--color-secondary-dark-12: #cfd4da;--color-secondary-dark-13: #d2d7dc;--color-secondary-light-1: #313940;--color-secondary-light-2: #292f35;--color-secondary-light-3: #1d2226;--color-secondary-light-4: #171b1e;--color-secondary-alpha-10: #3b444c19;--color-secondary-alpha-20: #3b444c33;--color-secondary-alpha-30: #3b444c4b;--color-secondary-alpha-40: #3b444c66;--color-secondary-alpha-50: #3b444c80;--color-secondary-alpha-60: #3b444c99;--color-secondary-alpha-70: #3b444cb3;--color-secondary-alpha-80: #3b444ccc;--color-secondary-alpha-90: #3b444ce1;--color-secondary-button: var(--color-secondary-dark-4);--color-secondary-hover: var(--color-secondary-dark-3);--color-secondary-active: var(--color-secondary-dark-2);--color-console-fg: #f7f8f9;--color-console-fg-subtle: #bdc4cc;--color-console-bg: #171b1e;--color-console-border: #2e353b;--color-console-hover-bg: #272d33;--color-console-active-bg: #2e353b;--color-console-menu-bg: #262b31;--color-console-menu-border: #414b55;--color-red: #cc4848;--color-orange: #cc580c;--color-yellow: #cc9903;--color-olive: #91a313;--color-green: #87ab63;--color-teal: #00918a;--color-blue: #3a8ac6;--color-violet: #906ae1;--color-purple: #b259d0;--color-pink: #d22e8b;--color-brown: #a47252;--color-black: #1d2328;--color-red-light: #d15a5a;--color-orange-light: #f6a066;--color-yellow-light: #eaaf03;--color-olive-light: #abc016;--color-green-light: #93b373;--color-teal-light: #00b6ad;--color-blue-light: #4e96cc;--color-violet-light: #9b79e4;--color-purple-light: #ba6ad5;--color-pink-light: #d74397;--color-brown-light: #b08061;--color-black-light: #424851;--color-red-dark-1: #c23636;--color-orange-dark-1: #f38236;--color-yellow-dark-1: #b88a03;--color-olive-dark-1: #839311;--color-green-dark-1: #7a9e55;--color-teal-dark-1: #00837c;--color-blue-dark-1: #347cb3;--color-violet-dark-1: #7b4edb;--color-purple-dark-1: #a742c9;--color-pink-dark-1: #be297d;--color-brown-dark-1: #94674a;--color-black-dark-1: #292e38;--color-red-dark-2: #ad3030;--color-orange-dark-2: #f16e17;--color-yellow-dark-2: #a37a02;--color-olive-dark-2: #74820f;--color-green-dark-2: #6c8c4c;--color-teal-dark-2: #00746e;--color-blue-dark-2: #2e6e9f;--color-violet-dark-2: #6733d6;--color-purple-dark-2: #9834b9;--color-pink-dark-2: #a9246f;--color-brown-dark-2: #835b42;--color-black-dark-2: #272930;--color-ansi-black: #1e2327;--color-ansi-red: #cc4848;--color-ansi-green: #87ab63;--color-ansi-yellow: #cc9903;--color-ansi-blue: #3a8ac6;--color-ansi-magenta: #d22e8b;--color-ansi-cyan: #00918a;--color-ansi-white: var(--color-console-fg-subtle);--color-ansi-bright-black: #424851;--color-ansi-bright-red: #d15a5a;--color-ansi-bright-green: #93b373;--color-ansi-bright-yellow: #eaaf03;--color-ansi-bright-blue: #4e96cc;--color-ansi-bright-magenta: #d74397;--color-ansi-bright-cyan: #00b6ad;--color-ansi-bright-white: var(--color-console-fg);--color-grey: #384149;--color-grey-light: #818f9e;--color-gold: #b1983b;--color-white: #ffffff;--color-diff-added-linenum-bg: #274227;--color-diff-added-row-bg: #203224;--color-diff-added-row-border: #314a37;--color-diff-added-word-bg: #3c653c;--color-diff-moved-row-bg: #818044;--color-diff-moved-row-border: #bcca6f;--color-diff-removed-linenum-bg: #482121;--color-diff-removed-row-bg: #301e1e;--color-diff-removed-row-border: #634343;--color-diff-removed-word-bg: #6f3333;--color-diff-inactive: #22282d;--color-error-border: #a04141;--color-error-bg: #522;--color-error-bg-active: #744;--color-error-bg-hover: #633;--color-error-text: #f9cbcb;--color-success-border: #458a57;--color-success-bg: #284034;--color-success-text: #6cc664;--color-warning-border: #bb9d00;--color-warning-bg: #3a3a30;--color-warning-text: #fbbd08;--color-info-border: #306090;--color-info-bg: #26354c;--color-info-text: #38a8e8;--color-red-badge: #db2828;--color-red-badge-bg: #db28281a;--color-red-badge-hover-bg: #db28284d;--color-green-badge: #21ba45;--color-green-badge-bg: #21ba451a;--color-green-badge-hover-bg: #21ba454d;--color-yellow-badge: #fbbd08;--color-yellow-badge-bg: #fbbd081a;--color-yellow-badge-hover-bg: #fbbd084d;--color-orange-badge: #f2711c;--color-orange-badge-bg: #f2711c1a;--color-orange-badge-hover-bg: #f2711c4d;--color-git: #f05133;--color-body: #1b1f23;--color-box-header: #1a1d1f;--color-box-body: #14171a;--color-box-body-highlight: #1e2226;--color-text-dark: #f7f8f9;--color-text: #d0d5da;--color-text-light: #bcc3cb;--color-text-light-1: #a5afb9;--color-text-light-2: #8f9ba8;--color-text-light-3: #788797;--color-footer: var(--color-nav-bg);--color-timeline: #343c44;--color-input-text: var(--color-text-dark);--color-input-background: #171a1e;--color-input-toggle-background: #2e353c;--color-input-border: var(--color-secondary);--color-input-border-hover: var(--color-secondary-dark-1);--color-light: #00001728;--color-light-mimic-enabled: rgba(0, 0, 0, calc(40 / 255 * 222 / 255 / var(--opacity-disabled)));--color-light-border: #e8f3ff28;--color-hover: #e8f3ff19;--color-active: #e8f3ff24;--color-menu: #171a1e;--color-card: #171a1e;--color-markup-table-row: #e8f3ff0f;--color-markup-code-block: #e8f3ff12;--color-markup-code-inline: #e8f3ff28;--color-button: #171a1e;--color-code-bg: #14171a;--color-shadow: #00001758;--color-secondary-bg: #2a3137;--color-expand-button: #2f363d;--color-placeholder-text: var(--color-text-light-3);--color-editor-line-highlight: var(--color-primary-light-5);--color-project-board-bg: var(--color-secondary-light-2);--color-caret: var(--color-text);--color-reaction-bg: #e8f3ff12;--color-reaction-hover-bg: var(--color-primary-light-4);--color-reaction-active-bg: var(--color-primary-light-5);--color-tooltip-text: #f9fafb;--color-tooltip-bg: #000b17f0;--color-nav-bg: #16191d;--color-nav-hover-bg: var(--color-secondary-light-1);--color-nav-text: var(--color-text);--color-secondary-nav-bg: #181c20;--color-label-text: var(--color-text);--color-label-bg: #7282924b;--color-label-hover-bg: #728292a0;--color-label-active-bg: #728292ff;--color-accent: var(--color-primary-light-1);--color-small-accent: var(--color-primary-light-5);--color-highlight-fg: #87651e;--color-highlight-bg: #352c1c;--color-overlay-backdrop: #080808c0;accent-color:var(--color-accent);color-scheme:dark}.emoji[aria-label="check mark"],.emoji[aria-label="currency exchange"],.emoji[aria-label="TOP arrow"],.emoji[aria-label="END arrow"],.emoji[aria-label="ON! arrow"],.emoji[aria-label="SOON arrow"],.emoji[aria-label="heavy dollar sign"],.emoji[aria-label=copyright],.emoji[aria-label=registered],.emoji[aria-label="trade mark"],.emoji[aria-label=multiply],.emoji[aria-label=plus],.emoji[aria-label=minus],.emoji[aria-label=divide],.emoji[aria-label="curly loop"],.emoji[aria-label="double curly loop"],.emoji[aria-label="wavy dash"],.emoji[aria-label="paw prints"],.emoji[aria-label="musical note"],.emoji[aria-label="musical notes"]{filter:invert(100%) hue-rotate(180deg)}:root{--color-diff-added-linenum-bg: #1979fd46;--color-diff-added-row-bg: #1979fd20;--color-diff-added-word-bg: #1979fd66;--color-diff-removed-linenum-bg: #c8622146;--color-diff-removed-row-bg: #c8622120;--color-diff-removed-word-bg: #c8622166} diff --git a/data/gitea/public/assets/css/theme-gitea-dark.css b/data/gitea/public/assets/css/theme-gitea-dark.css new file mode 100644 index 0000000..ecd60c8 --- /dev/null +++ b/data/gitea/public/assets/css/theme-gitea-dark.css @@ -0,0 +1 @@ +.chroma .bp{color:#fabd2f}.chroma .c,.chroma .c1,.chroma .ch,.chroma .cm{color:#777e94}.chroma .cp{color:#8ec07c}.chroma .cpf{color:#649bc4}.chroma .cs{color:#9075cd}.chroma .dl{color:#649bc4}.chroma .gd{color:#fff;background-color:#5f3737}.chroma .ge{color:#ddee30}.chroma .gh{color:#ffaa10}.chroma .gi{color:#fff;background-color:#3a523a}.chroma .go{color:#777e94}.chroma .gp{color:#ebdbb2}.chroma .gr{color:#f43}.chroma .gs{color:#ebdbb2}.chroma .gt{color:#ff7540}.chroma .gu{color:#b8bb26}.chroma .il{color:#649bc4}.chroma .k{color:#ff7540}.chroma .kc{color:#649bc4}.chroma .kd{color:#ff7540}.chroma .kn{color:#ffaa10}.chroma .kp{color:#5f8700}.chroma .kr{color:#ff7540}.chroma .kt{color:#ff7b72}.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:#649bc4}.chroma .n{color:#c9d1d9}.chroma .na,.chroma .nb{color:#fabd2f}.chroma .nc{color:#ffaa10}.chroma .nd{color:#8ec07c}.chroma .ne{color:#ff7540}.chroma .nf,.chroma .ni{color:#fabd2f}.chroma .nl{color:#ff7540}.chroma .nn{color:#c9d1d9}.chroma .no{color:#649bc4}.chroma .nt{color:#ff7540}.chroma .nv{color:#ebdbb2}.chroma .nx{color:#b6bac5}.chroma .o{color:#ff7540}.chroma .ow{color:#5f8700}.chroma .p{color:#d2d4db}.chroma .s,.chroma .s1,.chroma .s2{color:#b8bb26}.chroma .sa{color:#ffaa10}.chroma .sb{color:#b8bb26}.chroma .sc{color:#ffaa10}.chroma .sd{color:#b8bb26}.chroma .se{color:#ff8540}.chroma .sh{color:#b8bb26}.chroma .si{color:#ffaa10}.chroma .sr{color:#9075cd}.chroma .ss{color:#ff8540}.chroma .sx{color:#ffaa10}.chroma .vc,.chroma .vg,.chroma .vi{color:#649bee}.chroma .w{color:#7f8699}.CodeMirror.cm-s-default .cm-property,.CodeMirror.cm-s-paper .cm-property{color:#a0cc75}.CodeMirror.cm-s-default .cm-header,.CodeMirror.cm-s-paper .cm-header{color:#9daccc}.CodeMirror.cm-s-default .cm-quote,.CodeMirror.cm-s-paper .cm-quote{color:#090}.CodeMirror.cm-s-default .cm-keyword,.CodeMirror.cm-s-paper .cm-keyword{color:#cc8a61}.CodeMirror.cm-s-default .cm-atom,.CodeMirror.cm-s-paper .cm-atom{color:#ef5e77}.CodeMirror.cm-s-default .cm-number,.CodeMirror.cm-s-paper .cm-number{color:#ff5656}.CodeMirror.cm-s-default .cm-def,.CodeMirror.cm-s-paper .cm-def{color:#e4e4e4}.CodeMirror.cm-s-default .cm-variable-2,.CodeMirror.cm-s-paper .cm-variable-2{color:#00bdbf}.CodeMirror.cm-s-default .cm-variable-3,.CodeMirror.cm-s-paper .cm-variable-3{color:#085}.CodeMirror.cm-s-default .cm-comment,.CodeMirror.cm-s-paper .cm-comment{color:#8e9ab3}.CodeMirror.cm-s-default .cm-string,.CodeMirror.cm-s-paper .cm-string{color:#a77272}.CodeMirror.cm-s-default .cm-string-2,.CodeMirror.cm-s-paper .cm-string-2{color:#f50}.CodeMirror.cm-s-default .cm-meta,.CodeMirror.cm-s-paper .cm-meta,.CodeMirror.cm-s-default .cm-qualifier,.CodeMirror.cm-s-paper .cm-qualifier{color:#ffb176}.CodeMirror.cm-s-default .cm-builtin,.CodeMirror.cm-s-paper .cm-builtin{color:#b7c951}.CodeMirror.cm-s-default .cm-bracket,.CodeMirror.cm-s-paper .cm-bracket{color:#997}.CodeMirror.cm-s-default .cm-tag,.CodeMirror.cm-s-paper .cm-tag{color:#f1d273}.CodeMirror.cm-s-default .cm-attribute,.CodeMirror.cm-s-paper .cm-attribute{color:#bfcc70}.CodeMirror.cm-s-default .cm-hr,.CodeMirror.cm-s-paper .cm-hr{color:#999}.CodeMirror.cm-s-default .cm-url,.CodeMirror.cm-s-paper .cm-url{color:#c5cfd0}.CodeMirror.cm-s-default .cm-link,.CodeMirror.cm-s-paper .cm-link{color:#d8c792}.CodeMirror.cm-s-default .cm-error,.CodeMirror.cm-s-paper .cm-error{color:#dbdbeb}:root{--is-dark-theme: true;--color-primary: #4183c4;--color-primary-contrast: #ffffff;--color-primary-dark-1: #548fca;--color-primary-dark-2: #679cd0;--color-primary-dark-3: #7aa8d6;--color-primary-dark-4: #8db5dc;--color-primary-dark-5: #b3cde7;--color-primary-dark-6: #d9e6f3;--color-primary-dark-7: #f4f8fb;--color-primary-light-1: #3876b3;--color-primary-light-2: #31699f;--color-primary-light-3: #2b5c8b;--color-primary-light-4: #254f77;--color-primary-light-5: #193450;--color-primary-light-6: #0c1a28;--color-primary-light-7: #04080c;--color-primary-alpha-10: #4183c419;--color-primary-alpha-20: #4183c433;--color-primary-alpha-30: #4183c44b;--color-primary-alpha-40: #4183c466;--color-primary-alpha-50: #4183c480;--color-primary-alpha-60: #4183c499;--color-primary-alpha-70: #4183c4b3;--color-primary-alpha-80: #4183c4cc;--color-primary-alpha-90: #4183c4e1;--color-primary-hover: var(--color-primary-light-1);--color-primary-active: var(--color-primary-light-2);--color-secondary: #3b444c;--color-secondary-dark-1: #414b54;--color-secondary-dark-2: #49545f;--color-secondary-dark-3: #576471;--color-secondary-dark-4: #677685;--color-secondary-dark-5: #758594;--color-secondary-dark-6: #8392a0;--color-secondary-dark-7: #929eab;--color-secondary-dark-8: #a2acb7;--color-secondary-dark-9: #a9b3bd;--color-secondary-dark-10: #b7bfc7;--color-secondary-dark-11: #c5cbd2;--color-secondary-dark-12: #cfd4da;--color-secondary-dark-13: #d2d7dc;--color-secondary-light-1: #313940;--color-secondary-light-2: #292f35;--color-secondary-light-3: #1d2226;--color-secondary-light-4: #171b1e;--color-secondary-alpha-10: #3b444c19;--color-secondary-alpha-20: #3b444c33;--color-secondary-alpha-30: #3b444c4b;--color-secondary-alpha-40: #3b444c66;--color-secondary-alpha-50: #3b444c80;--color-secondary-alpha-60: #3b444c99;--color-secondary-alpha-70: #3b444cb3;--color-secondary-alpha-80: #3b444ccc;--color-secondary-alpha-90: #3b444ce1;--color-secondary-button: var(--color-secondary-dark-4);--color-secondary-hover: var(--color-secondary-dark-3);--color-secondary-active: var(--color-secondary-dark-2);--color-console-fg: #f7f8f9;--color-console-fg-subtle: #bdc4cc;--color-console-bg: #171b1e;--color-console-border: #2e353b;--color-console-hover-bg: #272d33;--color-console-active-bg: #2e353b;--color-console-menu-bg: #262b31;--color-console-menu-border: #414b55;--color-red: #cc4848;--color-orange: #cc580c;--color-yellow: #cc9903;--color-olive: #91a313;--color-green: #87ab63;--color-teal: #00918a;--color-blue: #3a8ac6;--color-violet: #906ae1;--color-purple: #b259d0;--color-pink: #d22e8b;--color-brown: #a47252;--color-black: #1d2328;--color-red-light: #d15a5a;--color-orange-light: #f6a066;--color-yellow-light: #eaaf03;--color-olive-light: #abc016;--color-green-light: #93b373;--color-teal-light: #00b6ad;--color-blue-light: #4e96cc;--color-violet-light: #9b79e4;--color-purple-light: #ba6ad5;--color-pink-light: #d74397;--color-brown-light: #b08061;--color-black-light: #424851;--color-red-dark-1: #c23636;--color-orange-dark-1: #f38236;--color-yellow-dark-1: #b88a03;--color-olive-dark-1: #839311;--color-green-dark-1: #7a9e55;--color-teal-dark-1: #00837c;--color-blue-dark-1: #347cb3;--color-violet-dark-1: #7b4edb;--color-purple-dark-1: #a742c9;--color-pink-dark-1: #be297d;--color-brown-dark-1: #94674a;--color-black-dark-1: #292e38;--color-red-dark-2: #ad3030;--color-orange-dark-2: #f16e17;--color-yellow-dark-2: #a37a02;--color-olive-dark-2: #74820f;--color-green-dark-2: #6c8c4c;--color-teal-dark-2: #00746e;--color-blue-dark-2: #2e6e9f;--color-violet-dark-2: #6733d6;--color-purple-dark-2: #9834b9;--color-pink-dark-2: #a9246f;--color-brown-dark-2: #835b42;--color-black-dark-2: #272930;--color-ansi-black: #1e2327;--color-ansi-red: #cc4848;--color-ansi-green: #87ab63;--color-ansi-yellow: #cc9903;--color-ansi-blue: #3a8ac6;--color-ansi-magenta: #d22e8b;--color-ansi-cyan: #00918a;--color-ansi-white: var(--color-console-fg-subtle);--color-ansi-bright-black: #424851;--color-ansi-bright-red: #d15a5a;--color-ansi-bright-green: #93b373;--color-ansi-bright-yellow: #eaaf03;--color-ansi-bright-blue: #4e96cc;--color-ansi-bright-magenta: #d74397;--color-ansi-bright-cyan: #00b6ad;--color-ansi-bright-white: var(--color-console-fg);--color-grey: #384149;--color-grey-light: #818f9e;--color-gold: #b1983b;--color-white: #ffffff;--color-diff-added-linenum-bg: #274227;--color-diff-added-row-bg: #203224;--color-diff-added-row-border: #314a37;--color-diff-added-word-bg: #3c653c;--color-diff-moved-row-bg: #818044;--color-diff-moved-row-border: #bcca6f;--color-diff-removed-linenum-bg: #482121;--color-diff-removed-row-bg: #301e1e;--color-diff-removed-row-border: #634343;--color-diff-removed-word-bg: #6f3333;--color-diff-inactive: #22282d;--color-error-border: #a04141;--color-error-bg: #522;--color-error-bg-active: #744;--color-error-bg-hover: #633;--color-error-text: #f9cbcb;--color-success-border: #458a57;--color-success-bg: #284034;--color-success-text: #6cc664;--color-warning-border: #bb9d00;--color-warning-bg: #3a3a30;--color-warning-text: #fbbd08;--color-info-border: #306090;--color-info-bg: #26354c;--color-info-text: #38a8e8;--color-red-badge: #db2828;--color-red-badge-bg: #db28281a;--color-red-badge-hover-bg: #db28284d;--color-green-badge: #21ba45;--color-green-badge-bg: #21ba451a;--color-green-badge-hover-bg: #21ba454d;--color-yellow-badge: #fbbd08;--color-yellow-badge-bg: #fbbd081a;--color-yellow-badge-hover-bg: #fbbd084d;--color-orange-badge: #f2711c;--color-orange-badge-bg: #f2711c1a;--color-orange-badge-hover-bg: #f2711c4d;--color-git: #f05133;--color-body: #1b1f23;--color-box-header: #1a1d1f;--color-box-body: #14171a;--color-box-body-highlight: #1e2226;--color-text-dark: #f7f8f9;--color-text: #d0d5da;--color-text-light: #bcc3cb;--color-text-light-1: #a5afb9;--color-text-light-2: #8f9ba8;--color-text-light-3: #788797;--color-footer: var(--color-nav-bg);--color-timeline: #343c44;--color-input-text: var(--color-text-dark);--color-input-background: #171a1e;--color-input-toggle-background: #2e353c;--color-input-border: var(--color-secondary);--color-input-border-hover: var(--color-secondary-dark-1);--color-light: #00001728;--color-light-mimic-enabled: rgba(0, 0, 0, calc(40 / 255 * 222 / 255 / var(--opacity-disabled)));--color-light-border: #e8f3ff28;--color-hover: #e8f3ff19;--color-active: #e8f3ff24;--color-menu: #171a1e;--color-card: #171a1e;--color-markup-table-row: #e8f3ff0f;--color-markup-code-block: #e8f3ff12;--color-markup-code-inline: #e8f3ff28;--color-button: #171a1e;--color-code-bg: #14171a;--color-shadow: #00001758;--color-secondary-bg: #2a3137;--color-expand-button: #2f363d;--color-placeholder-text: var(--color-text-light-3);--color-editor-line-highlight: var(--color-primary-light-5);--color-project-board-bg: var(--color-secondary-light-2);--color-caret: var(--color-text);--color-reaction-bg: #e8f3ff12;--color-reaction-hover-bg: var(--color-primary-light-4);--color-reaction-active-bg: var(--color-primary-light-5);--color-tooltip-text: #f9fafb;--color-tooltip-bg: #000b17f0;--color-nav-bg: #16191d;--color-nav-hover-bg: var(--color-secondary-light-1);--color-nav-text: var(--color-text);--color-secondary-nav-bg: #181c20;--color-label-text: var(--color-text);--color-label-bg: #7282924b;--color-label-hover-bg: #728292a0;--color-label-active-bg: #728292ff;--color-accent: var(--color-primary-light-1);--color-small-accent: var(--color-primary-light-5);--color-highlight-fg: #87651e;--color-highlight-bg: #352c1c;--color-overlay-backdrop: #080808c0;accent-color:var(--color-accent);color-scheme:dark}.emoji[aria-label="check mark"],.emoji[aria-label="currency exchange"],.emoji[aria-label="TOP arrow"],.emoji[aria-label="END arrow"],.emoji[aria-label="ON! arrow"],.emoji[aria-label="SOON arrow"],.emoji[aria-label="heavy dollar sign"],.emoji[aria-label=copyright],.emoji[aria-label=registered],.emoji[aria-label="trade mark"],.emoji[aria-label=multiply],.emoji[aria-label=plus],.emoji[aria-label=minus],.emoji[aria-label=divide],.emoji[aria-label="curly loop"],.emoji[aria-label="double curly loop"],.emoji[aria-label="wavy dash"],.emoji[aria-label="paw prints"],.emoji[aria-label="musical note"],.emoji[aria-label="musical notes"]{filter:invert(100%) hue-rotate(180deg)} diff --git a/data/gitea/public/assets/css/theme-gitea-light-protanopia-deuteranopia.css b/data/gitea/public/assets/css/theme-gitea-light-protanopia-deuteranopia.css new file mode 100644 index 0000000..1899ea6 --- /dev/null +++ b/data/gitea/public/assets/css/theme-gitea-light-protanopia-deuteranopia.css @@ -0,0 +1 @@ +.chroma .bp{color:#999}.chroma .c,.chroma .c1,.chroma .ch{color:#6a737d}.chroma .cm{color:#998}.chroma .cp{color:#109295}.chroma .cpf{color:#4c4dbc}.chroma .cs{color:#999}.chroma .dl{color:#106303}.chroma .gd{color:#000;background-color:#fdd}.chroma .ge{color:#000}.chroma .gh{color:#999}.chroma .gi{color:#000;background-color:#dfd}.chroma .go{color:#888}.chroma .gp{color:#555}.chroma .gr,.chroma .gt{color:#a00}.chroma .gu{color:#aaa}.chroma .il{color:#099}.chroma .k,.chroma .kc,.chroma .kd,.chroma .kn,.chroma .kp,.chroma .kr{color:#d73a49}.chroma .kt{color:#458}.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:#099}.chroma .na{color:#d73a49}.chroma .nb{color:#005cc5}.chroma .nc{color:#458}.chroma .nd{color:#3c5d5d}.chroma .ne{color:#900}.chroma .nf{color:#005cc5}.chroma .ni{color:#6f42c1}.chroma .nl{color:#900}.chroma .nn{color:#555}.chroma .no{color:teal}.chroma .nt{color:#22863a}.chroma .nv{color:teal}.chroma .nx{color:#24292e}.chroma .o,.chroma .ow{color:#d73a49}.chroma .s,.chroma .s1,.chroma .s2{color:#106303}.chroma .sa{color:#cc7a00}.chroma .sb{color:#106303}.chroma .sc{color:#cc7a00}.chroma .sd{color:#106303}.chroma .se{color:#940}.chroma .sh{color:#106303}.chroma .si{color:#cc7a00}.chroma .sr{color:#4c4dbc}.chroma .ss{color:#940}.chroma .sx{color:#106303}.chroma .vc,.chroma .vg,.chroma .vi{color:teal}.chroma .w{color:#bbb}:root{--is-dark-theme: false;--color-primary: #4183c4;--color-primary-contrast: #ffffff;--color-primary-dark-1: #3876b3;--color-primary-dark-2: #31699f;--color-primary-dark-3: #2b5c8b;--color-primary-dark-4: #254f77;--color-primary-dark-5: #193450;--color-primary-dark-6: #0c1a28;--color-primary-dark-7: #04080c;--color-primary-light-1: #548fca;--color-primary-light-2: #679cd0;--color-primary-light-3: #7aa8d6;--color-primary-light-4: #8db5dc;--color-primary-light-5: #b3cde7;--color-primary-light-6: #d9e6f3;--color-primary-light-7: #f4f8fb;--color-primary-alpha-10: #4183c419;--color-primary-alpha-20: #4183c433;--color-primary-alpha-30: #4183c44b;--color-primary-alpha-40: #4183c466;--color-primary-alpha-50: #4183c480;--color-primary-alpha-60: #4183c499;--color-primary-alpha-70: #4183c4b3;--color-primary-alpha-80: #4183c4cc;--color-primary-alpha-90: #4183c4e1;--color-primary-hover: var(--color-primary-dark-1);--color-primary-active: var(--color-primary-dark-2);--color-secondary: #d0d7de;--color-secondary-dark-1: #c7ced5;--color-secondary-dark-2: #b9c0c7;--color-secondary-dark-3: #99a0a7;--color-secondary-dark-4: #899097;--color-secondary-dark-5: #7a8188;--color-secondary-dark-6: #6a7178;--color-secondary-dark-7: #5b6269;--color-secondary-dark-8: #4b5259;--color-secondary-dark-9: #3c434a;--color-secondary-dark-10: #2c333a;--color-secondary-dark-11: #1d242b;--color-secondary-dark-12: #0d141b;--color-secondary-dark-13: #00040b;--color-secondary-light-1: #dee5ec;--color-secondary-light-2: #e4ebf2;--color-secondary-light-3: #ebf2f9;--color-secondary-light-4: #f1f8ff;--color-secondary-alpha-10: #d0d7de19;--color-secondary-alpha-20: #d0d7de33;--color-secondary-alpha-30: #d0d7de4b;--color-secondary-alpha-40: #d0d7de66;--color-secondary-alpha-50: #d0d7de80;--color-secondary-alpha-60: #d0d7de99;--color-secondary-alpha-70: #d0d7deb3;--color-secondary-alpha-80: #d0d7decc;--color-secondary-alpha-90: #d0d7dee1;--color-secondary-button: var(--color-secondary-dark-4);--color-secondary-hover: var(--color-secondary-dark-5);--color-secondary-active: var(--color-secondary-dark-6);--color-console-fg: #f7f8f9;--color-console-fg-subtle: #bdc4cc;--color-console-bg: #171b1e;--color-console-border: #2e353b;--color-console-hover-bg: #272d33;--color-console-active-bg: #2e353b;--color-console-menu-bg: #262b31;--color-console-menu-border: #414b55;--color-red: #db2828;--color-orange: #f2711c;--color-yellow: #fbbd08;--color-olive: #b5cc18;--color-green: #21ba45;--color-teal: #00b5ad;--color-blue: #2185d0;--color-violet: #6435c9;--color-purple: #a333c8;--color-pink: #e03997;--color-brown: #a5673f;--color-black: #1d2328;--color-red-light: #e45e5e;--color-orange-light: #f59555;--color-yellow-light: #fcce46;--color-olive-light: #d3e942;--color-green-light: #46de6a;--color-teal-light: #08fff4;--color-blue-light: #51a5e3;--color-violet-light: #8b67d7;--color-purple-light: #bb64d8;--color-pink-light: #e86bb1;--color-brown-light: #c58b66;--color-black-light: #4b5b68;--color-red-dark-1: #c82121;--color-orange-dark-1: #e6630d;--color-yellow-dark-1: #e5ac04;--color-olive-dark-1: #a3b816;--color-green-dark-1: #1ea73e;--color-teal-dark-1: #00a39c;--color-blue-dark-1: #1e78bb;--color-violet-dark-1: #5a30b5;--color-purple-dark-1: #932eb4;--color-pink-dark-1: #db228a;--color-brown-dark-1: #955d39;--color-black-dark-1: #2c3339;--color-red-dark-2: #b11e1e;--color-orange-dark-2: #cc580c;--color-yellow-dark-2: #cc9903;--color-olive-dark-2: #91a313;--color-green-dark-2: #1a9537;--color-teal-dark-2: #00918a;--color-blue-dark-2: #1a6aa6;--color-violet-dark-2: #502aa1;--color-purple-dark-2: #8229a0;--color-pink-dark-2: #c21e7b;--color-brown-dark-2: #845232;--color-black-dark-2: #131619;--color-ansi-black: #1e2327;--color-ansi-red: #cc4848;--color-ansi-green: #87ab63;--color-ansi-yellow: #cc9903;--color-ansi-blue: #3a8ac6;--color-ansi-magenta: #d22e8b;--color-ansi-cyan: #00918a;--color-ansi-white: var(--color-console-fg-subtle);--color-ansi-bright-black: #46494d;--color-ansi-bright-red: #d15a5a;--color-ansi-bright-green: #93b373;--color-ansi-bright-yellow: #eaaf03;--color-ansi-bright-blue: #4e96cc;--color-ansi-bright-magenta: #d74397;--color-ansi-bright-cyan: #00b6ad;--color-ansi-bright-white: var(--color-console-fg);--color-grey: #697077;--color-grey-light: #7c838a;--color-gold: #a1882b;--color-white: #ffffff;--color-diff-added-linenum-bg: #d1f8d9;--color-diff-added-row-bg: #e6ffed;--color-diff-added-row-border: #e6ffed;--color-diff-added-word-bg: #acf2bd;--color-diff-moved-row-bg: #f1f8d1;--color-diff-moved-row-border: #d0e27f;--color-diff-removed-linenum-bg: #ffcecb;--color-diff-removed-row-bg: #ffeef0;--color-diff-removed-row-border: #f1c0c0;--color-diff-removed-word-bg: #fdb8c0;--color-diff-inactive: #f0f2f4;--color-error-border: #e0b4b4;--color-error-bg: #fff6f6;--color-error-bg-active: #fbb;--color-error-bg-hover: #fdd;--color-error-text: #9f3a38;--color-success-border: #a3c293;--color-success-bg: #fcfff5;--color-success-text: #2c662d;--color-warning-border: #c9ba9b;--color-warning-bg: #fffaf3;--color-warning-text: #573a08;--color-info-border: #a9d5de;--color-info-bg: #f8ffff;--color-info-text: #276f86;--color-red-badge: #db2828;--color-red-badge-bg: #db28281a;--color-red-badge-hover-bg: #db28284d;--color-green-badge: #21ba45;--color-green-badge-bg: #21ba451a;--color-green-badge-hover-bg: #21ba454d;--color-yellow-badge: #fbbd08;--color-yellow-badge-bg: #fbbd081a;--color-yellow-badge-hover-bg: #fbbd084d;--color-orange-badge: #f2711c;--color-orange-badge-bg: #f2711c1a;--color-orange-badge-hover-bg: #f2711c4d;--color-git: #f05133;--color-body: #ffffff;--color-box-header: #f1f3f5;--color-box-body: #ffffff;--color-box-body-highlight: #ecf5fd;--color-text-dark: #01050a;--color-text: #181c21;--color-text-light: #30363b;--color-text-light-1: #40474d;--color-text-light-2: #5b6167;--color-text-light-3: #747c84;--color-footer: var(--color-nav-bg);--color-timeline: #d0d7de;--color-input-text: var(--color-text-dark);--color-input-background: #fff;--color-input-toggle-background: #d0d7de;--color-input-border: var(--color-secondary);--color-input-border-hover: var(--color-secondary-dark-1);--color-light: #00001706;--color-light-mimic-enabled: rgba(0, 0, 0, calc(6 / 255 * 222 / 255 / var(--opacity-disabled)));--color-light-border: #0000171d;--color-hover: #00001708;--color-active: #00001714;--color-menu: #f8f9fb;--color-card: #f8f9fb;--color-markup-table-row: #0030600a;--color-markup-code-block: #00306010;--color-markup-code-inline: #00306012;--color-button: #f8f9fb;--color-code-bg: #fafdff;--color-shadow: #00001726;--color-secondary-bg: #f2f5f8;--color-expand-button: #cfe8fa;--color-placeholder-text: var(--color-text-light-3);--color-editor-line-highlight: var(--color-primary-light-6);--color-project-board-bg: var(--color-secondary-light-4);--color-caret: var(--color-text-dark);--color-reaction-bg: #0000170a;--color-reaction-hover-bg: var(--color-primary-light-5);--color-reaction-active-bg: var(--color-primary-light-6);--color-tooltip-text: #fbfdff;--color-tooltip-bg: #000017f0;--color-nav-bg: #f6f7fa;--color-nav-hover-bg: var(--color-secondary-light-1);--color-nav-text: var(--color-text);--color-secondary-nav-bg: #f9fafb;--color-label-text: var(--color-text);--color-label-bg: #949da64b;--color-label-hover-bg: #949da6a0;--color-label-active-bg: #949da6ff;--color-accent: var(--color-primary-light-1);--color-small-accent: var(--color-primary-light-6);--color-highlight-fg: #eed200;--color-highlight-bg: #fffbdd;--color-overlay-backdrop: #080808c0;accent-color:var(--color-accent);color-scheme:light}:root{--color-diff-added-linenum-bg: #54aeff4d;--color-diff-added-row-bg: #ddf4ff80;--color-diff-added-word-bg: #54aeff66;--color-diff-removed-linenum-bg: #ffb77c4d;--color-diff-removed-row-bg: #fff1e580;--color-diff-removed-word-bg: #ffb77c80} diff --git a/data/gitea/public/assets/css/theme-gitea-light.css b/data/gitea/public/assets/css/theme-gitea-light.css new file mode 100644 index 0000000..4bf4664 --- /dev/null +++ b/data/gitea/public/assets/css/theme-gitea-light.css @@ -0,0 +1 @@ +.chroma .bp{color:#999}.chroma .c,.chroma .c1,.chroma .ch{color:#6a737d}.chroma .cm{color:#998}.chroma .cp{color:#109295}.chroma .cpf{color:#4c4dbc}.chroma .cs{color:#999}.chroma .dl{color:#106303}.chroma .gd{color:#000;background-color:#fdd}.chroma .ge{color:#000}.chroma .gh{color:#999}.chroma .gi{color:#000;background-color:#dfd}.chroma .go{color:#888}.chroma .gp{color:#555}.chroma .gr,.chroma .gt{color:#a00}.chroma .gu{color:#aaa}.chroma .il{color:#099}.chroma .k,.chroma .kc,.chroma .kd,.chroma .kn,.chroma .kp,.chroma .kr{color:#d73a49}.chroma .kt{color:#458}.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:#099}.chroma .na{color:#d73a49}.chroma .nb{color:#005cc5}.chroma .nc{color:#458}.chroma .nd{color:#3c5d5d}.chroma .ne{color:#900}.chroma .nf{color:#005cc5}.chroma .ni{color:#6f42c1}.chroma .nl{color:#900}.chroma .nn{color:#555}.chroma .no{color:teal}.chroma .nt{color:#22863a}.chroma .nv{color:teal}.chroma .nx{color:#24292e}.chroma .o,.chroma .ow{color:#d73a49}.chroma .s,.chroma .s1,.chroma .s2{color:#106303}.chroma .sa{color:#cc7a00}.chroma .sb{color:#106303}.chroma .sc{color:#cc7a00}.chroma .sd{color:#106303}.chroma .se{color:#940}.chroma .sh{color:#106303}.chroma .si{color:#cc7a00}.chroma .sr{color:#4c4dbc}.chroma .ss{color:#940}.chroma .sx{color:#106303}.chroma .vc,.chroma .vg,.chroma .vi{color:teal}.chroma .w{color:#bbb}:root{--is-dark-theme: false;--color-primary: #4183c4;--color-primary-contrast: #ffffff;--color-primary-dark-1: #3876b3;--color-primary-dark-2: #31699f;--color-primary-dark-3: #2b5c8b;--color-primary-dark-4: #254f77;--color-primary-dark-5: #193450;--color-primary-dark-6: #0c1a28;--color-primary-dark-7: #04080c;--color-primary-light-1: #548fca;--color-primary-light-2: #679cd0;--color-primary-light-3: #7aa8d6;--color-primary-light-4: #8db5dc;--color-primary-light-5: #b3cde7;--color-primary-light-6: #d9e6f3;--color-primary-light-7: #f4f8fb;--color-primary-alpha-10: #4183c419;--color-primary-alpha-20: #4183c433;--color-primary-alpha-30: #4183c44b;--color-primary-alpha-40: #4183c466;--color-primary-alpha-50: #4183c480;--color-primary-alpha-60: #4183c499;--color-primary-alpha-70: #4183c4b3;--color-primary-alpha-80: #4183c4cc;--color-primary-alpha-90: #4183c4e1;--color-primary-hover: var(--color-primary-dark-1);--color-primary-active: var(--color-primary-dark-2);--color-secondary: #d0d7de;--color-secondary-dark-1: #c7ced5;--color-secondary-dark-2: #b9c0c7;--color-secondary-dark-3: #99a0a7;--color-secondary-dark-4: #899097;--color-secondary-dark-5: #7a8188;--color-secondary-dark-6: #6a7178;--color-secondary-dark-7: #5b6269;--color-secondary-dark-8: #4b5259;--color-secondary-dark-9: #3c434a;--color-secondary-dark-10: #2c333a;--color-secondary-dark-11: #1d242b;--color-secondary-dark-12: #0d141b;--color-secondary-dark-13: #00040b;--color-secondary-light-1: #dee5ec;--color-secondary-light-2: #e4ebf2;--color-secondary-light-3: #ebf2f9;--color-secondary-light-4: #f1f8ff;--color-secondary-alpha-10: #d0d7de19;--color-secondary-alpha-20: #d0d7de33;--color-secondary-alpha-30: #d0d7de4b;--color-secondary-alpha-40: #d0d7de66;--color-secondary-alpha-50: #d0d7de80;--color-secondary-alpha-60: #d0d7de99;--color-secondary-alpha-70: #d0d7deb3;--color-secondary-alpha-80: #d0d7decc;--color-secondary-alpha-90: #d0d7dee1;--color-secondary-button: var(--color-secondary-dark-4);--color-secondary-hover: var(--color-secondary-dark-5);--color-secondary-active: var(--color-secondary-dark-6);--color-console-fg: #f7f8f9;--color-console-fg-subtle: #bdc4cc;--color-console-bg: #171b1e;--color-console-border: #2e353b;--color-console-hover-bg: #272d33;--color-console-active-bg: #2e353b;--color-console-menu-bg: #262b31;--color-console-menu-border: #414b55;--color-red: #db2828;--color-orange: #f2711c;--color-yellow: #fbbd08;--color-olive: #b5cc18;--color-green: #21ba45;--color-teal: #00b5ad;--color-blue: #2185d0;--color-violet: #6435c9;--color-purple: #a333c8;--color-pink: #e03997;--color-brown: #a5673f;--color-black: #1d2328;--color-red-light: #e45e5e;--color-orange-light: #f59555;--color-yellow-light: #fcce46;--color-olive-light: #d3e942;--color-green-light: #46de6a;--color-teal-light: #08fff4;--color-blue-light: #51a5e3;--color-violet-light: #8b67d7;--color-purple-light: #bb64d8;--color-pink-light: #e86bb1;--color-brown-light: #c58b66;--color-black-light: #4b5b68;--color-red-dark-1: #c82121;--color-orange-dark-1: #e6630d;--color-yellow-dark-1: #e5ac04;--color-olive-dark-1: #a3b816;--color-green-dark-1: #1ea73e;--color-teal-dark-1: #00a39c;--color-blue-dark-1: #1e78bb;--color-violet-dark-1: #5a30b5;--color-purple-dark-1: #932eb4;--color-pink-dark-1: #db228a;--color-brown-dark-1: #955d39;--color-black-dark-1: #2c3339;--color-red-dark-2: #b11e1e;--color-orange-dark-2: #cc580c;--color-yellow-dark-2: #cc9903;--color-olive-dark-2: #91a313;--color-green-dark-2: #1a9537;--color-teal-dark-2: #00918a;--color-blue-dark-2: #1a6aa6;--color-violet-dark-2: #502aa1;--color-purple-dark-2: #8229a0;--color-pink-dark-2: #c21e7b;--color-brown-dark-2: #845232;--color-black-dark-2: #131619;--color-ansi-black: #1e2327;--color-ansi-red: #cc4848;--color-ansi-green: #87ab63;--color-ansi-yellow: #cc9903;--color-ansi-blue: #3a8ac6;--color-ansi-magenta: #d22e8b;--color-ansi-cyan: #00918a;--color-ansi-white: var(--color-console-fg-subtle);--color-ansi-bright-black: #46494d;--color-ansi-bright-red: #d15a5a;--color-ansi-bright-green: #93b373;--color-ansi-bright-yellow: #eaaf03;--color-ansi-bright-blue: #4e96cc;--color-ansi-bright-magenta: #d74397;--color-ansi-bright-cyan: #00b6ad;--color-ansi-bright-white: var(--color-console-fg);--color-grey: #697077;--color-grey-light: #7c838a;--color-gold: #a1882b;--color-white: #ffffff;--color-diff-added-linenum-bg: #d1f8d9;--color-diff-added-row-bg: #e6ffed;--color-diff-added-row-border: #e6ffed;--color-diff-added-word-bg: #acf2bd;--color-diff-moved-row-bg: #f1f8d1;--color-diff-moved-row-border: #d0e27f;--color-diff-removed-linenum-bg: #ffcecb;--color-diff-removed-row-bg: #ffeef0;--color-diff-removed-row-border: #f1c0c0;--color-diff-removed-word-bg: #fdb8c0;--color-diff-inactive: #f0f2f4;--color-error-border: #e0b4b4;--color-error-bg: #fff6f6;--color-error-bg-active: #fbb;--color-error-bg-hover: #fdd;--color-error-text: #9f3a38;--color-success-border: #a3c293;--color-success-bg: #fcfff5;--color-success-text: #2c662d;--color-warning-border: #c9ba9b;--color-warning-bg: #fffaf3;--color-warning-text: #573a08;--color-info-border: #a9d5de;--color-info-bg: #f8ffff;--color-info-text: #276f86;--color-red-badge: #db2828;--color-red-badge-bg: #db28281a;--color-red-badge-hover-bg: #db28284d;--color-green-badge: #21ba45;--color-green-badge-bg: #21ba451a;--color-green-badge-hover-bg: #21ba454d;--color-yellow-badge: #fbbd08;--color-yellow-badge-bg: #fbbd081a;--color-yellow-badge-hover-bg: #fbbd084d;--color-orange-badge: #f2711c;--color-orange-badge-bg: #f2711c1a;--color-orange-badge-hover-bg: #f2711c4d;--color-git: #f05133;--color-body: #ffffff;--color-box-header: #f1f3f5;--color-box-body: #ffffff;--color-box-body-highlight: #ecf5fd;--color-text-dark: #01050a;--color-text: #181c21;--color-text-light: #30363b;--color-text-light-1: #40474d;--color-text-light-2: #5b6167;--color-text-light-3: #747c84;--color-footer: var(--color-nav-bg);--color-timeline: #d0d7de;--color-input-text: var(--color-text-dark);--color-input-background: #fff;--color-input-toggle-background: #d0d7de;--color-input-border: var(--color-secondary);--color-input-border-hover: var(--color-secondary-dark-1);--color-light: #00001706;--color-light-mimic-enabled: rgba(0, 0, 0, calc(6 / 255 * 222 / 255 / var(--opacity-disabled)));--color-light-border: #0000171d;--color-hover: #00001708;--color-active: #00001714;--color-menu: #f8f9fb;--color-card: #f8f9fb;--color-markup-table-row: #0030600a;--color-markup-code-block: #00306010;--color-markup-code-inline: #00306012;--color-button: #f8f9fb;--color-code-bg: #fafdff;--color-shadow: #00001726;--color-secondary-bg: #f2f5f8;--color-expand-button: #cfe8fa;--color-placeholder-text: var(--color-text-light-3);--color-editor-line-highlight: var(--color-primary-light-6);--color-project-board-bg: var(--color-secondary-light-4);--color-caret: var(--color-text-dark);--color-reaction-bg: #0000170a;--color-reaction-hover-bg: var(--color-primary-light-5);--color-reaction-active-bg: var(--color-primary-light-6);--color-tooltip-text: #fbfdff;--color-tooltip-bg: #000017f0;--color-nav-bg: #f6f7fa;--color-nav-hover-bg: var(--color-secondary-light-1);--color-nav-text: var(--color-text);--color-secondary-nav-bg: #f9fafb;--color-label-text: var(--color-text);--color-label-bg: #949da64b;--color-label-hover-bg: #949da6a0;--color-label-active-bg: #949da6ff;--color-accent: var(--color-primary-light-1);--color-small-accent: var(--color-primary-light-6);--color-highlight-fg: #eed200;--color-highlight-bg: #fffbdd;--color-overlay-backdrop: #080808c0;accent-color:var(--color-accent);color-scheme:light} diff --git a/data/gitea/public/assets/fonts/KaTeX_AMS-Regular.73ea273a.woff2 b/data/gitea/public/assets/fonts/KaTeX_AMS-Regular.73ea273a.woff2 new file mode 100644 index 0000000..0acaaff Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_AMS-Regular.73ea273a.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Caligraphic-Bold.a1abf90d.woff2 b/data/gitea/public/assets/fonts/KaTeX_Caligraphic-Bold.a1abf90d.woff2 new file mode 100644 index 0000000..f390922 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Caligraphic-Bold.a1abf90d.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Caligraphic-Regular.d6484fce.woff2 b/data/gitea/public/assets/fonts/KaTeX_Caligraphic-Regular.d6484fce.woff2 new file mode 100644 index 0000000..75344a1 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Caligraphic-Regular.d6484fce.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Fraktur-Bold.931d67ea.woff2 b/data/gitea/public/assets/fonts/KaTeX_Fraktur-Bold.931d67ea.woff2 new file mode 100644 index 0000000..395f28b Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Fraktur-Bold.931d67ea.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Fraktur-Regular.172d3529.woff2 b/data/gitea/public/assets/fonts/KaTeX_Fraktur-Regular.172d3529.woff2 new file mode 100644 index 0000000..735f694 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Fraktur-Regular.172d3529.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Main-Bold.39890742.woff2 b/data/gitea/public/assets/fonts/KaTeX_Main-Bold.39890742.woff2 new file mode 100644 index 0000000..ab2ad21 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Main-Bold.39890742.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Main-BoldItalic.20f389c4.woff2 b/data/gitea/public/assets/fonts/KaTeX_Main-BoldItalic.20f389c4.woff2 new file mode 100644 index 0000000..5931794 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Main-BoldItalic.20f389c4.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Main-Italic.fe2176f7.woff2 b/data/gitea/public/assets/fonts/KaTeX_Main-Italic.fe2176f7.woff2 new file mode 100644 index 0000000..b50920e Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Main-Italic.fe2176f7.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Main-Regular.f650f111.woff2 b/data/gitea/public/assets/fonts/KaTeX_Main-Regular.f650f111.woff2 new file mode 100644 index 0000000..eb24a7b Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Main-Regular.f650f111.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Math-BoldItalic.dcbcbd93.woff2 b/data/gitea/public/assets/fonts/KaTeX_Math-BoldItalic.dcbcbd93.woff2 new file mode 100644 index 0000000..2965702 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Math-BoldItalic.dcbcbd93.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Math-Italic.6d3d25f4.woff2 b/data/gitea/public/assets/fonts/KaTeX_Math-Italic.6d3d25f4.woff2 new file mode 100644 index 0000000..215c143 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Math-Italic.6d3d25f4.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_SansSerif-Bold.95591a92.woff2 b/data/gitea/public/assets/fonts/KaTeX_SansSerif-Bold.95591a92.woff2 new file mode 100644 index 0000000..cfaa3bd Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_SansSerif-Bold.95591a92.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_SansSerif-Italic.7d393d38.woff2 b/data/gitea/public/assets/fonts/KaTeX_SansSerif-Italic.7d393d38.woff2 new file mode 100644 index 0000000..349c06d Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_SansSerif-Italic.7d393d38.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_SansSerif-Regular.cd5e231e.woff2 b/data/gitea/public/assets/fonts/KaTeX_SansSerif-Regular.cd5e231e.woff2 new file mode 100644 index 0000000..a90eea8 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_SansSerif-Regular.cd5e231e.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Script-Regular.c81d1b2a.woff2 b/data/gitea/public/assets/fonts/KaTeX_Script-Regular.c81d1b2a.woff2 new file mode 100644 index 0000000..b3048fc Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Script-Regular.c81d1b2a.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Size1-Regular.6eec866c.woff2 b/data/gitea/public/assets/fonts/KaTeX_Size1-Regular.6eec866c.woff2 new file mode 100644 index 0000000..c5a8462 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Size1-Regular.6eec866c.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Size2-Regular.2960900c.woff2 b/data/gitea/public/assets/fonts/KaTeX_Size2-Regular.2960900c.woff2 new file mode 100644 index 0000000..e1bccfe Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Size2-Regular.2960900c.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Size3-Regular.e1951519.woff2 b/data/gitea/public/assets/fonts/KaTeX_Size3-Regular.e1951519.woff2 new file mode 100644 index 0000000..249a286 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Size3-Regular.e1951519.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Size4-Regular.e418bf25.woff2 b/data/gitea/public/assets/fonts/KaTeX_Size4-Regular.e418bf25.woff2 new file mode 100644 index 0000000..680c130 Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Size4-Regular.e418bf25.woff2 differ diff --git a/data/gitea/public/assets/fonts/KaTeX_Typewriter-Regular.c295e7f7.woff2 b/data/gitea/public/assets/fonts/KaTeX_Typewriter-Regular.c295e7f7.woff2 new file mode 100644 index 0000000..771f1af Binary files /dev/null and b/data/gitea/public/assets/fonts/KaTeX_Typewriter-Regular.c295e7f7.woff2 differ diff --git a/data/gitea/public/assets/fonts/codicon.762fced4.ttf b/data/gitea/public/assets/fonts/codicon.762fced4.ttf new file mode 100644 index 0000000..57eda48 Binary files /dev/null and b/data/gitea/public/assets/fonts/codicon.762fced4.ttf differ diff --git a/data/gitea/public/assets/img/404.png b/data/gitea/public/assets/img/404.png new file mode 100644 index 0000000..8b66c97 Binary files /dev/null and b/data/gitea/public/assets/img/404.png differ diff --git a/data/gitea/public/assets/img/500.png b/data/gitea/public/assets/img/500.png new file mode 100644 index 0000000..dab6920 Binary files /dev/null and b/data/gitea/public/assets/img/500.png differ diff --git a/data/gitea/public/assets/img/apple-touch-icon.png b/data/gitea/public/assets/img/apple-touch-icon.png new file mode 100644 index 0000000..0c803d3 Binary files /dev/null and b/data/gitea/public/assets/img/apple-touch-icon.png differ diff --git a/data/gitea/public/assets/img/avatar_default.png b/data/gitea/public/assets/img/avatar_default.png new file mode 100644 index 0000000..1299671 Binary files /dev/null and b/data/gitea/public/assets/img/avatar_default.png differ diff --git a/data/gitea/public/assets/img/checkmark.png b/data/gitea/public/assets/img/checkmark.png new file mode 100644 index 0000000..ad85a91 Binary files /dev/null and b/data/gitea/public/assets/img/checkmark.png differ diff --git a/data/gitea/public/assets/img/dingtalk.ico b/data/gitea/public/assets/img/dingtalk.ico new file mode 100644 index 0000000..a2682bb Binary files /dev/null and b/data/gitea/public/assets/img/dingtalk.ico differ diff --git a/data/gitea/public/assets/img/discord.png b/data/gitea/public/assets/img/discord.png new file mode 100644 index 0000000..db0e70d Binary files /dev/null and b/data/gitea/public/assets/img/discord.png differ diff --git a/data/gitea/public/assets/img/emoji/codeberg.png b/data/gitea/public/assets/img/emoji/codeberg.png new file mode 100644 index 0000000..b916138 Binary files /dev/null and b/data/gitea/public/assets/img/emoji/codeberg.png differ diff --git a/data/gitea/public/assets/img/emoji/git.png b/data/gitea/public/assets/img/emoji/git.png new file mode 100644 index 0000000..00a6bcf Binary files /dev/null and b/data/gitea/public/assets/img/emoji/git.png differ diff --git a/data/gitea/public/assets/img/emoji/gitea.png b/data/gitea/public/assets/img/emoji/gitea.png new file mode 100644 index 0000000..69e0ce9 Binary files /dev/null and b/data/gitea/public/assets/img/emoji/gitea.png differ diff --git a/data/gitea/public/assets/img/emoji/github.png b/data/gitea/public/assets/img/emoji/github.png new file mode 100644 index 0000000..88efc35 Binary files /dev/null and b/data/gitea/public/assets/img/emoji/github.png differ diff --git a/data/gitea/public/assets/img/emoji/gitlab.png b/data/gitea/public/assets/img/emoji/gitlab.png new file mode 100644 index 0000000..55a0d2b Binary files /dev/null and b/data/gitea/public/assets/img/emoji/gitlab.png differ diff --git a/data/gitea/public/assets/img/emoji/gogs.png b/data/gitea/public/assets/img/emoji/gogs.png new file mode 100644 index 0000000..6471a84 Binary files /dev/null and b/data/gitea/public/assets/img/emoji/gogs.png differ diff --git a/data/gitea/public/assets/img/failed.png b/data/gitea/public/assets/img/failed.png new file mode 100644 index 0000000..b37545f Binary files /dev/null and b/data/gitea/public/assets/img/failed.png differ diff --git a/data/gitea/public/assets/img/favicon.png b/data/gitea/public/assets/img/favicon.png new file mode 100644 index 0000000..dcd4edb Binary files /dev/null and b/data/gitea/public/assets/img/favicon.png differ diff --git a/data/gitea/public/assets/img/favicon.svg b/data/gitea/public/assets/img/favicon.svg new file mode 100644 index 0000000..4329134 --- /dev/null +++ b/data/gitea/public/assets/img/favicon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/feishu.png b/data/gitea/public/assets/img/feishu.png new file mode 100644 index 0000000..2c3ab74 Binary files /dev/null and b/data/gitea/public/assets/img/feishu.png differ diff --git a/data/gitea/public/assets/img/gitea.svg b/data/gitea/public/assets/img/gitea.svg new file mode 100644 index 0000000..dca9b4f --- /dev/null +++ b/data/gitea/public/assets/img/gitea.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/gogs.ico b/data/gitea/public/assets/img/gogs.ico new file mode 100644 index 0000000..3438553 Binary files /dev/null and b/data/gitea/public/assets/img/gogs.ico differ diff --git a/data/gitea/public/assets/img/loading.png b/data/gitea/public/assets/img/loading.png new file mode 100644 index 0000000..c5ba3d9 Binary files /dev/null and b/data/gitea/public/assets/img/loading.png differ diff --git a/data/gitea/public/assets/img/logo.png b/data/gitea/public/assets/img/logo.png new file mode 100644 index 0000000..c7971f9 Binary files /dev/null and b/data/gitea/public/assets/img/logo.png differ diff --git a/data/gitea/public/assets/img/logo.svg b/data/gitea/public/assets/img/logo.svg new file mode 100644 index 0000000..4329134 --- /dev/null +++ b/data/gitea/public/assets/img/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/msteams.png b/data/gitea/public/assets/img/msteams.png new file mode 100644 index 0000000..d7b81da Binary files /dev/null and b/data/gitea/public/assets/img/msteams.png differ diff --git a/data/gitea/public/assets/img/openid-16x16.png b/data/gitea/public/assets/img/openid-16x16.png new file mode 100644 index 0000000..ee1b00e Binary files /dev/null and b/data/gitea/public/assets/img/openid-16x16.png differ diff --git a/data/gitea/public/assets/img/packagist.png b/data/gitea/public/assets/img/packagist.png new file mode 100644 index 0000000..76c0e62 Binary files /dev/null and b/data/gitea/public/assets/img/packagist.png differ diff --git a/data/gitea/public/assets/img/repo_default.png b/data/gitea/public/assets/img/repo_default.png new file mode 100644 index 0000000..fa11c82 Binary files /dev/null and b/data/gitea/public/assets/img/repo_default.png differ diff --git a/data/gitea/public/assets/img/slack.png b/data/gitea/public/assets/img/slack.png new file mode 100644 index 0000000..28d863f Binary files /dev/null and b/data/gitea/public/assets/img/slack.png differ diff --git a/data/gitea/public/assets/img/svg/fontawesome-openid.svg b/data/gitea/public/assets/img/svg/fontawesome-openid.svg new file mode 100644 index 0000000..f806899 --- /dev/null +++ b/data/gitea/public/assets/img/svg/fontawesome-openid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/fontawesome-save.svg b/data/gitea/public/assets/img/svg/fontawesome-save.svg new file mode 100644 index 0000000..e7b3ea9 --- /dev/null +++ b/data/gitea/public/assets/img/svg/fontawesome-save.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/fontawesome-send.svg b/data/gitea/public/assets/img/svg/fontawesome-send.svg new file mode 100644 index 0000000..f94715d --- /dev/null +++ b/data/gitea/public/assets/img/svg/fontawesome-send.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/fontawesome-windows.svg b/data/gitea/public/assets/img/svg/fontawesome-windows.svg new file mode 100644 index 0000000..b1c1604 --- /dev/null +++ b/data/gitea/public/assets/img/svg/fontawesome-windows.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-alpine.svg b/data/gitea/public/assets/img/svg/gitea-alpine.svg new file mode 100644 index 0000000..43ebbaa --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-alpine.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-azuread.svg b/data/gitea/public/assets/img/svg/gitea-azuread.svg new file mode 100644 index 0000000..2bef0f7 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-azuread.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-azureadv2.svg b/data/gitea/public/assets/img/svg/gitea-azureadv2.svg new file mode 100644 index 0000000..e8ffdf0 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-azureadv2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-bitbucket.svg b/data/gitea/public/assets/img/svg/gitea-bitbucket.svg new file mode 100644 index 0000000..83e4c5c --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-bitbucket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-cargo.svg b/data/gitea/public/assets/img/svg/gitea-cargo.svg new file mode 100644 index 0000000..76467f6 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-cargo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-chef.svg b/data/gitea/public/assets/img/svg/gitea-chef.svg new file mode 100644 index 0000000..c5e8a72 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-chef.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-codebase.svg b/data/gitea/public/assets/img/svg/gitea-codebase.svg new file mode 100644 index 0000000..b210801 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-codebase.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-composer.svg b/data/gitea/public/assets/img/svg/gitea-composer.svg new file mode 100644 index 0000000..1b91102 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-composer.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-conan.svg b/data/gitea/public/assets/img/svg/gitea-conan.svg new file mode 100644 index 0000000..bc09314 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-conan.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-conda.svg b/data/gitea/public/assets/img/svg/gitea-conda.svg new file mode 100644 index 0000000..800730a --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-conda.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-cran.svg b/data/gitea/public/assets/img/svg/gitea-cran.svg new file mode 100644 index 0000000..ba76329 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-cran.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-debian.svg b/data/gitea/public/assets/img/svg/gitea-debian.svg new file mode 100644 index 0000000..fa2f2f4 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-debian.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-discord.svg b/data/gitea/public/assets/img/svg/gitea-discord.svg new file mode 100644 index 0000000..2edcb4f --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-discord.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-double-chevron-left.svg b/data/gitea/public/assets/img/svg/gitea-double-chevron-left.svg new file mode 100644 index 0000000..ec7d121 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-double-chevron-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-double-chevron-right.svg b/data/gitea/public/assets/img/svg/gitea-double-chevron-right.svg new file mode 100644 index 0000000..e312728 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-double-chevron-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-dropbox.svg b/data/gitea/public/assets/img/svg/gitea-dropbox.svg new file mode 100644 index 0000000..bbcbdb6 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-dropbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-empty-checkbox.svg b/data/gitea/public/assets/img/svg/gitea-empty-checkbox.svg new file mode 100644 index 0000000..40d7536 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-empty-checkbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-exclamation.svg b/data/gitea/public/assets/img/svg/gitea-exclamation.svg new file mode 100644 index 0000000..b899f8d --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-exclamation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-facebook.svg b/data/gitea/public/assets/img/svg/gitea-facebook.svg new file mode 100644 index 0000000..6101bec --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-facebook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-git.svg b/data/gitea/public/assets/img/svg/gitea-git.svg new file mode 100644 index 0000000..33a98de --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-git.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-gitbucket.svg b/data/gitea/public/assets/img/svg/gitea-gitbucket.svg new file mode 100644 index 0000000..62f6034 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-gitbucket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-gitea.svg b/data/gitea/public/assets/img/svg/gitea-gitea.svg new file mode 100644 index 0000000..5d89fa1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-gitea.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-gitlab.svg b/data/gitea/public/assets/img/svg/gitea-gitlab.svg new file mode 100644 index 0000000..03fcb0b --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-gitlab.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-go.svg b/data/gitea/public/assets/img/svg/gitea-go.svg new file mode 100644 index 0000000..bc7969d --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-go.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-gogs.svg b/data/gitea/public/assets/img/svg/gitea-gogs.svg new file mode 100644 index 0000000..7727542 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-gogs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-google.svg b/data/gitea/public/assets/img/svg/gitea-google.svg new file mode 100644 index 0000000..7dd2622 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-google.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-helm.svg b/data/gitea/public/assets/img/svg/gitea-helm.svg new file mode 100644 index 0000000..2419c31 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-helm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-jetbrains.svg b/data/gitea/public/assets/img/svg/gitea-jetbrains.svg new file mode 100644 index 0000000..5821736 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-jetbrains.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-join.svg b/data/gitea/public/assets/img/svg/gitea-join.svg new file mode 100644 index 0000000..c1d2f27 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-join.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-lock-cog.svg b/data/gitea/public/assets/img/svg/gitea-lock-cog.svg new file mode 100644 index 0000000..683c2ce --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-lock-cog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-lock.svg b/data/gitea/public/assets/img/svg/gitea-lock.svg new file mode 100644 index 0000000..87069ea --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-mastodon.svg b/data/gitea/public/assets/img/svg/gitea-mastodon.svg new file mode 100644 index 0000000..c611990 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-mastodon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-matrix.svg b/data/gitea/public/assets/img/svg/gitea-matrix.svg new file mode 100644 index 0000000..89c6258 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-matrix.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-maven.svg b/data/gitea/public/assets/img/svg/gitea-maven.svg new file mode 100644 index 0000000..320d01a --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-maven.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-microsoftonline.svg b/data/gitea/public/assets/img/svg/gitea-microsoftonline.svg new file mode 100644 index 0000000..f2ce13a --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-microsoftonline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-nextcloud.svg b/data/gitea/public/assets/img/svg/gitea-nextcloud.svg new file mode 100644 index 0000000..3d760b3 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-nextcloud.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-npm.svg b/data/gitea/public/assets/img/svg/gitea-npm.svg new file mode 100644 index 0000000..7ef74e7 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-npm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-nuget.svg b/data/gitea/public/assets/img/svg/gitea-nuget.svg new file mode 100644 index 0000000..da6bfd2 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-nuget.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-onedev.svg b/data/gitea/public/assets/img/svg/gitea-onedev.svg new file mode 100644 index 0000000..94ad1ba --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-onedev.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-openid.svg b/data/gitea/public/assets/img/svg/gitea-openid.svg new file mode 100644 index 0000000..f4702d2 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-openid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-pub.svg b/data/gitea/public/assets/img/svg/gitea-pub.svg new file mode 100644 index 0000000..4125867 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-pub.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-python.svg b/data/gitea/public/assets/img/svg/gitea-python.svg new file mode 100644 index 0000000..68e19ef --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-python.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-rpm.svg b/data/gitea/public/assets/img/svg/gitea-rpm.svg new file mode 100644 index 0000000..d0d3db1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-rpm.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-rubygems.svg b/data/gitea/public/assets/img/svg/gitea-rubygems.svg new file mode 100644 index 0000000..4e43bdf --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-rubygems.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-split.svg b/data/gitea/public/assets/img/svg/gitea-split.svg new file mode 100644 index 0000000..9ce3077 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-split.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-swift.svg b/data/gitea/public/assets/img/svg/gitea-swift.svg new file mode 100644 index 0000000..4182100 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-swift.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-twitter.svg b/data/gitea/public/assets/img/svg/gitea-twitter.svg new file mode 100644 index 0000000..5ed1e26 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-twitter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-unlock.svg b/data/gitea/public/assets/img/svg/gitea-unlock.svg new file mode 100644 index 0000000..595dec0 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-unlock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-vagrant.svg b/data/gitea/public/assets/img/svg/gitea-vagrant.svg new file mode 100644 index 0000000..ba50101 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-vagrant.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-vscode.svg b/data/gitea/public/assets/img/svg/gitea-vscode.svg new file mode 100644 index 0000000..453b9be --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-vscode.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-vscodium.svg b/data/gitea/public/assets/img/svg/gitea-vscodium.svg new file mode 100644 index 0000000..6aad3d3 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-vscodium.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-whitespace.svg b/data/gitea/public/assets/img/svg/gitea-whitespace.svg new file mode 100644 index 0000000..9d3b342 --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-whitespace.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/gitea-yandex.svg b/data/gitea/public/assets/img/svg/gitea-yandex.svg new file mode 100644 index 0000000..d24c0be --- /dev/null +++ b/data/gitea/public/assets/img/svg/gitea-yandex.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/material-invert-colors.svg b/data/gitea/public/assets/img/svg/material-invert-colors.svg new file mode 100644 index 0000000..feddf73 --- /dev/null +++ b/data/gitea/public/assets/img/svg/material-invert-colors.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/material-palette.svg b/data/gitea/public/assets/img/svg/material-palette.svg new file mode 100644 index 0000000..f98cef7 --- /dev/null +++ b/data/gitea/public/assets/img/svg/material-palette.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-accessibility-inset.svg b/data/gitea/public/assets/img/svg/octicon-accessibility-inset.svg new file mode 100644 index 0000000..2a728a9 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-accessibility-inset.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-accessibility.svg b/data/gitea/public/assets/img/svg/octicon-accessibility.svg new file mode 100644 index 0000000..fcd5682 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-accessibility.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-alert-fill.svg b/data/gitea/public/assets/img/svg/octicon-alert-fill.svg new file mode 100644 index 0000000..a2135af --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-alert-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-alert.svg b/data/gitea/public/assets/img/svg/octicon-alert.svg new file mode 100644 index 0000000..1d97fbe --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-alert.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-apps.svg b/data/gitea/public/assets/img/svg/octicon-apps.svg new file mode 100644 index 0000000..9119636 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-apps.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-archive.svg b/data/gitea/public/assets/img/svg/octicon-archive.svg new file mode 100644 index 0000000..48ad67e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-archive.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-arrow-both.svg b/data/gitea/public/assets/img/svg/octicon-arrow-both.svg new file mode 100644 index 0000000..aec2d6a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-arrow-both.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-arrow-down-left.svg b/data/gitea/public/assets/img/svg/octicon-arrow-down-left.svg new file mode 100644 index 0000000..720f320 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-arrow-down-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-arrow-down-right.svg b/data/gitea/public/assets/img/svg/octicon-arrow-down-right.svg new file mode 100644 index 0000000..4404432 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-arrow-down-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-arrow-down.svg b/data/gitea/public/assets/img/svg/octicon-arrow-down.svg new file mode 100644 index 0000000..87b5263 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-arrow-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-arrow-left.svg b/data/gitea/public/assets/img/svg/octicon-arrow-left.svg new file mode 100644 index 0000000..0e49872 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-arrow-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-arrow-right.svg b/data/gitea/public/assets/img/svg/octicon-arrow-right.svg new file mode 100644 index 0000000..5298ea1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-arrow-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-arrow-switch.svg b/data/gitea/public/assets/img/svg/octicon-arrow-switch.svg new file mode 100644 index 0000000..8d1bc1d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-arrow-switch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-arrow-up-left.svg b/data/gitea/public/assets/img/svg/octicon-arrow-up-left.svg new file mode 100644 index 0000000..053102b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-arrow-up-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-arrow-up-right.svg b/data/gitea/public/assets/img/svg/octicon-arrow-up-right.svg new file mode 100644 index 0000000..d3c0533 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-arrow-up-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-arrow-up.svg b/data/gitea/public/assets/img/svg/octicon-arrow-up.svg new file mode 100644 index 0000000..b790d6e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-arrow-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-beaker.svg b/data/gitea/public/assets/img/svg/octicon-beaker.svg new file mode 100644 index 0000000..ce0ad4d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-beaker.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-bell-fill.svg b/data/gitea/public/assets/img/svg/octicon-bell-fill.svg new file mode 100644 index 0000000..a385b9e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-bell-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-bell-slash.svg b/data/gitea/public/assets/img/svg/octicon-bell-slash.svg new file mode 100644 index 0000000..344671d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-bell-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-bell.svg b/data/gitea/public/assets/img/svg/octicon-bell.svg new file mode 100644 index 0000000..26903da --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-bell.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-blocked.svg b/data/gitea/public/assets/img/svg/octicon-blocked.svg new file mode 100644 index 0000000..0d0a7c0 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-blocked.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-bold.svg b/data/gitea/public/assets/img/svg/octicon-bold.svg new file mode 100644 index 0000000..ea25459 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-bold.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-book.svg b/data/gitea/public/assets/img/svg/octicon-book.svg new file mode 100644 index 0000000..3b58ec1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-book.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-bookmark-slash.svg b/data/gitea/public/assets/img/svg/octicon-bookmark-slash.svg new file mode 100644 index 0000000..781ae92 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-bookmark-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-bookmark.svg b/data/gitea/public/assets/img/svg/octicon-bookmark.svg new file mode 100644 index 0000000..5b25ef6 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-bookmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-briefcase.svg b/data/gitea/public/assets/img/svg/octicon-briefcase.svg new file mode 100644 index 0000000..3293cc8 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-briefcase.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-broadcast.svg b/data/gitea/public/assets/img/svg/octicon-broadcast.svg new file mode 100644 index 0000000..e8c9f6d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-broadcast.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-browser.svg b/data/gitea/public/assets/img/svg/octicon-browser.svg new file mode 100644 index 0000000..c1399fa --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-browser.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-bug.svg b/data/gitea/public/assets/img/svg/octicon-bug.svg new file mode 100644 index 0000000..20a0904 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-bug.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-cache.svg b/data/gitea/public/assets/img/svg/octicon-cache.svg new file mode 100644 index 0000000..5b8a792 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-cache.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-calendar.svg b/data/gitea/public/assets/img/svg/octicon-calendar.svg new file mode 100644 index 0000000..55fd2f4 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-calendar.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-check-circle-fill.svg b/data/gitea/public/assets/img/svg/octicon-check-circle-fill.svg new file mode 100644 index 0000000..8840d55 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-check-circle-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-check-circle.svg b/data/gitea/public/assets/img/svg/octicon-check-circle.svg new file mode 100644 index 0000000..63ff6d2 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-check-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-check.svg b/data/gitea/public/assets/img/svg/octicon-check.svg new file mode 100644 index 0000000..b76500b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-checkbox.svg b/data/gitea/public/assets/img/svg/octicon-checkbox.svg new file mode 100644 index 0000000..b9711c5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-checkbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-checklist.svg b/data/gitea/public/assets/img/svg/octicon-checklist.svg new file mode 100644 index 0000000..172f13a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-checklist.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-chevron-down.svg b/data/gitea/public/assets/img/svg/octicon-chevron-down.svg new file mode 100644 index 0000000..824e476 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-chevron-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-chevron-left.svg b/data/gitea/public/assets/img/svg/octicon-chevron-left.svg new file mode 100644 index 0000000..ec2e25a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-chevron-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-chevron-right.svg b/data/gitea/public/assets/img/svg/octicon-chevron-right.svg new file mode 100644 index 0000000..4a57515 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-chevron-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-chevron-up.svg b/data/gitea/public/assets/img/svg/octicon-chevron-up.svg new file mode 100644 index 0000000..4dac4b5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-chevron-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-circle-slash.svg b/data/gitea/public/assets/img/svg/octicon-circle-slash.svg new file mode 100644 index 0000000..fbc3865 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-circle-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-circle.svg b/data/gitea/public/assets/img/svg/octicon-circle.svg new file mode 100644 index 0000000..c2fa88b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-clock-fill.svg b/data/gitea/public/assets/img/svg/octicon-clock-fill.svg new file mode 100644 index 0000000..423e5fd --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-clock-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-clock.svg b/data/gitea/public/assets/img/svg/octicon-clock.svg new file mode 100644 index 0000000..186f6fb --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-clock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-cloud-offline.svg b/data/gitea/public/assets/img/svg/octicon-cloud-offline.svg new file mode 100644 index 0000000..a4c3091 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-cloud-offline.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-cloud.svg b/data/gitea/public/assets/img/svg/octicon-cloud.svg new file mode 100644 index 0000000..38b6a76 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-cloud.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-code-of-conduct.svg b/data/gitea/public/assets/img/svg/octicon-code-of-conduct.svg new file mode 100644 index 0000000..20d4152 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-code-of-conduct.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-code-review.svg b/data/gitea/public/assets/img/svg/octicon-code-review.svg new file mode 100644 index 0000000..2ba5e12 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-code-review.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-code-square.svg b/data/gitea/public/assets/img/svg/octicon-code-square.svg new file mode 100644 index 0000000..8dadc44 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-code-square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-code.svg b/data/gitea/public/assets/img/svg/octicon-code.svg new file mode 100644 index 0000000..a18c3b6 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-code.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-codescan-checkmark.svg b/data/gitea/public/assets/img/svg/octicon-codescan-checkmark.svg new file mode 100644 index 0000000..e81d4e9 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-codescan-checkmark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-codescan.svg b/data/gitea/public/assets/img/svg/octicon-codescan.svg new file mode 100644 index 0000000..c03a0e5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-codescan.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-codespaces.svg b/data/gitea/public/assets/img/svg/octicon-codespaces.svg new file mode 100644 index 0000000..30a3890 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-codespaces.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-columns.svg b/data/gitea/public/assets/img/svg/octicon-columns.svg new file mode 100644 index 0000000..a88b807 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-columns.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-command-palette.svg b/data/gitea/public/assets/img/svg/octicon-command-palette.svg new file mode 100644 index 0000000..6c85281 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-command-palette.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-comment-discussion.svg b/data/gitea/public/assets/img/svg/octicon-comment-discussion.svg new file mode 100644 index 0000000..2a2728d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-comment-discussion.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-comment.svg b/data/gitea/public/assets/img/svg/octicon-comment.svg new file mode 100644 index 0000000..916d808 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-comment.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-container.svg b/data/gitea/public/assets/img/svg/octicon-container.svg new file mode 100644 index 0000000..c8eeeb1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-container.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-copilot-error.svg b/data/gitea/public/assets/img/svg/octicon-copilot-error.svg new file mode 100644 index 0000000..d213328 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-copilot-error.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-copilot-warning.svg b/data/gitea/public/assets/img/svg/octicon-copilot-warning.svg new file mode 100644 index 0000000..af5fa66 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-copilot-warning.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-copilot.svg b/data/gitea/public/assets/img/svg/octicon-copilot.svg new file mode 100644 index 0000000..c23f454 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-copilot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-copy.svg b/data/gitea/public/assets/img/svg/octicon-copy.svg new file mode 100644 index 0000000..a372c5b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-copy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-cpu.svg b/data/gitea/public/assets/img/svg/octicon-cpu.svg new file mode 100644 index 0000000..753b9b5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-cpu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-credit-card.svg b/data/gitea/public/assets/img/svg/octicon-credit-card.svg new file mode 100644 index 0000000..94c8f15 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-credit-card.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-cross-reference.svg b/data/gitea/public/assets/img/svg/octicon-cross-reference.svg new file mode 100644 index 0000000..80b122b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-cross-reference.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-dash.svg b/data/gitea/public/assets/img/svg/octicon-dash.svg new file mode 100644 index 0000000..39ebd0d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-dash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-database.svg b/data/gitea/public/assets/img/svg/octicon-database.svg new file mode 100644 index 0000000..cbc9749 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-database.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-dependabot.svg b/data/gitea/public/assets/img/svg/octicon-dependabot.svg new file mode 100644 index 0000000..250d10c --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-dependabot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-desktop-download.svg b/data/gitea/public/assets/img/svg/octicon-desktop-download.svg new file mode 100644 index 0000000..4ddaa13 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-desktop-download.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-device-camera-video.svg b/data/gitea/public/assets/img/svg/octicon-device-camera-video.svg new file mode 100644 index 0000000..4e7e1e7 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-device-camera-video.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-device-camera.svg b/data/gitea/public/assets/img/svg/octicon-device-camera.svg new file mode 100644 index 0000000..bf4de4a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-device-camera.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-device-desktop.svg b/data/gitea/public/assets/img/svg/octicon-device-desktop.svg new file mode 100644 index 0000000..4a61836 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-device-desktop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-device-mobile.svg b/data/gitea/public/assets/img/svg/octicon-device-mobile.svg new file mode 100644 index 0000000..cf247e2 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-device-mobile.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-devices.svg b/data/gitea/public/assets/img/svg/octicon-devices.svg new file mode 100644 index 0000000..84d2a88 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-devices.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-diamond.svg b/data/gitea/public/assets/img/svg/octicon-diamond.svg new file mode 100644 index 0000000..82d0bcb --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-diamond.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-diff-added.svg b/data/gitea/public/assets/img/svg/octicon-diff-added.svg new file mode 100644 index 0000000..276d162 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-diff-added.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-diff-ignored.svg b/data/gitea/public/assets/img/svg/octicon-diff-ignored.svg new file mode 100644 index 0000000..6949409 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-diff-ignored.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-diff-modified.svg b/data/gitea/public/assets/img/svg/octicon-diff-modified.svg new file mode 100644 index 0000000..1c0d729 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-diff-modified.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-diff-removed.svg b/data/gitea/public/assets/img/svg/octicon-diff-removed.svg new file mode 100644 index 0000000..d366a10 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-diff-removed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-diff-renamed.svg b/data/gitea/public/assets/img/svg/octicon-diff-renamed.svg new file mode 100644 index 0000000..f07999a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-diff-renamed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-diff.svg b/data/gitea/public/assets/img/svg/octicon-diff.svg new file mode 100644 index 0000000..4714b0f --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-diff.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-discussion-closed.svg b/data/gitea/public/assets/img/svg/octicon-discussion-closed.svg new file mode 100644 index 0000000..d97598d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-discussion-closed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-discussion-duplicate.svg b/data/gitea/public/assets/img/svg/octicon-discussion-duplicate.svg new file mode 100644 index 0000000..01fd664 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-discussion-duplicate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-discussion-outdated.svg b/data/gitea/public/assets/img/svg/octicon-discussion-outdated.svg new file mode 100644 index 0000000..515e63a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-discussion-outdated.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-dot-fill.svg b/data/gitea/public/assets/img/svg/octicon-dot-fill.svg new file mode 100644 index 0000000..17db30b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-dot-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-dot.svg b/data/gitea/public/assets/img/svg/octicon-dot.svg new file mode 100644 index 0000000..fe03e3d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-dot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-download.svg b/data/gitea/public/assets/img/svg/octicon-download.svg new file mode 100644 index 0000000..8058419 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-download.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-duplicate.svg b/data/gitea/public/assets/img/svg/octicon-duplicate.svg new file mode 100644 index 0000000..289ac59 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-duplicate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-ellipsis.svg b/data/gitea/public/assets/img/svg/octicon-ellipsis.svg new file mode 100644 index 0000000..152e6eb --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-ellipsis.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-eye-closed.svg b/data/gitea/public/assets/img/svg/octicon-eye-closed.svg new file mode 100644 index 0000000..3b49386 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-eye-closed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-eye.svg b/data/gitea/public/assets/img/svg/octicon-eye.svg new file mode 100644 index 0000000..c0b3648 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-eye.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-discussion.svg b/data/gitea/public/assets/img/svg/octicon-feed-discussion.svg new file mode 100644 index 0000000..e8ccfff --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-discussion.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-forked.svg b/data/gitea/public/assets/img/svg/octicon-feed-forked.svg new file mode 100644 index 0000000..65b0eb1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-forked.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-heart.svg b/data/gitea/public/assets/img/svg/octicon-feed-heart.svg new file mode 100644 index 0000000..f2d620d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-heart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-issue-closed.svg b/data/gitea/public/assets/img/svg/octicon-feed-issue-closed.svg new file mode 100644 index 0000000..9cd3127 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-issue-closed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-issue-draft.svg b/data/gitea/public/assets/img/svg/octicon-feed-issue-draft.svg new file mode 100644 index 0000000..091a591 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-issue-draft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-issue-open.svg b/data/gitea/public/assets/img/svg/octicon-feed-issue-open.svg new file mode 100644 index 0000000..6d89898 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-issue-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-issue-reopen.svg b/data/gitea/public/assets/img/svg/octicon-feed-issue-reopen.svg new file mode 100644 index 0000000..c82d5b0 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-issue-reopen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-merged.svg b/data/gitea/public/assets/img/svg/octicon-feed-merged.svg new file mode 100644 index 0000000..2984bef --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-merged.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-person.svg b/data/gitea/public/assets/img/svg/octicon-feed-person.svg new file mode 100644 index 0000000..0854866 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-person.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-plus.svg b/data/gitea/public/assets/img/svg/octicon-feed-plus.svg new file mode 100644 index 0000000..6d0286e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-public.svg b/data/gitea/public/assets/img/svg/octicon-feed-public.svg new file mode 100644 index 0000000..926f7fe --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-public.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-pull-request-closed.svg b/data/gitea/public/assets/img/svg/octicon-feed-pull-request-closed.svg new file mode 100644 index 0000000..b594acd --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-pull-request-closed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-pull-request-draft.svg b/data/gitea/public/assets/img/svg/octicon-feed-pull-request-draft.svg new file mode 100644 index 0000000..1ae02e6 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-pull-request-draft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-pull-request-open.svg b/data/gitea/public/assets/img/svg/octicon-feed-pull-request-open.svg new file mode 100644 index 0000000..d1349c2 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-pull-request-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-repo.svg b/data/gitea/public/assets/img/svg/octicon-feed-repo.svg new file mode 100644 index 0000000..fe099c5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-repo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-rocket.svg b/data/gitea/public/assets/img/svg/octicon-feed-rocket.svg new file mode 100644 index 0000000..48587a1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-rocket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-star.svg b/data/gitea/public/assets/img/svg/octicon-feed-star.svg new file mode 100644 index 0000000..3c3a6aa --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-star.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-tag.svg b/data/gitea/public/assets/img/svg/octicon-feed-tag.svg new file mode 100644 index 0000000..d63dd74 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-tag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-feed-trophy.svg b/data/gitea/public/assets/img/svg/octicon-feed-trophy.svg new file mode 100644 index 0000000..ba06c3e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-feed-trophy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-added.svg b/data/gitea/public/assets/img/svg/octicon-file-added.svg new file mode 100644 index 0000000..a8cd80f --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-added.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-badge.svg b/data/gitea/public/assets/img/svg/octicon-file-badge.svg new file mode 100644 index 0000000..5f0a742 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-badge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-binary.svg b/data/gitea/public/assets/img/svg/octicon-file-binary.svg new file mode 100644 index 0000000..492e7d5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-binary.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-code.svg b/data/gitea/public/assets/img/svg/octicon-file-code.svg new file mode 100644 index 0000000..66430e3 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-code.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-diff.svg b/data/gitea/public/assets/img/svg/octicon-file-diff.svg new file mode 100644 index 0000000..a58df3e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-diff.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-directory-fill.svg b/data/gitea/public/assets/img/svg/octicon-file-directory-fill.svg new file mode 100644 index 0000000..800e6ba --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-directory-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-directory-open-fill.svg b/data/gitea/public/assets/img/svg/octicon-file-directory-open-fill.svg new file mode 100644 index 0000000..0d1bac3 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-directory-open-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-directory-symlink.svg b/data/gitea/public/assets/img/svg/octicon-file-directory-symlink.svg new file mode 100644 index 0000000..8a6142b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-directory-symlink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-directory.svg b/data/gitea/public/assets/img/svg/octicon-file-directory.svg new file mode 100644 index 0000000..2376e5a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-directory.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-moved.svg b/data/gitea/public/assets/img/svg/octicon-file-moved.svg new file mode 100644 index 0000000..03735b0 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-moved.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-removed.svg b/data/gitea/public/assets/img/svg/octicon-file-removed.svg new file mode 100644 index 0000000..08158af --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-removed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-submodule.svg b/data/gitea/public/assets/img/svg/octicon-file-submodule.svg new file mode 100644 index 0000000..8eab90f --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-submodule.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-symlink-file.svg b/data/gitea/public/assets/img/svg/octicon-file-symlink-file.svg new file mode 100644 index 0000000..21b8cbf --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-symlink-file.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file-zip.svg b/data/gitea/public/assets/img/svg/octicon-file-zip.svg new file mode 100644 index 0000000..3adddf0 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file-zip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-file.svg b/data/gitea/public/assets/img/svg/octicon-file.svg new file mode 100644 index 0000000..faf92c5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-file.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-filter-remove.svg b/data/gitea/public/assets/img/svg/octicon-filter-remove.svg new file mode 100644 index 0000000..c100106 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-filter-remove.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-filter.svg b/data/gitea/public/assets/img/svg/octicon-filter.svg new file mode 100644 index 0000000..63cd16e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-filter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-fiscal-host.svg b/data/gitea/public/assets/img/svg/octicon-fiscal-host.svg new file mode 100644 index 0000000..877850a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-fiscal-host.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-flame.svg b/data/gitea/public/assets/img/svg/octicon-flame.svg new file mode 100644 index 0000000..0db84ac --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-flame.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-fold-down.svg b/data/gitea/public/assets/img/svg/octicon-fold-down.svg new file mode 100644 index 0000000..957a95f --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-fold-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-fold-up.svg b/data/gitea/public/assets/img/svg/octicon-fold-up.svg new file mode 100644 index 0000000..c139cf8 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-fold-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-fold.svg b/data/gitea/public/assets/img/svg/octicon-fold.svg new file mode 100644 index 0000000..5657e93 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-fold.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-gear.svg b/data/gitea/public/assets/img/svg/octicon-gear.svg new file mode 100644 index 0000000..be6eee1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-gear.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-gift.svg b/data/gitea/public/assets/img/svg/octicon-gift.svg new file mode 100644 index 0000000..4a6ba30 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-gift.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-git-branch.svg b/data/gitea/public/assets/img/svg/octicon-git-branch.svg new file mode 100644 index 0000000..c7116ad --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-git-branch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-git-commit.svg b/data/gitea/public/assets/img/svg/octicon-git-commit.svg new file mode 100644 index 0000000..6c2ac50 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-git-commit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-git-compare.svg b/data/gitea/public/assets/img/svg/octicon-git-compare.svg new file mode 100644 index 0000000..6bf4559 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-git-compare.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-git-merge-queue.svg b/data/gitea/public/assets/img/svg/octicon-git-merge-queue.svg new file mode 100644 index 0000000..bfe39b3 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-git-merge-queue.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-git-merge.svg b/data/gitea/public/assets/img/svg/octicon-git-merge.svg new file mode 100644 index 0000000..1729961 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-git-merge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-git-pull-request-closed.svg b/data/gitea/public/assets/img/svg/octicon-git-pull-request-closed.svg new file mode 100644 index 0000000..628f9fe --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-git-pull-request-closed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-git-pull-request-draft.svg b/data/gitea/public/assets/img/svg/octicon-git-pull-request-draft.svg new file mode 100644 index 0000000..74d9af9 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-git-pull-request-draft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-git-pull-request.svg b/data/gitea/public/assets/img/svg/octicon-git-pull-request.svg new file mode 100644 index 0000000..2277666 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-git-pull-request.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-globe.svg b/data/gitea/public/assets/img/svg/octicon-globe.svg new file mode 100644 index 0000000..60ca5b5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-globe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-goal.svg b/data/gitea/public/assets/img/svg/octicon-goal.svg new file mode 100644 index 0000000..dd36a51 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-goal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-grabber.svg b/data/gitea/public/assets/img/svg/octicon-grabber.svg new file mode 100644 index 0000000..9239188 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-grabber.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-graph.svg b/data/gitea/public/assets/img/svg/octicon-graph.svg new file mode 100644 index 0000000..393faf9 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-graph.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-hash.svg b/data/gitea/public/assets/img/svg/octicon-hash.svg new file mode 100644 index 0000000..9920504 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-hash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-heading.svg b/data/gitea/public/assets/img/svg/octicon-heading.svg new file mode 100644 index 0000000..597e794 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-heading.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-heart-fill.svg b/data/gitea/public/assets/img/svg/octicon-heart-fill.svg new file mode 100644 index 0000000..1f23ef4 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-heart-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-heart.svg b/data/gitea/public/assets/img/svg/octicon-heart.svg new file mode 100644 index 0000000..3980b80 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-heart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-history.svg b/data/gitea/public/assets/img/svg/octicon-history.svg new file mode 100644 index 0000000..fb835dc --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-history.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-home.svg b/data/gitea/public/assets/img/svg/octicon-home.svg new file mode 100644 index 0000000..2586237 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-home.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-horizontal-rule.svg b/data/gitea/public/assets/img/svg/octicon-horizontal-rule.svg new file mode 100644 index 0000000..978874b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-horizontal-rule.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-hourglass.svg b/data/gitea/public/assets/img/svg/octicon-hourglass.svg new file mode 100644 index 0000000..8f84421 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-hourglass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-hubot.svg b/data/gitea/public/assets/img/svg/octicon-hubot.svg new file mode 100644 index 0000000..0042389 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-hubot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-id-badge.svg b/data/gitea/public/assets/img/svg/octicon-id-badge.svg new file mode 100644 index 0000000..ed3acea --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-id-badge.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-image.svg b/data/gitea/public/assets/img/svg/octicon-image.svg new file mode 100644 index 0000000..a3ce77a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-image.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-inbox.svg b/data/gitea/public/assets/img/svg/octicon-inbox.svg new file mode 100644 index 0000000..3d65320 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-inbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-infinity.svg b/data/gitea/public/assets/img/svg/octicon-infinity.svg new file mode 100644 index 0000000..2edd1ef --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-infinity.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-info.svg b/data/gitea/public/assets/img/svg/octicon-info.svg new file mode 100644 index 0000000..de6616b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-info.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-issue-closed.svg b/data/gitea/public/assets/img/svg/octicon-issue-closed.svg new file mode 100644 index 0000000..1d0aa0c --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-issue-closed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-issue-draft.svg b/data/gitea/public/assets/img/svg/octicon-issue-draft.svg new file mode 100644 index 0000000..d02ddd3 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-issue-draft.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-issue-opened.svg b/data/gitea/public/assets/img/svg/octicon-issue-opened.svg new file mode 100644 index 0000000..fb0752d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-issue-opened.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-issue-reopened.svg b/data/gitea/public/assets/img/svg/octicon-issue-reopened.svg new file mode 100644 index 0000000..cd72fac --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-issue-reopened.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-issue-tracked-by.svg b/data/gitea/public/assets/img/svg/octicon-issue-tracked-by.svg new file mode 100644 index 0000000..3cabd78 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-issue-tracked-by.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-issue-tracks.svg b/data/gitea/public/assets/img/svg/octicon-issue-tracks.svg new file mode 100644 index 0000000..7eb86e5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-issue-tracks.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-italic.svg b/data/gitea/public/assets/img/svg/octicon-italic.svg new file mode 100644 index 0000000..2f71fcc --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-italic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-iterations.svg b/data/gitea/public/assets/img/svg/octicon-iterations.svg new file mode 100644 index 0000000..33e98c1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-iterations.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-kebab-horizontal.svg b/data/gitea/public/assets/img/svg/octicon-kebab-horizontal.svg new file mode 100644 index 0000000..d744abf --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-kebab-horizontal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-key-asterisk.svg b/data/gitea/public/assets/img/svg/octicon-key-asterisk.svg new file mode 100644 index 0000000..8b57e47 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-key-asterisk.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-key.svg b/data/gitea/public/assets/img/svg/octicon-key.svg new file mode 100644 index 0000000..6705b71 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-key.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-law.svg b/data/gitea/public/assets/img/svg/octicon-law.svg new file mode 100644 index 0000000..841798e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-law.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-light-bulb.svg b/data/gitea/public/assets/img/svg/octicon-light-bulb.svg new file mode 100644 index 0000000..c438ecf --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-light-bulb.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-link-external.svg b/data/gitea/public/assets/img/svg/octicon-link-external.svg new file mode 100644 index 0000000..6d7750b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-link-external.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-link.svg b/data/gitea/public/assets/img/svg/octicon-link.svg new file mode 100644 index 0000000..9269974 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-link.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-list-ordered.svg b/data/gitea/public/assets/img/svg/octicon-list-ordered.svg new file mode 100644 index 0000000..0040708 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-list-ordered.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-list-unordered.svg b/data/gitea/public/assets/img/svg/octicon-list-unordered.svg new file mode 100644 index 0000000..1976bd8 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-list-unordered.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-location.svg b/data/gitea/public/assets/img/svg/octicon-location.svg new file mode 100644 index 0000000..7f91acc --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-location.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-lock.svg b/data/gitea/public/assets/img/svg/octicon-lock.svg new file mode 100644 index 0000000..b737b56 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-log.svg b/data/gitea/public/assets/img/svg/octicon-log.svg new file mode 100644 index 0000000..0f71230 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-log.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-logo-gist.svg b/data/gitea/public/assets/img/svg/octicon-logo-gist.svg new file mode 100644 index 0000000..8621f14 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-logo-gist.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-logo-github.svg b/data/gitea/public/assets/img/svg/octicon-logo-github.svg new file mode 100644 index 0000000..02d92c9 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-logo-github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-mail.svg b/data/gitea/public/assets/img/svg/octicon-mail.svg new file mode 100644 index 0000000..750b742 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-mail.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-mark-github.svg b/data/gitea/public/assets/img/svg/octicon-mark-github.svg new file mode 100644 index 0000000..9381053 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-mark-github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-markdown.svg b/data/gitea/public/assets/img/svg/octicon-markdown.svg new file mode 100644 index 0000000..6e81e9a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-markdown.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-megaphone.svg b/data/gitea/public/assets/img/svg/octicon-megaphone.svg new file mode 100644 index 0000000..178b550 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-megaphone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-mention.svg b/data/gitea/public/assets/img/svg/octicon-mention.svg new file mode 100644 index 0000000..75b414e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-mention.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-meter.svg b/data/gitea/public/assets/img/svg/octicon-meter.svg new file mode 100644 index 0000000..38bd456 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-meter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-milestone.svg b/data/gitea/public/assets/img/svg/octicon-milestone.svg new file mode 100644 index 0000000..19667b6 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-milestone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-mirror.svg b/data/gitea/public/assets/img/svg/octicon-mirror.svg new file mode 100644 index 0000000..d9c67fc --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-mirror.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-moon.svg b/data/gitea/public/assets/img/svg/octicon-moon.svg new file mode 100644 index 0000000..244544d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-moon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-mortar-board.svg b/data/gitea/public/assets/img/svg/octicon-mortar-board.svg new file mode 100644 index 0000000..8a9f954 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-mortar-board.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-move-to-bottom.svg b/data/gitea/public/assets/img/svg/octicon-move-to-bottom.svg new file mode 100644 index 0000000..3f2a183 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-move-to-bottom.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-move-to-end.svg b/data/gitea/public/assets/img/svg/octicon-move-to-end.svg new file mode 100644 index 0000000..ef3e60b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-move-to-end.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-move-to-start.svg b/data/gitea/public/assets/img/svg/octicon-move-to-start.svg new file mode 100644 index 0000000..2dc1df7 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-move-to-start.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-move-to-top.svg b/data/gitea/public/assets/img/svg/octicon-move-to-top.svg new file mode 100644 index 0000000..109515c --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-move-to-top.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-multi-select.svg b/data/gitea/public/assets/img/svg/octicon-multi-select.svg new file mode 100644 index 0000000..e079b24 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-multi-select.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-mute.svg b/data/gitea/public/assets/img/svg/octicon-mute.svg new file mode 100644 index 0000000..2bb114f --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-mute.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-no-entry.svg b/data/gitea/public/assets/img/svg/octicon-no-entry.svg new file mode 100644 index 0000000..e7117cd --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-no-entry.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-north-star.svg b/data/gitea/public/assets/img/svg/octicon-north-star.svg new file mode 100644 index 0000000..2fef718 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-north-star.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-note.svg b/data/gitea/public/assets/img/svg/octicon-note.svg new file mode 100644 index 0000000..39e7e4e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-note.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-number.svg b/data/gitea/public/assets/img/svg/octicon-number.svg new file mode 100644 index 0000000..0a88de1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-number.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-organization.svg b/data/gitea/public/assets/img/svg/octicon-organization.svg new file mode 100644 index 0000000..0799b07 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-organization.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-package-dependencies.svg b/data/gitea/public/assets/img/svg/octicon-package-dependencies.svg new file mode 100644 index 0000000..8cb5671 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-package-dependencies.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-package-dependents.svg b/data/gitea/public/assets/img/svg/octicon-package-dependents.svg new file mode 100644 index 0000000..22dd4d1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-package-dependents.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-package.svg b/data/gitea/public/assets/img/svg/octicon-package.svg new file mode 100644 index 0000000..61b2225 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-package.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-paintbrush.svg b/data/gitea/public/assets/img/svg/octicon-paintbrush.svg new file mode 100644 index 0000000..d9ac076 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-paintbrush.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-paper-airplane.svg b/data/gitea/public/assets/img/svg/octicon-paper-airplane.svg new file mode 100644 index 0000000..8e4a929 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-paper-airplane.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-paperclip.svg b/data/gitea/public/assets/img/svg/octicon-paperclip.svg new file mode 100644 index 0000000..de38702 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-paperclip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-passkey-fill.svg b/data/gitea/public/assets/img/svg/octicon-passkey-fill.svg new file mode 100644 index 0000000..98fcafb --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-passkey-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-paste.svg b/data/gitea/public/assets/img/svg/octicon-paste.svg new file mode 100644 index 0000000..212c2b8 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-paste.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-pencil.svg b/data/gitea/public/assets/img/svg/octicon-pencil.svg new file mode 100644 index 0000000..f0f1f73 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-pencil.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-people.svg b/data/gitea/public/assets/img/svg/octicon-people.svg new file mode 100644 index 0000000..9143c70 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-people.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-person-add.svg b/data/gitea/public/assets/img/svg/octicon-person-add.svg new file mode 100644 index 0000000..4c95172 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-person-add.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-person-fill.svg b/data/gitea/public/assets/img/svg/octicon-person-fill.svg new file mode 100644 index 0000000..4715c29 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-person-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-person.svg b/data/gitea/public/assets/img/svg/octicon-person.svg new file mode 100644 index 0000000..2d12f02 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-person.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-pin-slash.svg b/data/gitea/public/assets/img/svg/octicon-pin-slash.svg new file mode 100644 index 0000000..adf7ed4 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-pin-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-pin.svg b/data/gitea/public/assets/img/svg/octicon-pin.svg new file mode 100644 index 0000000..49ac5af --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-pin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-pivot-column.svg b/data/gitea/public/assets/img/svg/octicon-pivot-column.svg new file mode 100644 index 0000000..795fde1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-pivot-column.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-play.svg b/data/gitea/public/assets/img/svg/octicon-play.svg new file mode 100644 index 0000000..dca6572 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-play.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-plug.svg b/data/gitea/public/assets/img/svg/octicon-plug.svg new file mode 100644 index 0000000..4caf972 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-plug.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-plus-circle.svg b/data/gitea/public/assets/img/svg/octicon-plus-circle.svg new file mode 100644 index 0000000..71c5563 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-plus-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-plus.svg b/data/gitea/public/assets/img/svg/octicon-plus.svg new file mode 100644 index 0000000..1fd3743 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-project-roadmap.svg b/data/gitea/public/assets/img/svg/octicon-project-roadmap.svg new file mode 100644 index 0000000..a6b15c1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-project-roadmap.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-project-symlink.svg b/data/gitea/public/assets/img/svg/octicon-project-symlink.svg new file mode 100644 index 0000000..bc9104a --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-project-symlink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-project-template.svg b/data/gitea/public/assets/img/svg/octicon-project-template.svg new file mode 100644 index 0000000..31d4cc0 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-project-template.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-project.svg b/data/gitea/public/assets/img/svg/octicon-project.svg new file mode 100644 index 0000000..9fb23c7 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-project.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-pulse.svg b/data/gitea/public/assets/img/svg/octicon-pulse.svg new file mode 100644 index 0000000..2450ffe --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-pulse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-question.svg b/data/gitea/public/assets/img/svg/octicon-question.svg new file mode 100644 index 0000000..6d6a3f5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-quote.svg b/data/gitea/public/assets/img/svg/octicon-quote.svg new file mode 100644 index 0000000..c3b02f4 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-quote.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-read.svg b/data/gitea/public/assets/img/svg/octicon-read.svg new file mode 100644 index 0000000..cd5ee20 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-read.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-redo.svg b/data/gitea/public/assets/img/svg/octicon-redo.svg new file mode 100644 index 0000000..a81a321 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-redo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-rel-file-path.svg b/data/gitea/public/assets/img/svg/octicon-rel-file-path.svg new file mode 100644 index 0000000..45837c2 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-rel-file-path.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-reply.svg b/data/gitea/public/assets/img/svg/octicon-reply.svg new file mode 100644 index 0000000..70e550e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-reply.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-repo-clone.svg b/data/gitea/public/assets/img/svg/octicon-repo-clone.svg new file mode 100644 index 0000000..67099d8 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-repo-clone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-repo-deleted.svg b/data/gitea/public/assets/img/svg/octicon-repo-deleted.svg new file mode 100644 index 0000000..c79e3be --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-repo-deleted.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-repo-forked.svg b/data/gitea/public/assets/img/svg/octicon-repo-forked.svg new file mode 100644 index 0000000..a45bee6 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-repo-forked.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-repo-locked.svg b/data/gitea/public/assets/img/svg/octicon-repo-locked.svg new file mode 100644 index 0000000..c6def5b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-repo-locked.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-repo-pull.svg b/data/gitea/public/assets/img/svg/octicon-repo-pull.svg new file mode 100644 index 0000000..4f02f6f --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-repo-pull.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-repo-push.svg b/data/gitea/public/assets/img/svg/octicon-repo-push.svg new file mode 100644 index 0000000..07bd762 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-repo-push.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-repo-template.svg b/data/gitea/public/assets/img/svg/octicon-repo-template.svg new file mode 100644 index 0000000..45b7acf --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-repo-template.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-repo.svg b/data/gitea/public/assets/img/svg/octicon-repo.svg new file mode 100644 index 0000000..ace4a3c --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-repo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-report.svg b/data/gitea/public/assets/img/svg/octicon-report.svg new file mode 100644 index 0000000..e0cf565 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-report.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-rocket.svg b/data/gitea/public/assets/img/svg/octicon-rocket.svg new file mode 100644 index 0000000..13395eb --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-rocket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-rows.svg b/data/gitea/public/assets/img/svg/octicon-rows.svg new file mode 100644 index 0000000..4596215 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-rows.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-rss.svg b/data/gitea/public/assets/img/svg/octicon-rss.svg new file mode 100644 index 0000000..6b13033 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-rss.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-ruby.svg b/data/gitea/public/assets/img/svg/octicon-ruby.svg new file mode 100644 index 0000000..3697948 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-ruby.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-screen-full.svg b/data/gitea/public/assets/img/svg/octicon-screen-full.svg new file mode 100644 index 0000000..8074a22 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-screen-full.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-screen-normal.svg b/data/gitea/public/assets/img/svg/octicon-screen-normal.svg new file mode 100644 index 0000000..98fe6a8 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-screen-normal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-search.svg b/data/gitea/public/assets/img/svg/octicon-search.svg new file mode 100644 index 0000000..5286c04 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-search.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-server.svg b/data/gitea/public/assets/img/svg/octicon-server.svg new file mode 100644 index 0000000..fd4e9be --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-server.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-share-android.svg b/data/gitea/public/assets/img/svg/octicon-share-android.svg new file mode 100644 index 0000000..2e1cdcb --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-share-android.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-share.svg b/data/gitea/public/assets/img/svg/octicon-share.svg new file mode 100644 index 0000000..eb4dc00 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-share.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-shield-check.svg b/data/gitea/public/assets/img/svg/octicon-shield-check.svg new file mode 100644 index 0000000..99fc924 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-shield-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-shield-lock.svg b/data/gitea/public/assets/img/svg/octicon-shield-lock.svg new file mode 100644 index 0000000..2057bbc --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-shield-lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-shield-slash.svg b/data/gitea/public/assets/img/svg/octicon-shield-slash.svg new file mode 100644 index 0000000..28a2b85 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-shield-slash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-shield-x.svg b/data/gitea/public/assets/img/svg/octicon-shield-x.svg new file mode 100644 index 0000000..b0fff66 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-shield-x.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-shield.svg b/data/gitea/public/assets/img/svg/octicon-shield.svg new file mode 100644 index 0000000..865238e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-shield.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sidebar-collapse.svg b/data/gitea/public/assets/img/svg/octicon-sidebar-collapse.svg new file mode 100644 index 0000000..6885cd2 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sidebar-collapse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sidebar-expand.svg b/data/gitea/public/assets/img/svg/octicon-sidebar-expand.svg new file mode 100644 index 0000000..41e5c80 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sidebar-expand.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sign-in.svg b/data/gitea/public/assets/img/svg/octicon-sign-in.svg new file mode 100644 index 0000000..308c118 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sign-in.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sign-out.svg b/data/gitea/public/assets/img/svg/octicon-sign-out.svg new file mode 100644 index 0000000..ac1c95f --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sign-out.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-single-select.svg b/data/gitea/public/assets/img/svg/octicon-single-select.svg new file mode 100644 index 0000000..55a1a93 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-single-select.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-skip-fill.svg b/data/gitea/public/assets/img/svg/octicon-skip-fill.svg new file mode 100644 index 0000000..01a5cc8 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-skip-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-skip.svg b/data/gitea/public/assets/img/svg/octicon-skip.svg new file mode 100644 index 0000000..fe8d377 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-skip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sliders.svg b/data/gitea/public/assets/img/svg/octicon-sliders.svg new file mode 100644 index 0000000..940a3ab --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sliders.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-smiley.svg b/data/gitea/public/assets/img/svg/octicon-smiley.svg new file mode 100644 index 0000000..11c9055 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-smiley.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sort-asc.svg b/data/gitea/public/assets/img/svg/octicon-sort-asc.svg new file mode 100644 index 0000000..76fe377 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sort-asc.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sort-desc.svg b/data/gitea/public/assets/img/svg/octicon-sort-desc.svg new file mode 100644 index 0000000..1ae84a7 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sort-desc.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sparkle-fill.svg b/data/gitea/public/assets/img/svg/octicon-sparkle-fill.svg new file mode 100644 index 0000000..fafd3d8 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sparkle-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sponsor-tiers.svg b/data/gitea/public/assets/img/svg/octicon-sponsor-tiers.svg new file mode 100644 index 0000000..efe96cd --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sponsor-tiers.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-square-fill.svg b/data/gitea/public/assets/img/svg/octicon-square-fill.svg new file mode 100644 index 0000000..06d32b3 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-square-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-square.svg b/data/gitea/public/assets/img/svg/octicon-square.svg new file mode 100644 index 0000000..846af69 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-square.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-squirrel.svg b/data/gitea/public/assets/img/svg/octicon-squirrel.svg new file mode 100644 index 0000000..60b3ba5 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-squirrel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-stack.svg b/data/gitea/public/assets/img/svg/octicon-stack.svg new file mode 100644 index 0000000..a86dbbe --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-stack.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-star-fill.svg b/data/gitea/public/assets/img/svg/octicon-star-fill.svg new file mode 100644 index 0000000..174ae0c --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-star-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-star.svg b/data/gitea/public/assets/img/svg/octicon-star.svg new file mode 100644 index 0000000..2001b8c --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-star.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-stop.svg b/data/gitea/public/assets/img/svg/octicon-stop.svg new file mode 100644 index 0000000..d85c7a3 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-stop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-stopwatch.svg b/data/gitea/public/assets/img/svg/octicon-stopwatch.svg new file mode 100644 index 0000000..eeec8dc --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-stopwatch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-strikethrough.svg b/data/gitea/public/assets/img/svg/octicon-strikethrough.svg new file mode 100644 index 0000000..1a9c4a0 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-strikethrough.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sun.svg b/data/gitea/public/assets/img/svg/octicon-sun.svg new file mode 100644 index 0000000..07756fa --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sun.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-sync.svg b/data/gitea/public/assets/img/svg/octicon-sync.svg new file mode 100644 index 0000000..30917e1 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-sync.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-tab-external.svg b/data/gitea/public/assets/img/svg/octicon-tab-external.svg new file mode 100644 index 0000000..e1a979d --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-tab-external.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-table.svg b/data/gitea/public/assets/img/svg/octicon-table.svg new file mode 100644 index 0000000..c4bdbc2 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-table.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-tag.svg b/data/gitea/public/assets/img/svg/octicon-tag.svg new file mode 100644 index 0000000..0de0f6b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-tag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-tasklist.svg b/data/gitea/public/assets/img/svg/octicon-tasklist.svg new file mode 100644 index 0000000..b1067ae --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-tasklist.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-telescope-fill.svg b/data/gitea/public/assets/img/svg/octicon-telescope-fill.svg new file mode 100644 index 0000000..4debe30 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-telescope-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-telescope.svg b/data/gitea/public/assets/img/svg/octicon-telescope.svg new file mode 100644 index 0000000..17e7911 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-telescope.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-terminal.svg b/data/gitea/public/assets/img/svg/octicon-terminal.svg new file mode 100644 index 0000000..e6349af --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-terminal.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-three-bars.svg b/data/gitea/public/assets/img/svg/octicon-three-bars.svg new file mode 100644 index 0000000..cf97b03 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-three-bars.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-thumbsdown.svg b/data/gitea/public/assets/img/svg/octicon-thumbsdown.svg new file mode 100644 index 0000000..f64457e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-thumbsdown.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-thumbsup.svg b/data/gitea/public/assets/img/svg/octicon-thumbsup.svg new file mode 100644 index 0000000..1afc4ba --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-thumbsup.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-tools.svg b/data/gitea/public/assets/img/svg/octicon-tools.svg new file mode 100644 index 0000000..851c44f --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-tools.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-tracked-by-closed-completed.svg b/data/gitea/public/assets/img/svg/octicon-tracked-by-closed-completed.svg new file mode 100644 index 0000000..c906f0e --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-tracked-by-closed-completed.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-tracked-by-closed-not-planned.svg b/data/gitea/public/assets/img/svg/octicon-tracked-by-closed-not-planned.svg new file mode 100644 index 0000000..f738398 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-tracked-by-closed-not-planned.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-trash.svg b/data/gitea/public/assets/img/svg/octicon-trash.svg new file mode 100644 index 0000000..b52a439 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-trash.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-triangle-down.svg b/data/gitea/public/assets/img/svg/octicon-triangle-down.svg new file mode 100644 index 0000000..e803448 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-triangle-down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-triangle-left.svg b/data/gitea/public/assets/img/svg/octicon-triangle-left.svg new file mode 100644 index 0000000..fde4d16 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-triangle-left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-triangle-right.svg b/data/gitea/public/assets/img/svg/octicon-triangle-right.svg new file mode 100644 index 0000000..48a0097 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-triangle-right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-triangle-up.svg b/data/gitea/public/assets/img/svg/octicon-triangle-up.svg new file mode 100644 index 0000000..1982cc8 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-triangle-up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-trophy.svg b/data/gitea/public/assets/img/svg/octicon-trophy.svg new file mode 100644 index 0000000..62c37e7 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-trophy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-typography.svg b/data/gitea/public/assets/img/svg/octicon-typography.svg new file mode 100644 index 0000000..3ed9d8f --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-typography.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-undo.svg b/data/gitea/public/assets/img/svg/octicon-undo.svg new file mode 100644 index 0000000..7dd7092 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-undo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-unfold.svg b/data/gitea/public/assets/img/svg/octicon-unfold.svg new file mode 100644 index 0000000..e383765 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-unfold.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-unlink.svg b/data/gitea/public/assets/img/svg/octicon-unlink.svg new file mode 100644 index 0000000..a585e8b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-unlink.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-unlock.svg b/data/gitea/public/assets/img/svg/octicon-unlock.svg new file mode 100644 index 0000000..efeb0ef --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-unlock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-unmute.svg b/data/gitea/public/assets/img/svg/octicon-unmute.svg new file mode 100644 index 0000000..f471217 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-unmute.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-unread.svg b/data/gitea/public/assets/img/svg/octicon-unread.svg new file mode 100644 index 0000000..f2c4141 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-unread.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-unverified.svg b/data/gitea/public/assets/img/svg/octicon-unverified.svg new file mode 100644 index 0000000..5833f23 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-unverified.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-upload.svg b/data/gitea/public/assets/img/svg/octicon-upload.svg new file mode 100644 index 0000000..c61e952 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-upload.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-verified.svg b/data/gitea/public/assets/img/svg/octicon-verified.svg new file mode 100644 index 0000000..57fc6a0 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-verified.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-versions.svg b/data/gitea/public/assets/img/svg/octicon-versions.svg new file mode 100644 index 0000000..7f54280 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-versions.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-video.svg b/data/gitea/public/assets/img/svg/octicon-video.svg new file mode 100644 index 0000000..600a42b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-video.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-webhook.svg b/data/gitea/public/assets/img/svg/octicon-webhook.svg new file mode 100644 index 0000000..cce7537 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-webhook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-workflow.svg b/data/gitea/public/assets/img/svg/octicon-workflow.svg new file mode 100644 index 0000000..2bf204b --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-workflow.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-x-circle-fill.svg b/data/gitea/public/assets/img/svg/octicon-x-circle-fill.svg new file mode 100644 index 0000000..c0a6307 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-x-circle-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-x-circle.svg b/data/gitea/public/assets/img/svg/octicon-x-circle.svg new file mode 100644 index 0000000..94dc6b9 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-x-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-x.svg b/data/gitea/public/assets/img/svg/octicon-x.svg new file mode 100644 index 0000000..2d78857 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-x.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-zap.svg b/data/gitea/public/assets/img/svg/octicon-zap.svg new file mode 100644 index 0000000..a693cb6 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-zap.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-zoom-in.svg b/data/gitea/public/assets/img/svg/octicon-zoom-in.svg new file mode 100644 index 0000000..1713ae7 --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-zoom-in.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/svg/octicon-zoom-out.svg b/data/gitea/public/assets/img/svg/octicon-zoom-out.svg new file mode 100644 index 0000000..9d682db --- /dev/null +++ b/data/gitea/public/assets/img/svg/octicon-zoom-out.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/gitea/public/assets/img/telegram.png b/data/gitea/public/assets/img/telegram.png new file mode 100644 index 0000000..9995703 Binary files /dev/null and b/data/gitea/public/assets/img/telegram.png differ diff --git a/data/gitea/public/assets/img/wechatwork.png b/data/gitea/public/assets/img/wechatwork.png new file mode 100644 index 0000000..296225f Binary files /dev/null and b/data/gitea/public/assets/img/wechatwork.png differ diff --git a/data/gitea/public/assets/js/-------.e4740076.js b/data/gitea/public/assets/js/-------.e4740076.js new file mode 100644 index 0000000..1fe1fc8 --- /dev/null +++ b/data/gitea/public/assets/js/-------.e4740076.js @@ -0,0 +1,7 @@ +"use strict";(self.webpackChunk=self.webpackChunk||[]).push([["-------"],{"./node_modules/dagre-d3-es/src/dagre/index.js":function(hn,W,h){h.d(W,{Zp:function(){return Gt}});var g=h("./node_modules/lodash-es/forEach.js"),R=h("./node_modules/lodash-es/uniqueId.js"),F=h("./node_modules/lodash-es/has.js"),M=h("./node_modules/lodash-es/constant.js"),z=h("./node_modules/lodash-es/flatten.js"),D=h("./node_modules/lodash-es/map.js"),H=h("./node_modules/lodash-es/range.js"),N=h("./node_modules/dagre-d3-es/src/graphlib/index.js");class Y{constructor(){var t={};t._next=t._prev=t,this._sentinel=t}dequeue(){var t=this._sentinel,r=t._prev;if(r!==t)return nn(r),r}enqueue(t){var r=this._sentinel;t._prev&&t._next&&nn(t),t._next=r._next,r._next._prev=t,r._next=t,t._prev=r}toString(){for(var t=[],r=this._sentinel,u=r._prev;u!==r;)t.push(JSON.stringify(u,an)),u=u._prev;return"["+t.join(", ")+"]"}}function nn(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function an(e,t){if(e!=="_next"&&e!=="_prev")return t}var Q=M.A(1);function rn(e,t){if(e.nodeCount()<=1)return[];var r=Ln(e,t||Q),u=q(r.graph,r.buckets,r.zeroIdx);return z.A(D.A(u,function(o){return e.outEdges(o.v,o.w)}))}function q(e,t,r){for(var u=[],o=t[t.length-1],f=t[0],m;e.nodeCount();){for(;m=f.dequeue();)yn(e,t,r,m);for(;m=o.dequeue();)yn(e,t,r,m);if(e.nodeCount()){for(var y=t.length-2;y>0;--y)if(m=t[y].dequeue(),m){u=u.concat(yn(e,t,r,m,!0));break}}}return u}function yn(e,t,r,u,o){var f=o?[]:void 0;return g.A(e.inEdges(u.v),function(m){var y=e.edge(m),C=e.node(m.v);o&&f.push({v:m.v,w:m.w}),C.out-=y,mn(t,r,C)}),g.A(e.outEdges(u.v),function(m){var y=e.edge(m),C=m.w,S=e.node(C);S.in-=y,mn(t,r,S)}),e.removeNode(u.v),f}function Ln(e,t){var r=new N.T,u=0,o=0;g.A(e.nodes(),function(y){r.setNode(y,{v:y,in:0,out:0})}),g.A(e.edges(),function(y){var C=r.edge(y.v,y.w)||0,S=t(y),P=C+S;r.setEdge(y.v,y.w,P),o=Math.max(o,r.node(y.v).out+=S),u=Math.max(u,r.node(y.w).in+=S)});var f=H.A(o+u+3).map(function(){return new Y}),m=u+1;return g.A(r.nodes(),function(y){mn(f,m,r.node(y))}),{graph:r,buckets:f,zeroIdx:m}}function mn(e,t,r){r.out?r.in?e[r.out-r.in+t].enqueue(r):e[e.length-1].enqueue(r):e[0].enqueue(r)}function Bn(e){var t=e.graph().acyclicer==="greedy"?rn(e,r(e)):ve(e);g.A(t,function(u){var o=e.edge(u);e.removeEdge(u),o.forwardName=u.name,o.reversed=!0,e.setEdge(u.w,u.v,o,R.A("rev"))});function r(u){return function(o){return u.edge(o).weight}}}function ve(e){var t=[],r={},u={};function o(f){F.A(u,f)||(u[f]=!0,r[f]=!0,g.A(e.outEdges(f),function(m){F.A(r,m.w)?t.push(m):o(m.w)}),delete r[f])}return g.A(e.nodes(),o),t}function sn(e){g.A(e.edges(),function(t){var r=e.edge(t);if(r.reversed){e.removeEdge(t);var u=r.forwardName;delete r.reversed,delete r.forwardName,e.setEdge(t.w,t.v,r,u)}})}var gn=h("./node_modules/lodash-es/merge.js"),Rn=h("./node_modules/lodash-es/pick.js"),xe=h("./node_modules/lodash-es/defaults.js"),Z=h("./node_modules/lodash-es/isSymbol.js");function Mn(e,t,r){for(var u=-1,o=e.length;++ut}var te=_e,Nn=h("./node_modules/lodash-es/identity.js");function vn(e){return e&&e.length?ln(e,Nn.A,te):void 0}var ue=vn;function pt(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}var ye=pt,rt=h("./node_modules/lodash-es/_baseAssignValue.js"),it=h("./node_modules/lodash-es/_baseForOwn.js"),Pe=h("./node_modules/lodash-es/_baseIteratee.js");function Ee(e,t){var r={};return t=(0,Pe.A)(t,3),(0,it.A)(e,function(u,o,f){(0,rt.A)(r,o,t(u,o,f))}),r}var Ne=Ee,re=h("./node_modules/lodash-es/isUndefined.js");function ce(e,t){return eMath.abs(o)*y?(f<0&&(y=-y),C=y*o/f,S=y):(o<0&&(m=-m),C=m,S=m*f/o),{x:r+C,y:u+S}}function cn(e){var t=D.A(H.A($e(e)+1),function(){return[]});return g.A(e.nodes(),function(r){var u=e.node(r),o=u.rank;re.A(o)||(t[o][u.order]=r)}),t}function An(e){var t=we(D.A(e.nodes(),function(r){return e.node(r).rank}));g.A(e.nodes(),function(r){var u=e.node(r);F.A(u,"rank")&&(u.rank-=t)})}function kn(e){var t=we(D.A(e.nodes(),function(f){return e.node(f).rank})),r=[];g.A(e.nodes(),function(f){var m=e.node(f).rank-t;r[m]||(r[m]=[]),r[m].push(f)});var u=0,o=e.graph().nodeRankFactor;g.A(r,function(f,m){re.A(f)&&m%o!==0?--u:u&&g.A(f,function(y){e.node(y).rank+=u})})}function $n(e,t,r,u){var o={width:0,height:0};return arguments.length>=4&&(o.rank=r,o.order=u),Ae(e,"border",o,t)}function $e(e){return ue(D.A(e.nodes(),function(t){var r=e.node(t).rank;if(!re.A(r))return r}))}function fe(e,t){var r={lhs:[],rhs:[]};return g.A(e,function(u){t(u)?r.lhs.push(u):r.rhs.push(u)}),r}function Ce(e,t){var r=Me();try{return t()}finally{console.log(e+" time: "+(Me()-r)+"ms")}}function Zn(e,t){return t()}function Tt(e){function t(r){var u=e.children(r),o=e.node(r);if(u.length&&g.A(u,t),F.A(o,"minRank")){o.borderLeft=[],o.borderRight=[];for(var f=o.minRank,m=o.maxRank+1;f-1?o[f?t[m]:m]:void 0}}var zt=Rt,O=h("./node_modules/lodash-es/_baseFindIndex.js"),U=h("./node_modules/lodash-es/toFinite.js");function un(e){var t=(0,U.A)(e),r=t%1;return t===t?r?t-r:t:0}var fn=un,jn=Math.max;function _n(e,t,r){var u=e==null?0:e.length;if(!u)return-1;var o=r==null?0:fn(r);return o<0&&(o=jn(u+o,0)),(0,O.A)(e,(0,Pe.A)(t,3),o)}var Gn=_n,Tn=zt(Gn),Un=Tn,Wn=h("./node_modules/lodash-es/filter.js"),oe=M.A(1);function ie(e,t,r,u){return Vn(e,String(t),r||oe,u||function(o){return e.outEdges(o)})}function Vn(e,t,r,u){var o={},f=new PriorityQueue,m,y,C=function(S){var P=S.v!==m?S.v:S.w,V=o[P],pn=r(S),En=y.distance+pn;if(pn<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+S+" Weight: "+pn);En0&&(m=f.removeMin(),y=o[m],y.distance!==Number.POSITIVE_INFINITY);)u(m).forEach(C);return o}function je(e,t,r){return _.transform(e.nodes(),function(u,o){u[o]=dijkstra(e,o,t,r)},{})}var le=M.A(1);function pe(e,t,r){return Te(e,t||le,r||function(u){return e.outEdges(u)})}function Te(e,t,r){var u={},o=e.nodes();return o.forEach(function(f){u[f]={},u[f][f]={distance:0},o.forEach(function(m){f!==m&&(u[f][m]={distance:Number.POSITIVE_INFINITY})}),r(f).forEach(function(m){var y=m.v===f?m.w:m.v,C=t(m);u[f][y]={distance:C,predecessor:f}})}),o.forEach(function(f){var m=u[f];o.forEach(function(y){var C=u[y];o.forEach(function(S){var P=C[f],V=m[S],pn=C[S],En=P.distance+V.distance;En0;){if(f=o.removeMin(),_.has(u,f))r.setEdge(f,u[f]);else{if(y)throw new Error("Input graph is not connected: "+e);y=!0}e.nodeEdges(f).forEach(m)}return r}ct.initLowLimValues=He,ct.initCutValues=qt,ct.calcCutValue=wr,ct.leaveEdge=kr,ct.enterEdge=lr,ct.exchangeEdges=Cr;function ct(e){e=dn(e),Se(e);var t=wt(e);He(t),qt(t,e);for(var r,u;r=kr(t);)u=lr(t,e,r),Cr(t,e,r,u)}function qt(e,t){var r=$r(e,e.nodes());r=r.slice(0,r.length-1),g.A(r,function(u){Er(e,t,u)})}function Er(e,t,r){var u=e.node(r),o=u.parent;e.edge(r,o).cutvalue=wr(e,t,r)}function wr(e,t,r){var u=e.node(r),o=u.parent,f=!0,m=t.edge(r,o),y=0;return m||(f=!1,m=t.edge(o,r)),y=m.weight,g.A(t.nodeEdges(r),function(C){var S=C.v===r,P=S?C.w:C.v;if(P!==o){var V=S===f,pn=t.edge(C).weight;if(y+=V?pn:-pn,Jr(e,r,P)){var En=e.edge(r,P).cutvalue;y+=V?-En:En}}}),y}function He(e,t){arguments.length<2&&(t=e.nodes()[0]),or(e,{},1,t)}function or(e,t,r,u,o){var f=r,m=e.node(u);return t[u]=!0,g.A(e.neighbors(u),function(y){F.A(t,y)||(r=or(e,t,r,y,u))}),m.low=f,m.lim=r++,o?m.parent=o:delete m.parent,r}function kr(e){return Un(e.edges(),function(t){return e.edge(t).cutvalue<0})}function lr(e,t,r){var u=r.v,o=r.w;t.hasEdge(u,o)||(u=r.w,o=r.v);var f=e.node(u),m=e.node(o),y=f,C=!1;f.lim>m.lim&&(y=m,C=!0);var S=Wn.A(t.edges(),function(P){return C===Ir(e,e.node(P.v),y)&&C!==Ir(e,e.node(P.w),y)});return Ie(S,function(P){return Je(t,P)})}function Cr(e,t,r,u){var o=r.v,f=r.w;e.removeEdge(o,f),e.setEdge(u.v,u.w,{}),He(e),qt(e,t),Xr(e,t)}function Xr(e,t){var r=Un(e.nodes(),function(o){return!t.node(o).parent}),u=Jt(e,r);u=u.slice(1),g.A(u,function(o){var f=e.node(o).parent,m=t.edge(o,f),y=!1;m||(m=t.edge(f,o),y=!0),t.node(o).rank=t.node(f).rank+(y?m.minlen:-m.minlen)})}function Jr(e,t,r){return e.hasEdge(t,r)}function Ir(e,t,r){return r.low<=t.lim&&t.lim<=r.lim}function qr(e){switch(e.graph().ranker){case"network-simplex":jr(e);break;case"tight-tree":Sr(e);break;case"longest-path":ni(e);break;default:jr(e)}}var ni=Se;function Sr(e){Se(e),wt(e)}function jr(e){ct(e)}var ft=h("./node_modules/lodash-es/values.js"),nr=h("./node_modules/lodash-es/reduce.js");function ei(e){var t=Ae(e,"root",{},"_root"),r=ti(e),u=ue(ft.A(r))-1,o=2*u+1;e.graph().nestingRoot=t,g.A(e.edges(),function(m){e.edge(m).minlen*=o});var f=ri(e)+1;g.A(e.children(),function(m){er(e,t,o,f,u,r,m)}),e.graph().nodeRankFactor=o}function er(e,t,r,u,o,f,m){var y=e.children(m);if(!y.length){m!==t&&e.setEdge(t,m,{weight:0,minlen:r});return}var C=$n(e,"_bt"),S=$n(e,"_bb"),P=e.node(m);e.setParent(C,m),P.borderTop=C,e.setParent(S,m),P.borderBottom=S,g.A(y,function(V){er(e,t,r,u,o,f,V);var pn=e.node(V),En=pn.borderTop?pn.borderTop:V,Pn=pn.borderBottom?pn.borderBottom:V,ge=pn.borderTop?u:2*u,hr=En!==Pn?1:o-f[m]+1;e.setEdge(C,En,{weight:ge,minlen:hr,nestingEdge:!0}),e.setEdge(Pn,S,{weight:ge,minlen:hr,nestingEdge:!0})}),e.parent(m)||e.setEdge(t,C,{weight:0,minlen:o+f[m]})}function ti(e){var t={};function r(u,o){var f=e.children(u);f&&f.length&&g.A(f,function(m){r(m,o+1)}),t[u]=o}return g.A(e.children(),function(u){r(u,1)}),t}function ri(e){return nr.A(e.edges(),function(t,r){return t+e.edge(r).weight},0)}function ii(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,g.A(e.edges(),function(r){var u=e.edge(r);u.nestingEdge&&e.removeEdge(r)})}var dr=h("./node_modules/lodash-es/_baseClone.js"),si=1,n=4;function a(e){return(0,dr.A)(e,si|n)}var i=a;function s(e,t,r){var u={},o;g.A(r,function(f){for(var m=e.parent(f),y,C;m;){if(y=e.parent(m),y?(C=u[y],u[y]=m):(C=o,o=m),C&&C!==m){t.setEdge(C,m);return}m=y}})}function c(e,t,r){var u=l(e),o=new N.T({compound:!0}).setGraph({root:u}).setDefaultNodeLabel(function(f){return e.node(f)});return g.A(e.nodes(),function(f){var m=e.node(f),y=e.parent(f);(m.rank===t||m.minRank<=t&&t<=m.maxRank)&&(o.setNode(f),o.setParent(f,y||u),g.A(e[r](f),function(C){var S=C.v===f?C.w:C.v,P=o.edge(S,f),V=re.A(P)?0:P.weight;o.setEdge(S,f,{weight:e.edge(C).weight+V})}),F.A(m,"minRank")&&o.setNode(f,{borderLeft:m.borderLeft[t],borderRight:m.borderRight[t]}))}),o}function l(e){for(var t;e.hasNode(t=R.A("_root")););return t}var d=h("./node_modules/lodash-es/_assignValue.js");function p(e,t,r){for(var u=-1,o=e.length,f=t.length,m={};++ut||f&&m&&C&&!y&&!S||u&&m&&C||!r&&C||!o)return 1;if(!u&&!f&&!S&&e=y)return C;var S=r[u];return C*(S=="desc"?-1:1)}}return e.index-t.index}var Qn=Yn;function B(e,t,r){t.length?t=(0,k.A)(t,function(f){return(0,Be.A)(f)?function(m){return(0,x.A)(m,f.length===1?f[0]:f)}:f}):t=[Nn.A];var u=-1;t=(0,k.A)(t,(0,$.A)(Pe.A));var o=(0,In.A)(e,function(f,m,y){var C=(0,k.A)(t,function(S){return S(f)});return{criteria:C,index:++u,value:f}});return Kn(o,function(f,m){return Qn(f,m,r)})}var zn=B,ee=h("./node_modules/lodash-es/_baseRest.js"),qn=h("./node_modules/lodash-es/_isIterateeCall.js"),me=(0,ee.A)(function(e,t){if(e==null)return[];var r=t.length;return r>1&&(0,qn.A)(e,t[0],t[1])?t=[]:r>2&&(0,qn.A)(t[0],t[1],t[2])&&(t=[t[0]]),zn(e,(0,j.A)(t,1),[])}),Hn=me;function wn(e,t){for(var r=0,u=1;u0;)P%2&&(V+=y[P+1]),P=P-1>>1,y[P]+=S.weight;C+=S.weight*V})),C}function xn(e){var t={},r=Wn.A(e.nodes(),function(y){return!e.children(y).length}),u=ue(D.A(r,function(y){return e.node(y).rank})),o=D.A(H.A(u+1),function(){return[]});function f(y){if(!F.A(t,y)){t[y]=!0;var C=e.node(y);o[C.rank].push(y),g.A(e.successors(y),f)}}var m=Hn(r,function(y){return e.node(y).rank});return g.A(m,f),o}function bn(e,t){return D.A(t,function(r){var u=e.inEdges(r);if(u.length){var o=nr.A(u,function(f,m){var y=e.edge(m),C=e.node(m.v);return{sum:f.sum+y.weight*C.order,weight:f.weight+y.weight}},{sum:0,weight:0});return{v:r,barycenter:o.sum/o.weight,weight:o.weight}}else return{v:r}})}function Jn(e,t){var r={};g.A(e,function(o,f){var m=r[o.v]={indegree:0,in:[],out:[],vs:[o.v],i:f};re.A(o.barycenter)||(m.barycenter=o.barycenter,m.weight=o.weight)}),g.A(t.edges(),function(o){var f=r[o.v],m=r[o.w];!re.A(f)&&!re.A(m)&&(m.indegree++,f.out.push(r[o.w]))});var u=Wn.A(r,function(o){return!o.indegree});return se(u)}function se(e){var t=[];function r(f){return function(m){m.merged||(re.A(m.barycenter)||re.A(f.barycenter)||m.barycenter>=f.barycenter)&&Re(f,m)}}function u(f){return function(m){m.in.push(f),--m.indegree===0&&e.push(m)}}for(;e.length;){var o=e.pop();t.push(o),g.A(o.in.reverse(),r(o)),g.A(o.out,u(o))}return D.A(Wn.A(t,function(f){return!f.merged}),function(f){return Rn.A(f,["vs","i","barycenter","weight"])})}function Re(e,t){var r=0,u=0;e.weight&&(r+=e.barycenter*e.weight,u+=e.weight),t.weight&&(r+=t.barycenter*t.weight,u+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=r/u,e.weight=u,e.i=Math.min(t.i,e.i),t.merged=!0}function Ge(e,t){var r=fe(e,function(P){return F.A(P,"barycenter")}),u=r.lhs,o=Hn(r.rhs,function(P){return-P.i}),f=[],m=0,y=0,C=0;u.sort(Oe(!!t)),C=A(f,o,C),g.A(u,function(P){C+=P.vs.length,f.push(P.vs),m+=P.barycenter*P.weight,y+=P.weight,C=A(f,o,C)});var S={vs:z.A(f)};return y&&(S.barycenter=m/y,S.weight=y),S}function A(e,t,r){for(var u;t.length&&(u=ye(t)).i<=r;)t.pop(),e.push(u.vs),r++;return r}function Oe(e){return function(t,r){return t.barycenterr.barycenter?1:e?r.i-t.i:t.i-r.i}}function Ve(e,t,r,u){var o=e.children(t),f=e.node(t),m=f?f.borderLeft:void 0,y=f?f.borderRight:void 0,C={};m&&(o=Wn.A(o,function(Pn){return Pn!==m&&Pn!==y}));var S=bn(e,o);g.A(S,function(Pn){if(e.children(Pn.v).length){var ge=Ve(e,Pn.v,r,u);C[Pn.v]=ge,F.A(ge,"barycenter")&&be(Pn,ge)}});var P=Jn(S,r);v(P,C);var V=Ge(P,u);if(m&&(V.vs=z.A([m,V.vs,y]),e.predecessors(m).length)){var pn=e.node(e.predecessors(m)[0]),En=e.node(e.predecessors(y)[0]);F.A(V,"barycenter")||(V.barycenter=0,V.weight=0),V.barycenter=(V.barycenter*V.weight+pn.order+En.order)/(V.weight+2),V.weight+=2}return V}function v(e,t){g.A(e,function(r){r.vs=z.A(r.vs.map(function(u){return t[u]?t[u].vs:u}))})}function be(e,t){re.A(e.barycenter)?(e.barycenter=t.barycenter,e.weight=t.weight):(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight)}function St(e){var t=$e(e),r=tr(e,H.A(1,t+1),"inEdges"),u=tr(e,H.A(t-1,-1,-1),"outEdges"),o=xn(e);ae(e,o);for(var f=Number.POSITIVE_INFINITY,m,y=0,C=0;C<4;++y,++C){Kt(y%2?r:u,y%4>=2),o=cn(e);var S=wn(e,o);Sm||y>t[C].lim));for(S=C,C=u;(C=e.parent(C))!==S;)f.push(C);return{path:o.concat(f.reverse()),lca:S}}function jt(e){var t={},r=0;function u(o){var f=r;g.A(e.children(o),u),t[o]={low:f,lim:r++}}return g.A(e.children(),u),t}var ht=h("./node_modules/lodash-es/_castFunction.js");function cr(e,t){return e&&(0,it.A)(e,(0,ht.A)(t))}var ai=cr,ui=h("./node_modules/lodash-es/_baseFor.js"),Tr=h("./node_modules/lodash-es/keysIn.js");function Fr(e,t){return e==null?e:(0,ui.A)(e,(0,ht.A)(t),Tr.A)}var Or=Fr;function oi(e,t){var r={};function u(o,f){var m=0,y=0,C=o.length,S=ye(f);return g.A(f,function(P,V){var pn=Lr(e,P),En=pn?e.node(pn).order:C;(pn||P===S)&&(g.A(f.slice(y,V+1),function(Pn){g.A(e.predecessors(Pn),function(ge){var hr=e.node(ge),pi=hr.order;(piS)&&Mr(r,pn,P)})})}function o(f,m){var y=-1,C,S=0;return g.A(m,function(P,V){if(e.node(P).dummy==="border"){var pn=e.predecessors(P);pn.length&&(C=e.node(pn[0]).order,u(m,S,V,y,C),S=V,y=C)}u(m,S,m.length,C,f.length)}),m}return nr.A(t,o),r}function Lr(e,t){if(e.node(t).dummy)return Un(e.predecessors(t),function(r){return e.node(r).dummy})}function Mr(e,t,r){if(t>r){var u=t;t=r,r=u}var o=e[t];o||(e[t]=o={}),o[r]=!0}function li(e,t,r){if(t>r){var u=t;t=r,r=u}return F.A(e[t],r)}function di(e,t,r,u){var o={},f={},m={};return g.A(t,function(y){g.A(y,function(C,S){o[C]=C,f[C]=C,m[C]=S})}),g.A(t,function(y){var C=-1;g.A(y,function(S){var P=u(S);if(P.length){P=Hn(P,function(ge){return m[ge]});for(var V=(P.length-1)/2,pn=Math.floor(V),En=Math.ceil(V);pn<=En;++pn){var Pn=P[pn];f[S]===S&&C-1}var sn=ve;function gn(dn,w,L){for(var X=-1,J=dn==null?0:dn.length;++X=ue){var $e=w?null:vn(dn);if($e)return(0,_e.A)($e);An=!1,J=xe.A,$n=new an.A}else $n=w?[]:kn;n:for(;++X1?J.setNode(cn,L):J.setNode(cn)}),this}setNode(w,L){return g.A(this._nodes,w)?(arguments.length>1&&(this._nodes[w]=L),this):(this._nodes[w]=arguments.length>1?L:this._defaultNodeLabelFn(w),this._isCompound&&(this._parent[w]=ce,this._children[w]={},this._children[ce][w]=!0),this._in[w]={},this._preds[w]={},this._out[w]={},this._sucs[w]={},++this._nodeCount,this)}node(w){return this._nodes[w]}hasNode(w){return g.A(this._nodes,w)}removeNode(w){var L=this;if(g.A(this._nodes,w)){var X=function(J){L.removeEdge(L._edgeObjs[J])};delete this._nodes[w],this._isCompound&&(this._removeFromParentsChildList(w),delete this._parent[w],H.A(this.children(w),function(J){L.setParent(J)}),delete this._children[w]),H.A(M.A(this._in[w]),X),delete this._in[w],delete this._preds[w],H.A(M.A(this._out[w]),X),delete this._out[w],delete this._sucs[w],--this._nodeCount}return this}setParent(w,L){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(N.A(L))L=ce;else{L+="";for(var X=L;!N.A(X);X=this.parent(X))if(X===w)throw new Error("Setting "+L+" as parent of "+w+" would create a cycle");this.setNode(L)}return this.setNode(w),this._removeFromParentsChildList(w),this._parent[w]=L,this._children[L][w]=!0,this}_removeFromParentsChildList(w){delete this._children[this._parent[w]][w]}parent(w){if(this._isCompound){var L=this._parent[w];if(L!==ce)return L}}children(w){if(N.A(w)&&(w=ce),this._isCompound){var L=this._children[w];if(L)return M.A(L)}else{if(w===ce)return this.nodes();if(this.hasNode(w))return[]}}predecessors(w){var L=this._preds[w];if(L)return M.A(L)}successors(w){var L=this._sucs[w];if(L)return M.A(L)}neighbors(w){var L=this.predecessors(w);if(L)return Pe(L,this.successors(w))}isLeaf(w){var L;return this.isDirected()?L=this.successors(w):L=this.neighbors(w),L.length===0}filterNodes(w){var L=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});L.setGraph(this.graph());var X=this;H.A(this._nodes,function(An,kn){w(kn)&&L.setNode(kn,An)}),H.A(this._edgeObjs,function(An){L.hasNode(An.v)&&L.hasNode(An.w)&&L.setEdge(An,X.edge(An))});var J={};function cn(An){var kn=X.parent(An);return kn===void 0||L.hasNode(kn)?(J[An]=kn,kn):kn in J?J[kn]:cn(kn)}return this._isCompound&&H.A(L.nodes(),function(An){L.setParent(An,cn(An))}),L}setDefaultEdgeLabel(w){return F.A(w)||(w=R.A(w)),this._defaultEdgeLabelFn=w,this}edgeCount(){return this._edgeCount}edges(){return Ee.A(this._edgeObjs)}setPath(w,L){var X=this,J=arguments;return Ne.A(w,function(cn,An){return J.length>1?X.setEdge(cn,An,L):X.setEdge(cn,An),An}),this}setEdge(){var w,L,X,J,cn=!1,An=arguments[0];typeof An=="object"&&An!==null&&"v"in An?(w=An.v,L=An.w,X=An.name,arguments.length===2&&(J=arguments[1],cn=!0)):(w=An,L=arguments[1],X=arguments[3],arguments.length>2&&(J=arguments[2],cn=!0)),w=""+w,L=""+L,N.A(X)||(X=""+X);var kn=ke(this._isDirected,w,L,X);if(g.A(this._edgeLabels,kn))return cn&&(this._edgeLabels[kn]=J),this;if(!N.A(X)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(w),this.setNode(L),this._edgeLabels[kn]=cn?J:this._defaultEdgeLabelFn(w,L,X);var $n=Me(this._isDirected,w,L,X);return w=$n.v,L=$n.w,Object.freeze($n),this._edgeObjs[kn]=$n,we(this._preds[L],w),we(this._sucs[w],L),this._in[L][kn]=$n,this._out[w][kn]=$n,this._edgeCount++,this}edge(w,L,X){var J=arguments.length===1?Ae(this._isDirected,arguments[0]):ke(this._isDirected,w,L,X);return this._edgeLabels[J]}hasEdge(w,L,X){var J=arguments.length===1?Ae(this._isDirected,arguments[0]):ke(this._isDirected,w,L,X);return g.A(this._edgeLabels,J)}removeEdge(w,L,X){var J=arguments.length===1?Ae(this._isDirected,arguments[0]):ke(this._isDirected,w,L,X),cn=this._edgeObjs[J];return cn&&(w=cn.v,L=cn.w,delete this._edgeLabels[J],delete this._edgeObjs[J],Qe(this._preds[L],w),Qe(this._sucs[w],L),delete this._in[L][J],delete this._out[w][J],this._edgeCount--),this}inEdges(w,L){var X=this._in[w];if(X){var J=Ee.A(X);return L?z.A(J,function(cn){return cn.v===L}):J}}outEdges(w,L){var X=this._out[w];if(X){var J=Ee.A(X);return L?z.A(J,function(cn){return cn.w===L}):J}}nodeEdges(w,L){var X=this.inEdges(w,L);if(X)return X.concat(this.outEdges(w,L))}}Ye.prototype._nodeCount=0,Ye.prototype._edgeCount=0;function we(dn,w){dn[w]?dn[w]++:dn[w]=1}function Qe(dn,w){--dn[w]||delete dn[w]}function ke(dn,w,L,X){var J=""+w,cn=""+L;if(!dn&&J>cn){var An=J;J=cn,cn=An}return J+Le+cn+Le+(N.A(X)?re:X)}function Me(dn,w,L,X){var J=""+w,cn=""+L;if(!dn&&J>cn){var An=J;J=cn,cn=An}var kn={v:J,w:cn};return X&&(kn.name=X),kn}function Ae(dn,w){return ke(dn,w.v,w.w,w.name)}},"./node_modules/dagre-d3-es/src/graphlib/index.js":function(hn,W,h){h.d(W,{T:function(){return g.T}});var g=h("./node_modules/dagre-d3-es/src/graphlib/graph.js");const R="2.1.9-pre"},"./node_modules/lodash-es/_SetCache.js":function(hn,W,h){h.d(W,{A:function(){return N}});var g=h("./node_modules/lodash-es/_MapCache.js"),R="__lodash_hash_undefined__";function F(Y){return this.__data__.set(Y,R),this}var M=F;function z(Y){return this.__data__.has(Y)}var D=z;function H(Y){var nn=-1,an=Y==null?0:Y.length;for(this.__data__=new g.A;++nn0&&Q(mn)?an>1?N(mn,an-1,Q,rn,q):(0,g.A)(q,mn):rn||(q[q.length]=mn)}return q}var Y=N},"./node_modules/lodash-es/_baseForOwn.js":function(hn,W,h){var g=h("./node_modules/lodash-es/_baseFor.js"),R=h("./node_modules/lodash-es/keys.js");function F(M,z){return M&&(0,g.A)(M,z,R.A)}W.A=F},"./node_modules/lodash-es/_baseGet.js":function(hn,W,h){var g=h("./node_modules/lodash-es/_castPath.js"),R=h("./node_modules/lodash-es/_toKey.js");function F(M,z){z=(0,g.A)(z,M);for(var D=0,H=z.length;M!=null&&DTn))return!1;var Wn=_n.get(O),oe=_n.get(U);if(Wn&&oe)return Wn==U&&oe==O;var ie=-1,Vn=!0,je=un&H?new R.A:void 0;for(_n.set(O,U),_n.set(U,O);++ie2?Y[2]:void 0;for(Q&&(0,F.A)(Y[0],Y[1],Q)&&(an=1);++nnc?0:c+a:a=a>c?c:a,i=i>0?i:0,s.length<1e4)d=Array.from(s),d.unshift(a,i),n.splice(...d);else for(i&&n.splice(a,i);l0?(N(n,n.length,0,a),n):a}const nn={}.hasOwnProperty;function an(n){const a={};let i=-1;for(;++id))return;const zn=a.events.length;let ee=zn,qn,me;for(;ee--;)if(a.events[ee][0]==="exit"&&a.events[ee][1].type==="chunkFlow"){if(qn){me=a.events[ee][1].end;break}qn=!0}for($(s),B=zn;Ben;){const Qn=i[Yn];a.containerState=Qn[1],Qn[0].exit.call(a,n)}i.length=en}function Xn(){c.write([null]),l=void 0,c=void 0,a.containerState._closeFlow=void 0}}function Pe(n,a,i){return vn(n,n.attempt(this.parser.constructs.document,a,i),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}const Ee={tokenize:Ne,partial:!0};function Ne(n,a,i){return s;function s(l){return ln(l)?vn(n,c,"linePrefix")(l):c(l)}function c(l){return l===null||Z(l)?a(l):i(l)}}function re(n){const a={};let i=-1,s,c,l,d,p,I,E;for(;++i=4?a(d):n.interrupt(s.parser.constructs.flow,i,a)(d)}}const Me={tokenize:Ae};function Ae(n){const a=this,i=n.attempt(Ee,s,n.attempt(this.parser.constructs.flowInitial,c,vn(n,n.attempt(this.parser.constructs.flow,c,n.attempt(Le,c)),"linePrefix")));return i;function s(l){if(l===null){n.consume(l);return}return n.enter("lineEndingBlank"),n.consume(l),n.exit("lineEndingBlank"),a.currentConstruct=void 0,i}function c(l){if(l===null){n.consume(l);return}return n.enter("lineEnding"),n.consume(l),n.exit("lineEnding"),a.currentConstruct=void 0,i}}const dn={resolveAll:J()},w=X("string"),L=X("text");function X(n){return{tokenize:a,resolveAll:J(n==="text"?cn:void 0)};function a(i){const s=this,c=this.parser.constructs[n],l=i.attempt(c,d,p);return d;function d(b){return E(b)?l(b):p(b)}function p(b){if(b===null){i.consume(b);return}return i.enter("data"),i.consume(b),I}function I(b){return E(b)?(i.exit("data"),l(b)):(i.consume(b),I)}function E(b){if(b===null)return!0;const j=c[b];let k=-1;if(j)for(;++k-1){const p=d[0];typeof p=="string"?d[0]=p.slice(s):d.shift()}l>0&&d.push(n[c].slice(0,l))}return d}function $e(n,a){let i=-1;const s=[];let c;for(;++i=3&&(E===null||Z(E))?(n.exit("thematicBreak"),a(E)):i(E)}function I(E){return E===c?(n.consume(E),s++,I):(n.exit("thematicBreakSequence"),ln(E)?vn(n,p,"whitespace")(E):p(E))}}const Zn={name:"list",tokenize:Ft,continuation:{tokenize:Ot},exit:yt},Tt={tokenize:Pt,partial:!0},xt={tokenize:gt,partial:!0};function Ft(n,a,i){const s=this,c=s.events[s.events.length-1];let l=c&&c[1].type==="linePrefix"?c[2].sliceSerialize(c[1],!0).length:0,d=0;return p;function p(x){const In=s.containerState.type||(x===42||x===43||x===45?"listUnordered":"listOrdered");if(In==="listUnordered"?!s.containerState.marker||x===s.containerState.marker:gn(x)){if(s.containerState.type||(s.containerState.type=In,n.enter(In,{_container:!0})),In==="listUnordered")return n.enter("listItemPrefix"),x===42||x===45?n.check(fe,i,E)(x):E(x);if(!s.interrupt||x===49)return n.enter("listItemPrefix"),n.enter("listItemValue"),I(x)}return i(x)}function I(x){return gn(x)&&++d<10?(n.consume(x),I):(!s.interrupt||d<2)&&(s.containerState.marker?x===s.containerState.marker:x===41||x===46)?(n.exit("listItemValue"),E(x)):i(x)}function E(x){return n.enter("listItemMarker"),n.consume(x),n.exit("listItemMarker"),s.containerState.marker=s.containerState.marker||x,n.check(Ee,s.interrupt?i:b,n.attempt(Tt,k,j))}function b(x){return s.containerState.initialBlankLine=!0,l++,k(x)}function j(x){return ln(x)?(n.enter("listItemPrefixWhitespace"),n.consume(x),n.exit("listItemPrefixWhitespace"),k):i(x)}function k(x){return s.containerState.size=l+s.sliceSerialize(n.exit("listItemPrefix"),!0).length,a(x)}}function Ot(n,a,i){const s=this;return s.containerState._closeFlow=void 0,n.check(Ee,c,l);function c(p){return s.containerState.furtherBlankLines=s.containerState.furtherBlankLines||s.containerState.initialBlankLine,vn(n,a,"listItemIndent",s.containerState.size+1)(p)}function l(p){return s.containerState.furtherBlankLines||!ln(p)?(s.containerState.furtherBlankLines=void 0,s.containerState.initialBlankLine=void 0,d(p)):(s.containerState.furtherBlankLines=void 0,s.containerState.initialBlankLine=void 0,n.attempt(xt,a,d)(p))}function d(p){return s.containerState._closeFlow=!0,s.interrupt=void 0,vn(n,n.attempt(Zn,a,i),"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(p)}}function gt(n,a,i){const s=this;return vn(n,c,"listItemIndent",s.containerState.size+1);function c(l){const d=s.events[s.events.length-1];return d&&d[1].type==="listItemIndent"&&d[2].sliceSerialize(d[1],!0).length===s.containerState.size?a(l):i(l)}}function yt(n){n.exit(this.containerState.type)}function Pt(n,a,i){const s=this;return vn(n,c,"listItemPrefixWhitespace",s.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function c(l){const d=s.events[s.events.length-1];return!ln(l)&&d&&d[1].type==="listItemPrefixWhitespace"?a(l):i(l)}}const Ze={name:"blockQuote",tokenize:Et,continuation:{tokenize:_t},exit:Lt};function Et(n,a,i){const s=this;return c;function c(d){if(d===62){const p=s.containerState;return p.open||(n.enter("blockQuote",{_container:!0}),p.open=!0),n.enter("blockQuotePrefix"),n.enter("blockQuoteMarker"),n.consume(d),n.exit("blockQuoteMarker"),l}return i(d)}function l(d){return ln(d)?(n.enter("blockQuotePrefixWhitespace"),n.consume(d),n.exit("blockQuotePrefixWhitespace"),n.exit("blockQuotePrefix"),a):(n.exit("blockQuotePrefix"),a(d))}}function _t(n,a,i){const s=this;return c;function c(d){return ln(d)?vn(n,l,"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(d):l(d)}function l(d){return n.attempt(Ze,a,i)(d)}}function Lt(n){n.exit("blockQuote")}function At(n,a,i,s,c,l,d,p,I){const E=I||Number.POSITIVE_INFINITY;let b=0;return j;function j($){return $===60?(n.enter(s),n.enter(c),n.enter(l),n.consume($),n.exit(l),k):$===null||$===32||$===41||sn($)?i($):(n.enter(s),n.enter(d),n.enter(p),n.enter("chunkString",{contentType:"string"}),Sn($))}function k($){return $===62?(n.enter(l),n.consume($),n.exit(l),n.exit(c),n.exit(s),a):(n.enter(p),n.enter("chunkString",{contentType:"string"}),x($))}function x($){return $===62?(n.exit("chunkString"),n.exit(p),k($)):$===null||$===60||Z($)?i($):(n.consume($),$===92?In:x)}function In($){return $===60||$===62||$===92?(n.consume($),x):x($)}function Sn($){return!b&&($===null||$===41||Mn($))?(n.exit("chunkString"),n.exit(p),n.exit(d),n.exit(s),a($)):b999||x===null||x===91||x===93&&!I||x===94&&!p&&"_hiddenFootnoteSupport"in d.parser.constructs?i(x):x===93?(n.exit(l),n.enter(c),n.consume(x),n.exit(c),n.exit(s),a):Z(x)?(n.enter("lineEnding"),n.consume(x),n.exit("lineEnding"),b):(n.enter("chunkString",{contentType:"string"}),j(x))}function j(x){return x===null||x===91||x===93||Z(x)||p++>999?(n.exit("chunkString"),b(x)):(n.consume(x),I||(I=!ln(x)),x===92?k:j)}function k(x){return x===91||x===92||x===93?(n.consume(x),p++,j):j(x)}}function Xe(n,a,i,s,c,l){let d;return p;function p(k){return k===34||k===39||k===40?(n.enter(s),n.enter(c),n.consume(k),n.exit(c),d=k===40?41:k,I):i(k)}function I(k){return k===d?(n.enter(c),n.consume(k),n.exit(c),n.exit(s),a):(n.enter(l),E(k))}function E(k){return k===d?(n.exit(l),I(d)):k===null?i(k):Z(k)?(n.enter("lineEnding"),n.consume(k),n.exit("lineEnding"),vn(n,E,"linePrefix")):(n.enter("chunkString",{contentType:"string"}),b(k))}function b(k){return k===d||k===null||Z(k)?(n.exit("chunkString"),E(k)):(n.consume(k),k===92?j:b)}function j(k){return k===d||k===92?(n.consume(k),b):b(k)}}function Ie(n,a){let i;return s;function s(c){return Z(c)?(n.enter("lineEnding"),n.consume(c),n.exit("lineEnding"),i=!0,s):ln(c)?vn(n,s,i?"linePrefix":"lineSuffix")(c):a(c)}}function Se(n){return n.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Je={name:"definition",tokenize:Mt},wt={tokenize:Dt,partial:!0};function Mt(n,a,i){const s=this;let c;return l;function l(x){return n.enter("definition"),d(x)}function d(x){return st.call(s,n,p,i,"definitionLabel","definitionLabelMarker","definitionLabelString")(x)}function p(x){return c=Se(s.sliceSerialize(s.events[s.events.length-1][1]).slice(1,-1)),x===58?(n.enter("definitionMarker"),n.consume(x),n.exit("definitionMarker"),I):i(x)}function I(x){return Mn(x)?Ie(n,E)(x):E(x)}function E(x){return At(n,b,i,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(x)}function b(x){return n.attempt(wt,j,j)(x)}function j(x){return ln(x)?vn(n,k,"whitespace")(x):k(x)}function k(x){return x===null||Z(x)?(n.exit("definition"),s.parser.defined.push(c),a(x)):i(x)}}function Dt(n,a,i){return s;function s(p){return Mn(p)?Ie(n,c)(p):i(p)}function c(p){return Xe(n,l,i,"definitionTitle","definitionTitleMarker","definitionTitleString")(p)}function l(p){return ln(p)?vn(n,d,"whitespace")(p):d(p)}function d(p){return p===null||Z(p)?a(p):i(p)}}const vt={name:"codeIndented",tokenize:Bt},bt={tokenize:Rt,partial:!0};function Bt(n,a,i){const s=this;return c;function c(E){return n.enter("codeIndented"),vn(n,l,"linePrefix",5)(E)}function l(E){const b=s.events[s.events.length-1];return b&&b[1].type==="linePrefix"&&b[2].sliceSerialize(b[1],!0).length>=4?d(E):i(E)}function d(E){return E===null?I(E):Z(E)?n.attempt(bt,d,I)(E):(n.enter("codeFlowValue"),p(E))}function p(E){return E===null||Z(E)?(n.exit("codeFlowValue"),d(E)):(n.consume(E),p)}function I(E){return n.exit("codeIndented"),a(E)}}function Rt(n,a,i){const s=this;return c;function c(d){return s.parser.lazy[s.now().line]?i(d):Z(d)?(n.enter("lineEnding"),n.consume(d),n.exit("lineEnding"),c):vn(n,l,"linePrefix",5)(d)}function l(d){const p=s.events[s.events.length-1];return p&&p[1].type==="linePrefix"&&p[2].sliceSerialize(p[1],!0).length>=4?a(d):Z(d)?c(d):i(d)}}const zt={name:"headingAtx",tokenize:U,resolve:O};function O(n,a){let i=n.length-2,s=3,c,l;return n[s][1].type==="whitespace"&&(s+=2),i-2>s&&n[i][1].type==="whitespace"&&(i-=2),n[i][1].type==="atxHeadingSequence"&&(s===i-1||i-4>s&&n[i-2][1].type==="whitespace")&&(i-=s+1===i?2:4),i>s&&(c={type:"atxHeadingText",start:n[s][1].start,end:n[i][1].end},l={type:"chunkText",start:n[s][1].start,end:n[i][1].end,contentType:"text"},N(n,s,i-s+1,[["enter",c,a],["enter",l,a],["exit",l,a],["exit",c,a]])),n}function U(n,a,i){let s=0;return c;function c(b){return n.enter("atxHeading"),l(b)}function l(b){return n.enter("atxHeadingSequence"),d(b)}function d(b){return b===35&&s++<6?(n.consume(b),d):b===null||Mn(b)?(n.exit("atxHeadingSequence"),p(b)):i(b)}function p(b){return b===35?(n.enter("atxHeadingSequence"),I(b)):b===null||Z(b)?(n.exit("atxHeading"),a(b)):ln(b)?vn(n,p,"whitespace")(b):(n.enter("atxHeadingText"),E(b))}function I(b){return b===35?(n.consume(b),I):(n.exit("atxHeadingSequence"),p(b))}function E(b){return b===null||b===35||Mn(b)?(n.exit("atxHeadingText"),p(b)):(n.consume(b),E)}}const un={name:"setextUnderline",tokenize:jn,resolveTo:fn};function fn(n,a){let i=n.length,s,c,l;for(;i--;)if(n[i][0]==="enter"){if(n[i][1].type==="content"){s=i;break}n[i][1].type==="paragraph"&&(c=i)}else n[i][1].type==="content"&&n.splice(i,1),!l&&n[i][1].type==="definition"&&(l=i);const d={type:"setextHeading",start:Object.assign({},n[c][1].start),end:Object.assign({},n[n.length-1][1].end)};return n[c][1].type="setextHeadingText",l?(n.splice(c,0,["enter",d,a]),n.splice(l+1,0,["exit",n[s][1],a]),n[s][1].end=Object.assign({},n[l][1].end)):n[s][1]=d,n.push(["exit",d,a]),n}function jn(n,a,i){const s=this;let c;return l;function l(E){let b=s.events.length,j;for(;b--;)if(s.events[b][1].type!=="lineEnding"&&s.events[b][1].type!=="linePrefix"&&s.events[b][1].type!=="content"){j=s.events[b][1].type==="paragraph";break}return!s.parser.lazy[s.now().line]&&(s.interrupt||j)?(n.enter("setextHeadingLine"),c=E,d(E)):i(E)}function d(E){return n.enter("setextHeadingLineSequence"),p(E)}function p(E){return E===c?(n.consume(E),p):(n.exit("setextHeadingLineSequence"),ln(E)?vn(n,I,"lineSuffix")(E):I(E))}function I(E){return E===null||Z(E)?(n.exit("setextHeadingLine"),a(E)):i(E)}}const _n=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Gn=["pre","script","style","textarea"],Tn={name:"htmlFlow",tokenize:ie,resolveTo:oe,concrete:!0},Un={tokenize:je,partial:!0},Wn={tokenize:Vn,partial:!0};function oe(n){let a=n.length;for(;a--&&!(n[a][0]==="enter"&&n[a][1].type==="htmlFlow"););return a>1&&n[a-2][1].type==="linePrefix"&&(n[a][1].start=n[a-2][1].start,n[a+1][1].start=n[a-2][1].start,n.splice(a-2,2)),n}function ie(n,a,i){const s=this;let c,l,d,p,I;return E;function E(v){return b(v)}function b(v){return n.enter("htmlFlow"),n.enter("htmlFlowData"),n.consume(v),j}function j(v){return v===33?(n.consume(v),k):v===47?(n.consume(v),l=!0,Sn):v===63?(n.consume(v),c=3,s.interrupt?a:A):mn(v)?(n.consume(v),d=String.fromCharCode(v),Kn):i(v)}function k(v){return v===45?(n.consume(v),c=2,x):v===91?(n.consume(v),c=5,p=0,In):mn(v)?(n.consume(v),c=4,s.interrupt?a:A):i(v)}function x(v){return v===45?(n.consume(v),s.interrupt?a:A):i(v)}function In(v){const be="CDATA[";return v===be.charCodeAt(p++)?(n.consume(v),p===be.length?s.interrupt?a:wn:In):i(v)}function Sn(v){return mn(v)?(n.consume(v),d=String.fromCharCode(v),Kn):i(v)}function Kn(v){if(v===null||v===47||v===62||Mn(v)){const be=v===47,St=d.toLowerCase();return!be&&!l&&Gn.includes(St)?(c=1,s.interrupt?a(v):wn(v)):_n.includes(d.toLowerCase())?(c=6,be?(n.consume(v),$):s.interrupt?a(v):wn(v)):(c=7,s.interrupt&&!s.parser.lazy[s.now().line]?i(v):l?Xn(v):en(v))}return v===45||Bn(v)?(n.consume(v),d+=String.fromCharCode(v),Kn):i(v)}function $(v){return v===62?(n.consume(v),s.interrupt?a:wn):i(v)}function Xn(v){return ln(v)?(n.consume(v),Xn):me(v)}function en(v){return v===47?(n.consume(v),me):v===58||v===95||mn(v)?(n.consume(v),Yn):ln(v)?(n.consume(v),en):me(v)}function Yn(v){return v===45||v===46||v===58||v===95||Bn(v)?(n.consume(v),Yn):Qn(v)}function Qn(v){return v===61?(n.consume(v),B):ln(v)?(n.consume(v),Qn):en(v)}function B(v){return v===null||v===60||v===61||v===62||v===96?i(v):v===34||v===39?(n.consume(v),I=v,zn):ln(v)?(n.consume(v),B):ee(v)}function zn(v){return v===I?(n.consume(v),I=null,qn):v===null||Z(v)?i(v):(n.consume(v),zn)}function ee(v){return v===null||v===34||v===39||v===47||v===60||v===61||v===62||v===96||Mn(v)?Qn(v):(n.consume(v),ee)}function qn(v){return v===47||v===62||ln(v)?en(v):i(v)}function me(v){return v===62?(n.consume(v),Hn):i(v)}function Hn(v){return v===null||Z(v)?wn(v):ln(v)?(n.consume(v),Hn):i(v)}function wn(v){return v===45&&c===2?(n.consume(v),Jn):v===60&&c===1?(n.consume(v),se):v===62&&c===4?(n.consume(v),Oe):v===63&&c===3?(n.consume(v),A):v===93&&c===5?(n.consume(v),Ge):Z(v)&&(c===6||c===7)?(n.exit("htmlFlowData"),n.check(Un,Ve,tn)(v)):v===null||Z(v)?(n.exit("htmlFlowData"),tn(v)):(n.consume(v),wn)}function tn(v){return n.check(Wn,xn,Ve)(v)}function xn(v){return n.enter("lineEnding"),n.consume(v),n.exit("lineEnding"),bn}function bn(v){return v===null||Z(v)?tn(v):(n.enter("htmlFlowData"),wn(v))}function Jn(v){return v===45?(n.consume(v),A):wn(v)}function se(v){return v===47?(n.consume(v),d="",Re):wn(v)}function Re(v){if(v===62){const be=d.toLowerCase();return Gn.includes(be)?(n.consume(v),Oe):wn(v)}return mn(v)&&d.length<8?(n.consume(v),d+=String.fromCharCode(v),Re):wn(v)}function Ge(v){return v===93?(n.consume(v),A):wn(v)}function A(v){return v===62?(n.consume(v),Oe):v===45&&c===2?(n.consume(v),A):wn(v)}function Oe(v){return v===null||Z(v)?(n.exit("htmlFlowData"),Ve(v)):(n.consume(v),Oe)}function Ve(v){return n.exit("htmlFlow"),a(v)}}function Vn(n,a,i){const s=this;return c;function c(d){return Z(d)?(n.enter("lineEnding"),n.consume(d),n.exit("lineEnding"),l):i(d)}function l(d){return s.parser.lazy[s.now().line]?i(d):a(d)}}function je(n,a,i){return s;function s(c){return n.enter("lineEnding"),n.consume(c),n.exit("lineEnding"),n.attempt(Ee,a,i)}}const le={tokenize:De,partial:!0},pe={name:"codeFenced",tokenize:Te,concrete:!0};function Te(n,a,i){const s=this,c={tokenize:Qn,partial:!0};let l=0,d=0,p;return I;function I(B){return E(B)}function E(B){const zn=s.events[s.events.length-1];return l=zn&&zn[1].type==="linePrefix"?zn[2].sliceSerialize(zn[1],!0).length:0,p=B,n.enter("codeFenced"),n.enter("codeFencedFence"),n.enter("codeFencedFenceSequence"),b(B)}function b(B){return B===p?(d++,n.consume(B),b):d<3?i(B):(n.exit("codeFencedFenceSequence"),ln(B)?vn(n,j,"whitespace")(B):j(B))}function j(B){return B===null||Z(B)?(n.exit("codeFencedFence"),s.interrupt?a(B):n.check(le,Sn,Yn)(B)):(n.enter("codeFencedFenceInfo"),n.enter("chunkString",{contentType:"string"}),k(B))}function k(B){return B===null||Z(B)?(n.exit("chunkString"),n.exit("codeFencedFenceInfo"),j(B)):ln(B)?(n.exit("chunkString"),n.exit("codeFencedFenceInfo"),vn(n,x,"whitespace")(B)):B===96&&B===p?i(B):(n.consume(B),k)}function x(B){return B===null||Z(B)?j(B):(n.enter("codeFencedFenceMeta"),n.enter("chunkString",{contentType:"string"}),In(B))}function In(B){return B===null||Z(B)?(n.exit("chunkString"),n.exit("codeFencedFenceMeta"),j(B)):B===96&&B===p?i(B):(n.consume(B),In)}function Sn(B){return n.attempt(c,Yn,Kn)(B)}function Kn(B){return n.enter("lineEnding"),n.consume(B),n.exit("lineEnding"),$}function $(B){return l>0&&ln(B)?vn(n,Xn,"linePrefix",l+1)(B):Xn(B)}function Xn(B){return B===null||Z(B)?n.check(le,Sn,Yn)(B):(n.enter("codeFlowValue"),en(B))}function en(B){return B===null||Z(B)?(n.exit("codeFlowValue"),Xn(B)):(n.consume(B),en)}function Yn(B){return n.exit("codeFenced"),a(B)}function Qn(B,zn,ee){let qn=0;return me;function me(bn){return B.enter("lineEnding"),B.consume(bn),B.exit("lineEnding"),Hn}function Hn(bn){return B.enter("codeFencedFence"),ln(bn)?vn(B,wn,"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(bn):wn(bn)}function wn(bn){return bn===p?(B.enter("codeFencedFenceSequence"),tn(bn)):ee(bn)}function tn(bn){return bn===p?(qn++,B.consume(bn),tn):qn>=d?(B.exit("codeFencedFenceSequence"),ln(bn)?vn(B,xn,"whitespace")(bn):xn(bn)):ee(bn)}function xn(bn){return bn===null||Z(bn)?(B.exit("codeFencedFence"),zn(bn)):ee(bn)}}}function De(n,a,i){const s=this;return c;function c(d){return d===null?i(d):(n.enter("lineEnding"),n.consume(d),n.exit("lineEnding"),l)}function l(d){return s.parser.lazy[s.now().line]?i(d):a(d)}}const Fe=document.createElement("i");function at(n){const a="&"+n+";";Fe.innerHTML=a;const i=Fe.textContent;return i.charCodeAt(i.length-1)===59&&n!=="semi"||i===a?!1:i}const Be={name:"characterReference",tokenize:ut};function ut(n,a,i){const s=this;let c=0,l,d;return p;function p(j){return n.enter("characterReference"),n.enter("characterReferenceMarker"),n.consume(j),n.exit("characterReferenceMarker"),I}function I(j){return j===35?(n.enter("characterReferenceMarkerNumeric"),n.consume(j),n.exit("characterReferenceMarkerNumeric"),E):(n.enter("characterReferenceValue"),l=31,d=Bn,b(j))}function E(j){return j===88||j===120?(n.enter("characterReferenceMarkerHexadecimal"),n.consume(j),n.exit("characterReferenceMarkerHexadecimal"),n.enter("characterReferenceValue"),l=6,d=Rn,b):(n.enter("characterReferenceValue"),l=7,d=gn,b(j))}function b(j){if(j===59&&c){const k=n.exit("characterReferenceValue");return d===Bn&&!at(s.sliceSerialize(k))?i(j):(n.enter("characterReferenceMarker"),n.consume(j),n.exit("characterReferenceMarker"),n.exit("characterReference"),a)}return d(j)&&c++1&&n[i][1].end.offset-n[i][1].start.offset>1?2:1;const j=Object.assign({},n[s][1].end),k=Object.assign({},n[i][1].start);qe(j,-I),qe(k,I),d={type:I>1?"strongSequence":"emphasisSequence",start:j,end:Object.assign({},n[s][1].end)},p={type:I>1?"strongSequence":"emphasisSequence",start:Object.assign({},n[i][1].start),end:k},l={type:I>1?"strongText":"emphasisText",start:Object.assign({},n[s][1].end),end:Object.assign({},n[i][1].start)},c={type:I>1?"strong":"emphasis",start:Object.assign({},d.start),end:Object.assign({},p.end)},n[s][1].end=Object.assign({},d.start),n[i][1].start=Object.assign({},p.end),E=[],n[s][1].end.offset-n[s][1].start.offset&&(E=Y(E,[["enter",n[s][1],a],["exit",n[s][1],a]])),E=Y(E,[["enter",c,a],["enter",d,a],["exit",d,a],["enter",l,a]]),E=Y(E,An(a.parser.constructs.insideSpan.null,n.slice(s+1,i),a)),E=Y(E,[["exit",l,a],["enter",p,a],["exit",p,a],["exit",c,a]]),n[i][1].end.offset-n[i][1].start.offset?(b=2,E=Y(E,[["enter",n[i][1],a],["exit",n[i][1],a]])):b=0,N(n,s-1,i-s+3,E),i=s+E.length-b-2;break}}for(i=-1;++i13&&i<32||i>126&&i<160||i>55295&&i<57344||i>64975&&i<65008||(i&65535)===65535||(i&65535)===65534||i>1114111?"\uFFFD":String.fromCharCode(i)}const br=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function xr(n){return n.replace(br,$r)}function $r(n,a,i){if(a)return a;if(i.charCodeAt(0)===35){const c=i.charCodeAt(1),l=c===120||c===88;return Qr(i.slice(l?2:1),l?16:10)}return at(i)||n}function Jt(n){return!n||typeof n!="object"?"":"position"in n||"type"in n?Zr(n.position):"start"in n||"end"in n?Zr(n):"line"in n||"column"in n?yr(n):""}function yr(n){return ct(n&&n.line)+":"+ct(n&&n.column)}function Zr(n){return yr(n&&n.start)+"-"+yr(n&&n.end)}function ct(n){return n&&typeof n=="number"?n:1}const qt={}.hasOwnProperty,Er=function(n,a,i){return typeof a!="string"&&(i=a,a=void 0),wr(i)(Xt(Vr(i).document().write(Yr()(n,a,!0))))};function wr(n){const a={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:p(Pr),autolinkProtocol:Hn,autolinkEmail:Hn,atxHeading:p(Tr),blockQuote:p(jt),characterEscape:Hn,characterReference:Hn,codeFenced:p(ht),codeFencedFenceInfo:I,codeFencedFenceMeta:I,codeIndented:p(ht,I),codeText:p(cr,I),codeTextData:Hn,data:Hn,codeFlowValue:Hn,definition:p(ai),definitionDestinationString:I,definitionLabelString:I,definitionTitleString:I,emphasis:p(ui),hardBreakEscape:p(Fr),hardBreakTrailing:p(Fr),htmlFlow:p(Or,I),htmlFlowData:Hn,htmlText:p(Or,I),htmlTextData:Hn,image:p(oi),label:I,link:p(Pr),listItem:p(Mr),listItemValue:In,listOrdered:p(Lr,x),listUnordered:p(Lr),paragraph:p(li),reference:St,referenceString:I,resourceDestinationString:I,resourceTitleString:I,setextHeading:p(Tr),strong:p(di),thematicBreak:p(fi)},exit:{atxHeading:b(),atxHeadingSequence:zn,autolink:b(),autolinkEmail:nt,autolinkProtocol:Ht,blockQuote:b(),characterEscapeValue:wn,characterReferenceMarkerHexadecimal:Kt,characterReferenceMarkerNumeric:Kt,characterReferenceValue:ae,codeFenced:b(Xn),codeFencedFence:$,codeFencedFenceInfo:Sn,codeFencedFenceMeta:Kn,codeFlowValue:wn,codeIndented:b(en),codeText:b(se),codeTextData:wn,data:wn,definition:b(),definitionDestinationString:B,definitionLabelString:Yn,definitionTitleString:Qn,emphasis:b(),hardBreakEscape:b(xn),hardBreakTrailing:b(xn),htmlFlow:b(bn),htmlFlowData:wn,htmlText:b(Jn),htmlTextData:wn,image:b(Ge),label:Oe,labelText:A,lineEnding:tn,link:b(Re),listItem:b(),listOrdered:b(),listUnordered:b(),paragraph:b(),referenceString:tr,resourceDestinationString:Ve,resourceTitleString:v,resource:be,setextHeading:b(me),setextHeadingLineSequence:qn,setextHeadingText:ee,strong:b(),thematicBreak:b()}};or(a,(n||{}).mdastExtensions||[]);const i={};return s;function s(T){let G={type:"root",children:[]};const on={stack:[G],tokenStack:[],config:a,enter:E,exit:j,buffer:I,resume:k,setData:l,getData:d},On=[];let Dn=-1;for(;++Dn0){const ze=on.tokenStack[on.tokenStack.length-1];(ze[1]||lr).call(on,void 0,ze[0])}for(G.position={start:He(T.length>0?T[0][1].start:{line:1,column:1,offset:0}),end:He(T.length>0?T[T.length-2][1].end:{line:1,column:1,offset:0})},Dn=-1;++Dn{b!==0&&(c++,s.push([])),E.split(" ").forEach(j=>{j&&s[c].push({content:j,type:p})})}):(d.type==="strong"||d.type==="emphasis")&&d.children.forEach(I=>{l(I,d.type)})}return i.forEach(d=>{d.type==="paragraph"&&d.children.forEach(p=>{l(p)})}),s}function Ir(n){const{children:a}=Er(n);function i(s){return s.type==="text"?s.value.replace(/\n/g,"
"):s.type==="strong"?`${s.children.map(i).join("")}`:s.type==="emphasis"?`${s.children.map(i).join("")}`:s.type==="paragraph"?`

${s.children.map(i).join("")}

`:`Unsupported markdown: ${s.type}`}return a.map(i).join("")}function qr(n){return Intl.Segmenter?[...new Intl.Segmenter().segment(n)].map(a=>a.segment):[...n]}function ni(n,a){const i=qr(a.content);return Sr(n,[],i,a.type)}function Sr(n,a,i,s){if(i.length===0)return[{content:a.join(""),type:s},{content:"",type:s}];const[c,...l]=i,d=[...a,c];return n([{content:d.join(""),type:s}])?Sr(n,d,l,s):(a.length===0&&c&&(a.push(c),i.shift()),[{content:a.join(""),type:s},{content:i.join(""),type:s}])}function jr(n,a){if(n.some(({content:i})=>i.includes(` +`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return ft(n,a)}function ft(n,a,i=[],s=[]){if(n.length===0)return s.length>0&&i.push(s),i.length>0?i:[];let c="";n[0].content===" "&&(c=" ",n.shift());const l=n.shift()??{content:" ",type:"normal"},d=[...s];if(c!==""&&d.push({content:c,type:"normal"}),d.push(l),a(d))return ft(n,a,i,d);if(s.length>0)i.push(s),n.unshift(l);else if(l.content){const[p,I]=ni(a,l);i.push([p]),I.content&&n.unshift(I)}return ft(n,a,i)}function nr(n,a){a&&n.attr("style",a)}function ei(n,a,i,s,c=!1){const l=n.append("foreignObject"),d=l.append("xhtml:div"),p=a.label,I=a.isNode?"nodeLabel":"edgeLabel";d.html(` + "+p+""),nr(d,a.labelStyle),d.style("display","table-cell"),d.style("white-space","nowrap"),d.style("max-width",i+"px"),d.attr("xmlns","http://www.w3.org/1999/xhtml"),c&&d.attr("class","labelBkg");let E=d.node().getBoundingClientRect();return E.width===i&&(d.style("display","table"),d.style("white-space","break-spaces"),d.style("width",i+"px"),E=d.node().getBoundingClientRect()),l.style("width",E.width),l.style("height",E.height),l.node()}function er(n,a,i){return n.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",a*i-.1+"em").attr("dy",i+"em")}function ti(n,a,i){const s=n.append("text"),c=er(s,1,a);dr(c,i);const l=c.node().getComputedTextLength();return s.remove(),l}function ri(n,a,i){var s;const c=n.append("text"),l=er(c,1,a);dr(l,[{content:i,type:"normal"}]);const d=(s=l.node())==null?void 0:s.getBoundingClientRect();return d&&c.remove(),d}function ii(n,a,i,s=!1){const l=a.append("g"),d=l.insert("rect").attr("class","background"),p=l.append("text").attr("y","-10.1");let I=0;for(const E of i){const b=k=>ti(l,1.1,k)<=n,j=b(E)?[E]:jr(E,b);for(const k of j){const x=er(p,I,1.1);dr(x,k),I++}}if(s){const E=p.node().getBBox(),b=2;return d.attr("x",-b).attr("y",-b).attr("width",E.width+2*b).attr("height",E.height+2*b),l.node()}else return p.node()}function dr(n,a){n.text(""),a.forEach((i,s)=>{const c=n.append("tspan").attr("font-style",i.type==="emphasis"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",i.type==="strong"?"bold":"normal");s===0?c.text(i.content):c.text(" "+i.content)})}const si=(n,a="",{style:i="",isTitle:s=!1,classes:c="",useHtmlLabels:l=!0,isNode:d=!0,width:p=200,addSvgBackground:I=!1}={})=>{if(R.l.info("createText",a,i,s,c,l,d,I),l){const E=Ir(a),b={isNode:d,label:(0,R.M)(E).replace(/fa[blrs]?:fa-[\w-]+/g,k=>``),labelStyle:i.replace("fill:","color:")};return ei(n,b,p,c,I)}else{const E=Jr(a);return ii(p,n,E,I)}}}}]); diff --git a/data/gitea/public/assets/js/-.2e273c97.js b/data/gitea/public/assets/js/-.2e273c97.js new file mode 100644 index 0000000..4577bbb --- /dev/null +++ b/data/gitea/public/assets/js/-.2e273c97.js @@ -0,0 +1,493 @@ +"use strict";(self.webpackChunk=self.webpackChunk||[]).push([["-"],{"./node_modules/monaco-editor/esm/vs/basic-languages/typescript/typescript.js":function(je,se,ot){ot.r(se),ot.d(se,{conf:function(){return G},language:function(){return et}});var E=ot("include-loader!./node_modules/monaco-editor/esm/vs/editor/editor.api.js");var C=Object.defineProperty,U=Object.getOwnPropertyDescriptor,w=Object.getOwnPropertyNames,ae=Object.prototype.hasOwnProperty,Ot=(ut,mt,Qt,le)=>{if(mt&&typeof mt=="object"||typeof mt=="function")for(let Zt of w(mt))!ae.call(ut,Zt)&&Zt!==Qt&&C(ut,Zt,{get:()=>mt[Zt],enumerable:!(le=U(mt,Zt))||le.enumerable});return ut},Rt=(ut,mt,Qt)=>(Ot(ut,mt,"default"),Qt&&Ot(Qt,mt,"default")),N={};Rt(N,E);var G={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:N.languages.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:N.languages.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:N.languages.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:N.languages.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},et={defaultToken:"invalid",tokenPostfix:".ts",keywords:["abstract","any","as","asserts","bigint","boolean","break","case","catch","class","continue","const","constructor","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","infer","instanceof","interface","is","keyof","let","module","namespace","never","new","null","number","object","out","package","private","protected","public","override","readonly","require","global","return","satisfies","set","static","string","super","switch","symbol","this","throw","true","try","type","typeof","undefined","unique","unknown","var","void","while","with","yield","async","await","of"],operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<",">",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([dgimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}}},"./node_modules/dagre-d3-es/src/dagre-js/label/add-html-label.js":function(je,se,ot){ot.d(se,{H:function(){return C}});var E=ot("./node_modules/dagre-d3-es/src/dagre-js/util.js");function C(U,w){var ae=U.append("foreignObject").attr("width","100000"),Ot=ae.append("xhtml:div");Ot.attr("xmlns","http://www.w3.org/1999/xhtml");var Rt=w.label;switch(typeof Rt){case"function":Ot.insert(Rt);break;case"object":Ot.insert(function(){return Rt});break;default:Ot.html(Rt)}E.AV(Ot,w.labelStyle),Ot.style("display","inline-block"),Ot.style("white-space","nowrap");var N=Ot.node().getBoundingClientRect();return ae.attr("width",N.width).attr("height",N.height),ae}},"./node_modules/dagre-d3-es/src/dagre-js/util.js":function(je,se,ot){ot.d(se,{AV:function(){return Rt},De:function(){return U},c$:function(){return G},gh:function(){return w},nh:function(){return N}});var E=ot("./node_modules/lodash-es/isPlainObject.js"),C=ot("./node_modules/lodash-es/isFunction.js");function U(et,ut){return!!et.children(ut).length}function w(et){return Ot(et.v)+":"+Ot(et.w)+":"+Ot(et.name)}var ae=/:/g;function Ot(et){return et?String(et).replace(ae,"\\:"):""}function Rt(et,ut){ut&&et.attr("style",ut)}function N(et,ut,mt){ut&&et.attr("class",ut).attr("class",mt+" "+et.attr("class"))}function G(et,ut){var mt=ut.graph();if(E.A(mt)){var Qt=mt.transition;if(C.A(Qt))return Qt(et)}return et}},"./node_modules/dagre-d3-es/src/graphlib/json.js":function(je,se,ot){ot.d(se,{M:function(){return ae}});var E=ot("./node_modules/lodash-es/isUndefined.js"),C=ot("./node_modules/lodash-es/clone.js"),U=ot("./node_modules/lodash-es/map.js"),w=ot("./node_modules/dagre-d3-es/src/graphlib/graph.js");function ae(G){var et={options:{directed:G.isDirected(),multigraph:G.isMultigraph(),compound:G.isCompound()},nodes:Ot(G),edges:Rt(G)};return E.A(G.graph())||(et.value=C.A(G.graph())),et}function Ot(G){return U.A(G.nodes(),function(et){var ut=G.node(et),mt=G.parent(et),Qt={v:et};return E.A(ut)||(Qt.value=ut),E.A(mt)||(Qt.parent=mt),Qt})}function Rt(G){return U.A(G.edges(),function(et){var ut=G.edge(et),mt={v:et.v,w:et.w};return E.A(et.name)||(mt.name=et.name),E.A(ut)||(mt.value=ut),mt})}function N(G){var et=new Graph(G.options).setGraph(G.value);return _.each(G.nodes,function(ut){et.setNode(ut.v,ut.value),ut.parent&&et.setParent(ut.v,ut.parent)}),_.each(G.edges,function(ut){et.setEdge({v:ut.v,w:ut.w,name:ut.name},ut.value)}),et}},"./node_modules/khroma/dist/methods/channel.js":function(je,se,ot){var E=ot("./node_modules/khroma/dist/utils/index.js"),C=ot("./node_modules/khroma/dist/color/index.js");const U=(w,ae)=>E.A.lang.round(C.A.parse(w)[ae]);se.A=U},"./node_modules/lodash-es/clone.js":function(je,se,ot){var E=ot("./node_modules/lodash-es/_baseClone.js"),C=4;function U(w){return(0,E.A)(w,C)}se.A=U},"./node_modules/mermaid/dist/edges-d32062c0.js":function(je,se,ot){ot.d(se,{a:function(){return Zt},b:function(){return j},c:function(){return At},d:function(){return ct},e:function(){return b},f:function(){return Ee},g:function(){return xt},h:function(){return Jt},i:function(){return J},j:function(){return Te},k:function(){return ee},l:function(){return kt},m:function(){return wt},p:function(){return K},s:function(){return v},u:function(){return bt}});var E=ot("./node_modules/mermaid/dist/mermaid-f47111a7.js"),C=ot("./node_modules/d3/src/index.js"),U=ot("./node_modules/mermaid/dist/createText-6b48ae7d.js");const w=(s,t,e,a)=>{t.forEach(c=>{le[c](s,e,a)})},le={extension:(s,t,e)=>{E.l.trace("Making markers for ",e),s.append("defs").append("marker").attr("id",e+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),s.append("defs").append("marker").attr("id",e+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},composition:(s,t,e)=>{s.append("defs").append("marker").attr("id",e+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),s.append("defs").append("marker").attr("id",e+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},aggregation:(s,t,e)=>{s.append("defs").append("marker").attr("id",e+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),s.append("defs").append("marker").attr("id",e+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},dependency:(s,t,e)=>{s.append("defs").append("marker").attr("id",e+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),s.append("defs").append("marker").attr("id",e+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},lollipop:(s,t,e)=>{s.append("defs").append("marker").attr("id",e+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),s.append("defs").append("marker").attr("id",e+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},point:(s,t,e)=>{s.append("marker").attr("id",e+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),s.append("marker").attr("id",e+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},circle:(s,t,e)=>{s.append("marker").attr("id",e+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),s.append("marker").attr("id",e+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},cross:(s,t,e)=>{s.append("marker").attr("id",e+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),s.append("marker").attr("id",e+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},barb:(s,t,e)=>{s.append("defs").append("marker").attr("id",e+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}},Zt=w;function Mt(s,t){t&&s.attr("style",t)}function ye(s){const t=(0,C.Ltv)(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),e=t.append("xhtml:div"),a=s.label,c=s.isNode?"nodeLabel":"edgeLabel";return e.html('"+a+""),Mt(e,s.labelStyle),e.style("display","inline-block"),e.style("white-space","nowrap"),e.attr("xmlns","http://www.w3.org/1999/xhtml"),t.node()}const At=(s,t,e,a)=>{let c=s||"";if(typeof c=="object"&&(c=c[0]),(0,E.m)((0,E.c)().flowchart.htmlLabels)){c=c.replace(/\\n|\n/g,"
"),E.l.debug("vertexText"+c);const i={isNode:a,label:(0,E.M)(c).replace(/fa[blrs]?:fa-[\w-]+/g,h=>``),labelStyle:t.replace("fill:","color:")};return ye(i)}else{const i=document.createElementNS("http://www.w3.org/2000/svg","text");i.setAttribute("style",t.replace("color:","fill:"));let o=[];typeof c=="string"?o=c.split(/\\n|\n|/gi):Array.isArray(c)?o=c:o=[];for(const h of o){const g=document.createElementNS("http://www.w3.org/2000/svg","tspan");g.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),g.setAttribute("dy","1em"),g.setAttribute("x","0"),e?g.setAttribute("class","title-row"):g.setAttribute("class","row"),g.textContent=h.trim(),i.appendChild(g)}return i}},kt=async(s,t,e,a)=>{let c;const i=t.useHtmlLabels||(0,E.m)((0,E.c)().flowchart.htmlLabels);e?c=e:c="node default";const o=s.insert("g").attr("class",c).attr("id",t.domId||t.id),h=o.insert("g").attr("class","label").attr("style",t.labelStyle);let g;t.labelText===void 0?g="":g=typeof t.labelText=="string"?t.labelText:t.labelText[0];const R=h.node();let m;t.labelType==="markdown"?m=(0,U.a)(h,(0,E.d)((0,E.M)(g),(0,E.c)()),{useHtmlLabels:i,width:t.width||(0,E.c)().flowchart.wrappingWidth,classes:"markdown-node-label"}):m=R.appendChild(At((0,E.d)((0,E.M)(g),(0,E.c)()),t.labelStyle,!1,a));let x=m.getBBox();const D=t.padding/2;if((0,E.m)((0,E.c)().flowchart.htmlLabels)){const T=m.children[0],Y=(0,C.Ltv)(m),nt=T.getElementsByTagName("img");if(nt){const S=g.replace(/]*>/g,"").trim()==="";await Promise.all([...nt].map(Et=>new Promise(X=>{function It(){if(Et.style.display="flex",Et.style.flexDirection="column",S){const St=(0,E.c)().fontSize?(0,E.c)().fontSize:window.getComputedStyle(document.body).fontSize,pe=parseInt(St,10)*5+"px";Et.style.minWidth=pe,Et.style.maxWidth=pe}else Et.style.width="100%";X(Et)}setTimeout(()=>{Et.complete&&It()}),Et.addEventListener("error",It),Et.addEventListener("load",It)})))}x=T.getBoundingClientRect(),Y.attr("width",x.width),Y.attr("height",x.height)}return i?h.attr("transform","translate("+-x.width/2+", "+-x.height/2+")"):h.attr("transform","translate(0, "+-x.height/2+")"),t.centerLabel&&h.attr("transform","translate("+-x.width/2+", "+-x.height/2+")"),h.insert("rect",":first-child"),{shapeSvg:o,bbox:x,halfPadding:D,label:h}},bt=(s,t)=>{const e=t.node().getBBox();s.width=e.width,s.height=e.height};function Dt(s,t,e,a){return s.insert("polygon",":first-child").attr("points",a.map(function(c){return c.x+","+c.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+e/2+")")}function Ht(s,t){return s.intersect(t)}function re(s,t,e,a){var c=s.x,i=s.y,o=c-a.x,h=i-a.y,g=Math.sqrt(t*t*h*h+e*e*o*o),R=Math.abs(t*e*o/g);a.x0}function te(s,t,e){var a=s.x,c=s.y,i=[],o=Number.POSITIVE_INFINITY,h=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(Y){o=Math.min(o,Y.x),h=Math.min(h,Y.y)}):(o=Math.min(o,t.x),h=Math.min(h,t.y));for(var g=a-s.width/2-o,R=c-s.height/2-h,m=0;m1&&i.sort(function(Y,nt){var S=Y.x-e.x,Et=Y.y-e.y,X=Math.sqrt(S*S+Et*Et),It=nt.x-e.x,St=nt.y-e.y,ue=Math.sqrt(It*It+St*St);return X{var e=s.x,a=s.y,c=t.x-e,i=t.y-a,o=s.width/2,h=s.height/2,g,R;return Math.abs(i)*o>Math.abs(c)*h?(i<0&&(h=-h),g=i===0?0:h*c/i,R=h):(c<0&&(o=-o),g=o,R=c===0?0:o*i/c),{x:e+g,y:a+R}},Z={node:Ht,circle:vt,ellipse:re,polygon:te,rect:J},u=async(s,t)=>{t.useHtmlLabels||(0,E.c)().flowchart.htmlLabels||(t.centerLabel=!0);const{shapeSvg:a,bbox:c,halfPadding:i}=await kt(s,t,"node "+t.classes,!0);E.l.info("Classes = ",t.classes);const o=a.insert("rect",":first-child");return o.attr("rx",t.rx).attr("ry",t.ry).attr("x",-c.width/2-i).attr("y",-c.height/2-i).attr("width",c.width+t.padding).attr("height",c.height+t.padding),bt(t,o),t.intersect=function(h){return Z.rect(t,h)},a},A=s=>{const t=new Set;for(const e of s)switch(e){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(e);break}return t},P=(s,t,e)=>{const a=A(s),c=2,i=t.height+2*e.padding,o=i/c,h=t.width+2*o+e.padding,g=e.padding/2;return a.has("right")&&a.has("left")&&a.has("up")&&a.has("down")?[{x:0,y:0},{x:o,y:0},{x:h/2,y:2*g},{x:h-o,y:0},{x:h,y:0},{x:h,y:-i/3},{x:h+2*g,y:-i/2},{x:h,y:-2*i/3},{x:h,y:-i},{x:h-o,y:-i},{x:h/2,y:-i-2*g},{x:o,y:-i},{x:0,y:-i},{x:0,y:-2*i/3},{x:-2*g,y:-i/2},{x:0,y:-i/3}]:a.has("right")&&a.has("left")&&a.has("up")?[{x:o,y:0},{x:h-o,y:0},{x:h,y:-i/2},{x:h-o,y:-i},{x:o,y:-i},{x:0,y:-i/2}]:a.has("right")&&a.has("left")&&a.has("down")?[{x:0,y:0},{x:o,y:-i},{x:h-o,y:-i},{x:h,y:0}]:a.has("right")&&a.has("up")&&a.has("down")?[{x:0,y:0},{x:h,y:-o},{x:h,y:-i+o},{x:0,y:-i}]:a.has("left")&&a.has("up")&&a.has("down")?[{x:h,y:0},{x:0,y:-o},{x:0,y:-i+o},{x:h,y:-i}]:a.has("right")&&a.has("left")?[{x:o,y:0},{x:o,y:-g},{x:h-o,y:-g},{x:h-o,y:0},{x:h,y:-i/2},{x:h-o,y:-i},{x:h-o,y:-i+g},{x:o,y:-i+g},{x:o,y:-i},{x:0,y:-i/2}]:a.has("up")&&a.has("down")?[{x:h/2,y:0},{x:0,y:-g},{x:o,y:-g},{x:o,y:-i+g},{x:0,y:-i+g},{x:h/2,y:-i},{x:h,y:-i+g},{x:h-o,y:-i+g},{x:h-o,y:-g},{x:h,y:-g}]:a.has("right")&&a.has("up")?[{x:0,y:0},{x:h,y:-o},{x:0,y:-i}]:a.has("right")&&a.has("down")?[{x:0,y:0},{x:h,y:0},{x:0,y:-i}]:a.has("left")&&a.has("up")?[{x:h,y:0},{x:0,y:-o},{x:h,y:-i}]:a.has("left")&&a.has("down")?[{x:h,y:0},{x:0,y:0},{x:h,y:-i}]:a.has("right")?[{x:o,y:-g},{x:o,y:-g},{x:h-o,y:-g},{x:h-o,y:0},{x:h,y:-i/2},{x:h-o,y:-i},{x:h-o,y:-i+g},{x:o,y:-i+g},{x:o,y:-i+g}]:a.has("left")?[{x:o,y:0},{x:o,y:-g},{x:h-o,y:-g},{x:h-o,y:-i+g},{x:o,y:-i+g},{x:o,y:-i},{x:0,y:-i/2}]:a.has("up")?[{x:o,y:-g},{x:o,y:-i+g},{x:0,y:-i+g},{x:h/2,y:-i},{x:h,y:-i+g},{x:h-o,y:-i+g},{x:h-o,y:-g}]:a.has("down")?[{x:h/2,y:0},{x:0,y:-g},{x:o,y:-g},{x:o,y:-i+g},{x:h-o,y:-i+g},{x:h-o,y:-g},{x:h,y:-g}]:[{x:0,y:0}]},L=s=>s?" "+s:"",O=(s,t)=>`${t||"node default"}${L(s.classes)} ${L(s.class)}`,ft=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t,void 0),!0),c=a.width+t.padding,i=a.height+t.padding,o=c+i,h=[{x:o/2,y:0},{x:o,y:-o/2},{x:o/2,y:-o},{x:0,y:-o/2}];E.l.info("Question main (Circle)");const g=Dt(e,o,o,h);return g.attr("style",t.style),bt(t,g),t.intersect=function(R){return E.l.warn("Intersect called"),Z.polygon(t,h,R)},e},rt=(s,t)=>{const e=s.insert("g").attr("class","node default").attr("id",t.domId||t.id),a=28,c=[{x:0,y:a/2},{x:a/2,y:0},{x:0,y:-a/2},{x:-a/2,y:0}];return e.insert("polygon",":first-child").attr("points",c.map(function(o){return o.x+","+o.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(o){return Z.circle(t,14,o)},e},st=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t,void 0),!0),c=4,i=a.height+t.padding,o=i/c,h=a.width+2*o+t.padding,g=[{x:o,y:0},{x:h-o,y:0},{x:h,y:-i/2},{x:h-o,y:-i},{x:o,y:-i},{x:0,y:-i/2}],R=Dt(e,h,i,g);return R.attr("style",t.style),bt(t,R),t.intersect=function(m){return Z.polygon(t,g,m)},e},Bt=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,void 0,!0),c=2,i=a.height+2*t.padding,o=i/c,h=a.width+2*o+t.padding,g=P(t.directions,a,t),R=Dt(e,h,i,g);return R.attr("style",t.style),bt(t,R),t.intersect=function(m){return Z.polygon(t,g,m)},e},Vt=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t,void 0),!0),c=a.width+t.padding,i=a.height+t.padding,o=[{x:-i/2,y:0},{x:c,y:0},{x:c,y:-i},{x:-i/2,y:-i},{x:0,y:-i/2}];return Dt(e,c,i,o).attr("style",t.style),t.width=c+i,t.height=i,t.intersect=function(g){return Z.polygon(t,o,g)},e},ie=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t),!0),c=a.width+t.padding,i=a.height+t.padding,o=[{x:-2*i/6,y:0},{x:c-i/6,y:0},{x:c+2*i/6,y:-i},{x:i/6,y:-i}],h=Dt(e,c,i,o);return h.attr("style",t.style),bt(t,h),t.intersect=function(g){return Z.polygon(t,o,g)},e},de=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t,void 0),!0),c=a.width+t.padding,i=a.height+t.padding,o=[{x:2*i/6,y:0},{x:c+i/6,y:0},{x:c-2*i/6,y:-i},{x:-i/6,y:-i}],h=Dt(e,c,i,o);return h.attr("style",t.style),bt(t,h),t.intersect=function(g){return Z.polygon(t,o,g)},e},ne=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t,void 0),!0),c=a.width+t.padding,i=a.height+t.padding,o=[{x:-2*i/6,y:0},{x:c+2*i/6,y:0},{x:c-i/6,y:-i},{x:i/6,y:-i}],h=Dt(e,c,i,o);return h.attr("style",t.style),bt(t,h),t.intersect=function(g){return Z.polygon(t,o,g)},e},z=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t,void 0),!0),c=a.width+t.padding,i=a.height+t.padding,o=[{x:i/6,y:0},{x:c-i/6,y:0},{x:c+2*i/6,y:-i},{x:-2*i/6,y:-i}],h=Dt(e,c,i,o);return h.attr("style",t.style),bt(t,h),t.intersect=function(g){return Z.polygon(t,o,g)},e},Q=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t,void 0),!0),c=a.width+t.padding,i=a.height+t.padding,o=[{x:0,y:0},{x:c+i/2,y:0},{x:c,y:-i/2},{x:c+i/2,y:-i},{x:0,y:-i}],h=Dt(e,c,i,o);return h.attr("style",t.style),bt(t,h),t.intersect=function(g){return Z.polygon(t,o,g)},e},be=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t,void 0),!0),c=a.width+t.padding,i=c/2,o=i/(2.5+c/50),h=a.height+o+t.padding,g="M 0,"+o+" a "+i+","+o+" 0,0,0 "+c+" 0 a "+i+","+o+" 0,0,0 "+-c+" 0 l 0,"+h+" a "+i+","+o+" 0,0,0 "+c+" 0 l 0,"+-h,R=e.attr("label-offset-y",o).insert("path",":first-child").attr("style",t.style).attr("d",g).attr("transform","translate("+-c/2+","+-(h/2+o)+")");return bt(t,R),t.intersect=function(m){const x=Z.rect(t,m),D=x.x-t.x;if(i!=0&&(Math.abs(D)t.height/2-o)){let T=o*o*(1-D*D/(i*i));T!=0&&(T=Math.sqrt(T)),T=o-T,m.y-t.y>0&&(T=-T),x.y+=T}return x},e},Ae=async(s,t)=>{const{shapeSvg:e,bbox:a,halfPadding:c}=await kt(s,t,"node "+t.classes+" "+t.class,!0),i=e.insert("rect",":first-child"),o=t.positioned?t.width:a.width+t.padding,h=t.positioned?t.height:a.height+t.padding,g=t.positioned?-o/2:-a.width/2-c,R=t.positioned?-h/2:-a.height/2-c;if(i.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",g).attr("y",R).attr("width",o).attr("height",h),t.props){const m=new Set(Object.keys(t.props));t.props.borders&&(f(i,t.props.borders,o,h),m.delete("borders")),m.forEach(x=>{E.l.warn(`Unknown node property ${x}`)})}return bt(t,i),t.intersect=function(m){return Z.rect(t,m)},e},ns=async(s,t)=>{const{shapeSvg:e,bbox:a,halfPadding:c}=await kt(s,t,"node "+t.classes,!0),i=e.insert("rect",":first-child"),o=t.positioned?t.width:a.width+t.padding,h=t.positioned?t.height:a.height+t.padding,g=t.positioned?-o/2:-a.width/2-c,R=t.positioned?-h/2:-a.height/2-c;if(i.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",g).attr("y",R).attr("width",o).attr("height",h),t.props){const m=new Set(Object.keys(t.props));t.props.borders&&(f(i,t.props.borders,o,h),m.delete("borders")),m.forEach(x=>{E.l.warn(`Unknown node property ${x}`)})}return bt(t,i),t.intersect=function(m){return Z.rect(t,m)},e},ss=async(s,t)=>{const{shapeSvg:e}=await kt(s,t,"label",!0);E.l.trace("Classes = ",t.class);const a=e.insert("rect",":first-child"),c=0,i=0;if(a.attr("width",c).attr("height",i),e.attr("class","label edgeLabel"),t.props){const o=new Set(Object.keys(t.props));t.props.borders&&(f(a,t.props.borders,c,i),o.delete("borders")),o.forEach(h=>{E.l.warn(`Unknown node property ${h}`)})}return bt(t,a),t.intersect=function(o){return Z.rect(t,o)},e};function f(s,t,e,a){const c=[],i=h=>{c.push(h,0)},o=h=>{c.push(0,h)};t.includes("t")?(E.l.debug("add top border"),i(e)):o(e),t.includes("r")?(E.l.debug("add right border"),i(a)):o(a),t.includes("b")?(E.l.debug("add bottom border"),i(e)):o(e),t.includes("l")?(E.l.debug("add left border"),i(a)):o(a),s.attr("stroke-dasharray",c.join(" "))}const M=(s,t)=>{let e;t.classes?e="node "+t.classes:e="node default";const a=s.insert("g").attr("class",e).attr("id",t.domId||t.id),c=a.insert("rect",":first-child"),i=a.insert("line"),o=a.insert("g").attr("class","label"),h=t.labelText.flat?t.labelText.flat():t.labelText;let g="";typeof h=="object"?g=h[0]:g=h,E.l.info("Label text abc79",g,h,typeof h=="object");const R=o.node().appendChild(At(g,t.labelStyle,!0,!0));let m={width:0,height:0};if((0,E.m)((0,E.c)().flowchart.htmlLabels)){const nt=R.children[0],S=(0,C.Ltv)(R);m=nt.getBoundingClientRect(),S.attr("width",m.width),S.attr("height",m.height)}E.l.info("Text 2",h);const x=h.slice(1,h.length);let D=R.getBBox();const T=o.node().appendChild(At(x.join?x.join("
"):x,t.labelStyle,!0,!0));if((0,E.m)((0,E.c)().flowchart.htmlLabels)){const nt=T.children[0],S=(0,C.Ltv)(T);m=nt.getBoundingClientRect(),S.attr("width",m.width),S.attr("height",m.height)}const Y=t.padding/2;return(0,C.Ltv)(T).attr("transform","translate( "+(m.width>D.width?0:(D.width-m.width)/2)+", "+(D.height+Y+5)+")"),(0,C.Ltv)(R).attr("transform","translate( "+(m.width{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t,void 0),!0),c=a.height+t.padding,i=a.width+c/4+t.padding,o=e.insert("rect",":first-child").attr("style",t.style).attr("rx",c/2).attr("ry",c/2).attr("x",-i/2).attr("y",-c/2).attr("width",i).attr("height",c);return bt(t,o),t.intersect=function(h){return Z.rect(t,h)},e},pt=async(s,t)=>{const{shapeSvg:e,bbox:a,halfPadding:c}=await kt(s,t,O(t,void 0),!0),i=e.insert("circle",":first-child");return i.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",a.width/2+c).attr("width",a.width+t.padding).attr("height",a.height+t.padding),E.l.info("Circle main"),bt(t,i),t.intersect=function(o){return E.l.info("Circle intersect",t,a.width/2+c,o),Z.circle(t,a.width/2+c,o)},e},yt=async(s,t)=>{const{shapeSvg:e,bbox:a,halfPadding:c}=await kt(s,t,O(t,void 0),!0),i=5,o=e.insert("g",":first-child"),h=o.insert("circle"),g=o.insert("circle");return o.attr("class",t.class),h.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",a.width/2+c+i).attr("width",a.width+t.padding+i*2).attr("height",a.height+t.padding+i*2),g.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",a.width/2+c).attr("width",a.width+t.padding).attr("height",a.height+t.padding),E.l.info("DoubleCircle main"),bt(t,h),t.intersect=function(R){return E.l.info("DoubleCircle intersect",t,a.width/2+c+i,R),Z.circle(t,a.width/2+c+i,R)},e},Yt=async(s,t)=>{const{shapeSvg:e,bbox:a}=await kt(s,t,O(t,void 0),!0),c=a.width+t.padding,i=a.height+t.padding,o=[{x:0,y:0},{x:c,y:0},{x:c,y:-i},{x:0,y:-i},{x:0,y:0},{x:-8,y:0},{x:c+8,y:0},{x:c+8,y:-i},{x:-8,y:-i},{x:-8,y:0}],h=Dt(e,c,i,o);return h.attr("style",t.style),bt(t,h),t.intersect=function(g){return Z.polygon(t,o,g)},e},fe=(s,t)=>{const e=s.insert("g").attr("class","node default").attr("id",t.domId||t.id),a=e.insert("circle",":first-child");return a.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),bt(t,a),t.intersect=function(c){return Z.circle(t,7,c)},e},me=(s,t,e)=>{const a=s.insert("g").attr("class","node default").attr("id",t.domId||t.id);let c=70,i=10;e==="LR"&&(c=10,i=70);const o=a.append("rect").attr("x",-1*c/2).attr("y",-1*i/2).attr("width",c).attr("height",i).attr("class","fork-join");return bt(t,o),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(h){return Z.rect(t,h)},a},F={rhombus:ft,composite:ns,question:ft,rect:Ae,labelRect:ss,rectWithTitle:M,choice:rt,circle:pt,doublecircle:yt,stadium:it,hexagon:st,block_arrow:Bt,rect_left_inv_arrow:Vt,lean_right:ie,lean_left:de,trapezoid:ne,inv_trapezoid:z,rect_right_inv_arrow:Q,cylinder:be,start:fe,end:(s,t)=>{const e=s.insert("g").attr("class","node default").attr("id",t.domId||t.id),a=e.insert("circle",":first-child"),c=e.insert("circle",":first-child");return c.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),a.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),bt(t,c),t.intersect=function(i){return Z.circle(t,7,i)},e},note:u,subroutine:Yt,fork:me,join:me,class_box:(s,t)=>{const e=t.padding/2,a=4,c=8;let i;t.classes?i="node "+t.classes:i="node default";const o=s.insert("g").attr("class",i).attr("id",t.domId||t.id),h=o.insert("rect",":first-child"),g=o.insert("line"),R=o.insert("line");let m=0,x=a;const D=o.insert("g").attr("class","label");let T=0;const Y=t.classData.annotations&&t.classData.annotations[0],nt=t.classData.annotations[0]?"\xAB"+t.classData.annotations[0]+"\xBB":"",S=D.node().appendChild(At(nt,t.labelStyle,!0,!0));let Et=S.getBBox();if((0,E.m)((0,E.c)().flowchart.htmlLabels)){const ht=S.children[0],I=(0,C.Ltv)(S);Et=ht.getBoundingClientRect(),I.attr("width",Et.width),I.attr("height",Et.height)}t.classData.annotations[0]&&(x+=Et.height+a,m+=Et.width);let X=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&((0,E.c)().flowchart.htmlLabels?X+="<"+t.classData.type+">":X+="<"+t.classData.type+">");const It=D.node().appendChild(At(X,t.labelStyle,!0,!0));(0,C.Ltv)(It).attr("class","classTitle");let St=It.getBBox();if((0,E.m)((0,E.c)().flowchart.htmlLabels)){const ht=It.children[0],I=(0,C.Ltv)(It);St=ht.getBoundingClientRect(),I.attr("width",St.width),I.attr("height",St.height)}x+=St.height+a,St.width>m&&(m=St.width);const ue=[];t.classData.members.forEach(ht=>{const I=ht.getDisplayDetails();let H=I.displayText;(0,E.c)().flowchart.htmlLabels&&(H=H.replace(//g,">"));const W=D.node().appendChild(At(H,I.cssStyle?I.cssStyle:t.labelStyle,!0,!0));let B=W.getBBox();if((0,E.m)((0,E.c)().flowchart.htmlLabels)){const Pt=W.children[0],p=(0,C.Ltv)(W);B=Pt.getBoundingClientRect(),p.attr("width",B.width),p.attr("height",B.height)}B.width>m&&(m=B.width),x+=B.height+a,ue.push(W)}),x+=c;const pe=[];if(t.classData.methods.forEach(ht=>{const I=ht.getDisplayDetails();let H=I.displayText;(0,E.c)().flowchart.htmlLabels&&(H=H.replace(//g,">"));const W=D.node().appendChild(At(H,I.cssStyle?I.cssStyle:t.labelStyle,!0,!0));let B=W.getBBox();if((0,E.m)((0,E.c)().flowchart.htmlLabels)){const Pt=W.children[0],p=(0,C.Ltv)(W);B=Pt.getBoundingClientRect(),p.attr("width",B.width),p.attr("height",B.height)}B.width>m&&(m=B.width),x+=B.height+a,pe.push(W)}),x+=c,Y){let ht=(m-Et.width)/2;(0,C.Ltv)(S).attr("transform","translate( "+(-1*m/2+ht)+", "+-1*x/2+")"),T=Et.height+a}let Se=(m-St.width)/2;return(0,C.Ltv)(It).attr("transform","translate( "+(-1*m/2+Se)+", "+(-1*x/2+T)+")"),T+=St.height+a,g.attr("class","divider").attr("x1",-m/2-e).attr("x2",m/2+e).attr("y1",-x/2-e+c+T).attr("y2",-x/2-e+c+T),T+=c,ue.forEach(ht=>{(0,C.Ltv)(ht).attr("transform","translate( "+-m/2+", "+(-1*x/2+T+c/2)+")");const I=ht?.getBBox();T+=(I?.height??0)+a}),T+=c,R.attr("class","divider").attr("x1",-m/2-e).attr("x2",m/2+e).attr("y1",-x/2-e+c+T).attr("y2",-x/2-e+c+T),T+=c,pe.forEach(ht=>{(0,C.Ltv)(ht).attr("transform","translate( "+-m/2+", "+(-1*x/2+T)+")");const I=ht?.getBBox();T+=(I?.height??0)+a}),h.attr("style",t.style).attr("class","outer title-state").attr("x",-m/2-e).attr("y",-(x/2)-e).attr("width",m+t.padding).attr("height",x+t.padding),bt(t,h),t.intersect=function(ht){return Z.rect(t,ht)},o}};let r={};const b=async(s,t,e)=>{let a,c;if(t.link){let i;(0,E.c)().securityLevel==="sandbox"?i="_top":t.linkTarget&&(i=t.linkTarget||"_blank"),a=s.insert("svg:a").attr("xlink:href",t.link).attr("target",i),c=await F[t.shape](a,t,e)}else c=await F[t.shape](s,t,e),a=c;return t.tooltip&&c.attr("title",t.tooltip),t.class&&c.attr("class","node default "+t.class),a.attr("data-node","true"),a.attr("data-id",t.id),r[t.id]=a,t.haveCallback&&r[t.id].attr("class",r[t.id].attr("class")+" clickable"),a},v=(s,t)=>{r[t.id]=s},j=()=>{r={}},K=s=>{const t=r[s.id];E.l.trace("Transforming node",s.diff,s,"translate("+(s.x-s.width/2-5)+", "+s.width/2+")");const e=8,a=s.diff||0;return s.clusterNode?t.attr("transform","translate("+(s.x+a-s.width/2)+", "+(s.y-s.height/2-e)+")"):t.attr("transform","translate("+s.x+", "+s.y+")"),a},xt=({flowchart:s})=>{var t,e;const a=((t=s?.subGraphTitleMargin)==null?void 0:t.top)??0,c=((e=s?.subGraphTitleMargin)==null?void 0:e.bottom)??0,i=a+c;return{subGraphTitleTopMargin:a,subGraphTitleBottomMargin:c,subGraphTitleTotalMargin:i}},$={aggregation:18,extension:18,composition:18,dependency:6,lollipop:13.5,arrow_point:5.3};function Lt(s,t){if(s===void 0||t===void 0)return{angle:0,deltaX:0,deltaY:0};s=tt(s),t=tt(t);const[e,a]=[s.x,s.y],[c,i]=[t.x,t.y],o=c-e,h=i-a;return{angle:Math.atan(h/o),deltaX:o,deltaY:h}}const tt=s=>Array.isArray(s)?{x:s[0],y:s[1]}:s,ee=s=>({x:function(t,e,a){let c=0;if(e===0&&Object.hasOwn($,s.arrowTypeStart)){const{angle:i,deltaX:o}=Lt(a[0],a[1]);c=$[s.arrowTypeStart]*Math.cos(i)*(o>=0?1:-1)}else if(e===a.length-1&&Object.hasOwn($,s.arrowTypeEnd)){const{angle:i,deltaX:o}=Lt(a[a.length-1],a[a.length-2]);c=$[s.arrowTypeEnd]*Math.cos(i)*(o>=0?1:-1)}return tt(t).x+c},y:function(t,e,a){let c=0;if(e===0&&Object.hasOwn($,s.arrowTypeStart)){const{angle:i,deltaY:o}=Lt(a[0],a[1]);c=$[s.arrowTypeStart]*Math.abs(Math.sin(i))*(o>=0?1:-1)}else if(e===a.length-1&&Object.hasOwn($,s.arrowTypeEnd)){const{angle:i,deltaY:o}=Lt(a[a.length-1],a[a.length-2]);c=$[s.arrowTypeEnd]*Math.abs(Math.sin(i))*(o>=0?1:-1)}return tt(t).y+c}}),wt=(s,t,e,a,c)=>{t.arrowTypeStart&&_t(s,"start",t.arrowTypeStart,e,a,c),t.arrowTypeEnd&&_t(s,"end",t.arrowTypeEnd,e,a,c)},Nt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},_t=(s,t,e,a,c,i)=>{const o=Nt[e];if(!o){E.l.warn(`Unknown arrow type: ${e}`);return}const h=t==="start"?"Start":"End";s.attr(`marker-${t}`,`url(${a}#${c}_${i}-${o}${h})`)};let dt={},Ft={};const ct=()=>{dt={},Ft={}},Ee=(s,t)=>{const e=(0,E.m)((0,E.c)().flowchart.htmlLabels),a=t.labelType==="markdown"?(0,U.a)(s,t.label,{style:t.labelStyle,useHtmlLabels:e,addSvgBackground:!0}):At(t.label,t.labelStyle),c=s.insert("g").attr("class","edgeLabel"),i=c.insert("g").attr("class","label");i.node().appendChild(a);let o=a.getBBox();if(e){const g=a.children[0],R=(0,C.Ltv)(a);o=g.getBoundingClientRect(),R.attr("width",o.width),R.attr("height",o.height)}i.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),dt[t.id]=c,t.width=o.width,t.height=o.height;let h;if(t.startLabelLeft){const g=At(t.startLabelLeft,t.labelStyle),R=s.insert("g").attr("class","edgeTerminals"),m=R.insert("g").attr("class","inner");h=m.node().appendChild(g);const x=g.getBBox();m.attr("transform","translate("+-x.width/2+", "+-x.height/2+")"),Ft[t.id]||(Ft[t.id]={}),Ft[t.id].startLeft=R,ge(h,t.startLabelLeft)}if(t.startLabelRight){const g=At(t.startLabelRight,t.labelStyle),R=s.insert("g").attr("class","edgeTerminals"),m=R.insert("g").attr("class","inner");h=R.node().appendChild(g),m.node().appendChild(g);const x=g.getBBox();m.attr("transform","translate("+-x.width/2+", "+-x.height/2+")"),Ft[t.id]||(Ft[t.id]={}),Ft[t.id].startRight=R,ge(h,t.startLabelRight)}if(t.endLabelLeft){const g=At(t.endLabelLeft,t.labelStyle),R=s.insert("g").attr("class","edgeTerminals"),m=R.insert("g").attr("class","inner");h=m.node().appendChild(g);const x=g.getBBox();m.attr("transform","translate("+-x.width/2+", "+-x.height/2+")"),R.node().appendChild(g),Ft[t.id]||(Ft[t.id]={}),Ft[t.id].endLeft=R,ge(h,t.endLabelLeft)}if(t.endLabelRight){const g=At(t.endLabelRight,t.labelStyle),R=s.insert("g").attr("class","edgeTerminals"),m=R.insert("g").attr("class","inner");h=m.node().appendChild(g);const x=g.getBBox();m.attr("transform","translate("+-x.width/2+", "+-x.height/2+")"),R.node().appendChild(g),Ft[t.id]||(Ft[t.id]={}),Ft[t.id].endRight=R,ge(h,t.endLabelRight)}return a};function ge(s,t){(0,E.c)().flowchart.htmlLabels&&s&&(s.style.width=t.length*9+"px",s.style.height="12px")}const Te=(s,t)=>{E.l.debug("Moving label abc88 ",s.id,s.label,dt[s.id],t);let e=t.updatedPath?t.updatedPath:t.originalPath;const a=(0,E.c)(),{subGraphTitleTotalMargin:c}=xt(a);if(s.label){const i=dt[s.id];let o=s.x,h=s.y;if(e){const g=E.u.calcLabelPosition(e);E.l.debug("Moving label "+s.label+" from (",o,",",h,") to (",g.x,",",g.y,") abc88"),t.updatedPath&&(o=g.x,h=g.y)}i.attr("transform",`translate(${o}, ${h+c/2})`)}if(s.startLabelLeft){const i=Ft[s.id].startLeft;let o=s.x,h=s.y;if(e){const g=E.u.calcTerminalLabelPosition(s.arrowTypeStart?10:0,"start_left",e);o=g.x,h=g.y}i.attr("transform",`translate(${o}, ${h})`)}if(s.startLabelRight){const i=Ft[s.id].startRight;let o=s.x,h=s.y;if(e){const g=E.u.calcTerminalLabelPosition(s.arrowTypeStart?10:0,"start_right",e);o=g.x,h=g.y}i.attr("transform",`translate(${o}, ${h})`)}if(s.endLabelLeft){const i=Ft[s.id].endLeft;let o=s.x,h=s.y;if(e){const g=E.u.calcTerminalLabelPosition(s.arrowTypeEnd?10:0,"end_left",e);o=g.x,h=g.y}i.attr("transform",`translate(${o}, ${h})`)}if(s.endLabelRight){const i=Ft[s.id].endRight;let o=s.x,h=s.y;if(e){const g=E.u.calcTerminalLabelPosition(s.arrowTypeEnd?10:0,"end_right",e);o=g.x,h=g.y}i.attr("transform",`translate(${o}, ${h})`)}},Wt=(s,t)=>{const e=s.x,a=s.y,c=Math.abs(t.x-e),i=Math.abs(t.y-a),o=s.width/2,h=s.height/2;return c>=o||i>=h},Kt=(s,t,e)=>{E.l.debug(`intersection calc abc89: + outsidePoint: ${JSON.stringify(t)} + insidePoint : ${JSON.stringify(e)} + node : x:${s.x} y:${s.y} w:${s.width} h:${s.height}`);const a=s.x,c=s.y,i=Math.abs(a-e.x),o=s.width/2;let h=e.xMath.abs(a-t.x)*g){let x=e.y{E.l.debug("abc88 cutPathAtIntersect",s,t);let e=[],a=s[0],c=!1;return s.forEach(i=>{if(!Wt(t,i)&&!c){const o=Kt(t,a,i);let h=!1;e.forEach(g=>{h=h||g.x===o.x&&g.y===o.y}),e.some(g=>g.x===o.x&&g.y===o.y)||e.push(o),c=!0}else a=i,c||e.push(i)}),e},Jt=function(s,t,e,a,c,i,o){let h=e.points;E.l.debug("abc88 InsertEdge: edge=",e,"e=",t);let g=!1;const R=i.node(t.v);var m=i.node(t.w);m?.intersect&&R?.intersect&&(h=h.slice(1,e.points.length-1),h.unshift(R.intersect(h[0])),h.push(m.intersect(h[h.length-1]))),e.toCluster&&(E.l.debug("to cluster abc88",a[e.toCluster]),h=zt(e.points,a[e.toCluster].node),g=!0),e.fromCluster&&(E.l.debug("from cluster abc88",a[e.fromCluster]),h=zt(h.reverse(),a[e.fromCluster].node).reverse(),g=!0);const x=h.filter(St=>!Number.isNaN(St.y));let D=C.qrM;e.curve&&(c==="graph"||c==="flowchart")&&(D=e.curve);const{x:T,y:Y}=ee(e),nt=(0,C.n8j)().x(T).y(Y).curve(D);let S;switch(e.thickness){case"normal":S="edge-thickness-normal";break;case"thick":S="edge-thickness-thick";break;case"invisible":S="edge-thickness-thick";break;default:S=""}switch(e.pattern){case"solid":S+=" edge-pattern-solid";break;case"dotted":S+=" edge-pattern-dotted";break;case"dashed":S+=" edge-pattern-dashed";break}const Et=s.append("path").attr("d",nt(x)).attr("id",e.id).attr("class"," "+S+(e.classes?" "+e.classes:"")).attr("style",e.style);let X="";((0,E.c)().flowchart.arrowMarkerAbsolute||(0,E.c)().state.arrowMarkerAbsolute)&&(X=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,X=X.replace(/\(/g,"\\("),X=X.replace(/\)/g,"\\)")),wt(Et,e,X,o,c);let It={};return g&&(It.updatedPath=h),It.originalPath=e.points,It}},"./node_modules/mermaid/dist/flowDb-4b19a42f.js":function(je,se,ot){ot.d(se,{d:function(){return ke},f:function(){return me},p:function(){return w}});var E=ot("./node_modules/d3/src/index.js"),C=ot("./node_modules/mermaid/dist/mermaid-f47111a7.js"),U=function(){var n=function(is,at,gt,Ct){for(gt=gt||{},Ct=is.length;Ct--;gt[is[Ct]]=at);return gt},F=[1,4],r=[1,3],b=[1,5],v=[1,8,9,10,11,27,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],j=[2,2],K=[1,13],xt=[1,14],$=[1,15],Lt=[1,16],tt=[1,23],ee=[1,25],wt=[1,26],Nt=[1,27],_t=[1,49],dt=[1,48],Ft=[1,29],ct=[1,30],Ee=[1,31],ge=[1,32],Te=[1,33],Wt=[1,44],Kt=[1,46],zt=[1,42],Jt=[1,47],s=[1,43],t=[1,50],e=[1,45],a=[1,51],c=[1,52],i=[1,34],o=[1,35],h=[1,36],g=[1,37],R=[1,57],m=[1,8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],x=[1,61],D=[1,60],T=[1,62],Y=[8,9,11,73,75],nt=[1,88],S=[1,93],Et=[1,92],X=[1,89],It=[1,85],St=[1,91],ue=[1,87],pe=[1,94],Se=[1,90],ht=[1,95],I=[1,86],H=[8,9,10,11,73,75],W=[8,9,10,11,44,73,75],B=[8,9,10,11,29,42,44,46,48,50,52,54,56,58,61,63,65,66,68,73,75,86,99,102,103,106,108,111,112,113],Pt=[8,9,11,42,58,73,75,86,99,102,103,106,108,111,112,113],p=[42,58,86,99,102,103,106,108,111,112,113],we=[1,121],y=[1,120],Ue=[1,128],Re=[1,142],Ye=[1,143],Be=[1,144],as=[1,145],qt=[1,130],Fe=[1,132],Ce=[1,136],hs=[1,137],xs=[1,138],_s=[1,139],_e=[1,140],Ge=[1,141],Le=[1,146],ds=[1,147],We=[1,126],ls=[1,127],Me=[1,134],bs=[1,129],cs=[1,133],fs=[1,131],Ie=[8,9,10,11,27,32,34,36,38,42,58,81,82,83,84,85,86,99,102,103,106,108,111,112,113,118,119,120,121],Ds=[1,149],ce=[8,9,11],Oe=[8,9,10,11,14,42,58,86,102,103,106,108,111,112,113],jt=[1,169],ve=[1,165],De=[1,166],Ut=[1,170],Gt=[1,167],Xt=[1,168],ps=[75,113,116],$t=[8,9,10,11,12,14,27,29,32,42,58,73,81,82,83,84,85,86,87,102,106,108,111,112,113],Bs=[10,103],rs=[31,47,49,51,53,55,60,62,64,65,67,69,113,114,115],Ke=[1,235],ze=[1,233],He=[1,237],Je=[1,231],Qe=[1,232],Ze=[1,234],qe=[1,236],$e=[1,238],gs=[1,255],Ls=[8,9,11,103],Xe=[8,9,10,11,58,81,102,103,106,107,108,109],Es={trace:function(){},yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,link:39,node:40,styledVertex:41,AMP:42,vertex:43,STYLE_SEPARATOR:44,idString:45,DOUBLECIRCLESTART:46,DOUBLECIRCLEEND:47,PS:48,PE:49,"(-":50,"-)":51,STADIUMSTART:52,STADIUMEND:53,SUBROUTINESTART:54,SUBROUTINEEND:55,VERTEX_WITH_PROPS_START:56,"NODE_STRING[field]":57,COLON:58,"NODE_STRING[value]":59,PIPE:60,CYLINDERSTART:61,CYLINDEREND:62,DIAMOND_START:63,DIAMOND_STOP:64,TAGEND:65,TRAPSTART:66,TRAPEND:67,INVTRAPSTART:68,INVTRAPEND:69,linkStatement:70,arrowText:71,TESTSTR:72,START_LINK:73,edgeText:74,LINK:75,edgeTextToken:76,STR:77,MD_STR:78,textToken:79,keywords:80,STYLE:81,LINKSTYLE:82,CLASSDEF:83,CLASS:84,CLICK:85,DOWN:86,UP:87,textNoTagsToken:88,stylesOpt:89,"idString[vertex]":90,"idString[class]":91,CALLBACKNAME:92,CALLBACKARGS:93,HREF:94,LINK_TARGET:95,"STR[link]":96,"STR[tooltip]":97,alphaNum:98,DEFAULT:99,numList:100,INTERPOLATE:101,NUM:102,COMMA:103,style:104,styleComponent:105,NODE_STRING:106,UNIT:107,BRKT:108,PCT:109,idStringToken:110,MINUS:111,MULT:112,UNICODE_TEXT:113,TEXT:114,TAGSTART:115,EDGE_TEXT:116,alphaNumToken:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",42:"AMP",44:"STYLE_SEPARATOR",46:"DOUBLECIRCLESTART",47:"DOUBLECIRCLEEND",48:"PS",49:"PE",50:"(-",51:"-)",52:"STADIUMSTART",53:"STADIUMEND",54:"SUBROUTINESTART",55:"SUBROUTINEEND",56:"VERTEX_WITH_PROPS_START",57:"NODE_STRING[field]",58:"COLON",59:"NODE_STRING[value]",60:"PIPE",61:"CYLINDERSTART",62:"CYLINDEREND",63:"DIAMOND_START",64:"DIAMOND_STOP",65:"TAGEND",66:"TRAPSTART",67:"TRAPEND",68:"INVTRAPSTART",69:"INVTRAPEND",72:"TESTSTR",73:"START_LINK",75:"LINK",77:"STR",78:"MD_STR",81:"STYLE",82:"LINKSTYLE",83:"CLASSDEF",84:"CLASS",85:"CLICK",86:"DOWN",87:"UP",90:"idString[vertex]",91:"idString[class]",92:"CALLBACKNAME",93:"CALLBACKARGS",94:"HREF",95:"LINK_TARGET",96:"STR[link]",97:"STR[tooltip]",99:"DEFAULT",101:"INTERPOLATE",102:"NUM",103:"COMMA",106:"NODE_STRING",107:"UNIT",108:"BRKT",109:"PCT",111:"MINUS",112:"MULT",113:"UNICODE_TEXT",114:"TEXT",115:"TAGSTART",116:"EDGE_TEXT",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[20,3],[20,4],[20,2],[20,1],[40,1],[40,5],[41,1],[41,3],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,8],[43,4],[43,4],[43,4],[43,6],[43,4],[43,4],[43,4],[43,4],[43,4],[43,1],[39,2],[39,3],[39,3],[39,1],[39,3],[74,1],[74,2],[74,1],[74,1],[70,1],[71,3],[30,1],[30,2],[30,1],[30,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[80,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[100,1],[100,3],[89,1],[89,3],[104,1],[104,2],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[105,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[110,1],[79,1],[79,1],[79,1],[79,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[88,1],[76,1],[76,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[117,1],[45,1],[45,2],[98,1],[98,2],[33,1],[33,1],[33,1],[33,1]],performAction:function(at,gt,Ct,V,oe,l,ms){var d=l.length-1;switch(oe){case 2:this.$=[];break;case 3:(!Array.isArray(l[d])||l[d].length>0)&&l[d-1].push(l[d]),this.$=l[d-1];break;case 4:case 176:this.$=l[d];break;case 11:V.setDirection("TB"),this.$="TB";break;case 12:V.setDirection(l[d-1]),this.$=l[d-1];break;case 27:this.$=l[d-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=V.addSubGraph(l[d-6],l[d-1],l[d-4]);break;case 34:this.$=V.addSubGraph(l[d-3],l[d-1],l[d-3]);break;case 35:this.$=V.addSubGraph(void 0,l[d-1],void 0);break;case 37:this.$=l[d].trim(),V.setAccTitle(this.$);break;case 38:case 39:this.$=l[d].trim(),V.setAccDescription(this.$);break;case 43:V.addLink(l[d-2].stmt,l[d],l[d-1]),this.$={stmt:l[d],nodes:l[d].concat(l[d-2].nodes)};break;case 44:V.addLink(l[d-3].stmt,l[d-1],l[d-2]),this.$={stmt:l[d-1],nodes:l[d-1].concat(l[d-3].nodes)};break;case 45:this.$={stmt:l[d-1],nodes:l[d-1]};break;case 46:this.$={stmt:l[d],nodes:l[d]};break;case 47:this.$=[l[d]];break;case 48:this.$=l[d-4].concat(l[d]);break;case 49:this.$=l[d];break;case 50:this.$=l[d-2],V.setClass(l[d-2],l[d]);break;case 51:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"square");break;case 52:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"doublecircle");break;case 53:this.$=l[d-5],V.addVertex(l[d-5],l[d-2],"circle");break;case 54:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"ellipse");break;case 55:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"stadium");break;case 56:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"subroutine");break;case 57:this.$=l[d-7],V.addVertex(l[d-7],l[d-1],"rect",void 0,void 0,void 0,Object.fromEntries([[l[d-5],l[d-3]]]));break;case 58:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"cylinder");break;case 59:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"round");break;case 60:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"diamond");break;case 61:this.$=l[d-5],V.addVertex(l[d-5],l[d-2],"hexagon");break;case 62:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"odd");break;case 63:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"trapezoid");break;case 64:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"inv_trapezoid");break;case 65:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"lean_right");break;case 66:this.$=l[d-3],V.addVertex(l[d-3],l[d-1],"lean_left");break;case 67:this.$=l[d],V.addVertex(l[d]);break;case 68:l[d-1].text=l[d],this.$=l[d-1];break;case 69:case 70:l[d-2].text=l[d-1],this.$=l[d-2];break;case 71:this.$=l[d];break;case 72:var Ve=V.destructLink(l[d],l[d-2]);this.$={type:Ve.type,stroke:Ve.stroke,length:Ve.length,text:l[d-1]};break;case 73:this.$={text:l[d],type:"text"};break;case 74:this.$={text:l[d-1].text+""+l[d],type:l[d-1].type};break;case 75:this.$={text:l[d],type:"string"};break;case 76:this.$={text:l[d],type:"markdown"};break;case 77:var Ve=V.destructLink(l[d]);this.$={type:Ve.type,stroke:Ve.stroke,length:Ve.length};break;case 78:this.$=l[d-1];break;case 79:this.$={text:l[d],type:"text"};break;case 80:this.$={text:l[d-1].text+""+l[d],type:l[d-1].type};break;case 81:this.$={text:l[d],type:"string"};break;case 82:case 97:this.$={text:l[d],type:"markdown"};break;case 94:this.$={text:l[d],type:"text"};break;case 95:this.$={text:l[d-1].text+""+l[d],type:l[d-1].type};break;case 96:this.$={text:l[d],type:"text"};break;case 98:this.$=l[d-4],V.addClass(l[d-2],l[d]);break;case 99:this.$=l[d-4],V.setClass(l[d-2],l[d]);break;case 100:case 108:this.$=l[d-1],V.setClickEvent(l[d-1],l[d]);break;case 101:case 109:this.$=l[d-3],V.setClickEvent(l[d-3],l[d-2]),V.setTooltip(l[d-3],l[d]);break;case 102:this.$=l[d-2],V.setClickEvent(l[d-2],l[d-1],l[d]);break;case 103:this.$=l[d-4],V.setClickEvent(l[d-4],l[d-3],l[d-2]),V.setTooltip(l[d-4],l[d]);break;case 104:this.$=l[d-2],V.setLink(l[d-2],l[d]);break;case 105:this.$=l[d-4],V.setLink(l[d-4],l[d-2]),V.setTooltip(l[d-4],l[d]);break;case 106:this.$=l[d-4],V.setLink(l[d-4],l[d-2],l[d]);break;case 107:this.$=l[d-6],V.setLink(l[d-6],l[d-4],l[d]),V.setTooltip(l[d-6],l[d-2]);break;case 110:this.$=l[d-1],V.setLink(l[d-1],l[d]);break;case 111:this.$=l[d-3],V.setLink(l[d-3],l[d-2]),V.setTooltip(l[d-3],l[d]);break;case 112:this.$=l[d-3],V.setLink(l[d-3],l[d-2],l[d]);break;case 113:this.$=l[d-5],V.setLink(l[d-5],l[d-4],l[d]),V.setTooltip(l[d-5],l[d-2]);break;case 114:this.$=l[d-4],V.addVertex(l[d-2],void 0,void 0,l[d]);break;case 115:this.$=l[d-4],V.updateLink([l[d-2]],l[d]);break;case 116:this.$=l[d-4],V.updateLink(l[d-2],l[d]);break;case 117:this.$=l[d-8],V.updateLinkInterpolate([l[d-6]],l[d-2]),V.updateLink([l[d-6]],l[d]);break;case 118:this.$=l[d-8],V.updateLinkInterpolate(l[d-6],l[d-2]),V.updateLink(l[d-6],l[d]);break;case 119:this.$=l[d-6],V.updateLinkInterpolate([l[d-4]],l[d]);break;case 120:this.$=l[d-6],V.updateLinkInterpolate(l[d-4],l[d]);break;case 121:case 123:this.$=[l[d]];break;case 122:case 124:l[d-2].push(l[d]),this.$=l[d-2];break;case 126:this.$=l[d-1]+l[d];break;case 174:this.$=l[d];break;case 175:this.$=l[d-1]+""+l[d];break;case 177:this.$=l[d-1]+""+l[d];break;case 178:this.$={stmt:"dir",value:"TB"};break;case 179:this.$={stmt:"dir",value:"BT"};break;case 180:this.$={stmt:"dir",value:"RL"};break;case 181:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,9:F,10:r,12:b},{1:[3]},n(v,j,{5:6}),{4:7,9:F,10:r,12:b},{4:8,9:F,10:r,12:b},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:K,9:xt,10:$,11:Lt,20:17,22:18,23:19,24:20,25:21,26:22,27:tt,33:24,34:ee,36:wt,38:Nt,40:28,41:38,42:_t,43:39,45:40,58:dt,81:Ft,82:ct,83:Ee,84:ge,85:Te,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c,118:i,119:o,120:h,121:g},n(v,[2,9]),n(v,[2,10]),n(v,[2,11]),{8:[1,54],9:[1,55],10:R,15:53,18:56},n(m,[2,3]),n(m,[2,4]),n(m,[2,5]),n(m,[2,6]),n(m,[2,7]),n(m,[2,8]),{8:x,9:D,11:T,21:58,39:59,70:63,73:[1,64],75:[1,65]},{8:x,9:D,11:T,21:66},{8:x,9:D,11:T,21:67},{8:x,9:D,11:T,21:68},{8:x,9:D,11:T,21:69},{8:x,9:D,11:T,21:70},{8:x,9:D,10:[1,71],11:T,21:72},n(m,[2,36]),{35:[1,73]},{37:[1,74]},n(m,[2,39]),n(Y,[2,46],{18:75,10:R}),{10:[1,76]},{10:[1,77]},{10:[1,78]},{10:[1,79]},{14:nt,42:S,58:Et,77:[1,83],86:X,92:[1,80],94:[1,81],98:82,102:It,103:St,106:ue,108:pe,111:Se,112:ht,113:I,117:84},n(m,[2,178]),n(m,[2,179]),n(m,[2,180]),n(m,[2,181]),n(H,[2,47]),n(H,[2,49],{44:[1,96]}),n(W,[2,67],{110:109,29:[1,97],42:_t,46:[1,98],48:[1,99],50:[1,100],52:[1,101],54:[1,102],56:[1,103],58:dt,61:[1,104],63:[1,105],65:[1,106],66:[1,107],68:[1,108],86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,111:e,112:a,113:c}),n(B,[2,174]),n(B,[2,135]),n(B,[2,136]),n(B,[2,137]),n(B,[2,138]),n(B,[2,139]),n(B,[2,140]),n(B,[2,141]),n(B,[2,142]),n(B,[2,143]),n(B,[2,144]),n(B,[2,145]),n(v,[2,12]),n(v,[2,18]),n(v,[2,19]),{9:[1,110]},n(Pt,[2,26],{18:111,10:R}),n(m,[2,27]),{40:112,41:38,42:_t,43:39,45:40,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c},n(m,[2,40]),n(m,[2,41]),n(m,[2,42]),n(p,[2,71],{71:113,60:[1,115],72:[1,114]}),{74:116,76:117,77:[1,118],78:[1,119],113:we,116:y},n([42,58,60,72,86,99,102,103,106,108,111,112,113],[2,77]),n(m,[2,28]),n(m,[2,29]),n(m,[2,30]),n(m,[2,31]),n(m,[2,32]),{10:Ue,12:Re,14:Ye,27:Be,28:122,32:as,42:qt,58:Fe,73:Ce,77:[1,124],78:[1,125],80:135,81:hs,82:xs,83:_s,84:_e,85:Ge,86:Le,87:ds,88:123,102:We,106:ls,108:Me,111:bs,112:cs,113:fs},n(Ie,j,{5:148}),n(m,[2,37]),n(m,[2,38]),n(Y,[2,45],{42:Ds}),{42:_t,45:150,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c},{99:[1,151],100:152,102:[1,153]},{42:_t,45:154,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c},{42:_t,45:155,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c},n(ce,[2,100],{10:[1,156],93:[1,157]}),{77:[1,158]},n(ce,[2,108],{117:160,10:[1,159],14:nt,42:S,58:Et,86:X,102:It,103:St,106:ue,108:pe,111:Se,112:ht,113:I}),n(ce,[2,110],{10:[1,161]}),n(Oe,[2,176]),n(Oe,[2,163]),n(Oe,[2,164]),n(Oe,[2,165]),n(Oe,[2,166]),n(Oe,[2,167]),n(Oe,[2,168]),n(Oe,[2,169]),n(Oe,[2,170]),n(Oe,[2,171]),n(Oe,[2,172]),n(Oe,[2,173]),{42:_t,45:162,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c},{30:163,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{30:171,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{30:173,48:[1,172],65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{30:174,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{30:175,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{30:176,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{106:[1,177]},{30:178,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{30:179,63:[1,180],65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{30:181,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{30:182,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{30:183,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},n(B,[2,175]),n(v,[2,20]),n(Pt,[2,25]),n(Y,[2,43],{18:184,10:R}),n(p,[2,68],{10:[1,185]}),{10:[1,186]},{30:187,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{75:[1,188],76:189,113:we,116:y},n(ps,[2,73]),n(ps,[2,75]),n(ps,[2,76]),n(ps,[2,161]),n(ps,[2,162]),{8:x,9:D,10:Ue,11:T,12:Re,14:Ye,21:191,27:Be,29:[1,190],32:as,42:qt,58:Fe,73:Ce,80:135,81:hs,82:xs,83:_s,84:_e,85:Ge,86:Le,87:ds,88:192,102:We,106:ls,108:Me,111:bs,112:cs,113:fs},n($t,[2,94]),n($t,[2,96]),n($t,[2,97]),n($t,[2,150]),n($t,[2,151]),n($t,[2,152]),n($t,[2,153]),n($t,[2,154]),n($t,[2,155]),n($t,[2,156]),n($t,[2,157]),n($t,[2,158]),n($t,[2,159]),n($t,[2,160]),n($t,[2,83]),n($t,[2,84]),n($t,[2,85]),n($t,[2,86]),n($t,[2,87]),n($t,[2,88]),n($t,[2,89]),n($t,[2,90]),n($t,[2,91]),n($t,[2,92]),n($t,[2,93]),{6:11,7:12,8:K,9:xt,10:$,11:Lt,20:17,22:18,23:19,24:20,25:21,26:22,27:tt,32:[1,193],33:24,34:ee,36:wt,38:Nt,40:28,41:38,42:_t,43:39,45:40,58:dt,81:Ft,82:ct,83:Ee,84:ge,85:Te,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c,118:i,119:o,120:h,121:g},{10:R,18:194},{10:[1,195],42:_t,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:109,111:e,112:a,113:c},{10:[1,196]},{10:[1,197],103:[1,198]},n(Bs,[2,121]),{10:[1,199],42:_t,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:109,111:e,112:a,113:c},{10:[1,200],42:_t,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:109,111:e,112:a,113:c},{77:[1,201]},n(ce,[2,102],{10:[1,202]}),n(ce,[2,104],{10:[1,203]}),{77:[1,204]},n(Oe,[2,177]),{77:[1,205],95:[1,206]},n(H,[2,50],{110:109,42:_t,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,111:e,112:a,113:c}),{31:[1,207],65:jt,79:208,113:Ut,114:Gt,115:Xt},n(rs,[2,79]),n(rs,[2,81]),n(rs,[2,82]),n(rs,[2,146]),n(rs,[2,147]),n(rs,[2,148]),n(rs,[2,149]),{47:[1,209],65:jt,79:208,113:Ut,114:Gt,115:Xt},{30:210,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{49:[1,211],65:jt,79:208,113:Ut,114:Gt,115:Xt},{51:[1,212],65:jt,79:208,113:Ut,114:Gt,115:Xt},{53:[1,213],65:jt,79:208,113:Ut,114:Gt,115:Xt},{55:[1,214],65:jt,79:208,113:Ut,114:Gt,115:Xt},{58:[1,215]},{62:[1,216],65:jt,79:208,113:Ut,114:Gt,115:Xt},{64:[1,217],65:jt,79:208,113:Ut,114:Gt,115:Xt},{30:218,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},{31:[1,219],65:jt,79:208,113:Ut,114:Gt,115:Xt},{65:jt,67:[1,220],69:[1,221],79:208,113:Ut,114:Gt,115:Xt},{65:jt,67:[1,223],69:[1,222],79:208,113:Ut,114:Gt,115:Xt},n(Y,[2,44],{42:Ds}),n(p,[2,70]),n(p,[2,69]),{60:[1,224],65:jt,79:208,113:Ut,114:Gt,115:Xt},n(p,[2,72]),n(ps,[2,74]),{30:225,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},n(Ie,j,{5:226}),n($t,[2,95]),n(m,[2,35]),{41:227,42:_t,43:39,45:40,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c},{10:Ke,58:ze,81:He,89:228,102:Je,104:229,105:230,106:Qe,107:Ze,108:qe,109:$e},{10:Ke,58:ze,81:He,89:239,101:[1,240],102:Je,104:229,105:230,106:Qe,107:Ze,108:qe,109:$e},{10:Ke,58:ze,81:He,89:241,101:[1,242],102:Je,104:229,105:230,106:Qe,107:Ze,108:qe,109:$e},{102:[1,243]},{10:Ke,58:ze,81:He,89:244,102:Je,104:229,105:230,106:Qe,107:Ze,108:qe,109:$e},{42:_t,45:245,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c},n(ce,[2,101]),{77:[1,246]},{77:[1,247],95:[1,248]},n(ce,[2,109]),n(ce,[2,111],{10:[1,249]}),n(ce,[2,112]),n(W,[2,51]),n(rs,[2,80]),n(W,[2,52]),{49:[1,250],65:jt,79:208,113:Ut,114:Gt,115:Xt},n(W,[2,59]),n(W,[2,54]),n(W,[2,55]),n(W,[2,56]),{106:[1,251]},n(W,[2,58]),n(W,[2,60]),{64:[1,252],65:jt,79:208,113:Ut,114:Gt,115:Xt},n(W,[2,62]),n(W,[2,63]),n(W,[2,65]),n(W,[2,64]),n(W,[2,66]),n([10,42,58,86,99,102,103,106,108,111,112,113],[2,78]),{31:[1,253],65:jt,79:208,113:Ut,114:Gt,115:Xt},{6:11,7:12,8:K,9:xt,10:$,11:Lt,20:17,22:18,23:19,24:20,25:21,26:22,27:tt,32:[1,254],33:24,34:ee,36:wt,38:Nt,40:28,41:38,42:_t,43:39,45:40,58:dt,81:Ft,82:ct,83:Ee,84:ge,85:Te,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c,118:i,119:o,120:h,121:g},n(H,[2,48]),n(ce,[2,114],{103:gs}),n(Ls,[2,123],{105:256,10:Ke,58:ze,81:He,102:Je,106:Qe,107:Ze,108:qe,109:$e}),n(Xe,[2,125]),n(Xe,[2,127]),n(Xe,[2,128]),n(Xe,[2,129]),n(Xe,[2,130]),n(Xe,[2,131]),n(Xe,[2,132]),n(Xe,[2,133]),n(Xe,[2,134]),n(ce,[2,115],{103:gs}),{10:[1,257]},n(ce,[2,116],{103:gs}),{10:[1,258]},n(Bs,[2,122]),n(ce,[2,98],{103:gs}),n(ce,[2,99],{110:109,42:_t,58:dt,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,111:e,112:a,113:c}),n(ce,[2,103]),n(ce,[2,105],{10:[1,259]}),n(ce,[2,106]),{95:[1,260]},{49:[1,261]},{60:[1,262]},{64:[1,263]},{8:x,9:D,11:T,21:264},n(m,[2,34]),{10:Ke,58:ze,81:He,102:Je,104:265,105:230,106:Qe,107:Ze,108:qe,109:$e},n(Xe,[2,126]),{14:nt,42:S,58:Et,86:X,98:266,102:It,103:St,106:ue,108:pe,111:Se,112:ht,113:I,117:84},{14:nt,42:S,58:Et,86:X,98:267,102:It,103:St,106:ue,108:pe,111:Se,112:ht,113:I,117:84},{95:[1,268]},n(ce,[2,113]),n(W,[2,53]),{30:269,65:jt,77:ve,78:De,79:164,113:Ut,114:Gt,115:Xt},n(W,[2,61]),n(Ie,j,{5:270}),n(Ls,[2,124],{105:256,10:Ke,58:ze,81:He,102:Je,106:Qe,107:Ze,108:qe,109:$e}),n(ce,[2,119],{117:160,10:[1,271],14:nt,42:S,58:Et,86:X,102:It,103:St,106:ue,108:pe,111:Se,112:ht,113:I}),n(ce,[2,120],{117:160,10:[1,272],14:nt,42:S,58:Et,86:X,102:It,103:St,106:ue,108:pe,111:Se,112:ht,113:I}),n(ce,[2,107]),{31:[1,273],65:jt,79:208,113:Ut,114:Gt,115:Xt},{6:11,7:12,8:K,9:xt,10:$,11:Lt,20:17,22:18,23:19,24:20,25:21,26:22,27:tt,32:[1,274],33:24,34:ee,36:wt,38:Nt,40:28,41:38,42:_t,43:39,45:40,58:dt,81:Ft,82:ct,83:Ee,84:ge,85:Te,86:Wt,99:Kt,102:zt,103:Jt,106:s,108:t,110:41,111:e,112:a,113:c,118:i,119:o,120:h,121:g},{10:Ke,58:ze,81:He,89:275,102:Je,104:229,105:230,106:Qe,107:Ze,108:qe,109:$e},{10:Ke,58:ze,81:He,89:276,102:Je,104:229,105:230,106:Qe,107:Ze,108:qe,109:$e},n(W,[2,57]),n(m,[2,33]),n(ce,[2,117],{103:gs}),n(ce,[2,118],{103:gs})],defaultActions:{},parseError:function(at,gt){if(gt.recoverable)this.trace(at);else{var Ct=new Error(at);throw Ct.hash=gt,Ct}},parse:function(at){var gt=this,Ct=[0],V=[],oe=[null],l=[],ms=this.table,d="",Ve=0,Fs=0,Rs=2,Ns=1,Ms=l.slice.call(arguments,1),xe=Object.create(this.lexer),os={yy:{}};for(var Ss in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ss)&&(os.yy[Ss]=this.yy[Ss]);xe.setInput(at,os.yy),os.yy.lexer=xe,os.yy.parser=this,typeof xe.yylloc>"u"&&(xe.yylloc={});var ws=xe.yylloc;l.push(ws);var Vs=xe.options&&xe.options.ranges;typeof os.yy.parseError=="function"?this.parseError=os.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ps(){var es;return es=V.pop()||xe.lex()||Ns,typeof es!="number"&&(es instanceof Array&&(V=es,es=V.pop()),es=gt.symbols_[es]||es),es}for(var Ne,us,Pe,Cs,ys={},As,ts,Is,ks;;){if(us=Ct[Ct.length-1],this.defaultActions[us]?Pe=this.defaultActions[us]:((Ne===null||typeof Ne>"u")&&(Ne=Ps()),Pe=ms[us]&&ms[us][Ne]),typeof Pe>"u"||!Pe.length||!Pe[0]){var vs="";ks=[];for(As in ms[us])this.terminals_[As]&&As>Rs&&ks.push("'"+this.terminals_[As]+"'");xe.showPosition?vs="Parse error on line "+(Ve+1)+`: +`+xe.showPosition()+` +Expecting `+ks.join(", ")+", got '"+(this.terminals_[Ne]||Ne)+"'":vs="Parse error on line "+(Ve+1)+": Unexpected "+(Ne==Ns?"end of input":"'"+(this.terminals_[Ne]||Ne)+"'"),this.parseError(vs,{text:xe.match,token:this.terminals_[Ne]||Ne,line:xe.yylineno,loc:ws,expected:ks})}if(Pe[0]instanceof Array&&Pe.length>1)throw new Error("Parse Error: multiple actions possible at state: "+us+", token: "+Ne);switch(Pe[0]){case 1:Ct.push(Ne),oe.push(xe.yytext),l.push(xe.yylloc),Ct.push(Pe[1]),Ne=null,Fs=xe.yyleng,d=xe.yytext,Ve=xe.yylineno,ws=xe.yylloc;break;case 2:if(ts=this.productions_[Pe[1]][1],ys.$=oe[oe.length-ts],ys._$={first_line:l[l.length-(ts||1)].first_line,last_line:l[l.length-1].last_line,first_column:l[l.length-(ts||1)].first_column,last_column:l[l.length-1].last_column},Vs&&(ys._$.range=[l[l.length-(ts||1)].range[0],l[l.length-1].range[1]]),Cs=this.performAction.apply(ys,[d,Fs,Ve,os.yy,Pe[1],oe,l].concat(Ms)),typeof Cs<"u")return Cs;ts&&(Ct=Ct.slice(0,-1*ts*2),oe=oe.slice(0,-1*ts),l=l.slice(0,-1*ts)),Ct.push(this.productions_[Pe[1]][0]),oe.push(ys.$),l.push(ys._$),Is=ms[Ct[Ct.length-2]][Ct[Ct.length-1]],Ct.push(Is);break;case 3:return!0}}return!0}},Os=function(){var is={EOF:1,parseError:function(gt,Ct){if(this.yy.parser)this.yy.parser.parseError(gt,Ct);else throw new Error(gt)},setInput:function(at,gt){return this.yy=gt||this.yy||{},this._input=at,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var at=this._input[0];this.yytext+=at,this.yyleng++,this.offset++,this.match+=at,this.matched+=at;var gt=at.match(/(?:\r\n?|\n).*/g);return gt?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),at},unput:function(at){var gt=at.length,Ct=at.split(/(?:\r\n?|\n)/g);this._input=at+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-gt),this.offset-=gt;var V=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Ct.length-1&&(this.yylineno-=Ct.length-1);var oe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Ct?(Ct.length===V.length?this.yylloc.first_column:0)+V[V.length-Ct.length].length-Ct[0].length:this.yylloc.first_column-gt},this.options.ranges&&(this.yylloc.range=[oe[0],oe[0]+this.yyleng-gt]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(at){this.unput(this.match.slice(at))},pastInput:function(){var at=this.matched.substr(0,this.matched.length-this.match.length);return(at.length>20?"...":"")+at.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var at=this.match;return at.length<20&&(at+=this._input.substr(0,20-at.length)),(at.substr(0,20)+(at.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var at=this.pastInput(),gt=new Array(at.length+1).join("-");return at+this.upcomingInput()+` +`+gt+"^"},test_match:function(at,gt){var Ct,V,oe;if(this.options.backtrack_lexer&&(oe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(oe.yylloc.range=this.yylloc.range.slice(0))),V=at[0].match(/(?:\r\n?|\n).*/g),V&&(this.yylineno+=V.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:V?V[V.length-1].length-V[V.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+at[0].length},this.yytext+=at[0],this.match+=at[0],this.matches=at,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(at[0].length),this.matched+=at[0],Ct=this.performAction.call(this,this.yy,this,gt,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Ct)return Ct;if(this._backtrack){for(var l in oe)this[l]=oe[l];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var at,gt,Ct,V;this._more||(this.yytext="",this.match="");for(var oe=this._currentRules(),l=0;lgt[0].length)){if(gt=Ct,V=l,this.options.backtrack_lexer){if(at=this.test_match(Ct,oe[l]),at!==!1)return at;if(this._backtrack){gt=!1;continue}else return!1}else if(!this.options.flex)break}return gt?(at=this.test_match(gt,oe[V]),at!==!1?at:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var gt=this.next();return gt||this.lex()},begin:function(gt){this.conditionStack.push(gt)},popState:function(){var gt=this.conditionStack.length-1;return gt>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(gt){return gt=this.conditionStack.length-1-Math.abs(gt||0),gt>=0?this.conditionStack[gt]:"INITIAL"},pushState:function(gt){this.begin(gt)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(gt,Ct,V,oe){switch(V){case 0:return this.begin("acc_title"),34;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),36;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:this.begin("callbackname");break;case 8:this.popState();break;case 9:this.popState(),this.begin("callbackargs");break;case 10:return 92;case 11:this.popState();break;case 12:return 93;case 13:return"MD_STR";case 14:this.popState();break;case 15:this.begin("md_string");break;case 16:return"STR";case 17:this.popState();break;case 18:this.pushState("string");break;case 19:return 81;case 20:return 99;case 21:return 82;case 22:return 101;case 23:return 83;case 24:return 84;case 25:return 94;case 26:this.begin("click");break;case 27:this.popState();break;case 28:return 85;case 29:return gt.lex.firstGraph()&&this.begin("dir"),12;case 30:return gt.lex.firstGraph()&&this.begin("dir"),12;case 31:return gt.lex.firstGraph()&&this.begin("dir"),12;case 32:return 27;case 33:return 32;case 34:return 95;case 35:return 95;case 36:return 95;case 37:return 95;case 38:return this.popState(),13;case 39:return this.popState(),14;case 40:return this.popState(),14;case 41:return this.popState(),14;case 42:return this.popState(),14;case 43:return this.popState(),14;case 44:return this.popState(),14;case 45:return this.popState(),14;case 46:return this.popState(),14;case 47:return this.popState(),14;case 48:return this.popState(),14;case 49:return 118;case 50:return 119;case 51:return 120;case 52:return 121;case 53:return 102;case 54:return 108;case 55:return 44;case 56:return 58;case 57:return 42;case 58:return 8;case 59:return 103;case 60:return 112;case 61:return this.popState(),75;case 62:return this.pushState("edgeText"),73;case 63:return 116;case 64:return this.popState(),75;case 65:return this.pushState("thickEdgeText"),73;case 66:return 116;case 67:return this.popState(),75;case 68:return this.pushState("dottedEdgeText"),73;case 69:return 116;case 70:return 75;case 71:return this.popState(),51;case 72:return"TEXT";case 73:return this.pushState("ellipseText"),50;case 74:return this.popState(),53;case 75:return this.pushState("text"),52;case 76:return this.popState(),55;case 77:return this.pushState("text"),54;case 78:return 56;case 79:return this.pushState("text"),65;case 80:return this.popState(),62;case 81:return this.pushState("text"),61;case 82:return this.popState(),47;case 83:return this.pushState("text"),46;case 84:return this.popState(),67;case 85:return this.popState(),69;case 86:return 114;case 87:return this.pushState("trapText"),66;case 88:return this.pushState("trapText"),68;case 89:return 115;case 90:return 65;case 91:return 87;case 92:return"SEP";case 93:return 86;case 94:return 112;case 95:return 108;case 96:return 42;case 97:return 106;case 98:return 111;case 99:return 113;case 100:return this.popState(),60;case 101:return this.pushState("text"),60;case 102:return this.popState(),49;case 103:return this.pushState("text"),48;case 104:return this.popState(),31;case 105:return this.pushState("text"),29;case 106:return this.popState(),64;case 107:return this.pushState("text"),63;case 108:return"TEXT";case 109:return"QUOTE";case 110:return 9;case 111:return 10;case 112:return 11}},rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{callbackargs:{rules:[11,12,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},callbackname:{rules:[8,9,10,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},href:{rules:[15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},click:{rules:[15,18,27,28,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},dottedEdgeText:{rules:[15,18,67,69,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},thickEdgeText:{rules:[15,18,64,66,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},edgeText:{rules:[15,18,61,63,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},trapText:{rules:[15,18,70,73,75,77,81,83,84,85,86,87,88,101,103,105,107],inclusive:!1},ellipseText:{rules:[15,18,70,71,72,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},text:{rules:[15,18,70,73,74,75,76,77,80,81,82,83,87,88,100,101,102,103,104,105,106,107,108],inclusive:!1},vertex:{rules:[15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},dir:{rules:[15,18,38,39,40,41,42,43,44,45,46,47,48,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_descr_multiline:{rules:[5,6,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_descr:{rules:[3,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},acc_title:{rules:[1,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},md_string:{rules:[13,14,15,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},string:{rules:[15,16,17,18,70,73,75,77,81,83,87,88,101,103,105,107],inclusive:!1},INITIAL:{rules:[0,2,4,7,15,18,19,20,21,22,23,24,25,26,29,30,31,32,33,34,35,36,37,49,50,51,52,53,54,55,56,57,58,59,60,61,62,64,65,67,68,70,73,75,77,78,79,81,83,87,88,89,90,91,92,93,94,95,96,97,98,99,101,103,105,107,109,110,111,112],inclusive:!0}}};return is}();Es.lexer=Os;function Ts(){this.yy={}}return Ts.prototype=Es,Es.Parser=Ts,new Ts}();U.parser=U;const w=U,ae="flowchart-";let Ot=0,Rt=(0,C.c)(),N={},G=[],et={},ut=[],mt={},Qt={},le=0,Zt=!0,Mt,ye,q=[];const At=n=>C.e.sanitizeText(n,Rt),kt=function(n){const F=Object.keys(N);for(const r of F)if(N[r].id===n)return N[r].domId;return n},bt=function(n,F,r,b,v,j,K={}){let xt,$=n;$!==void 0&&$.trim().length!==0&&(N[$]===void 0&&(N[$]={id:$,labelType:"text",domId:ae+$+"-"+Ot,styles:[],classes:[]}),Ot++,F!==void 0?(Rt=(0,C.c)(),xt=At(F.text.trim()),N[$].labelType=F.type,xt[0]==='"'&&xt[xt.length-1]==='"'&&(xt=xt.substring(1,xt.length-1)),N[$].text=xt):N[$].text===void 0&&(N[$].text=n),r!==void 0&&(N[$].type=r),b?.forEach(function(Lt){N[$].styles.push(Lt)}),v?.forEach(function(Lt){N[$].classes.push(Lt)}),j!==void 0&&(N[$].dir=j),N[$].props===void 0?N[$].props=K:K!==void 0&&Object.assign(N[$].props,K))},Dt=function(n,F,r){const j={start:n,end:F,type:void 0,text:"",labelType:"text"};C.l.info("abc78 Got edge...",j);const K=r.text;if(K!==void 0&&(j.text=At(K.text.trim()),j.text[0]==='"'&&j.text[j.text.length-1]==='"'&&(j.text=j.text.substring(1,j.text.length-1)),j.labelType=K.type),r!==void 0&&(j.type=r.type,j.stroke=r.stroke,j.length=r.length),j?.length>10&&(j.length=10),G.length<(Rt.maxEdges??500))C.l.info("abc78 pushing edge..."),G.push(j);else throw new Error(`Edge limit exceeded. ${G.length} edges found, but the limit is ${Rt.maxEdges}. + +Initialize mermaid with maxEdges set to a higher number to allow more edges. +You cannot set this config via configuration inside the diagram as it is a secure config. +You have to call mermaid.initialize.`)},Ht=function(n,F,r){C.l.info("addLink (abc78)",n,F,r);let b,v;for(b=0;b=G.length)throw new Error(`The index ${r} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${G.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);r==="default"?G.defaultStyle=F:(C.u.isSubstringInArray("fill",F)===-1&&F.push("fill:none"),G[r].style=F)})},Tt=function(n,F){n.split(",").forEach(function(r){et[r]===void 0&&(et[r]={id:r,styles:[],textStyles:[]}),F?.forEach(function(b){if(b.match("color")){const v=b.replace("fill","bgFill").replace("color","fill");et[r].textStyles.push(v)}et[r].styles.push(b)})})},lt=function(n){Mt=n,Mt.match(/.*/)&&(Mt="LR"),Mt.match(/.*v/)&&(Mt="TB"),Mt==="TD"&&(Mt="TB")},te=function(n,F){n.split(",").forEach(function(r){let b=r;N[b]!==void 0&&N[b].classes.push(F),mt[b]!==void 0&&mt[b].classes.push(F)})},he=function(n,F){n.split(",").forEach(function(r){F!==void 0&&(Qt[ye==="gen-1"?kt(r):r]=At(F))})},J=function(n,F,r){let b=kt(n);if((0,C.c)().securityLevel!=="loose"||F===void 0)return;let v=[];if(typeof r=="string"){v=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let j=0;j")),v.classed("hover",!0)}).on("mouseout",function(){F.transition().duration(500).style("opacity",0),(0,E.Ltv)(this).classed("hover",!1)})};q.push(rt);const st=function(n="gen-1"){N={},et={},G=[],q=[rt],ut=[],mt={},le=0,Qt={},Zt=!0,ye=n,Rt=(0,C.c)(),(0,C.v)()},Bt=n=>{ye=n||"gen-2"},Vt=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},ie=function(n,F,r){let b=n.text.trim(),v=r.text;n===r&&r.text.match(/\s/)&&(b=void 0);function j(tt){const ee={boolean:{},number:{},string:{}},wt=[];let Nt;return{nodeList:tt.filter(function(dt){const Ft=typeof dt;return dt.stmt&&dt.stmt==="dir"?(Nt=dt.value,!1):dt.trim()===""?!1:Ft in ee?ee[Ft].hasOwnProperty(dt)?!1:ee[Ft][dt]=!0:wt.includes(dt)?!1:wt.push(dt)}),dir:Nt}}let K=[];const{nodeList:xt,dir:$}=j(K.concat.apply(K,F));if(K=xt,ye==="gen-1")for(let tt=0;tt2e3)return;if(z[ne]=F,ut[F].id===n)return{result:!0,count:0};let b=0,v=1;for(;b=0){const K=Q(n,j);if(K.result)return{result:!0,count:v+K.count};v=v+K.count}b=b+1}return{result:!1,count:v}},be=function(n){return z[n]},Ae=function(){ne=-1,ut.length>0&&Q("none",ut.length-1)},ns=function(){return ut},ss=()=>Zt?(Zt=!1,!0):!1,f=n=>{let F=n.trim(),r="arrow_open";switch(F[0]){case"<":r="arrow_point",F=F.slice(1);break;case"x":r="arrow_cross",F=F.slice(1);break;case"o":r="arrow_circle",F=F.slice(1);break}let b="normal";return F.includes("=")&&(b="thick"),F.includes(".")&&(b="dotted"),{type:r,stroke:b}},M=(n,F)=>{const r=F.length;let b=0;for(let v=0;v{const F=n.trim();let r=F.slice(0,-1),b="arrow_open";switch(F.slice(-1)){case"x":b="arrow_cross",F[0]==="x"&&(b="double_"+b,r=r.slice(1));break;case">":b="arrow_point",F[0]==="<"&&(b="double_"+b,r=r.slice(1));break;case"o":b="arrow_circle",F[0]==="o"&&(b="double_"+b,r=r.slice(1));break}let v="normal",j=r.length-1;r[0]==="="&&(v="thick"),r[0]==="~"&&(v="invisible");let K=M(".",r);return K&&(v="dotted",j=K),{type:b,stroke:v,length:j}},pt=(n,F)=>{const r=it(n);let b;if(F){if(b=f(F),b.stroke!==r.stroke)return{type:"INVALID",stroke:"INVALID"};if(b.type==="arrow_open")b.type=r.type;else{if(b.type!==r.type)return{type:"INVALID",stroke:"INVALID"};b.type="double_"+b.type}return b.type==="double_arrow"&&(b.type="double_arrow_point"),b.length=r.length,b}return r},yt=(n,F)=>{let r=!1;return n.forEach(b=>{b.nodes.indexOf(F)>=0&&(r=!0)}),r},Yt=(n,F)=>{const r=[];return n.nodes.forEach((b,v)=>{yt(F,b)||r.push(n.nodes[v])}),{nodes:r}},fe={firstGraph:ss},me={defaultConfig:()=>C.K.flowchart,setAccTitle:C.s,getAccTitle:C.g,getAccDescription:C.a,setAccDescription:C.b,addVertex:bt,lookUpDomId:kt,addLink:Ht,updateLinkInterpolate:re,updateLink:vt,addClass:Tt,setDirection:lt,setClass:te,setTooltip:he,getTooltip:k,setClickEvent:u,setLink:Z,bindFunctions:A,getDirection:P,getVertices:L,getEdges:O,getClasses:ft,clear:st,setGen:Bt,defaultStyle:Vt,addSubGraph:ie,getDepthFirstPos:be,indexNodes:Ae,getSubGraphs:ns,destructLink:pt,lex:fe,exists:yt,makeUniq:Yt,setDiagramTitle:C.q,getDiagramTitle:C.t},ke=Object.freeze(Object.defineProperty({__proto__:null,addClass:Tt,addLink:Ht,addSingleLink:Dt,addSubGraph:ie,addVertex:bt,bindFunctions:A,clear:st,default:me,defaultStyle:Vt,destructLink:pt,firstGraph:ss,getClasses:ft,getDepthFirstPos:be,getDirection:P,getEdges:O,getSubGraphs:ns,getTooltip:k,getVertices:L,indexNodes:Ae,lex:fe,lookUpDomId:kt,setClass:te,setClickEvent:u,setDirection:lt,setGen:Bt,setLink:Z,updateLink:vt,updateLinkInterpolate:re},Symbol.toStringTag,{value:"Module"}))},"./node_modules/mermaid/dist/index-fc10efb0.js":function(je,se,ot){ot.d(se,{r:function(){return Z}});var E=ot("./node_modules/dagre-d3-es/src/dagre/index.js"),C=ot("./node_modules/dagre-d3-es/src/graphlib/json.js"),U=ot("./node_modules/mermaid/dist/edges-d32062c0.js"),w=ot("./node_modules/mermaid/dist/mermaid-f47111a7.js"),ae=ot("./node_modules/dagre-d3-es/src/graphlib/index.js"),Ot=ot("./node_modules/mermaid/dist/createText-6b48ae7d.js"),Rt=ot("./node_modules/d3/src/index.js");let N={},G={},et={};const ut=()=>{G={},et={},N={}},mt=(k,u)=>(w.l.trace("In isDescendant",u," ",k," = ",G[u].includes(k)),!!G[u].includes(k)),Qt=(k,u)=>(w.l.info("Descendants of ",u," is ",G[u]),w.l.info("Edge is ",k),k.v===u||k.w===u?!1:G[u]?G[u].includes(k.v)||mt(k.v,u)||mt(k.w,u)||G[u].includes(k.w):(w.l.debug("Tilt, ",u,",not in descendants"),!1)),le=(k,u,A,P)=>{w.l.warn("Copying children of ",k,"root",P,"data",u.node(k),P);const L=u.children(k)||[];k!==P&&L.push(k),w.l.warn("Copying (nodes) clusterId",k,"nodes",L),L.forEach(O=>{if(u.children(O).length>0)le(O,u,A,P);else{const ft=u.node(O);w.l.info("cp ",O," to ",P," with parent ",k),A.setNode(O,ft),P!==u.parent(O)&&(w.l.warn("Setting parent",O,u.parent(O)),A.setParent(O,u.parent(O))),k!==P&&O!==k?(w.l.debug("Setting parent",O,k),A.setParent(O,k)):(w.l.info("In copy ",k,"root",P,"data",u.node(k),P),w.l.debug("Not Setting parent for node=",O,"cluster!==rootId",k!==P,"node!==clusterId",O!==k));const rt=u.edges(O);w.l.debug("Copying Edges",rt),rt.forEach(st=>{w.l.info("Edge",st);const Bt=u.edge(st.v,st.w,st.name);w.l.info("Edge data",Bt,P);try{Qt(st,P)?(w.l.info("Copying as ",st.v,st.w,Bt,st.name),A.setEdge(st.v,st.w,Bt,st.name),w.l.info("newGraph edges ",A.edges(),A.edge(A.edges()[0]))):w.l.info("Skipping copy of edge ",st.v,"-->",st.w," rootId: ",P," clusterId:",k)}catch(Vt){w.l.error(Vt)}})}w.l.debug("Removing node",O),u.removeNode(O)})},Zt=(k,u)=>{const A=u.children(k);let P=[...A];for(const L of A)et[L]=k,P=[...P,...Zt(L,u)];return P},Mt=(k,u)=>{w.l.trace("Searching",k);const A=u.children(k);if(w.l.trace("Searching children of id ",k,A),A.length<1)return w.l.trace("This is a valid node",k),k;for(const P of A){const L=Mt(P,u);if(L)return w.l.trace("Found replacement for",k," => ",L),L}},ye=k=>!N[k]||!N[k].externalConnections?k:N[k]?N[k].id:k,q=(k,u)=>{if(!k||u>10){w.l.debug("Opting out, no graph ");return}else w.l.debug("Opting in, graph ");k.nodes().forEach(function(A){k.children(A).length>0&&(w.l.warn("Cluster identified",A," Replacement id in edges: ",Mt(A,k)),G[A]=Zt(A,k),N[A]={id:Mt(A,k),clusterData:k.node(A)})}),k.nodes().forEach(function(A){const P=k.children(A),L=k.edges();P.length>0?(w.l.debug("Cluster identified",A,G),L.forEach(O=>{if(O.v!==A&&O.w!==A){const ft=mt(O.v,A),rt=mt(O.w,A);ft^rt&&(w.l.warn("Edge: ",O," leaves cluster ",A),w.l.warn("Descendants of XXX ",A,": ",G[A]),N[A].externalConnections=!0)}})):w.l.debug("Not a cluster ",A,G)});for(let A of Object.keys(N)){const P=N[A].id,L=k.parent(P);L!==A&&N[L]&&!N[L].externalConnections&&(N[A].id=L)}k.edges().forEach(function(A){const P=k.edge(A);w.l.warn("Edge "+A.v+" -> "+A.w+": "+JSON.stringify(A)),w.l.warn("Edge "+A.v+" -> "+A.w+": "+JSON.stringify(k.edge(A)));let L=A.v,O=A.w;if(w.l.warn("Fix XXX",N,"ids:",A.v,A.w,"Translating: ",N[A.v]," --- ",N[A.w]),N[A.v]&&N[A.w]&&N[A.v]===N[A.w]){w.l.warn("Fixing and trixing link to self - removing XXX",A.v,A.w,A.name),w.l.warn("Fixing and trixing - removing XXX",A.v,A.w,A.name),L=ye(A.v),O=ye(A.w),k.removeEdge(A.v,A.w,A.name);const ft=A.w+"---"+A.v;k.setNode(ft,{domId:ft,id:ft,labelStyle:"",labelText:P.label,padding:0,shape:"labelRect",style:""});const rt=structuredClone(P),st=structuredClone(P);rt.label="",rt.arrowTypeEnd="none",st.label="",rt.fromCluster=A.v,st.toCluster=A.v,k.setEdge(L,ft,rt,A.name+"-cyclic-special"),k.setEdge(ft,O,st,A.name+"-cyclic-special")}else if(N[A.v]||N[A.w]){if(w.l.warn("Fixing and trixing - removing XXX",A.v,A.w,A.name),L=ye(A.v),O=ye(A.w),k.removeEdge(A.v,A.w,A.name),L!==A.v){const ft=k.parent(L);N[ft].externalConnections=!0,P.fromCluster=A.v}if(O!==A.w){const ft=k.parent(O);N[ft].externalConnections=!0,P.toCluster=A.w}w.l.warn("Fix Replacing with XXX",L,O,A.name),k.setEdge(L,O,P,A.name)}}),w.l.warn("Adjusted Graph",C.M(k)),At(k,0),w.l.trace(N)},At=(k,u)=>{if(w.l.warn("extractor - ",u,C.M(k),k.children("D")),u>10){w.l.error("Bailing out");return}let A=k.nodes(),P=!1;for(const L of A){const O=k.children(L);P=P||O.length>0}if(!P){w.l.debug("Done, no node has children",k.nodes());return}w.l.debug("Nodes = ",A,u);for(const L of A)if(w.l.debug("Extracting node",L,N,N[L]&&!N[L].externalConnections,!k.parent(L),k.node(L),k.children("D")," Depth ",u),!N[L])w.l.debug("Not a cluster",L,u);else if(!N[L].externalConnections&&k.children(L)&&k.children(L).length>0){w.l.warn("Cluster without external connections, without a parent and with children",L,u);let ft=k.graph().rankdir==="TB"?"LR":"TB";N[L]&&N[L].clusterData&&N[L].clusterData.dir&&(ft=N[L].clusterData.dir,w.l.warn("Fixing dir",N[L].clusterData.dir,ft));const rt=new ae.T({multigraph:!0,compound:!0}).setGraph({rankdir:ft,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});w.l.warn("Old graph before copy",C.M(k)),le(L,k,rt,L),k.setNode(L,{clusterNode:!0,id:L,clusterData:N[L].clusterData,labelText:N[L].labelText,graph:rt}),w.l.warn("New graph after copy node: (",L,")",C.M(rt)),w.l.debug("Old graph after copy",C.M(k))}else w.l.warn("Cluster ** ",L," **not meeting the criteria !externalConnections:",!N[L].externalConnections," no parent: ",!k.parent(L)," children ",k.children(L)&&k.children(L).length>0,k.children("D"),u),w.l.debug(N);A=k.nodes(),w.l.warn("New list of nodes",A);for(const L of A){const O=k.node(L);w.l.warn(" Now next level",L,O),O.clusterNode&&At(O.graph,u+1)}},kt=(k,u)=>{if(u.length===0)return[];let A=Object.assign(u);return u.forEach(P=>{const L=k.children(P),O=kt(k,L);A=[...A,...O]}),A},bt=k=>kt(k,k.children()),Tt={rect:(k,u)=>{w.l.info("Creating subgraph rect for ",u.id,u);const A=(0,w.c)(),P=k.insert("g").attr("class","cluster"+(u.class?" "+u.class:"")).attr("id",u.id),L=P.insert("rect",":first-child"),O=(0,w.m)(A.flowchart.htmlLabels),ft=P.insert("g").attr("class","cluster-label"),rt=u.labelType==="markdown"?(0,Ot.a)(ft,u.labelText,{style:u.labelStyle,useHtmlLabels:O}):ft.node().appendChild((0,U.c)(u.labelText,u.labelStyle,void 0,!0));let st=rt.getBBox();if((0,w.m)(A.flowchart.htmlLabels)){const z=rt.children[0],Q=(0,Rt.Ltv)(rt);st=z.getBoundingClientRect(),Q.attr("width",st.width),Q.attr("height",st.height)}const Bt=0*u.padding,Vt=Bt/2,ie=u.width<=st.width+Bt?st.width+Bt:u.width;u.width<=st.width+Bt?u.diff=(st.width-u.width)/2-u.padding/2:u.diff=-u.padding/2,w.l.trace("Data ",u,JSON.stringify(u)),L.attr("style",u.style).attr("rx",u.rx).attr("ry",u.ry).attr("x",u.x-ie/2).attr("y",u.y-u.height/2-Vt).attr("width",ie).attr("height",u.height+Bt);const{subGraphTitleTopMargin:de}=(0,U.g)(A);O?ft.attr("transform",`translate(${u.x-st.width/2}, ${u.y-u.height/2+de})`):ft.attr("transform",`translate(${u.x}, ${u.y-u.height/2+de})`);const ne=L.node().getBBox();return u.width=ne.width,u.height=ne.height,u.intersect=function(z){return(0,U.i)(u,z)},P},roundedWithTitle:(k,u)=>{const A=(0,w.c)(),P=k.insert("g").attr("class",u.classes).attr("id",u.id),L=P.insert("rect",":first-child"),O=P.insert("g").attr("class","cluster-label"),ft=P.append("rect"),rt=O.node().appendChild((0,U.c)(u.labelText,u.labelStyle,void 0,!0));let st=rt.getBBox();if((0,w.m)(A.flowchart.htmlLabels)){const z=rt.children[0],Q=(0,Rt.Ltv)(rt);st=z.getBoundingClientRect(),Q.attr("width",st.width),Q.attr("height",st.height)}st=rt.getBBox();const Bt=0*u.padding,Vt=Bt/2,ie=u.width<=st.width+u.padding?st.width+u.padding:u.width;u.width<=st.width+u.padding?u.diff=(st.width+u.padding*0-u.width)/2:u.diff=-u.padding/2,L.attr("class","outer").attr("x",u.x-ie/2-Vt).attr("y",u.y-u.height/2-Vt).attr("width",ie+Bt).attr("height",u.height+Bt),ft.attr("class","inner").attr("x",u.x-ie/2-Vt).attr("y",u.y-u.height/2-Vt+st.height-1).attr("width",ie+Bt).attr("height",u.height+Bt-st.height-3);const{subGraphTitleTopMargin:de}=(0,U.g)(A);O.attr("transform",`translate(${u.x-st.width/2}, ${u.y-u.height/2-u.padding/3+((0,w.m)(A.flowchart.htmlLabels)?5:3)+de})`);const ne=L.node().getBBox();return u.height=ne.height,u.intersect=function(z){return(0,U.i)(u,z)},P},noteGroup:(k,u)=>{const A=k.insert("g").attr("class","note-cluster").attr("id",u.id),P=A.insert("rect",":first-child"),L=0*u.padding,O=L/2;P.attr("rx",u.rx).attr("ry",u.ry).attr("x",u.x-u.width/2-O).attr("y",u.y-u.height/2-O).attr("width",u.width+L).attr("height",u.height+L).attr("fill","none");const ft=P.node().getBBox();return u.width=ft.width,u.height=ft.height,u.intersect=function(rt){return(0,U.i)(u,rt)},A},divider:(k,u)=>{const A=k.insert("g").attr("class",u.classes).attr("id",u.id),P=A.insert("rect",":first-child"),L=0*u.padding,O=L/2;P.attr("class","divider").attr("x",u.x-u.width/2-O).attr("y",u.y-u.height/2).attr("width",u.width+L).attr("height",u.height+L);const ft=P.node().getBBox();return u.width=ft.width,u.height=ft.height,u.diff=-u.padding/2,u.intersect=function(rt){return(0,U.i)(u,rt)},A}};let lt={};const te=(k,u)=>{w.l.trace("Inserting cluster");const A=u.shape||"rect";lt[u.id]=Tt[A](k,u)},he=()=>{lt={}},J=async(k,u,A,P,L,O)=>{w.l.info("Graph in recursive render: XXX",C.M(u),L);const ft=u.graph().rankdir;w.l.trace("Dir in recursive render - dir:",ft);const rt=k.insert("g").attr("class","root");u.nodes()?w.l.info("Recursive render XXX",u.nodes()):w.l.info("No nodes found for",u),u.edges().length>0&&w.l.trace("Recursive edges",u.edge(u.edges()[0]));const st=rt.insert("g").attr("class","clusters"),Bt=rt.insert("g").attr("class","edgePaths"),Vt=rt.insert("g").attr("class","edgeLabels"),ie=rt.insert("g").attr("class","nodes");await Promise.all(u.nodes().map(async function(z){const Q=u.node(z);if(L!==void 0){const be=JSON.parse(JSON.stringify(L.clusterData));w.l.info("Setting data for cluster XXX (",z,") ",be,L),u.setNode(L.id,be),u.parent(z)||(w.l.trace("Setting parent",z,L.id),u.setParent(z,L.id,be))}if(w.l.info("(Insert) Node XXX"+z+": "+JSON.stringify(u.node(z))),Q&&Q.clusterNode){w.l.info("Cluster identified",z,Q.width,u.node(z));const be=await J(ie,Q.graph,A,P,u.node(z),O),Ae=be.elem;(0,U.u)(Q,Ae),Q.diff=be.diff||0,w.l.info("Node bounds (abc123)",z,Q,Q.width,Q.x,Q.y),(0,U.s)(Ae,Q),w.l.warn("Recursive render complete ",Ae,Q)}else u.children(z).length>0?(w.l.info("Cluster - the non recursive path XXX",z,Q.id,Q,u),w.l.info(Mt(Q.id,u)),N[Q.id]={id:Mt(Q.id,u),node:Q}):(w.l.info("Node - the non recursive path",z,Q.id,Q),await(0,U.e)(ie,u.node(z),ft))})),u.edges().forEach(function(z){const Q=u.edge(z.v,z.w,z.name);w.l.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(z)),w.l.info("Edge "+z.v+" -> "+z.w+": ",z," ",JSON.stringify(u.edge(z))),w.l.info("Fix",N,"ids:",z.v,z.w,"Translating: ",N[z.v],N[z.w]),(0,U.f)(Vt,Q)}),u.edges().forEach(function(z){w.l.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(z))}),w.l.info("#############################################"),w.l.info("### Layout ###"),w.l.info("#############################################"),w.l.info(u),(0,E.Zp)(u),w.l.info("Graph after layout:",C.M(u));let de=0;const{subGraphTitleTotalMargin:ne}=(0,U.g)(O);return bt(u).forEach(function(z){const Q=u.node(z);w.l.info("Position "+z+": "+JSON.stringify(u.node(z))),w.l.info("Position "+z+": ("+Q.x,","+Q.y,") width: ",Q.width," height: ",Q.height),Q&&Q.clusterNode?(Q.y+=ne,(0,U.p)(Q)):u.children(z).length>0?(Q.height+=ne,te(st,Q),N[Q.id].node=Q):(Q.y+=ne/2,(0,U.p)(Q))}),u.edges().forEach(function(z){const Q=u.edge(z);w.l.info("Edge "+z.v+" -> "+z.w+": "+JSON.stringify(Q),Q),Q.points.forEach(Ae=>Ae.y+=ne/2);const be=(0,U.h)(Bt,z,Q,N,A,u,P);(0,U.j)(Q,be)}),u.nodes().forEach(function(z){const Q=u.node(z);w.l.info(z,Q.type,Q.diff),Q.type==="group"&&(de=Q.diff)}),{elem:rt,diff:de}},Z=async(k,u,A,P,L)=>{(0,U.a)(k,A,P,L),(0,U.b)(),(0,U.d)(),he(),ut(),w.l.warn("Graph at first:",JSON.stringify(C.M(u))),q(u),w.l.warn("Graph after:",JSON.stringify(C.M(u)));const O=(0,w.c)();await J(k,u,P,L,void 0,O)}},"./node_modules/mermaid/dist/styles-3ed67cfa.js":function(je,se,ot){ot.d(se,{a:function(){return ye},f:function(){return le}});var E=ot("./node_modules/dagre-d3-es/src/graphlib/index.js"),C=ot("./node_modules/d3/src/index.js"),U=ot("./node_modules/mermaid/dist/mermaid-f47111a7.js"),w=ot("./node_modules/mermaid/dist/index-fc10efb0.js"),ae=ot("./node_modules/dagre-d3-es/src/dagre-js/label/add-html-label.js"),Ot=ot("./node_modules/khroma/dist/methods/channel.js"),Rt=ot("./node_modules/khroma/dist/methods/rgba.js");const N={},G=function(q){const At=Object.keys(q);for(const kt of At)N[kt]=q[kt]},et=async function(q,At,kt,bt,Dt,Ht){const re=bt.select(`[id="${kt}"]`),vt=Object.keys(q);for(const Tt of vt){const lt=q[Tt];let te="default";lt.classes.length>0&&(te=lt.classes.join(" ")),te=te+" flowchart-label";const he=(0,U.k)(lt.styles);let J=lt.text!==void 0?lt.text:lt.id,Z;if(U.l.info("vertex",lt,lt.labelType),lt.labelType==="markdown")U.l.info("vertex",lt,lt.labelType);else if((0,U.m)((0,U.c)().flowchart.htmlLabels)){const P={label:J};Z=(0,ae.H)(re,P).node(),Z.parentNode.removeChild(Z)}else{const P=Dt.createElementNS("http://www.w3.org/2000/svg","text");P.setAttribute("style",he.labelStyle.replace("color:","fill:"));const L=J.split(U.e.lineBreakRegex);for(const O of L){const ft=Dt.createElementNS("http://www.w3.org/2000/svg","tspan");ft.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),ft.setAttribute("dy","1em"),ft.setAttribute("x","1"),ft.textContent=O,P.appendChild(ft)}Z=P}let k=0,u="";switch(lt.type){case"round":k=5,u="rect";break;case"square":u="rect";break;case"diamond":u="question";break;case"hexagon":u="hexagon";break;case"odd":u="rect_left_inv_arrow";break;case"lean_right":u="lean_right";break;case"lean_left":u="lean_left";break;case"trapezoid":u="trapezoid";break;case"inv_trapezoid":u="inv_trapezoid";break;case"odd_right":u="rect_left_inv_arrow";break;case"circle":u="circle";break;case"ellipse":u="ellipse";break;case"stadium":u="stadium";break;case"subroutine":u="subroutine";break;case"cylinder":u="cylinder";break;case"group":u="rect";break;case"doublecircle":u="doublecircle";break;default:u="rect"}const A=await(0,U.r)(J,(0,U.c)());At.setNode(lt.id,{labelStyle:he.labelStyle,shape:u,labelText:A,labelType:lt.labelType,rx:k,ry:k,class:te,style:he.style,id:lt.id,link:lt.link,linkTarget:lt.linkTarget,tooltip:Ht.db.getTooltip(lt.id)||"",domId:Ht.db.lookUpDomId(lt.id),haveCallback:lt.haveCallback,width:lt.type==="group"?500:void 0,dir:lt.dir,type:lt.type,props:lt.props,padding:(0,U.c)().flowchart.padding}),U.l.info("setNode",{labelStyle:he.labelStyle,labelType:lt.labelType,shape:u,labelText:A,rx:k,ry:k,class:te,style:he.style,id:lt.id,domId:Ht.db.lookUpDomId(lt.id),width:lt.type==="group"?500:void 0,type:lt.type,dir:lt.dir,props:lt.props,padding:(0,U.c)().flowchart.padding})}},ut=async function(q,At,kt){U.l.info("abc78 edges = ",q);let bt=0,Dt={},Ht,re;if(q.defaultStyle!==void 0){const vt=(0,U.k)(q.defaultStyle);Ht=vt.style,re=vt.labelStyle}for(const vt of q){bt++;const Tt="L-"+vt.start+"-"+vt.end;Dt[Tt]===void 0?(Dt[Tt]=0,U.l.info("abc78 new entry",Tt,Dt[Tt])):(Dt[Tt]++,U.l.info("abc78 new entry",Tt,Dt[Tt]));let lt=Tt+"-"+Dt[Tt];U.l.info("abc78 new link id to be used is",Tt,lt,Dt[Tt]);const te="LS-"+vt.start,he="LE-"+vt.end,J={style:"",labelStyle:""};switch(J.minlen=vt.length||1,vt.type==="arrow_open"?J.arrowhead="none":J.arrowhead="normal",J.arrowTypeStart="arrow_open",J.arrowTypeEnd="arrow_open",vt.type){case"double_arrow_cross":J.arrowTypeStart="arrow_cross";case"arrow_cross":J.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":J.arrowTypeStart="arrow_point";case"arrow_point":J.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":J.arrowTypeStart="arrow_circle";case"arrow_circle":J.arrowTypeEnd="arrow_circle";break}let Z="",k="";switch(vt.stroke){case"normal":Z="fill:none;",Ht!==void 0&&(Z=Ht),re!==void 0&&(k=re),J.thickness="normal",J.pattern="solid";break;case"dotted":J.thickness="normal",J.pattern="dotted",J.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":J.thickness="thick",J.pattern="solid",J.style="stroke-width: 3.5px;fill:none;";break;case"invisible":J.thickness="invisible",J.pattern="solid",J.style="stroke-width: 0;fill:none;";break}if(vt.style!==void 0){const u=(0,U.k)(vt.style);Z=u.style,k=u.labelStyle}J.style=J.style+=Z,J.labelStyle=J.labelStyle+=k,vt.interpolate!==void 0?J.curve=(0,U.n)(vt.interpolate,C.lUB):q.defaultInterpolate!==void 0?J.curve=(0,U.n)(q.defaultInterpolate,C.lUB):J.curve=(0,U.n)(N.curve,C.lUB),vt.text===void 0?vt.style!==void 0&&(J.arrowheadStyle="fill: #333"):(J.arrowheadStyle="fill: #333",J.labelpos="c"),J.labelType=vt.labelType,J.label=await(0,U.r)(vt.text.replace(U.e.lineBreakRegex,` +`),(0,U.c)()),vt.style===void 0&&(J.style=J.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),J.labelStyle=J.labelStyle.replace("color:","fill:"),J.id=lt,J.classes="flowchart-link "+te+" "+he,At.setEdge(vt.start,vt.end,J,bt)}},le={setConf:G,addVertices:et,addEdges:ut,getClasses:function(q,At){return At.db.getClasses()},draw:async function(q,At,kt,bt){U.l.info("Drawing flowchart");let Dt=bt.db.getDirection();Dt===void 0&&(Dt="TD");const{securityLevel:Ht,flowchart:re}=(0,U.c)(),vt=re.nodeSpacing||50,Tt=re.rankSpacing||50;let lt;Ht==="sandbox"&&(lt=(0,C.Ltv)("#i"+At));const te=Ht==="sandbox"?(0,C.Ltv)(lt.nodes()[0].contentDocument.body):(0,C.Ltv)("body"),he=Ht==="sandbox"?lt.nodes()[0].contentDocument:document,J=new E.T({multigraph:!0,compound:!0}).setGraph({rankdir:Dt,nodesep:vt,ranksep:Tt,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let Z;const k=bt.db.getSubGraphs();U.l.info("Subgraphs - ",k);for(let rt=k.length-1;rt>=0;rt--)Z=k[rt],U.l.info("Subgraph - ",Z),bt.db.addVertex(Z.id,{text:Z.title,type:Z.labelType},"group",void 0,Z.classes,Z.dir);const u=bt.db.getVertices(),A=bt.db.getEdges();U.l.info("Edges",A);let P=0;for(P=k.length-1;P>=0;P--){Z=k[P],(0,C.Ubm)("cluster").append("text");for(let rt=0;rt{const kt=Ot.A,bt=kt(q,"r"),Dt=kt(q,"g"),Ht=kt(q,"b");return Rt.A(bt,Dt,Ht,At)},ye=q=>`.label { + font-family: ${q.fontFamily}; + color: ${q.nodeTextColor||q.textColor}; + } + .cluster-label text { + fill: ${q.titleColor}; + } + .cluster-label span,p { + color: ${q.titleColor}; + } + + .label text,span,p { + fill: ${q.nodeTextColor||q.textColor}; + color: ${q.nodeTextColor||q.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${q.mainBkg}; + stroke: ${q.nodeBorder}; + stroke-width: 1px; + } + .flowchart-label text { + text-anchor: middle; + } + // .flowchart-label .text-outer-tspan { + // text-anchor: middle; + // } + // .flowchart-label .text-inner-tspan { + // text-anchor: start; + // } + + .node .katex path { + fill: #000; + stroke: #000; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${q.arrowheadColor}; + } + + .edgePath .path { + stroke: ${q.lineColor}; + stroke-width: 2.0px; + } + + .flowchart-link { + stroke: ${q.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${q.edgeLabelBackground}; + rect { + opacity: 0.5; + background-color: ${q.edgeLabelBackground}; + fill: ${q.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${Zt(q.edgeLabelBackground,.5)}; + // background-color: + } + + .cluster rect { + fill: ${q.clusterBkg}; + stroke: ${q.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${q.titleColor}; + } + + .cluster span,p { + color: ${q.titleColor}; + } + /* .cluster div { + color: ${q.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${q.fontFamily}; + font-size: 12px; + background: ${q.tertiaryColor}; + border: 1px solid ${q.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${q.textColor}; + } +`},"./node_modules/mermaid/dist/styles-991ebdfc.js":function(je,se,ot){ot.d(se,{d:function(){return Ae},p:function(){return w},s:function(){return ss}});var E=ot("./node_modules/d3/src/index.js"),C=ot("./node_modules/mermaid/dist/mermaid-f47111a7.js"),U=function(){var f=function(ht,I,H,W){for(H=H||{},W=ht.length;W--;H[ht[W]]=I);return H},M=[1,17],it=[1,18],pt=[1,19],yt=[1,39],Yt=[1,40],fe=[1,25],me=[1,23],ke=[1,24],n=[1,31],F=[1,32],r=[1,33],b=[1,34],v=[1,35],j=[1,36],K=[1,26],xt=[1,27],$=[1,28],Lt=[1,29],tt=[1,43],ee=[1,30],wt=[1,42],Nt=[1,44],_t=[1,41],dt=[1,45],Ft=[1,9],ct=[1,8,9],Ee=[1,56],ge=[1,57],Te=[1,58],Wt=[1,59],Kt=[1,60],zt=[1,61],Jt=[1,62],s=[1,8,9,39],t=[1,74],e=[1,8,9,12,13,21,37,39,42,59,60,61,62,63,64,65,70,72],a=[1,8,9,12,13,19,21,37,39,42,46,59,60,61,62,63,64,65,70,72,74,80,95,97,98],c=[13,74,80,95,97,98],i=[13,64,65,74,80,95,97,98],o=[13,59,60,61,62,63,74,80,95,97,98],h=[1,93],g=[1,110],R=[1,108],m=[1,102],x=[1,103],D=[1,104],T=[1,105],Y=[1,106],nt=[1,107],S=[1,109],Et=[1,8,9,37,39,42],X=[1,8,9,21],It=[1,8,9,78],St=[1,8,9,21,73,74,78,80,81,82,83,84,85],ue={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,className:17,classLiteralName:18,GENERICTYPE:19,relationStatement:20,LABEL:21,namespaceStatement:22,classStatement:23,memberStatement:24,annotationStatement:25,clickStatement:26,styleStatement:27,cssClassStatement:28,noteStatement:29,direction:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,namespaceIdentifier:36,STRUCT_START:37,classStatements:38,STRUCT_STOP:39,NAMESPACE:40,classIdentifier:41,STYLE_SEPARATOR:42,members:43,CLASS:44,ANNOTATION_START:45,ANNOTATION_END:46,MEMBER:47,SEPARATOR:48,relation:49,NOTE_FOR:50,noteText:51,NOTE:52,direction_tb:53,direction_bt:54,direction_rl:55,direction_lr:56,relationType:57,lineType:58,AGGREGATION:59,EXTENSION:60,COMPOSITION:61,DEPENDENCY:62,LOLLIPOP:63,LINE:64,DOTTED_LINE:65,CALLBACK:66,LINK:67,LINK_TARGET:68,CLICK:69,CALLBACK_NAME:70,CALLBACK_ARGS:71,HREF:72,STYLE:73,ALPHA:74,stylesOpt:75,CSSCLASS:76,style:77,COMMA:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,commentToken:86,textToken:87,graphCodeTokens:88,textNoTagsToken:89,TAGSTART:90,TAGEND:91,"==":92,"--":93,DEFAULT:94,MINUS:95,keywords:96,UNICODE_TEXT:97,BQUOTE_STR:98,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",19:"GENERICTYPE",21:"LABEL",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",37:"STRUCT_START",39:"STRUCT_STOP",40:"NAMESPACE",42:"STYLE_SEPARATOR",44:"CLASS",45:"ANNOTATION_START",46:"ANNOTATION_END",47:"MEMBER",48:"SEPARATOR",50:"NOTE_FOR",52:"NOTE",53:"direction_tb",54:"direction_bt",55:"direction_rl",56:"direction_lr",59:"AGGREGATION",60:"EXTENSION",61:"COMPOSITION",62:"DEPENDENCY",63:"LOLLIPOP",64:"LINE",65:"DOTTED_LINE",66:"CALLBACK",67:"LINK",68:"LINK_TARGET",69:"CLICK",70:"CALLBACK_NAME",71:"CALLBACK_ARGS",72:"HREF",73:"STYLE",74:"ALPHA",76:"CSSCLASS",78:"COMMA",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",88:"graphCodeTokens",90:"TAGSTART",91:"TAGEND",92:"==",93:"--",94:"DEFAULT",95:"MINUS",96:"keywords",97:"UNICODE_TEXT",98:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,2],[17,1],[17,1],[17,2],[17,2],[17,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[22,4],[22,5],[36,2],[38,1],[38,2],[38,3],[23,1],[23,3],[23,4],[23,6],[41,2],[41,3],[25,4],[43,1],[43,2],[24,1],[24,2],[24,1],[24,1],[20,3],[20,4],[20,4],[20,5],[29,3],[29,2],[30,1],[30,1],[30,1],[30,1],[49,3],[49,2],[49,2],[49,1],[57,1],[57,1],[57,1],[57,1],[57,1],[58,1],[58,1],[26,3],[26,4],[26,3],[26,4],[26,4],[26,5],[26,3],[26,4],[26,4],[26,5],[26,4],[26,5],[26,5],[26,6],[27,3],[28,3],[75,1],[75,3],[77,1],[77,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[86,1],[86,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[87,1],[89,1],[89,1],[89,1],[89,1],[16,1],[16,1],[16,1],[16,1],[18,1],[51,1]],performAction:function(I,H,W,B,Pt,p,we){var y=p.length-1;switch(Pt){case 8:this.$=p[y-1];break;case 9:case 11:case 12:this.$=p[y];break;case 10:case 13:this.$=p[y-1]+p[y];break;case 14:case 15:this.$=p[y-1]+"~"+p[y]+"~";break;case 16:B.addRelation(p[y]);break;case 17:p[y-1].title=B.cleanupLabel(p[y]),B.addRelation(p[y-1]);break;case 27:this.$=p[y].trim(),B.setAccTitle(this.$);break;case 28:case 29:this.$=p[y].trim(),B.setAccDescription(this.$);break;case 30:B.addClassesToNamespace(p[y-3],p[y-1]);break;case 31:B.addClassesToNamespace(p[y-4],p[y-1]);break;case 32:this.$=p[y],B.addNamespace(p[y]);break;case 33:this.$=[p[y]];break;case 34:this.$=[p[y-1]];break;case 35:p[y].unshift(p[y-2]),this.$=p[y];break;case 37:B.setCssClass(p[y-2],p[y]);break;case 38:B.addMembers(p[y-3],p[y-1]);break;case 39:B.setCssClass(p[y-5],p[y-3]),B.addMembers(p[y-5],p[y-1]);break;case 40:this.$=p[y],B.addClass(p[y]);break;case 41:this.$=p[y-1],B.addClass(p[y-1]),B.setClassLabel(p[y-1],p[y]);break;case 42:B.addAnnotation(p[y],p[y-2]);break;case 43:this.$=[p[y]];break;case 44:p[y].push(p[y-1]),this.$=p[y];break;case 45:break;case 46:B.addMember(p[y-1],B.cleanupLabel(p[y]));break;case 47:break;case 48:break;case 49:this.$={id1:p[y-2],id2:p[y],relation:p[y-1],relationTitle1:"none",relationTitle2:"none"};break;case 50:this.$={id1:p[y-3],id2:p[y],relation:p[y-1],relationTitle1:p[y-2],relationTitle2:"none"};break;case 51:this.$={id1:p[y-3],id2:p[y],relation:p[y-2],relationTitle1:"none",relationTitle2:p[y-1]};break;case 52:this.$={id1:p[y-4],id2:p[y],relation:p[y-2],relationTitle1:p[y-3],relationTitle2:p[y-1]};break;case 53:B.addNote(p[y],p[y-1]);break;case 54:B.addNote(p[y]);break;case 55:B.setDirection("TB");break;case 56:B.setDirection("BT");break;case 57:B.setDirection("RL");break;case 58:B.setDirection("LR");break;case 59:this.$={type1:p[y-2],type2:p[y],lineType:p[y-1]};break;case 60:this.$={type1:"none",type2:p[y],lineType:p[y-1]};break;case 61:this.$={type1:p[y-1],type2:"none",lineType:p[y]};break;case 62:this.$={type1:"none",type2:"none",lineType:p[y]};break;case 63:this.$=B.relationType.AGGREGATION;break;case 64:this.$=B.relationType.EXTENSION;break;case 65:this.$=B.relationType.COMPOSITION;break;case 66:this.$=B.relationType.DEPENDENCY;break;case 67:this.$=B.relationType.LOLLIPOP;break;case 68:this.$=B.lineType.LINE;break;case 69:this.$=B.lineType.DOTTED_LINE;break;case 70:case 76:this.$=p[y-2],B.setClickEvent(p[y-1],p[y]);break;case 71:case 77:this.$=p[y-3],B.setClickEvent(p[y-2],p[y-1]),B.setTooltip(p[y-2],p[y]);break;case 72:this.$=p[y-2],B.setLink(p[y-1],p[y]);break;case 73:this.$=p[y-3],B.setLink(p[y-2],p[y-1],p[y]);break;case 74:this.$=p[y-3],B.setLink(p[y-2],p[y-1]),B.setTooltip(p[y-2],p[y]);break;case 75:this.$=p[y-4],B.setLink(p[y-3],p[y-2],p[y]),B.setTooltip(p[y-3],p[y-1]);break;case 78:this.$=p[y-3],B.setClickEvent(p[y-2],p[y-1],p[y]);break;case 79:this.$=p[y-4],B.setClickEvent(p[y-3],p[y-2],p[y-1]),B.setTooltip(p[y-3],p[y]);break;case 80:this.$=p[y-3],B.setLink(p[y-2],p[y]);break;case 81:this.$=p[y-4],B.setLink(p[y-3],p[y-1],p[y]);break;case 82:this.$=p[y-4],B.setLink(p[y-3],p[y-1]),B.setTooltip(p[y-3],p[y]);break;case 83:this.$=p[y-5],B.setLink(p[y-4],p[y-2],p[y]),B.setTooltip(p[y-4],p[y-1]);break;case 84:this.$=p[y-2],B.setCssStyle(p[y-1],p[y]);break;case 85:B.setCssClass(p[y-1],p[y]);break;case 86:this.$=[p[y]];break;case 87:p[y-2].push(p[y]),this.$=p[y-2];break;case 89:this.$=p[y-1]+p[y];break}},table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:M,33:it,35:pt,36:21,40:yt,41:22,44:Yt,45:fe,47:me,48:ke,50:n,52:F,53:r,54:b,55:v,56:j,66:K,67:xt,69:$,73:Lt,74:tt,76:ee,80:wt,95:Nt,97:_t,98:dt},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},f(Ft,[2,5],{8:[1,46]}),{8:[1,47]},f(ct,[2,16],{21:[1,48]}),f(ct,[2,18]),f(ct,[2,19]),f(ct,[2,20]),f(ct,[2,21]),f(ct,[2,22]),f(ct,[2,23]),f(ct,[2,24]),f(ct,[2,25]),f(ct,[2,26]),{32:[1,49]},{34:[1,50]},f(ct,[2,29]),f(ct,[2,45],{49:51,57:54,58:55,13:[1,52],21:[1,53],59:Ee,60:ge,61:Te,62:Wt,63:Kt,64:zt,65:Jt}),{37:[1,63]},f(s,[2,36],{37:[1,65],42:[1,64]}),f(ct,[2,47]),f(ct,[2,48]),{16:66,74:tt,80:wt,95:Nt,97:_t},{16:37,17:67,18:38,74:tt,80:wt,95:Nt,97:_t,98:dt},{16:37,17:68,18:38,74:tt,80:wt,95:Nt,97:_t,98:dt},{16:37,17:69,18:38,74:tt,80:wt,95:Nt,97:_t,98:dt},{74:[1,70]},{13:[1,71]},{16:37,17:72,18:38,74:tt,80:wt,95:Nt,97:_t,98:dt},{13:t,51:73},f(ct,[2,55]),f(ct,[2,56]),f(ct,[2,57]),f(ct,[2,58]),f(e,[2,11],{16:37,18:38,17:75,19:[1,76],74:tt,80:wt,95:Nt,97:_t,98:dt}),f(e,[2,12],{19:[1,77]}),{15:78,16:79,74:tt,80:wt,95:Nt,97:_t},{16:37,17:80,18:38,74:tt,80:wt,95:Nt,97:_t,98:dt},f(a,[2,112]),f(a,[2,113]),f(a,[2,114]),f(a,[2,115]),f([1,8,9,12,13,19,21,37,39,42,59,60,61,62,63,64,65,70,72],[2,116]),f(Ft,[2,6],{10:5,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,17:20,36:21,41:22,16:37,18:38,5:81,31:M,33:it,35:pt,40:yt,44:Yt,45:fe,47:me,48:ke,50:n,52:F,53:r,54:b,55:v,56:j,66:K,67:xt,69:$,73:Lt,74:tt,76:ee,80:wt,95:Nt,97:_t,98:dt}),{5:82,10:5,16:37,17:20,18:38,20:7,22:8,23:9,24:10,25:11,26:12,27:13,28:14,29:15,30:16,31:M,33:it,35:pt,36:21,40:yt,41:22,44:Yt,45:fe,47:me,48:ke,50:n,52:F,53:r,54:b,55:v,56:j,66:K,67:xt,69:$,73:Lt,74:tt,76:ee,80:wt,95:Nt,97:_t,98:dt},f(ct,[2,17]),f(ct,[2,27]),f(ct,[2,28]),{13:[1,84],16:37,17:83,18:38,74:tt,80:wt,95:Nt,97:_t,98:dt},{49:85,57:54,58:55,59:Ee,60:ge,61:Te,62:Wt,63:Kt,64:zt,65:Jt},f(ct,[2,46]),{58:86,64:zt,65:Jt},f(c,[2,62],{57:87,59:Ee,60:ge,61:Te,62:Wt,63:Kt}),f(i,[2,63]),f(i,[2,64]),f(i,[2,65]),f(i,[2,66]),f(i,[2,67]),f(o,[2,68]),f(o,[2,69]),{8:[1,89],23:90,38:88,41:22,44:Yt},{16:91,74:tt,80:wt,95:Nt,97:_t},{43:92,47:h},{46:[1,94]},{13:[1,95]},{13:[1,96]},{70:[1,97],72:[1,98]},{21:g,73:R,74:m,75:99,77:100,79:101,80:x,81:D,82:T,83:Y,84:nt,85:S},{74:[1,111]},{13:t,51:112},f(ct,[2,54]),f(ct,[2,117]),f(e,[2,13]),f(e,[2,14]),f(e,[2,15]),{37:[2,32]},{15:113,16:79,37:[2,9],74:tt,80:wt,95:Nt,97:_t},f(Et,[2,40],{11:114,12:[1,115]}),f(Ft,[2,7]),{9:[1,116]},f(X,[2,49]),{16:37,17:117,18:38,74:tt,80:wt,95:Nt,97:_t,98:dt},{13:[1,119],16:37,17:118,18:38,74:tt,80:wt,95:Nt,97:_t,98:dt},f(c,[2,61],{57:120,59:Ee,60:ge,61:Te,62:Wt,63:Kt}),f(c,[2,60]),{39:[1,121]},{23:90,38:122,41:22,44:Yt},{8:[1,123],39:[2,33]},f(s,[2,37],{37:[1,124]}),{39:[1,125]},{39:[2,43],43:126,47:h},{16:37,17:127,18:38,74:tt,80:wt,95:Nt,97:_t,98:dt},f(ct,[2,70],{13:[1,128]}),f(ct,[2,72],{13:[1,130],68:[1,129]}),f(ct,[2,76],{13:[1,131],71:[1,132]}),{13:[1,133]},f(ct,[2,84],{78:[1,134]}),f(It,[2,86],{79:135,21:g,73:R,74:m,80:x,81:D,82:T,83:Y,84:nt,85:S}),f(St,[2,88]),f(St,[2,90]),f(St,[2,91]),f(St,[2,92]),f(St,[2,93]),f(St,[2,94]),f(St,[2,95]),f(St,[2,96]),f(St,[2,97]),f(St,[2,98]),f(ct,[2,85]),f(ct,[2,53]),{37:[2,10]},f(Et,[2,41]),{13:[1,136]},{1:[2,4]},f(X,[2,51]),f(X,[2,50]),{16:37,17:137,18:38,74:tt,80:wt,95:Nt,97:_t,98:dt},f(c,[2,59]),f(ct,[2,30]),{39:[1,138]},{23:90,38:139,39:[2,34],41:22,44:Yt},{43:140,47:h},f(s,[2,38]),{39:[2,44]},f(ct,[2,42]),f(ct,[2,71]),f(ct,[2,73]),f(ct,[2,74],{68:[1,141]}),f(ct,[2,77]),f(ct,[2,78],{13:[1,142]}),f(ct,[2,80],{13:[1,144],68:[1,143]}),{21:g,73:R,74:m,77:145,79:101,80:x,81:D,82:T,83:Y,84:nt,85:S},f(St,[2,89]),{14:[1,146]},f(X,[2,52]),f(ct,[2,31]),{39:[2,35]},{39:[1,147]},f(ct,[2,75]),f(ct,[2,79]),f(ct,[2,81]),f(ct,[2,82],{68:[1,148]}),f(It,[2,87],{79:135,21:g,73:R,74:m,80:x,81:D,82:T,83:Y,84:nt,85:S}),f(Et,[2,8]),f(s,[2,39]),f(ct,[2,83])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],78:[2,32],113:[2,10],116:[2,4],126:[2,44],139:[2,35]},parseError:function(I,H){if(H.recoverable)this.trace(I);else{var W=new Error(I);throw W.hash=H,W}},parse:function(I){var H=this,W=[0],B=[],Pt=[null],p=[],we=this.table,y="",Ue=0,Re=0,Ye=2,Be=1,as=p.slice.call(arguments,1),qt=Object.create(this.lexer),Fe={yy:{}};for(var Ce in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ce)&&(Fe.yy[Ce]=this.yy[Ce]);qt.setInput(I,Fe.yy),Fe.yy.lexer=qt,Fe.yy.parser=this,typeof qt.yylloc>"u"&&(qt.yylloc={});var hs=qt.yylloc;p.push(hs);var xs=qt.options&&qt.options.ranges;typeof Fe.yy.parseError=="function"?this.parseError=Fe.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function _s(){var Ie;return Ie=B.pop()||qt.lex()||Be,typeof Ie!="number"&&(Ie instanceof Array&&(B=Ie,Ie=B.pop()),Ie=H.symbols_[Ie]||Ie),Ie}for(var _e,Ge,Le,ds,We={},ls,Me,bs,cs;;){if(Ge=W[W.length-1],this.defaultActions[Ge]?Le=this.defaultActions[Ge]:((_e===null||typeof _e>"u")&&(_e=_s()),Le=we[Ge]&&we[Ge][_e]),typeof Le>"u"||!Le.length||!Le[0]){var fs="";cs=[];for(ls in we[Ge])this.terminals_[ls]&&ls>Ye&&cs.push("'"+this.terminals_[ls]+"'");qt.showPosition?fs="Parse error on line "+(Ue+1)+`: +`+qt.showPosition()+` +Expecting `+cs.join(", ")+", got '"+(this.terminals_[_e]||_e)+"'":fs="Parse error on line "+(Ue+1)+": Unexpected "+(_e==Be?"end of input":"'"+(this.terminals_[_e]||_e)+"'"),this.parseError(fs,{text:qt.match,token:this.terminals_[_e]||_e,line:qt.yylineno,loc:hs,expected:cs})}if(Le[0]instanceof Array&&Le.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ge+", token: "+_e);switch(Le[0]){case 1:W.push(_e),Pt.push(qt.yytext),p.push(qt.yylloc),W.push(Le[1]),_e=null,Re=qt.yyleng,y=qt.yytext,Ue=qt.yylineno,hs=qt.yylloc;break;case 2:if(Me=this.productions_[Le[1]][1],We.$=Pt[Pt.length-Me],We._$={first_line:p[p.length-(Me||1)].first_line,last_line:p[p.length-1].last_line,first_column:p[p.length-(Me||1)].first_column,last_column:p[p.length-1].last_column},xs&&(We._$.range=[p[p.length-(Me||1)].range[0],p[p.length-1].range[1]]),ds=this.performAction.apply(We,[y,Re,Ue,Fe.yy,Le[1],Pt,p].concat(as)),typeof ds<"u")return ds;Me&&(W=W.slice(0,-1*Me*2),Pt=Pt.slice(0,-1*Me),p=p.slice(0,-1*Me)),W.push(this.productions_[Le[1]][0]),Pt.push(We.$),p.push(We._$),bs=we[W[W.length-2]][W[W.length-1]],W.push(bs);break;case 3:return!0}}return!0}},pe=function(){var ht={EOF:1,parseError:function(H,W){if(this.yy.parser)this.yy.parser.parseError(H,W);else throw new Error(H)},setInput:function(I,H){return this.yy=H||this.yy||{},this._input=I,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var I=this._input[0];this.yytext+=I,this.yyleng++,this.offset++,this.match+=I,this.matched+=I;var H=I.match(/(?:\r\n?|\n).*/g);return H?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),I},unput:function(I){var H=I.length,W=I.split(/(?:\r\n?|\n)/g);this._input=I+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-H),this.offset-=H;var B=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),W.length-1&&(this.yylineno-=W.length-1);var Pt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:W?(W.length===B.length?this.yylloc.first_column:0)+B[B.length-W.length].length-W[0].length:this.yylloc.first_column-H},this.options.ranges&&(this.yylloc.range=[Pt[0],Pt[0]+this.yyleng-H]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(I){this.unput(this.match.slice(I))},pastInput:function(){var I=this.matched.substr(0,this.matched.length-this.match.length);return(I.length>20?"...":"")+I.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var I=this.match;return I.length<20&&(I+=this._input.substr(0,20-I.length)),(I.substr(0,20)+(I.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var I=this.pastInput(),H=new Array(I.length+1).join("-");return I+this.upcomingInput()+` +`+H+"^"},test_match:function(I,H){var W,B,Pt;if(this.options.backtrack_lexer&&(Pt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(Pt.yylloc.range=this.yylloc.range.slice(0))),B=I[0].match(/(?:\r\n?|\n).*/g),B&&(this.yylineno+=B.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:B?B[B.length-1].length-B[B.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+I[0].length},this.yytext+=I[0],this.match+=I[0],this.matches=I,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(I[0].length),this.matched+=I[0],W=this.performAction.call(this,this.yy,this,H,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),W)return W;if(this._backtrack){for(var p in Pt)this[p]=Pt[p];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var I,H,W,B;this._more||(this.yytext="",this.match="");for(var Pt=this._currentRules(),p=0;pH[0].length)){if(H=W,B=p,this.options.backtrack_lexer){if(I=this.test_match(W,Pt[p]),I!==!1)return I;if(this._backtrack){H=!1;continue}else return!1}else if(!this.options.flex)break}return H?(I=this.test_match(H,Pt[B]),I!==!1?I:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var H=this.next();return H||this.lex()},begin:function(H){this.conditionStack.push(H)},popState:function(){var H=this.conditionStack.length-1;return H>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(H){return H=this.conditionStack.length-1-Math.abs(H||0),H>=0?this.conditionStack[H]:"INITIAL"},pushState:function(H){this.begin(H)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(H,W,B,Pt){switch(B){case 0:return 53;case 1:return 54;case 2:return 55;case 3:return 56;case 4:break;case 5:break;case 6:return this.begin("acc_title"),31;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),33;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 70;case 22:this.popState();break;case 23:return 71;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 73;case 28:return this.begin("namespace"),40;case 29:return this.popState(),8;case 30:break;case 31:return this.begin("namespace-body"),37;case 32:return this.popState(),39;case 33:return"EOF_IN_STRUCT";case 34:return 8;case 35:break;case 36:return"EDGE_STATE";case 37:return this.begin("class"),44;case 38:return this.popState(),8;case 39:break;case 40:return this.popState(),this.popState(),39;case 41:return this.begin("class-body"),37;case 42:return this.popState(),39;case 43:return"EOF_IN_STRUCT";case 44:return"EDGE_STATE";case 45:return"OPEN_IN_STRUCT";case 46:break;case 47:return"MEMBER";case 48:return 76;case 49:return 66;case 50:return 67;case 51:return 69;case 52:return 50;case 53:return 52;case 54:return 45;case 55:return 46;case 56:return 72;case 57:this.popState();break;case 58:return"GENERICTYPE";case 59:this.begin("generic");break;case 60:this.popState();break;case 61:return"BQUOTE_STR";case 62:this.begin("bqstring");break;case 63:return 68;case 64:return 68;case 65:return 68;case 66:return 68;case 67:return 60;case 68:return 60;case 69:return 62;case 70:return 62;case 71:return 61;case 72:return 59;case 73:return 63;case 74:return 64;case 75:return 65;case 76:return 21;case 77:return 42;case 78:return 95;case 79:return"DOT";case 80:return"PLUS";case 81:return 81;case 82:return 78;case 83:return 84;case 84:return 84;case 85:return 85;case 86:return"EQUALS";case 87:return"EQUALS";case 88:return 74;case 89:return 12;case 90:return 14;case 91:return"PUNCTUATION";case 92:return 80;case 93:return 97;case 94:return 83;case 95:return 83;case 96:return 9}},rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,32,33,34,35,36,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},namespace:{rules:[26,28,29,30,31,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},"class-body":{rules:[26,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},class:{rules:[26,38,39,40,41,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_descr:{rules:[9,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},acc_title:{rules:[7,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_args:{rules:[22,23,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},callback_name:{rules:[19,20,21,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},href:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},struct:{rules:[26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},generic:{rules:[26,48,49,50,51,52,53,54,55,56,57,58,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},bqstring:{rules:[26,48,49,50,51,52,53,54,55,56,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},string:{rules:[24,25,26,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,85,86,87,88,89,90,91,92,93,94,96],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,37,48,49,50,51,52,53,54,55,56,59,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96],inclusive:!0}}};return ht}();ue.lexer=pe;function Se(){this.yy={}}return Se.prototype=ue,ue.Parser=Se,new Se}();U.parser=U;const w=U,ae=["#","+","~","-",""];class Ot{constructor(M,it){this.memberType=it,this.visibility="",this.classifier="";const pt=(0,C.d)(M,(0,C.c)());this.parseMember(pt)}getDisplayDetails(){let M=this.visibility+(0,C.x)(this.id);this.memberType==="method"&&(M+=`(${(0,C.x)(this.parameters.trim())})`,this.returnType&&(M+=" : "+(0,C.x)(this.returnType))),M=M.trim();const it=this.parseClassifier();return{displayText:M,cssStyle:it}}parseMember(M){let it="";if(this.memberType==="method"){const pt=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/,yt=M.match(pt);if(yt){const Yt=yt[1]?yt[1].trim():"";if(ae.includes(Yt)&&(this.visibility=Yt),this.id=yt[2].trim(),this.parameters=yt[3]?yt[3].trim():"",it=yt[4]?yt[4].trim():"",this.returnType=yt[5]?yt[5].trim():"",it===""){const fe=this.returnType.substring(this.returnType.length-1);fe.match(/[$*]/)&&(it=fe,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{const pt=M.length,yt=M.substring(0,1),Yt=M.substring(pt-1);ae.includes(yt)&&(this.visibility=yt),Yt.match(/[$*]/)&&(it=Yt),this.id=M.substring(this.visibility===""?0:1,it===""?pt:pt-1)}this.classifier=it}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}}const Rt="classId-";let N=[],G={},et=[],ut=0,mt={},Qt=0,le=[];const Zt=f=>C.e.sanitizeText(f,(0,C.c)()),Mt=function(f){const M=C.e.sanitizeText(f,(0,C.c)());let it="",pt=M;if(M.indexOf("~")>0){const yt=M.split("~");pt=Zt(yt[0]),it=Zt(yt[1])}return{className:pt,type:it}},ye=function(f,M){const it=C.e.sanitizeText(f,(0,C.c)());M&&(M=Zt(M));const{className:pt}=Mt(it);G[pt].label=M},q=function(f){const M=C.e.sanitizeText(f,(0,C.c)()),{className:it,type:pt}=Mt(M);if(Object.hasOwn(G,it))return;const yt=C.e.sanitizeText(it,(0,C.c)());G[yt]={id:yt,type:pt,label:yt,cssClasses:[],methods:[],members:[],annotations:[],styles:[],domId:Rt+yt+"-"+ut},ut++},At=function(f){const M=C.e.sanitizeText(f,(0,C.c)());if(M in G)return G[M].domId;throw new Error("Class not found: "+M)},kt=function(){N=[],G={},et=[],le=[],le.push(st),mt={},Qt=0,(0,C.v)()},bt=function(f){return G[f]},Dt=function(){return G},Ht=function(){return N},re=function(){return et},vt=function(f){C.l.debug("Adding relation: "+JSON.stringify(f)),q(f.id1),q(f.id2),f.id1=Mt(f.id1).className,f.id2=Mt(f.id2).className,f.relationTitle1=C.e.sanitizeText(f.relationTitle1.trim(),(0,C.c)()),f.relationTitle2=C.e.sanitizeText(f.relationTitle2.trim(),(0,C.c)()),N.push(f)},Tt=function(f,M){const it=Mt(f).className;G[it].annotations.push(M)},lt=function(f,M){q(f);const it=Mt(f).className,pt=G[it];if(typeof M=="string"){const yt=M.trim();yt.startsWith("<<")&&yt.endsWith(">>")?pt.annotations.push(Zt(yt.substring(2,yt.length-2))):yt.indexOf(")")>0?pt.methods.push(new Ot(yt,"method")):yt&&pt.members.push(new Ot(yt,"attribute"))}},te=function(f,M){Array.isArray(M)&&(M.reverse(),M.forEach(it=>lt(f,it)))},he=function(f,M){const it={id:`note${et.length}`,class:M,text:f};et.push(it)},J=function(f){return f.startsWith(":")&&(f=f.substring(1)),Zt(f.trim())},Z=function(f,M){f.split(",").forEach(function(it){let pt=it;it[0].match(/\d/)&&(pt=Rt+pt),G[pt]!==void 0&&G[pt].cssClasses.push(M)})},k=function(f,M){f.split(",").forEach(function(it){M!==void 0&&(G[it].tooltip=Zt(M))})},u=function(f,M){return M?mt[M].classes[f].tooltip:G[f].tooltip},A=function(f,M,it){const pt=(0,C.c)();f.split(",").forEach(function(yt){let Yt=yt;yt[0].match(/\d/)&&(Yt=Rt+Yt),G[Yt]!==void 0&&(G[Yt].link=C.u.formatUrl(M,pt),pt.securityLevel==="sandbox"?G[Yt].linkTarget="_top":typeof it=="string"?G[Yt].linkTarget=Zt(it):G[Yt].linkTarget="_blank")}),Z(f,"clickable")},P=function(f,M,it){f.split(",").forEach(function(pt){L(pt,M,it),G[pt].haveCallback=!0}),Z(f,"clickable")},L=function(f,M,it){const pt=C.e.sanitizeText(f,(0,C.c)());if((0,C.c)().securityLevel!=="loose"||M===void 0)return;const Yt=pt;if(G[Yt]!==void 0){const fe=At(Yt);let me=[];if(typeof it=="string"){me=it.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let ke=0;ke")),yt.classed("hover",!0)}).on("mouseout",function(){M.transition().duration(500).style("opacity",0),(0,E.Ltv)(this).classed("hover",!1)})};le.push(st);let Bt="TB";const Vt=()=>Bt,ie=f=>{Bt=f},de=function(f){mt[f]===void 0&&(mt[f]={id:f,classes:{},children:{},domId:Rt+f+"-"+Qt},Qt++)},ne=function(f){return mt[f]},z=function(){return mt},Q=function(f,M){if(mt[f]!==void 0)for(const it of M){const{className:pt}=Mt(it);G[pt].parent=f,mt[f].classes[pt]=G[pt]}},be=function(f,M){const it=G[f];if(!(!M||!it))for(const pt of M)pt.includes(",")?it.styles.push(...pt.split(",")):it.styles.push(pt)},Ae={setAccTitle:C.s,getAccTitle:C.g,getAccDescription:C.a,setAccDescription:C.b,getConfig:()=>(0,C.c)().class,addClass:q,bindFunctions:O,clear:kt,getClass:bt,getClasses:Dt,getNotes:re,addAnnotation:Tt,addNote:he,getRelations:Ht,addRelation:vt,getDirection:Vt,setDirection:ie,addMember:lt,addMembers:te,cleanupLabel:J,lineType:ft,relationType:rt,setClickEvent:P,setCssClass:Z,setLink:A,getTooltip:u,setTooltip:k,lookUpDomId:At,setDiagramTitle:C.q,getDiagramTitle:C.t,setClassLabel:ye,addNamespace:de,addClassesToNamespace:Q,getNamespace:ne,getNamespaces:z,setCssStyle:be},ss=f=>`g.classGroup text { + fill: ${f.nodeBorder||f.classText}; + stroke: none; + font-family: ${f.fontFamily}; + font-size: 10px; + + .title { + font-weight: bolder; + } + +} + +.nodeLabel, .edgeLabel { + color: ${f.classText}; +} +.edgeLabel .label rect { + fill: ${f.mainBkg}; +} +.label text { + fill: ${f.classText}; +} +.edgeLabel .label span { + background: ${f.mainBkg}; +} + +.classTitle { + font-weight: bolder; +} +.node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${f.mainBkg}; + stroke: ${f.nodeBorder}; + stroke-width: 1px; + } + + +.divider { + stroke: ${f.nodeBorder}; + stroke-width: 1; +} + +g.clickable { + cursor: pointer; +} + +g.classGroup rect { + fill: ${f.mainBkg}; + stroke: ${f.nodeBorder}; +} + +g.classGroup line { + stroke: ${f.nodeBorder}; + stroke-width: 1; +} + +.classLabel .box { + stroke: none; + stroke-width: 0; + fill: ${f.mainBkg}; + opacity: 0.5; +} + +.classLabel .label { + fill: ${f.nodeBorder}; + font-size: 10px; +} + +.relation { + stroke: ${f.lineColor}; + stroke-width: 1; + fill: none; +} + +.dashed-line{ + stroke-dasharray: 3; +} + +.dotted-line{ + stroke-dasharray: 1 2; +} + +#compositionStart, .composition { + fill: ${f.lineColor} !important; + stroke: ${f.lineColor} !important; + stroke-width: 1; +} + +#compositionEnd, .composition { + fill: ${f.lineColor} !important; + stroke: ${f.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${f.lineColor} !important; + stroke: ${f.lineColor} !important; + stroke-width: 1; +} + +#dependencyStart, .dependency { + fill: ${f.lineColor} !important; + stroke: ${f.lineColor} !important; + stroke-width: 1; +} + +#extensionStart, .extension { + fill: transparent !important; + stroke: ${f.lineColor} !important; + stroke-width: 1; +} + +#extensionEnd, .extension { + fill: transparent !important; + stroke: ${f.lineColor} !important; + stroke-width: 1; +} + +#aggregationStart, .aggregation { + fill: transparent !important; + stroke: ${f.lineColor} !important; + stroke-width: 1; +} + +#aggregationEnd, .aggregation { + fill: transparent !important; + stroke: ${f.lineColor} !important; + stroke-width: 1; +} + +#lollipopStart, .lollipop { + fill: ${f.mainBkg} !important; + stroke: ${f.lineColor} !important; + stroke-width: 1; +} + +#lollipopEnd, .lollipop { + fill: ${f.mainBkg} !important; + stroke: ${f.lineColor} !important; + stroke-width: 1; +} + +.edgeTerminals { + font-size: 11px; + line-height: initial; +} + +.classTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${f.textColor}; +} +`},"./node_modules/mermaid/dist/styles-d20c7d72.js":function(je,se,ot){ot.d(se,{D:function(){return et},S:function(){return Rt},a:function(){return ut},b:function(){return Ot},c:function(){return ae},d:function(){return ke},p:function(){return U},s:function(){return F}});var E=ot("./node_modules/mermaid/dist/mermaid-f47111a7.js"),C=function(){var r=function(m,x,D,T){for(D=D||{},T=m.length;T--;D[m[T]]=x);return D},b=[1,2],v=[1,3],j=[1,4],K=[2,4],xt=[1,9],$=[1,11],Lt=[1,15],tt=[1,16],ee=[1,17],wt=[1,18],Nt=[1,30],_t=[1,19],dt=[1,20],Ft=[1,21],ct=[1,22],Ee=[1,23],ge=[1,25],Te=[1,26],Wt=[1,27],Kt=[1,28],zt=[1,29],Jt=[1,32],s=[1,33],t=[1,34],e=[1,35],a=[1,31],c=[1,4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],i=[1,4,5,13,14,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],o=[4,5,15,16,18,20,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],h={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,cssClassStatement:11,idStatement:12,DESCR:13,"-->":14,HIDE_EMPTY:15,scale:16,WIDTH:17,COMPOSIT_STATE:18,STRUCT_START:19,STRUCT_STOP:20,STATE_DESCR:21,AS:22,ID:23,FORK:24,JOIN:25,CHOICE:26,CONCURRENT:27,note:28,notePosition:29,NOTE_TEXT:30,direction:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,classDef:37,CLASSDEF_ID:38,CLASSDEF_STYLEOPTS:39,DEFAULT:40,class:41,CLASSENTITY_IDS:42,STYLECLASS:43,direction_tb:44,direction_bt:45,direction_rl:46,direction_lr:47,eol:48,";":49,EDGE_STATE:50,STYLE_SEPARATOR:51,left_of:52,right_of:53,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",13:"DESCR",14:"-->",15:"HIDE_EMPTY",16:"scale",17:"WIDTH",18:"COMPOSIT_STATE",19:"STRUCT_START",20:"STRUCT_STOP",21:"STATE_DESCR",22:"AS",23:"ID",24:"FORK",25:"JOIN",26:"CHOICE",27:"CONCURRENT",28:"note",30:"NOTE_TEXT",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",37:"classDef",38:"CLASSDEF_ID",39:"CLASSDEF_STYLEOPTS",40:"DEFAULT",41:"class",42:"CLASSENTITY_IDS",43:"STYLECLASS",44:"direction_tb",45:"direction_bt",46:"direction_rl",47:"direction_lr",49:";",50:"EDGE_STATE",51:"STYLE_SEPARATOR",52:"left_of",53:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[31,1],[31,1],[31,1],[31,1],[48,1],[48,1],[12,1],[12,1],[12,3],[12,3],[29,1],[29,1]],performAction:function(x,D,T,Y,nt,S,Et){var X=S.length-1;switch(nt){case 3:return Y.setRootDoc(S[X]),S[X];case 4:this.$=[];break;case 5:S[X]!="nl"&&(S[X-1].push(S[X]),this.$=S[X-1]);break;case 6:case 7:this.$=S[X];break;case 8:this.$="nl";break;case 11:this.$=S[X];break;case 12:const pe=S[X-1];pe.description=Y.trimColon(S[X]),this.$=pe;break;case 13:this.$={stmt:"relation",state1:S[X-2],state2:S[X]};break;case 14:const Se=Y.trimColon(S[X]);this.$={stmt:"relation",state1:S[X-3],state2:S[X-1],description:Se};break;case 18:this.$={stmt:"state",id:S[X-3],type:"default",description:"",doc:S[X-1]};break;case 19:var It=S[X],St=S[X-2].trim();if(S[X].match(":")){var ue=S[X].split(":");It=ue[0],St=[St,ue[1]]}this.$={stmt:"state",id:It,type:"default",description:St};break;case 20:this.$={stmt:"state",id:S[X-3],type:"default",description:S[X-5],doc:S[X-1]};break;case 21:this.$={stmt:"state",id:S[X],type:"fork"};break;case 22:this.$={stmt:"state",id:S[X],type:"join"};break;case 23:this.$={stmt:"state",id:S[X],type:"choice"};break;case 24:this.$={stmt:"state",id:Y.getDividerId(),type:"divider"};break;case 25:this.$={stmt:"state",id:S[X-1].trim(),note:{position:S[X-2].trim(),text:S[X].trim()}};break;case 28:this.$=S[X].trim(),Y.setAccTitle(this.$);break;case 29:case 30:this.$=S[X].trim(),Y.setAccDescription(this.$);break;case 31:case 32:this.$={stmt:"classDef",id:S[X-1].trim(),classes:S[X].trim()};break;case 33:this.$={stmt:"applyClass",id:S[X-1].trim(),styleClass:S[X].trim()};break;case 34:Y.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 35:Y.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 36:Y.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 37:Y.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 40:case 41:this.$={stmt:"state",id:S[X].trim(),type:"default",description:""};break;case 42:this.$={stmt:"state",id:S[X-2].trim(),classes:[S[X].trim()],type:"default",description:""};break;case 43:this.$={stmt:"state",id:S[X-2].trim(),classes:[S[X].trim()],type:"default",description:""};break}},table:[{3:1,4:b,5:v,6:j},{1:[3]},{3:5,4:b,5:v,6:j},{3:6,4:b,5:v,6:j},r([1,4,5,15,16,18,21,23,24,25,26,27,28,32,34,36,37,41,44,45,46,47,50],K,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:xt,5:$,8:8,9:10,10:12,11:13,12:14,15:Lt,16:tt,18:ee,21:wt,23:Nt,24:_t,25:dt,26:Ft,27:ct,28:Ee,31:24,32:ge,34:Te,36:Wt,37:Kt,41:zt,44:Jt,45:s,46:t,47:e,50:a},r(c,[2,5]),{9:36,10:12,11:13,12:14,15:Lt,16:tt,18:ee,21:wt,23:Nt,24:_t,25:dt,26:Ft,27:ct,28:Ee,31:24,32:ge,34:Te,36:Wt,37:Kt,41:zt,44:Jt,45:s,46:t,47:e,50:a},r(c,[2,7]),r(c,[2,8]),r(c,[2,9]),r(c,[2,10]),r(c,[2,11],{13:[1,37],14:[1,38]}),r(c,[2,15]),{17:[1,39]},r(c,[2,17],{19:[1,40]}),{22:[1,41]},r(c,[2,21]),r(c,[2,22]),r(c,[2,23]),r(c,[2,24]),{29:42,30:[1,43],52:[1,44],53:[1,45]},r(c,[2,27]),{33:[1,46]},{35:[1,47]},r(c,[2,30]),{38:[1,48],40:[1,49]},{42:[1,50]},r(i,[2,40],{51:[1,51]}),r(i,[2,41],{51:[1,52]}),r(c,[2,34]),r(c,[2,35]),r(c,[2,36]),r(c,[2,37]),r(c,[2,6]),r(c,[2,12]),{12:53,23:Nt,50:a},r(c,[2,16]),r(o,K,{7:54}),{23:[1,55]},{23:[1,56]},{22:[1,57]},{23:[2,44]},{23:[2,45]},r(c,[2,28]),r(c,[2,29]),{39:[1,58]},{39:[1,59]},{43:[1,60]},{23:[1,61]},{23:[1,62]},r(c,[2,13],{13:[1,63]}),{4:xt,5:$,8:8,9:10,10:12,11:13,12:14,15:Lt,16:tt,18:ee,20:[1,64],21:wt,23:Nt,24:_t,25:dt,26:Ft,27:ct,28:Ee,31:24,32:ge,34:Te,36:Wt,37:Kt,41:zt,44:Jt,45:s,46:t,47:e,50:a},r(c,[2,19],{19:[1,65]}),{30:[1,66]},{23:[1,67]},r(c,[2,31]),r(c,[2,32]),r(c,[2,33]),r(i,[2,42]),r(i,[2,43]),r(c,[2,14]),r(c,[2,18]),r(o,K,{7:68}),r(c,[2,25]),r(c,[2,26]),{4:xt,5:$,8:8,9:10,10:12,11:13,12:14,15:Lt,16:tt,18:ee,20:[1,69],21:wt,23:Nt,24:_t,25:dt,26:Ft,27:ct,28:Ee,31:24,32:ge,34:Te,36:Wt,37:Kt,41:zt,44:Jt,45:s,46:t,47:e,50:a},r(c,[2,20])],defaultActions:{5:[2,1],6:[2,2],44:[2,44],45:[2,45]},parseError:function(x,D){if(D.recoverable)this.trace(x);else{var T=new Error(x);throw T.hash=D,T}},parse:function(x){var D=this,T=[0],Y=[],nt=[null],S=[],Et=this.table,X="",It=0,St=0,ue=2,pe=1,Se=S.slice.call(arguments,1),ht=Object.create(this.lexer),I={yy:{}};for(var H in this.yy)Object.prototype.hasOwnProperty.call(this.yy,H)&&(I.yy[H]=this.yy[H]);ht.setInput(x,I.yy),I.yy.lexer=ht,I.yy.parser=this,typeof ht.yylloc>"u"&&(ht.yylloc={});var W=ht.yylloc;S.push(W);var B=ht.options&&ht.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Pt(){var Ce;return Ce=Y.pop()||ht.lex()||pe,typeof Ce!="number"&&(Ce instanceof Array&&(Y=Ce,Ce=Y.pop()),Ce=D.symbols_[Ce]||Ce),Ce}for(var p,we,y,Ue,Re={},Ye,Be,as,qt;;){if(we=T[T.length-1],this.defaultActions[we]?y=this.defaultActions[we]:((p===null||typeof p>"u")&&(p=Pt()),y=Et[we]&&Et[we][p]),typeof y>"u"||!y.length||!y[0]){var Fe="";qt=[];for(Ye in Et[we])this.terminals_[Ye]&&Ye>ue&&qt.push("'"+this.terminals_[Ye]+"'");ht.showPosition?Fe="Parse error on line "+(It+1)+`: +`+ht.showPosition()+` +Expecting `+qt.join(", ")+", got '"+(this.terminals_[p]||p)+"'":Fe="Parse error on line "+(It+1)+": Unexpected "+(p==pe?"end of input":"'"+(this.terminals_[p]||p)+"'"),this.parseError(Fe,{text:ht.match,token:this.terminals_[p]||p,line:ht.yylineno,loc:W,expected:qt})}if(y[0]instanceof Array&&y.length>1)throw new Error("Parse Error: multiple actions possible at state: "+we+", token: "+p);switch(y[0]){case 1:T.push(p),nt.push(ht.yytext),S.push(ht.yylloc),T.push(y[1]),p=null,St=ht.yyleng,X=ht.yytext,It=ht.yylineno,W=ht.yylloc;break;case 2:if(Be=this.productions_[y[1]][1],Re.$=nt[nt.length-Be],Re._$={first_line:S[S.length-(Be||1)].first_line,last_line:S[S.length-1].last_line,first_column:S[S.length-(Be||1)].first_column,last_column:S[S.length-1].last_column},B&&(Re._$.range=[S[S.length-(Be||1)].range[0],S[S.length-1].range[1]]),Ue=this.performAction.apply(Re,[X,St,It,I.yy,y[1],nt,S].concat(Se)),typeof Ue<"u")return Ue;Be&&(T=T.slice(0,-1*Be*2),nt=nt.slice(0,-1*Be),S=S.slice(0,-1*Be)),T.push(this.productions_[y[1]][0]),nt.push(Re.$),S.push(Re._$),as=Et[T[T.length-2]][T[T.length-1]],T.push(as);break;case 3:return!0}}return!0}},g=function(){var m={EOF:1,parseError:function(D,T){if(this.yy.parser)this.yy.parser.parseError(D,T);else throw new Error(D)},setInput:function(x,D){return this.yy=D||this.yy||{},this._input=x,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var x=this._input[0];this.yytext+=x,this.yyleng++,this.offset++,this.match+=x,this.matched+=x;var D=x.match(/(?:\r\n?|\n).*/g);return D?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),x},unput:function(x){var D=x.length,T=x.split(/(?:\r\n?|\n)/g);this._input=x+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-D),this.offset-=D;var Y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),T.length-1&&(this.yylineno-=T.length-1);var nt=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:T?(T.length===Y.length?this.yylloc.first_column:0)+Y[Y.length-T.length].length-T[0].length:this.yylloc.first_column-D},this.options.ranges&&(this.yylloc.range=[nt[0],nt[0]+this.yyleng-D]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(x){this.unput(this.match.slice(x))},pastInput:function(){var x=this.matched.substr(0,this.matched.length-this.match.length);return(x.length>20?"...":"")+x.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var x=this.match;return x.length<20&&(x+=this._input.substr(0,20-x.length)),(x.substr(0,20)+(x.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var x=this.pastInput(),D=new Array(x.length+1).join("-");return x+this.upcomingInput()+` +`+D+"^"},test_match:function(x,D){var T,Y,nt;if(this.options.backtrack_lexer&&(nt={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(nt.yylloc.range=this.yylloc.range.slice(0))),Y=x[0].match(/(?:\r\n?|\n).*/g),Y&&(this.yylineno+=Y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Y?Y[Y.length-1].length-Y[Y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+x[0].length},this.yytext+=x[0],this.match+=x[0],this.matches=x,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(x[0].length),this.matched+=x[0],T=this.performAction.call(this,this.yy,this,D,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),T)return T;if(this._backtrack){for(var S in nt)this[S]=nt[S];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var x,D,T,Y;this._more||(this.yytext="",this.match="");for(var nt=this._currentRules(),S=0;SD[0].length)){if(D=T,Y=S,this.options.backtrack_lexer){if(x=this.test_match(T,nt[S]),x!==!1)return x;if(this._backtrack){D=!1;continue}else return!1}else if(!this.options.flex)break}return D?(x=this.test_match(D,nt[Y]),x!==!1?x:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var D=this.next();return D||this.lex()},begin:function(D){this.conditionStack.push(D)},popState:function(){var D=this.conditionStack.length-1;return D>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(D){return D=this.conditionStack.length-1-Math.abs(D||0),D>=0?this.conditionStack[D]:"INITIAL"},pushState:function(D){this.begin(D)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(D,T,Y,nt){switch(Y){case 0:return 40;case 1:return 44;case 2:return 45;case 3:return 46;case 4:return 47;case 5:break;case 6:break;case 7:return 5;case 8:break;case 9:break;case 10:break;case 11:break;case 12:return this.pushState("SCALE"),16;case 13:return 17;case 14:this.popState();break;case 15:return this.begin("acc_title"),32;case 16:return this.popState(),"acc_title_value";case 17:return this.begin("acc_descr"),34;case 18:return this.popState(),"acc_descr_value";case 19:this.begin("acc_descr_multiline");break;case 20:this.popState();break;case 21:return"acc_descr_multiline_value";case 22:return this.pushState("CLASSDEF"),37;case 23:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 24:return this.popState(),this.pushState("CLASSDEFID"),38;case 25:return this.popState(),39;case 26:return this.pushState("CLASS"),41;case 27:return this.popState(),this.pushState("CLASS_STYLE"),42;case 28:return this.popState(),43;case 29:return this.pushState("SCALE"),16;case 30:return 17;case 31:this.popState();break;case 32:this.pushState("STATE");break;case 33:return this.popState(),T.yytext=T.yytext.slice(0,-8).trim(),24;case 34:return this.popState(),T.yytext=T.yytext.slice(0,-8).trim(),25;case 35:return this.popState(),T.yytext=T.yytext.slice(0,-10).trim(),26;case 36:return this.popState(),T.yytext=T.yytext.slice(0,-8).trim(),24;case 37:return this.popState(),T.yytext=T.yytext.slice(0,-8).trim(),25;case 38:return this.popState(),T.yytext=T.yytext.slice(0,-10).trim(),26;case 39:return 44;case 40:return 45;case 41:return 46;case 42:return 47;case 43:this.pushState("STATE_STRING");break;case 44:return this.pushState("STATE_ID"),"AS";case 45:return this.popState(),"ID";case 46:this.popState();break;case 47:return"STATE_DESCR";case 48:return 18;case 49:this.popState();break;case 50:return this.popState(),this.pushState("struct"),19;case 51:break;case 52:return this.popState(),20;case 53:break;case 54:return this.begin("NOTE"),28;case 55:return this.popState(),this.pushState("NOTE_ID"),52;case 56:return this.popState(),this.pushState("NOTE_ID"),53;case 57:this.popState(),this.pushState("FLOATING_NOTE");break;case 58:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 59:break;case 60:return"NOTE_TEXT";case 61:return this.popState(),"ID";case 62:return this.popState(),this.pushState("NOTE_TEXT"),23;case 63:return this.popState(),T.yytext=T.yytext.substr(2).trim(),30;case 64:return this.popState(),T.yytext=T.yytext.slice(0,-8).trim(),30;case 65:return 6;case 66:return 6;case 67:return 15;case 68:return 50;case 69:return 23;case 70:return T.yytext=T.yytext.trim(),13;case 71:return 14;case 72:return 27;case 73:return 51;case 74:return 5;case 75:return"INVALID"}},rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[9,10],inclusive:!1},struct:{rules:[9,10,22,26,32,39,40,41,42,51,52,53,54,68,69,70,71,72],inclusive:!1},FLOATING_NOTE_ID:{rules:[61],inclusive:!1},FLOATING_NOTE:{rules:[58,59,60],inclusive:!1},NOTE_TEXT:{rules:[63,64],inclusive:!1},NOTE_ID:{rules:[62],inclusive:!1},NOTE:{rules:[55,56,57],inclusive:!1},CLASS_STYLE:{rules:[28],inclusive:!1},CLASS:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[25],inclusive:!1},CLASSDEF:{rules:[23,24],inclusive:!1},acc_descr_multiline:{rules:[20,21],inclusive:!1},acc_descr:{rules:[18],inclusive:!1},acc_title:{rules:[16],inclusive:!1},SCALE:{rules:[13,14,30,31],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[45],inclusive:!1},STATE_STRING:{rules:[46,47],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[9,10,33,34,35,36,37,38,43,44,48,49,50],inclusive:!1},ID:{rules:[9,10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,10,11,12,15,17,19,22,26,29,32,50,54,65,66,67,68,69,70,71,73,74,75],inclusive:!0}}};return m}();h.lexer=g;function R(){this.yy={}}return R.prototype=h,h.Parser=R,new R}();C.parser=C;const U=C,w="LR",ae="TB",Ot="state",Rt="relation",N="classDef",G="applyClass",et="default",ut="divider",mt="[*]",Qt="start",le=mt,Zt="end",Mt="color",ye="fill",q="bgFill",At=",";function kt(){return{}}let bt=w,Dt=[],Ht=kt();const re=()=>({relations:[],states:{},documents:{}});let vt={root:re()},Tt=vt.root,lt=0,te=0;const he={LINE:0,DOTTED_LINE:1},J={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},Z=r=>JSON.parse(JSON.stringify(r)),k=r=>{E.l.info("Setting root doc",r),Dt=r},u=()=>Dt,A=(r,b,v)=>{if(b.stmt===Rt)A(r,b.state1,!0),A(r,b.state2,!1);else if(b.stmt===Ot&&(b.id==="[*]"?(b.id=v?r.id+"_start":r.id+"_end",b.start=v):b.id=b.id.trim()),b.doc){const j=[];let K=[],xt;for(xt=0;xt0&&K.length>0){const $={stmt:Ot,id:(0,E.I)(),type:"divider",doc:Z(K)};j.push(Z($)),b.doc=j}b.doc.forEach($=>A(b,$,!0))}},P=()=>(A({id:"root"},{id:"root",doc:Dt},!0),{id:"root",doc:Dt}),L=r=>{let b;r.doc?b=r.doc:b=r,E.l.info(b),ft(!0),E.l.info("Extract",b),b.forEach(v=>{switch(v.stmt){case Ot:O(v.id.trim(),v.type,v.doc,v.description,v.note,v.classes,v.styles,v.textStyles);break;case Rt:be(v.state1,v.state2,v.description);break;case N:f(v.id.trim(),v.classes);break;case G:it(v.id.trim(),v.styleClass);break}})},O=function(r,b=et,v=null,j=null,K=null,xt=null,$=null,Lt=null){const tt=r?.trim();Tt.states[tt]===void 0?(E.l.info("Adding state ",tt,j),Tt.states[tt]={id:tt,descriptions:[],type:b,doc:v,note:K,classes:[],styles:[],textStyles:[]}):(Tt.states[tt].doc||(Tt.states[tt].doc=v),Tt.states[tt].type||(Tt.states[tt].type=b)),j&&(E.l.info("Setting state description",tt,j),typeof j=="string"&&Ae(tt,j.trim()),typeof j=="object"&&j.forEach(ee=>Ae(tt,ee.trim()))),K&&(Tt.states[tt].note=K,Tt.states[tt].note.text=E.e.sanitizeText(Tt.states[tt].note.text,(0,E.c)())),xt&&(E.l.info("Setting state classes",tt,xt),(typeof xt=="string"?[xt]:xt).forEach(wt=>it(tt,wt.trim()))),$&&(E.l.info("Setting state styles",tt,$),(typeof $=="string"?[$]:$).forEach(wt=>pt(tt,wt.trim()))),Lt&&(E.l.info("Setting state styles",tt,$),(typeof Lt=="string"?[Lt]:Lt).forEach(wt=>yt(tt,wt.trim())))},ft=function(r){vt={root:re()},Tt=vt.root,lt=0,Ht=kt(),r||(0,E.v)()},rt=function(r){return Tt.states[r]},st=function(){return Tt.states},Bt=function(){E.l.info("Documents = ",vt)},Vt=function(){return Tt.relations};function ie(r=""){let b=r;return r===mt&&(lt++,b=`${Qt}${lt}`),b}function de(r="",b=et){return r===mt?Qt:b}function ne(r=""){let b=r;return r===le&&(lt++,b=`${Zt}${lt}`),b}function z(r="",b=et){return r===le?Zt:b}function Q(r,b,v){let j=ie(r.id.trim()),K=de(r.id.trim(),r.type),xt=ie(b.id.trim()),$=de(b.id.trim(),b.type);O(j,K,r.doc,r.description,r.note,r.classes,r.styles,r.textStyles),O(xt,$,b.doc,b.description,b.note,b.classes,b.styles,b.textStyles),Tt.relations.push({id1:j,id2:xt,relationTitle:E.e.sanitizeText(v,(0,E.c)())})}const be=function(r,b,v){if(typeof r=="object")Q(r,b,v);else{const j=ie(r.trim()),K=de(r),xt=ne(b.trim()),$=z(b);O(j,K),O(xt,$),Tt.relations.push({id1:j,id2:xt,title:E.e.sanitizeText(v,(0,E.c)())})}},Ae=function(r,b){const v=Tt.states[r],j=b.startsWith(":")?b.replace(":","").trim():b;v.descriptions.push(E.e.sanitizeText(j,(0,E.c)()))},ns=function(r){return r.substring(0,1)===":"?r.substr(2).trim():r.trim()},ss=()=>(te++,"divider-id-"+te),f=function(r,b=""){Ht[r]===void 0&&(Ht[r]={id:r,styles:[],textStyles:[]});const v=Ht[r];b?.split(At).forEach(j=>{const K=j.replace(/([^;]*);/,"$1").trim();if(j.match(Mt)){const $=K.replace(ye,q).replace(Mt,ye);v.textStyles.push($)}v.styles.push(K)})},M=function(){return Ht},it=function(r,b){r.split(",").forEach(function(v){let j=rt(v);if(j===void 0){const K=v.trim();O(K),j=rt(K)}j.classes.push(b)})},pt=function(r,b){const v=rt(r);v!==void 0&&v.textStyles.push(b)},yt=function(r,b){const v=rt(r);v!==void 0&&v.textStyles.push(b)},ke={getConfig:()=>(0,E.c)().state,addState:O,clear:ft,getState:rt,getStates:st,getRelations:Vt,getClasses:M,getDirection:()=>bt,addRelation:be,getDividerId:ss,setDirection:r=>{bt=r},cleanupLabel:ns,lineType:he,relationType:J,logDocuments:Bt,getRootDoc:u,setRootDoc:k,getRootDocV2:P,extract:L,trimColon:r=>r&&r[0]===":"?r.substr(1).trim():r.trim(),getAccTitle:E.g,setAccTitle:E.s,getAccDescription:E.a,setAccDescription:E.b,addStyleClass:f,setCssClass:it,addDescription:Ae,setDiagramTitle:E.q,getDiagramTitle:E.t},F=r=>` +defs #statediagram-barbEnd { + fill: ${r.transitionColor}; + stroke: ${r.transitionColor}; + } +g.stateGroup text { + fill: ${r.nodeBorder}; + stroke: none; + font-size: 10px; +} +g.stateGroup text { + fill: ${r.textColor}; + stroke: none; + font-size: 10px; + +} +g.stateGroup .state-title { + font-weight: bolder; + fill: ${r.stateLabelColor}; +} + +g.stateGroup rect { + fill: ${r.mainBkg}; + stroke: ${r.nodeBorder}; +} + +g.stateGroup line { + stroke: ${r.lineColor}; + stroke-width: 1; +} + +.transition { + stroke: ${r.transitionColor}; + stroke-width: 1; + fill: none; +} + +.stateGroup .composit { + fill: ${r.background}; + border-bottom: 1px +} + +.stateGroup .alt-composit { + fill: #e0e0e0; + border-bottom: 1px +} + +.state-note { + stroke: ${r.noteBorderColor}; + fill: ${r.noteBkgColor}; + + text { + fill: ${r.noteTextColor}; + stroke: none; + font-size: 10px; + } +} + +.stateLabel .box { + stroke: none; + stroke-width: 0; + fill: ${r.mainBkg}; + opacity: 0.5; +} + +.edgeLabel .label rect { + fill: ${r.labelBackgroundColor}; + opacity: 0.5; +} +.edgeLabel .label text { + fill: ${r.transitionLabelColor||r.tertiaryTextColor}; +} +.label div .edgeLabel { + color: ${r.transitionLabelColor||r.tertiaryTextColor}; +} + +.stateLabel text { + fill: ${r.stateLabelColor}; + font-size: 10px; + font-weight: bold; +} + +.node circle.state-start { + fill: ${r.specialStateColor}; + stroke: ${r.specialStateColor}; +} + +.node .fork-join { + fill: ${r.specialStateColor}; + stroke: ${r.specialStateColor}; +} + +.node circle.state-end { + fill: ${r.innerEndBackground}; + stroke: ${r.background}; + stroke-width: 1.5 +} +.end-state-inner { + fill: ${r.compositeBackground||r.background}; + // stroke: ${r.background}; + stroke-width: 1.5 +} + +.node rect { + fill: ${r.stateBkg||r.mainBkg}; + stroke: ${r.stateBorder||r.nodeBorder}; + stroke-width: 1px; +} +.node polygon { + fill: ${r.mainBkg}; + stroke: ${r.stateBorder||r.nodeBorder};; + stroke-width: 1px; +} +#statediagram-barbEnd { + fill: ${r.lineColor}; +} + +.statediagram-cluster rect { + fill: ${r.compositeTitleBackground}; + stroke: ${r.stateBorder||r.nodeBorder}; + stroke-width: 1px; +} + +.cluster-label, .nodeLabel { + color: ${r.stateLabelColor}; +} + +.statediagram-cluster rect.outer { + rx: 5px; + ry: 5px; +} +.statediagram-state .divider { + stroke: ${r.stateBorder||r.nodeBorder}; +} + +.statediagram-state .title-state { + rx: 5px; + ry: 5px; +} +.statediagram-cluster.statediagram-cluster .inner { + fill: ${r.compositeBackground||r.background}; +} +.statediagram-cluster.statediagram-cluster-alt .inner { + fill: ${r.altBackground?r.altBackground:"#efefef"}; +} + +.statediagram-cluster .inner { + rx:0; + ry:0; +} + +.statediagram-state rect.basic { + rx: 5px; + ry: 5px; +} +.statediagram-state rect.divider { + stroke-dasharray: 10,10; + fill: ${r.altBackground?r.altBackground:"#efefef"}; +} + +.note-edge { + stroke-dasharray: 5; +} + +.statediagram-note rect { + fill: ${r.noteBkgColor}; + stroke: ${r.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} +.statediagram-note rect { + fill: ${r.noteBkgColor}; + stroke: ${r.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} + +.statediagram-note text { + fill: ${r.noteTextColor}; +} + +.statediagram-note .nodeLabel { + color: ${r.noteTextColor}; +} +.statediagram .edgeLabel { + color: red; // ${r.noteTextColor}; +} + +#dependencyStart, #dependencyEnd { + fill: ${r.lineColor}; + stroke: ${r.lineColor}; + stroke-width: 1; +} + +.statediagramTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${r.textColor}; +} +`}}]); diff --git a/data/gitea/public/assets/js/asciinema-player.4c143977.js b/data/gitea/public/assets/js/asciinema-player.4c143977.js new file mode 100644 index 0000000..910f99e --- /dev/null +++ b/data/gitea/public/assets/js/asciinema-player.4c143977.js @@ -0,0 +1,7 @@ +"use strict";(self.webpackChunk=self.webpackChunk||[]).push([["asciinema-player"],{"./node_modules/asciinema-player/dist/index.js":function(GB,TA,WA){WA.r(TA),WA.d(TA,{create:function(){return wQ}});const EA={};function hB(A){EA.context=A}const fB=(A,g)=>A===g,eA=Symbol("solid-proxy"),ZA=Symbol("solid-track"),jA={equals:fB};let mg=Og;const wA=1,PA=2,pg={owned:null,cleanups:null,context:null,owner:null};var z=null;let uA=null,H=null,X=null,nA=null,cg=0;function yA(A,g){const B=H,I=z,Q=A.length===0,C=Q?pg:{owned:null,cleanups:null,context:null,owner:g===void 0?I:g},e=Q?A:()=>A(()=>VA(()=>gg(C)));z=C,H=null;try{return FA(e,!0)}finally{H=B,z=I}}function BA(A,g){g=g?Object.assign({},jA,g):jA;const B={value:A,observers:null,observerSlots:null,comparator:g.equals||void 0},I=Q=>(typeof Q=="function"&&(Q=Q(B.value)),bg(B,Q));return[Kg.bind(B),I]}function IA(A,g,B){const I=lg(A,g,!1,wA);UA(I)}function uB(A,g,B){mg=NB;const I=lg(A,g,!1,wA);I.user=!0,nA?nA.push(I):UA(I)}function _(A,g,B){B=B?Object.assign({},jA,B):jA;const I=lg(A,g,!0,0);return I.observers=null,I.observerSlots=null,I.comparator=B.equals||void 0,UA(I),Kg.bind(I)}function iA(A){return FA(A,!1)}function VA(A){if(H===null)return A();const g=H;H=null;try{return A()}finally{H=g}}function dB(A){uB(()=>VA(A))}function $A(A){return z===null||(z.cleanups===null?z.cleanups=[A]:z.cleanups.push(A)),A}function Hg(){return H}function yB(A){const g=_(A),B=_(()=>Dg(g()));return B.toArray=()=>{const I=B();return Array.isArray(I)?I:I!=null?[I]:[]},B}function Kg(){const A=uA;if(this.sources&&(this.state||A))if(this.state===wA||A)UA(this);else{const g=X;X=null,FA(()=>Ag(this),!1),X=g}if(H){const g=this.observers?this.observers.length:0;H.sources?(H.sources.push(this),H.sourceSlots.push(g)):(H.sources=[this],H.sourceSlots=[g]),this.observers?(this.observers.push(H),this.observerSlots.push(H.sources.length-1)):(this.observers=[H],this.observerSlots=[H.sources.length-1])}return this.value}function bg(A,g,B){let I=A.value;return(!A.comparator||!A.comparator(I,g))&&(A.value=g,A.observers&&A.observers.length&&FA(()=>{for(let Q=0;Q1e6)throw X=[],new Error},!1)),g}function UA(A){if(!A.fn)return;gg(A);const g=z,B=H,I=cg;H=z=A,FB(A,A.value,I),H=B,z=g}function FB(A,g,B){let I;try{I=A.fn(g)}catch(Q){A.pure&&(A.state=wA,A.owned&&A.owned.forEach(gg),A.owned=null),zg(Q)}(!A.updatedAt||A.updatedAt<=B)&&(A.updatedAt!=null&&"observers"in A?bg(A,I):A.value=I,A.updatedAt=B)}function lg(A,g,B,I=wA,Q){const C={fn:A,state:I,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:g,owner:z,context:null,pure:B};return z===null||z!==pg&&(z.owned?z.owned.push(C):z.owned=[C]),C}function _A(A){const g=uA;if(A.state===0||g)return;if(A.state===PA||g)return Ag(A);if(A.suspense&&VA(A.suspense.inFallback))return A.suspense.effects.push(A);const B=[A];for(;(A=A.owner)&&(!A.updatedAt||A.updatedAt=0;I--)if(A=B[I],A.state===wA||g)UA(A);else if(A.state===PA||g){const Q=X;X=null,FA(()=>Ag(A,B[0]),!1),X=Q}}function FA(A,g){if(X)return A();let B=!1;g||(X=[]),nA?B=!0:nA=[],cg++;try{const I=A();return YB(B),I}catch(I){B||(nA=null),X=null,zg(I)}}function YB(A){if(X&&(Og(X),X=null),A)return;const g=nA;nA=null,g.length&&FA(()=>mg(g),!1)}function Og(A){for(let g=0;g1?[]:null;return $A(()=>Bg(C)),()=>{let i=A()||[],t,s;return i[ZA],VA(()=>{let o=i.length,V,c,G,D,u,r,F,N,R;if(o===0)e!==0&&(Bg(C),C=[],I=[],Q=[],e=0,E&&(E=[])),B.fallback&&(I=[wg],Q[0]=yA(b=>(C[0]=b,B.fallback())),e=1);else if(e===0){for(Q=new Array(o),s=0;s=r&&N>=r&&I[F]===i[N];F--,N--)G[N]=Q[F],D[N]=C[F],E&&(u[N]=E[F]);for(V=new Map,c=new Array(N+1),s=N;s>=r;s--)R=i[s],t=V.get(R),c[s]=t===void 0?-1:t,V.set(R,s);for(t=r;t<=F;t++)R=I[t],s=V.get(R),s!==void 0&&s!==-1?(G[s]=Q[t],D[s]=C[t],E&&(u[s]=E[t]),s=c[s],V.set(R,s)):C[t]();for(s=r;sBg(C)),()=>{const t=A()||[];return t[ZA],VA(()=>{if(t.length===0)return E!==0&&(Bg(C),C=[],I=[],Q=[],E=0,e=[]),B.fallback&&(I=[wg],Q[0]=yA(n=>(C[0]=n,B.fallback())),E=1),Q;for(I[0]===wg&&(C[0](),C=[],I=[],Q=[],E=0),i=0;it[i]):i>=I.length&&(Q[i]=yA(s));for(;iA(g||{}))}function Ig(){return!0}const MB={get(A,g,B){return g===eA?B:A.get(g)},has(A,g){return g===eA?!0:A.has(g)},set:Ig,deleteProperty:Ig,getOwnPropertyDescriptor(A,g){return{configurable:!0,enumerable:!0,get(){return A.get(g)},set:Ig,deleteProperty:Ig}},ownKeys(A){return A.keys()}};function Gg(A){return(A=typeof A=="function"?A():A)?A:{}}function UB(...A){let g=!1;for(let I=0;I=0;Q--){const C=Gg(A[Q])[I];if(C!==void 0)return C}},has(I){for(let Q=A.length-1;Q>=0;Q--)if(I in Gg(A[Q]))return!0;return!1},keys(){const I=[];for(let Q=0;Q=0;I--)if(A[I]){const Q=Object.getOwnPropertyDescriptors(A[I]);for(const C in Q)C in B||Object.defineProperty(B,C,{enumerable:!0,get(){for(let e=A.length-1;e>=0;e--){const E=(A[e]||{})[C];if(E!==void 0)return E}}})}return B}function Xg(A){const g="fallback"in A&&{fallback:()=>A.fallback};return _(RB(()=>A.each,A.children,g||void 0))}function JB(A){const g="fallback"in A&&{fallback:()=>A.fallback};return _(qB(()=>A.each,A.children,g||void 0))}function hg(A){let g=!1;const B=A.keyed,I=_(()=>A.when,void 0,{equals:(Q,C)=>g?Q===C:!Q==!C});return _(()=>{const Q=I();if(Q){const C=A.children,e=typeof C=="function"&&C.length>0;return g=B||e,e?VA(()=>C(Q)):C}return A.fallback},void 0,void 0)}function vg(A){let g=!1,B=!1;const I=(e,E)=>e[0]===E[0]&&(g?e[1]===E[1]:!e[1]==!E[1])&&e[2]===E[2],Q=yB(()=>A.children),C=_(()=>{let e=Q();Array.isArray(e)||(e=[e]);for(let E=0;E{const[e,E,i]=C();if(e<0)return A.fallback;const t=i.children,s=typeof t=="function"&&t.length>0;return g=B||s,s?VA(()=>t(E)):t},void 0,void 0)}function YA(A){return A}function SB(A,g,B){let I=B.length,Q=g.length,C=I,e=0,E=0,i=g[Q-1].nextSibling,t=null;for(;es-E){const c=g[e];for(;E{Q=C,g===document?A():T(g,A(),g.firstChild?null:void 0,B)},I.owner),()=>{Q(),g.textContent=""}}function j(A,g,B){const I=document.createElement("template");I.innerHTML=A;let Q=I.content.firstChild;return B&&(Q=Q.firstChild),Q}function fg(A,g=window.document){const B=g[Tg]||(g[Tg]=new Set);for(let I=0,Q=A.length;IQ.call(A,B[1],C))}else A.addEventListener(g,B)}function SA(A,g,B){if(!g)return B?LB(A,"style"):g;const I=A.style;if(typeof g=="string")return I.cssText=g;typeof B=="string"&&(I.cssText=B=void 0),B||(B={}),g||(g={});let Q,C;for(C in B)g[C]==null&&I.removeProperty(C),delete B[C];for(C in g)Q=g[C],Q!==B[C]&&(I.setProperty(C,Q),B[C]=Q);return B}function Qg(A,g,B){return VA(()=>A(g,B))}function T(A,g,B,I){if(B!==void 0&&!I&&(I=[]),typeof g!="function")return Cg(A,g,I,B);IA(Q=>Cg(A,g(),Q,B),I)}function mB(A){const g=`$$${A.type}`;let B=A.composedPath&&A.composedPath()[0]||A.target;for(A.target!==B&&Object.defineProperty(A,"target",{configurable:!0,value:B}),Object.defineProperty(A,"currentTarget",{configurable:!0,get(){return B||document}}),EA.registry&&!EA.done&&(EA.done=!0,document.querySelectorAll("[id^=pl-]").forEach(I=>{for(;I&&I.nodeType!==8&&I.nodeValue!=="pl-"+A;){let Q=I.nextSibling;I.remove(),I=Q}I&&I.remove()}));B;){const I=B[g];if(I&&!B.disabled){const Q=B[`${g}Data`];if(Q!==void 0?I.call(B,Q,A):I.call(B,A),A.cancelBubble)return}B=B._$host||B.parentNode||B.host}}function Cg(A,g,B,I,Q){for(EA.context&&!B&&(B=[...A.childNodes]);typeof B=="function";)B=B();if(g===B)return B;const C=typeof g,e=I!==void 0;if(A=e&&B[0]&&B[0].parentNode||A,C==="string"||C==="number"){if(EA.context)return B;if(C==="number"&&(g=g.toString()),e){let E=B[0];E&&E.nodeType===3?E.data=g:E=document.createTextNode(g),B=NA(A,B,I,E)}else B!==""&&typeof B=="string"?B=A.firstChild.data=g:B=A.textContent=g}else if(g==null||C==="boolean"){if(EA.context)return B;B=NA(A,B,I)}else{if(C==="function")return IA(()=>{let E=g();for(;typeof E=="function";)E=E();B=Cg(A,E,B,I)}),()=>B;if(Array.isArray(g)){const E=[],i=B&&Array.isArray(B);if(ug(E,g,B,Q))return IA(()=>B=Cg(A,E,B,I,!0)),()=>B;if(EA.context){if(!E.length)return B;for(let t=0;t=0;e--){const E=g[e];if(Q!==E){const i=E.parentNode===A;!C&&!e?i?A.replaceChild(Q,E):A.insertBefore(Q,B):i&&E.remove()}else C=!0}}else A.insertBefore(Q,B);return[Q]}let S;const rA=new Array(128).fill(void 0);rA.push(void 0,null,!0,!1);function aA(A){return rA[A]}let LA=rA.length;function pB(A){A<132||(rA[A]=LA,LA=A)}function dA(A){const g=aA(A);return pB(A),g}const Pg=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});Pg.decode();let mA=null;function Eg(){return(mA===null||mA.byteLength===0)&&(mA=new Uint8Array(S.memory.buffer)),mA}function eg(A,g){return Pg.decode(Eg().subarray(A,A+g))}function cA(A){LA===rA.length&&rA.push(rA.length+1);const g=LA;return LA=rA[g],rA[g]=A,g}function dg(A){const g=typeof A;if(g=="number"||g=="boolean"||A==null)return`${A}`;if(g=="string")return`"${A}"`;if(g=="symbol"){const Q=A.description;return Q==null?"Symbol":`Symbol(${Q})`}if(g=="function"){const Q=A.name;return typeof Q=="string"&&Q.length>0?`Function(${Q})`:"Function"}if(Array.isArray(A)){const Q=A.length;let C="[";Q>0&&(C+=dg(A[0]));for(let e=1;e1)I=B[1];else return toString.call(A);if(I=="Object")try{return"Object("+JSON.stringify(A)+")"}catch{return"Object"}return A instanceof Error?`${A.name}: ${A.message} +${A.stack}`:I}let ig=0;const tg=new TextEncoder("utf-8"),HB=typeof tg.encodeInto=="function"?function(A,g){return tg.encodeInto(A,g)}:function(A,g){const B=tg.encode(A);return g.set(B),{read:A.length,written:B.length}};function $g(A,g,B){if(B===void 0){const E=tg.encode(A),i=g(E.length);return Eg().subarray(i,i+E.length).set(E),ig=E.length,i}let I=A.length,Q=g(I);const C=Eg();let e=0;for(;e127)break;C[Q+e]=E}if(e!==I){e!==0&&(A=A.slice(e)),Q=B(Q,I,I=e+A.length*3);const E=Eg().subarray(Q+e,Q+I),i=HB(A,E);e+=i.written}return ig=e,Q}let pA=null;function kA(){return(pA===null||pA.byteLength===0)&&(pA=new Int32Array(S.memory.buffer)),pA}function KB(A,g,B,I){const Q=S.create(A,g,B,I);return sg.__wrap(Q)}let HA=null;function bB(){return(HA===null||HA.byteLength===0)&&(HA=new Uint32Array(S.memory.buffer)),HA}function OB(A,g){return bB().subarray(A/4,A/4+g)}class sg{static __wrap(g){const B=Object.create(sg.prototype);return B.ptr=g,B}__destroy_into_raw(){const g=this.ptr;return this.ptr=0,g}free(){const g=this.__destroy_into_raw();S.__wbg_vtwrapper_free(g)}feed(g){const B=$g(g,S.__wbindgen_malloc,S.__wbindgen_realloc),I=ig,Q=S.vtwrapper_feed(this.ptr,B,I);return dA(Q)}inspect(){try{const I=S.__wbindgen_add_to_stack_pointer(-16);S.vtwrapper_inspect(I,this.ptr);var g=kA()[I/4+0],B=kA()[I/4+1];return eg(g,B)}finally{S.__wbindgen_add_to_stack_pointer(16),S.__wbindgen_free(g,B)}}get_size(){try{const Q=S.__wbindgen_add_to_stack_pointer(-16);S.vtwrapper_get_size(Q,this.ptr);var g=kA()[Q/4+0],B=kA()[Q/4+1],I=OB(g,B).slice();return S.__wbindgen_free(g,B*4),I}finally{S.__wbindgen_add_to_stack_pointer(16)}}get_line(g){const B=S.vtwrapper_get_line(this.ptr,g);return dA(B)}get_cursor(){const g=S.vtwrapper_get_cursor(this.ptr);return dA(g)}}async function xB(A,g){if(typeof Response=="function"&&A instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(A,g)}catch(I){if(A.headers.get("Content-Type")!="application/wasm")console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",I);else throw I}const B=await A.arrayBuffer();return await WebAssembly.instantiate(B,g)}else{const B=await WebAssembly.instantiate(A,g);return B instanceof WebAssembly.Instance?{instance:B,module:A}:B}}function _g(){const A={};return A.wbg={},A.wbg.__wbindgen_object_drop_ref=function(g){dA(g)},A.wbg.__wbindgen_error_new=function(g,B){const I=new Error(eg(g,B));return cA(I)},A.wbg.__wbindgen_object_clone_ref=function(g){const B=aA(g);return cA(B)},A.wbg.__wbindgen_number_new=function(g){return cA(g)},A.wbg.__wbindgen_bigint_from_u64=function(g){const B=BigInt.asUintN(64,g);return cA(B)},A.wbg.__wbindgen_string_new=function(g,B){const I=eg(g,B);return cA(I)},A.wbg.__wbg_set_20cbc34131e76824=function(g,B,I){aA(g)[dA(B)]=dA(I)},A.wbg.__wbg_new_b525de17f44a8943=function(){const g=new Array;return cA(g)},A.wbg.__wbg_new_f841cc6f2098f4b5=function(){return cA(new Map)},A.wbg.__wbg_new_f9876326328f45ed=function(){const g=new Object;return cA(g)},A.wbg.__wbindgen_is_string=function(g){return typeof aA(g)=="string"},A.wbg.__wbg_set_17224bc548dd1d7b=function(g,B,I){aA(g)[B>>>0]=dA(I)},A.wbg.__wbg_set_388c4c6422704173=function(g,B,I){const Q=aA(g).set(aA(B),aA(I));return cA(Q)},A.wbg.__wbindgen_debug_string=function(g,B){const I=dg(aA(B)),Q=$g(I,S.__wbindgen_malloc,S.__wbindgen_realloc),C=ig;kA()[g/4+1]=C,kA()[g/4+0]=Q},A.wbg.__wbindgen_throw=function(g,B){throw new Error(eg(g,B))},A}function AB(A,g){return S=A.exports,yg.__wbindgen_wasm_module=g,pA=null,HA=null,mA=null,S}function zB(A){const g=_g();A instanceof WebAssembly.Module||(A=new WebAssembly.Module(A));const B=new WebAssembly.Instance(A,g);return AB(B,A)}async function yg(A){const g=_g();(typeof A=="string"||typeof Request=="function"&&A instanceof Request||typeof URL=="function"&&A instanceof URL)&&(A=fetch(A));const{instance:B,module:I}=await xB(await A,g);return AB(B,I)}var XB=Object.freeze({__proto__:null,VtWrapper:sg,create:KB,default:yg,initSync:zB});const vB=[62,0,0,0,63,52,53,54,55,56,57,58,59,60,61,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,0,0,0,0,0,0,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51];function og(A){return vB[A-43]}function TB(A){let g=A.endsWith("==")?2:A.endsWith("=")?1:0,B=A.length,I=new Uint8Array(3*(B/4)),Q;for(let C=0,e=0;C>16,I[e+1]=Q>>8&255,I[e+2]=Q&255;return I.subarray(0,I.length-g)}const WB=TB("AGFzbQEAAAAB9wEdYAJ/fwF/YAN/f38Bf2ACf38AYAN/f38AYAF/AGAEf39/fwBgAX8Bf2AFf39/f38AYAV/f39/fwF/YAABf2AGf39/f39/AGAAAGAEf39/fwF/YAF8AX9gAX4Bf2AHf39/f39/fwF/YAJ+fwF/YBV/f39/f39/f39/f39/f39/f39/f38Bf2AOf39/f39/f39/f39/f38Bf2APf39/f39/f39/f39/f39/AX9gC39/f39/f39/f39/AX9gA39/fgBgBn9/f39/fwF/YAV/f35/fwBgBH9+f38AYAV/f31/fwBgBH99f38AYAV/f3x/fwBgBH98f38AAs4DDwN3YmcaX193YmluZGdlbl9vYmplY3RfZHJvcF9yZWYABAN3YmcUX193YmluZGdlbl9lcnJvcl9uZXcAAAN3YmcbX193YmluZGdlbl9vYmplY3RfY2xvbmVfcmVmAAYDd2JnFV9fd2JpbmRnZW5fbnVtYmVyX25ldwANA3diZxpfX3diaW5kZ2VuX2JpZ2ludF9mcm9tX3U2NAAOA3diZxVfX3diaW5kZ2VuX3N0cmluZ19uZXcAAAN3YmcaX193Ymdfc2V0XzIwY2JjMzQxMzFlNzY4MjQAAwN3YmcaX193YmdfbmV3X2I1MjVkZTE3ZjQ0YTg5NDMACQN3YmcaX193YmdfbmV3X2Y4NDFjYzZmMjA5OGY0YjUACQN3YmcaX193YmdfbmV3X2Y5ODc2MzI2MzI4ZjQ1ZWQACQN3YmcUX193YmluZGdlbl9pc19zdHJpbmcABgN3YmcaX193Ymdfc2V0XzE3MjI0YmM1NDhkZDFkN2IAAwN3YmcaX193Ymdfc2V0XzM4OGM0YzY0MjI3MDQxNzMAAQN3YmcXX193YmluZGdlbl9kZWJ1Z19zdHJpbmcAAgN3YmcQX193YmluZGdlbl90aHJvdwACA+UB4wEGAgEAAwgEAQIBAAICAAIPAggHABACAAIKAAMBAAIKBAIRAwUIChIEBQMDEwkFBQIUAgUAAAAAFQQFBAECAwQHAwcCAgUCBAUCAwMDAwIHAgAAAgQDAAwCBQUABAYABwADAwAAAwsAAAACAgIDAwEACgQFBgMCAgAAAQIBAwAACAAAAAsCAAAABgAAAAAAAAQCAgMCARYAAAAHFxkbCAQABQQAAAEEAwIGBAAEAAAAAAwFAgAEAQEAAAAAAAIDAgICAgABAwMGAAAAAAYEBAAAAAAAAgsLAAAAAAAAAQADAQEABAQFAXABd3cFAwEAEQYJAX8BQYCAwAALB/IBDAZtZW1vcnkCABRfX3diZ192dHdyYXBwZXJfZnJlZQBiBmNyZWF0ZQBlDnZ0d3JhcHBlcl9mZWVkAEoRdnR3cmFwcGVyX2luc3BlY3QAQBJ2dHdyYXBwZXJfZ2V0X3NpemUAXhJ2dHdyYXBwZXJfZ2V0X2xpbmUAfhR2dHdyYXBwZXJfZ2V0X2N1cnNvcgCCARFfX3diaW5kZ2VuX21hbGxvYwCXARJfX3diaW5kZ2VuX3JlYWxsb2MAowEfX193YmluZGdlbl9hZGRfdG9fc3RhY2tfcG9pbnRlcgDaAQ9fX3diaW5kZ2VuX2ZyZWUAwQEJ3QEBAEEBC3aMAbQBcfEBGboBmQG8AfEBpQHbAZgBlgHdAfEBdqYB8QGRAbsB3AHHAZUBdeABwwFfsgFybN4B2wGaAfABYNsBmwGQAWSUAb4B2AHbAdIBK+UB8QHfAfEBJWnbAcgBbr0B8QGHAY8BrgHhAY0B8QF3pwHZAfEBnQG3AbMBrwGoAagBqAF/qQGsAaoBrAGrAaQBygGwAcUBKNcBYbABiAEi5gHPAfEBzQGJAdABrQEvS/EBzgGwAYoB6QHnAfEB6AHWAbkBxgHRAcIB8QHOAfEB7AEYhgHqAQqc/QPjAcUkAgl/AX4jAEEQayIJJAACQAJAAkACQAJAAkACQCAAQfUBTwRAIABBzf97Tw0HIABBC2oiAEF4cSEFQZyBwQAoAgAiB0UNBEEAIAVrIQICf0EAIAVBgAJJDQAaQR8gBUH///8HSw0AGiAFQQYgAEEIdmciAGt2QQFxIABBAXRrQT5qCyIIQQJ0QYD+wABqKAIAIgFFBEBBACEADAILQQAhACAFQQBBGSAIQQF2ayAIQR9GG3QhBANAAkAgASgCBEF4cSIGIAVJDQAgBiAFayIGIAJPDQAgASEDIAYiAg0AQQAhAiABIQAMBAsgAUEUaigCACIGIAAgBiABIARBHXZBBHFqQRBqKAIAIgFHGyAAIAYbIQAgBEEBdCEEIAENAAsMAQtBmIHBACgCACIDQRAgAEELakF4cSAAQQtJGyIFQQN2IgR2IgFBA3EEQAJAIAFBf3NBAXEgBGoiBEEDdCIAQZD/wABqIgEgAEGY/8AAaigCACIGKAIIIgBHBEAgACABNgIMIAEgADYCCAwBC0GYgcEAIANBfiAEd3E2AgALIAZBCGohAiAGIARBA3QiAEEDcjYCBCAAIAZqIgAgACgCBEEBcjYCBAwHCyAFQaCBwQAoAgBNDQMCQAJAIAFFBEBBnIHBACgCACIARQ0GIABoQQJ0QYD+wABqKAIAIgEoAgRBeHEgBWshAiABIQMDQAJAIAEoAhAiAA0AIAFBFGooAgAiAA0AIAMoAhghBwJAAkAgAyADKAIMIgBGBEAgA0EUQRAgA0EUaiIEKAIAIgAbaigCACIBDQFBACEADAILIAMoAggiASAANgIMIAAgATYCCAwBCyAEIANBEGogABshBANAIAQhBiABIgBBFGoiASgCACEIIAEgAEEQaiAIGyEEIABBFEEQIAgbaigCACIBDQALIAZBADYCAAsgB0UNBCADIAMoAhxBAnRBgP7AAGoiASgCAEcEQCAHQRBBFCAHKAIQIANGG2ogADYCACAARQ0FDAQLIAEgADYCACAADQNBnIHBAEGcgcEAKAIAQX4gAygCHHdxNgIADAQLIAAoAgRBeHEgBWsiASACSSEEIAEgAiAEGyECIAAgAyAEGyEDIAAhAQwACwALAkBBAiAEdCIAQQAgAGtyIAEgBHRxaCIEQQN0IgBBkP/AAGoiASAAQZj/wABqKAIAIgIoAggiAEcEQCAAIAE2AgwgASAANgIIDAELQZiBwQAgA0F+IAR3cTYCAAsgAiAFQQNyNgIEIAIgBWoiAyAEQQN0IgAgBWsiBkEBcjYCBCAAIAJqIAY2AgBBoIHBACgCACIABEAgAEF4cUGQ/8AAaiEBQaiBwQAoAgAhCAJ/QZiBwQAoAgAiBEEBIABBA3Z0IgBxRQRAQZiBwQAgACAEcjYCACABDAELIAEoAggLIQAgASAINgIIIAAgCDYCDCAIIAE2AgwgCCAANgIICyACQQhqIQJBqIHBACADNgIAQaCBwQAgBjYCAAwICyAAIAc2AhggAygCECIBBEAgACABNgIQIAEgADYCGAsgA0EUaigCACIBRQ0AIABBFGogATYCACABIAA2AhgLAkACQCACQRBPBEAgAyAFQQNyNgIEIAMgBWoiBiACQQFyNgIEIAIgBmogAjYCAEGggcEAKAIAIgBFDQEgAEF4cUGQ/8AAaiEBQaiBwQAoAgAhCAJ/QZiBwQAoAgAiBEEBIABBA3Z0IgBxRQRAQZiBwQAgACAEcjYCACABDAELIAEoAggLIQAgASAINgIIIAAgCDYCDCAIIAE2AgwgCCAANgIIDAELIAMgAiAFaiIAQQNyNgIEIAAgA2oiACAAKAIEQQFyNgIEDAELQaiBwQAgBjYCAEGggcEAIAI2AgALIANBCGohAgwGCyAAIANyRQRAQQAhA0ECIAh0IgBBACAAa3IgB3EiAEUNAyAAaEECdEGA/sAAaigCACEACyAARQ0BCwNAIAMgACADIAAoAgRBeHEiASAFayIGIAJJIgQbIAEgBUkiARshAyACIAYgAiAEGyABGyECIAAoAhAiAQR/IAEFIABBFGooAgALIgANAAsLIANFDQBBoIHBACgCACIAIAVPIAIgACAFa09xDQAgAygCGCEHAkACQCADIAMoAgwiAEYEQCADQRRBECADQRRqIgQoAgAiABtqKAIAIgENAUEAIQAMAgsgAygCCCIBIAA2AgwgACABNgIIDAELIAQgA0EQaiAAGyEEA0AgBCEGIAEiAEEUaiIBKAIAIQggASAAQRBqIAgbIQQgAEEUQRAgCBtqKAIAIgENAAsgBkEANgIACyAHRQ0CIAMgAygCHEECdEGA/sAAaiIBKAIARwRAIAdBEEEUIAcoAhAgA0YbaiAANgIAIABFDQMMAgsgASAANgIAIAANAUGcgcEAQZyBwQAoAgBBfiADKAIcd3E2AgAMAgsCQAJAAkACQAJAQaCBwQAoAgAiBCAFSQRAQaSBwQAoAgAiACAFTQRAIAVBr4AEakGAgHxxIgBBEHZAACEEIAlBBGoiAUEANgIIIAFBACAAQYCAfHEgBEF/RiIAGzYCBCABQQAgBEEQdCAAGzYCACAJKAIEIgdFBEBBACECDAoLIAkoAgwhBkGwgcEAIAkoAggiCEGwgcEAKAIAaiIBNgIAQbSBwQBBtIHBACgCACIAIAEgACABSxs2AgACQAJAQayBwQAoAgAiAgRAQYD/wAAhAANAIAcgACgCACIBIAAoAgQiBGpGDQIgACgCCCIADQALDAILQbyBwQAoAgAiAEEARyAAIAdNcUUEQEG8gcEAIAc2AgALQcCBwQBB/x82AgBBjP/AACAGNgIAQYT/wAAgCDYCAEGA/8AAIAc2AgBBnP/AAEGQ/8AANgIAQaT/wABBmP/AADYCAEGY/8AAQZD/wAA2AgBBrP/AAEGg/8AANgIAQaD/wABBmP/AADYCAEG0/8AAQaj/wAA2AgBBqP/AAEGg/8AANgIAQbz/wABBsP/AADYCAEGw/8AAQaj/wAA2AgBBxP/AAEG4/8AANgIAQbj/wABBsP/AADYCAEHM/8AAQcD/wAA2AgBBwP/AAEG4/8AANgIAQdT/wABByP/AADYCAEHI/8AAQcD/wAA2AgBB3P/AAEHQ/8AANgIAQdD/wABByP/AADYCAEHY/8AAQdD/wAA2AgBB5P/AAEHY/8AANgIAQeD/wABB2P/AADYCAEHs/8AAQeD/wAA2AgBB6P/AAEHg/8AANgIAQfT/wABB6P/AADYCAEHw/8AAQej/wAA2AgBB/P/AAEHw/8AANgIAQfj/wABB8P/AADYCAEGEgMEAQfj/wAA2AgBBgIDBAEH4/8AANgIAQYyAwQBBgIDBADYCAEGIgMEAQYCAwQA2AgBBlIDBAEGIgMEANgIAQZCAwQBBiIDBADYCAEGcgMEAQZCAwQA2AgBBpIDBAEGYgMEANgIAQZiAwQBBkIDBADYCAEGsgMEAQaCAwQA2AgBBoIDBAEGYgMEANgIAQbSAwQBBqIDBADYCAEGogMEAQaCAwQA2AgBBvIDBAEGwgMEANgIAQbCAwQBBqIDBADYCAEHEgMEAQbiAwQA2AgBBuIDBAEGwgMEANgIAQcyAwQBBwIDBADYCAEHAgMEAQbiAwQA2AgBB1IDBAEHIgMEANgIAQciAwQBBwIDBADYCAEHcgMEAQdCAwQA2AgBB0IDBAEHIgMEANgIAQeSAwQBB2IDBADYCAEHYgMEAQdCAwQA2AgBB7IDBAEHggMEANgIAQeCAwQBB2IDBADYCAEH0gMEAQeiAwQA2AgBB6IDBAEHggMEANgIAQfyAwQBB8IDBADYCAEHwgMEAQeiAwQA2AgBBhIHBAEH4gMEANgIAQfiAwQBB8IDBADYCAEGMgcEAQYCBwQA2AgBBgIHBAEH4gMEANgIAQZSBwQBBiIHBADYCAEGIgcEAQYCBwQA2AgBBrIHBACAHQQ9qQXhxIgBBCGsiBDYCAEGQgcEAQYiBwQA2AgBBpIHBACAIQShrIgEgByAAa2pBCGoiADYCACAEIABBAXI2AgQgASAHakEoNgIEQbiBwQBBgICAATYCAAwICyACIAdPDQAgASACSw0AIAAoAgwiAUEBcQ0AIAFBAXYgBkYNAwtBvIHBAEG8gcEAKAIAIgAgByAAIAdJGzYCACAHIAhqIQRBgP/AACEAAkACQANAIAQgACgCAEcEQCAAKAIIIgANAQwCCwsgACgCDCIBQQFxDQAgAUEBdiAGRg0BC0GA/8AAIQADQAJAIAAoAgAiASACTQRAIAEgACgCBGoiAyACSw0BCyAAKAIIIQAMAQsLQayBwQAgB0EPakF4cSIAQQhrIgQ2AgBBpIHBACAIQShrIgEgByAAa2pBCGoiADYCACAEIABBAXI2AgQgASAHakEoNgIEQbiBwQBBgICAATYCACACIANBIGtBeHFBCGsiACAAIAJBEGpJGyIBQRs2AgRBgP/AACkCACEKIAFBEGpBiP/AACkCADcCACABIAo3AghBjP/AACAGNgIAQYT/wAAgCDYCAEGA/8AAIAc2AgBBiP/AACABQQhqNgIAIAFBHGohAANAIABBBzYCACADIABBBGoiAEsNAAsgASACRg0HIAEgASgCBEF+cTYCBCACIAEgAmsiAEEBcjYCBCABIAA2AgAgAEGAAk8EQCACIAAQJAwICyAAQXhxQZD/wABqIQECf0GYgcEAKAIAIgRBASAAQQN2dCIAcUUEQEGYgcEAIAAgBHI2AgAgAQwBCyABKAIICyEAIAEgAjYCCCAAIAI2AgwgAiABNgIMIAIgADYCCAwHCyAAIAc2AgAgACAAKAIEIAhqNgIEIAdBD2pBeHFBCGsiAyAFQQNyNgIEIARBD2pBeHFBCGsiAiADIAVqIgZrIQUgAkGsgcEAKAIARg0DIAJBqIHBACgCAEYNBCACKAIEIgFBA3FBAUYEQCACIAFBeHEiABAfIAAgBWohBSAAIAJqIgIoAgQhAQsgAiABQX5xNgIEIAYgBUEBcjYCBCAFIAZqIAU2AgAgBUGAAk8EQCAGIAUQJAwGCyAFQXhxQZD/wABqIQECf0GYgcEAKAIAIgRBASAFQQN2dCIAcUUEQEGYgcEAIAAgBHI2AgAgAQwBCyABKAIICyEAIAEgBjYCCCAAIAY2AgwgBiABNgIMIAYgADYCCAwFC0GkgcEAIAAgBWsiATYCAEGsgcEAQayBwQAoAgAiBCAFaiIANgIAIAAgAUEBcjYCBCAEIAVBA3I2AgQgBEEIaiECDAgLQaiBwQAoAgAhAwJAIAQgBWsiAUEPTQRAQaiBwQBBADYCAEGggcEAQQA2AgAgAyAEQQNyNgIEIAMgBGoiACAAKAIEQQFyNgIEDAELQaCBwQAgATYCAEGogcEAIAMgBWoiADYCACAAIAFBAXI2AgQgAyAEaiABNgIAIAMgBUEDcjYCBAsgA0EIaiECDAcLIAAgBCAIajYCBEGsgcEAQayBwQAoAgAiA0EPakF4cSIAQQhrIgQ2AgBBpIHBAEGkgcEAKAIAIAhqIgEgAyAAa2pBCGoiADYCACAEIABBAXI2AgQgASADakEoNgIEQbiBwQBBgICAATYCAAwDC0GsgcEAIAY2AgBBpIHBAEGkgcEAKAIAIAVqIgA2AgAgBiAAQQFyNgIEDAELQaiBwQAgBjYCAEGggcEAQaCBwQAoAgAgBWoiADYCACAGIABBAXI2AgQgACAGaiAANgIACyADQQhqIQIMAwtBACECQaSBwQAoAgAiACAFTQ0CQaSBwQAgACAFayIBNgIAQayBwQBBrIHBACgCACIEIAVqIgA2AgAgACABQQFyNgIEIAQgBUEDcjYCBCAEQQhqIQIMAgsgACAHNgIYIAMoAhAiAQRAIAAgATYCECABIAA2AhgLIANBFGooAgAiAUUNACAAQRRqIAE2AgAgASAANgIYCwJAIAJBEE8EQCADIAVBA3I2AgQgAyAFaiIGIAJBAXI2AgQgAiAGaiACNgIAIAJBgAJPBEAgBiACECQMAgsgAkF4cUGQ/8AAaiEBAn9BmIHBACgCACIEQQEgAkEDdnQiAHFFBEBBmIHBACAAIARyNgIAIAEMAQsgASgCCAshACABIAY2AgggACAGNgIMIAYgATYCDCAGIAA2AggMAQsgAyACIAVqIgBBA3I2AgQgACADaiIAIAAoAgRBAXI2AgQLIANBCGohAgsgCUEQaiQAIAIL/wwCCn8DfiMAQTBrIgQkACABKQIgIQwgAUGAgICAeDYCICAEQRBqIgNBGGoiAiABQThqKQIANwMAIANBEGoiByABQTBqKQIANwMAIANBCGoiAyABQShqKQIANwMAIAQgDDcDEAJAAkAgDKdBgICAgHhHBEAgACAEKQMQNwIAIABBGGogAikDADcCACAAQRBqIAcpAwA3AgAgAEEIaiADKQMANwIADAELIARBEGoQuAEgASgCQCICIAFBxABqKAIARwRAIAFBIGohCyABQRRqIQcDQCABIAJBEGo2AkACQAJAAkAgAigCACIDQf8ATwRAIANBnwFLBH8gA0EGdkH/AHEgA0ENdkHwqcAAai0AAEEHdHIiCUH/EksNAiADQQJ2QQ9xIAlB8KvAAGotAABBBHRyIglBsB5PDQNBASAJQfC+wABqLQAAIANBAXRBBnF2QQNxIgMgA0EDRhsFQQALIQMMAwsgA0EfSyEDDAILIAlBgBNBlKfAABBZAAsgCUGwHkGkp8AAEFkACyABIAEoAkgiCSADajYCSAJAAkACQAJAAkACQAJAAkAgA0EBSw0AIAIoAgAiBUH8//8AcUGwwQNGDQAgBUHg//8AcUGAywBGDQAgBUGA//8AcUGAygBGDQAgBUGA/v8AcUGA0ABGDQAgASgCACIKQYCAgIB4Rg0BIActAAAhBiACLQAEIghBAkYNAyAGQQJGDQMgBiAIRw0GIAgNAiACQQVqLQAAIAEtABVHDQYMBAtBrf3AAC0AABpBBEEEEMkBIgdFDQogByACKAIANgIAIARBCGoiBSACQQxqLwEAOwEAIAQgAikCBDcDACAEQRBqIgJBGGoiBiABQRhqKQIANwMAIAJBEGoiCCABQRBqKQIANwMAIAJBCGoiAiABQQhqKQIANwMAIAEpAgAhDCABQYCAgIB4NgIAIAQgDDcDECAMp0GAgICAeEYNBCAAIAQpAxA3AgAgAEEYaiAGKQMANwIAIABBEGogCCkDADcCACAAQQhqIAIpAwA3AgAgCxC4ASABQTBqIAM2AgAgAUEsaiAJNgIAIAFBKGpBATYCACABQSRqIAc2AgAgAUEBNgIgIAFBNGogBCkDADcCACABQTxqIAUvAQA7AQAMCQtBrf3AAC0AABpBBEEEEMkBIgVFDQkgBSACKAIANgIAIARBGGoiBiACQQxqLwEAOwEAIAQgAikCBDcDECABELgBIAEgAzYCECABIAk2AgwgAUEBNgIIIAEgBTYCBCABQQE2AgAgByAEKQMQNwIAIAdBCGogBi8BADsBAAwFCyACQQVqLQAAIAEtABVHDQMgAkEGai0AACABLQAWRw0DIAJBB2otAAAgAS0AF0YNAQwDCyAIQQJHDQIgBkECRw0CCyABLQAYIQYCQAJAIAJBCGotAAAiCEECRg0AIAZBAkYNACAGIAhHDQMgCEUEQCACQQlqLQAAIAEtABlHDQQMAgsgAkEJai0AACABLQAZRw0DIAJBCmotAAAgAS0AGkcNAyACQQtqLQAAIAEtABtHDQMMAQsgCEECRw0CIAZBAkcNAgsgAkEMai0AACABLQAcRw0BIAJBDWotAAAgAS0AHUcNASADIAEoAhBHDQEgCiABKAIIIgJGBEAgASAKEHggASgCCCECCyABKAIEIAJBAnRqIAU2AgAgASABKAIIQQFqNgIIDAILIARBEGoQuAEgACADNgIQIAAgCTYCDCAAQQE2AgggACAHNgIEIABBATYCACAAIAQpAwA3AhQgAEEcaiAFLwEAOwEADAQLQa39wAAtAAAaQQRBBBDJASIFBEAgBSACKAIANgIAIAAgASkCADcCACABQRBqIgYpAgAhDCACQQxqLwEAIQggAikCBCENIAYgAzYCACABQQhqIgMpAgAhDiABIAk2AgwgA0EBNgIAIAFBATYCACABIAU2AgQgBEEYaiIDIAg7AQAgAEEIaiAONwIAIABBEGogDDcCACAAQRhqIAFBGGopAgA3AgAgBCANNwMQIAdBCGogAy8BADsBACAHIAQpAxA3AgAMBAsMBAsgASgCQCICIAEoAkRHDQALCyAAIAEpAgA3AgAgAUGAgICAeDYCACAAQRhqIAFBGGopAgA3AgAgAEEQaiABQRBqKQIANwIAIABBCGogAUEIaikCADcCAAsgBEEwaiQADwtBBEEEQej9wAAoAgAiAEHWACAAGxECAAAL9wYBCH8CQCAAKAIAIgogACgCCCIDcgRAAkAgA0UNACABIAJqIQggAEEMaigCAEEBaiEHIAEhBQNAAkAgBSEDIAdBAWsiB0UNACADIAhGDQICfyADLAAAIgZBAE4EQCAGQf8BcSEGIANBAWoMAQsgAy0AAUE/cSEJIAZBH3EhBSAGQV9NBEAgBUEGdCAJciEGIANBAmoMAQsgAy0AAkE/cSAJQQZ0ciEJIAZBcEkEQCAJIAVBDHRyIQYgA0EDagwBCyAFQRJ0QYCA8ABxIAMtAANBP3EgCUEGdHJyIgZBgIDEAEYNAyADQQRqCyIFIAQgA2tqIQQgBkGAgMQARw0BDAILCyADIAhGDQACQCADLAAAIgVBAE4NACAFQWBJDQAgBUFwSQ0AIAVB/wFxQRJ0QYCA8ABxIAMtAANBP3EgAy0AAkE/cUEGdCADLQABQT9xQQx0cnJyQYCAxABGDQELAkACQCAERQ0AIAIgBE0EQEEAIQMgAiAERg0BDAILQQAhAyABIARqLAAAQUBIDQELIAEhAwsgBCACIAMbIQIgAyABIAMbIQELIApFDQEgACgCBCEIAkAgAkEQTwRAIAEgAhASIQMMAQsgAkUEQEEAIQMMAQsgAkEDcSEHAkAgAkEESQRAQQAhA0EAIQYMAQsgAkF8cSEFQQAhA0EAIQYDQCADIAEgBmoiBCwAAEG/f0pqIARBAWosAABBv39KaiAEQQJqLAAAQb9/SmogBEEDaiwAAEG/f0pqIQMgBSAGQQRqIgZHDQALCyAHRQ0AIAEgBmohBQNAIAMgBSwAAEG/f0pqIQMgBUEBaiEFIAdBAWsiBw0ACwsCQCADIAhJBEAgCCADayEEQQAhAwJAAkACQCAALQAgQQFrDgIAAQILIAQhA0EAIQQMAQsgBEEBdiEDIARBAWpBAXYhBAsgA0EBaiEDIABBGGooAgAhBSAAKAIQIQYgACgCFCEAA0AgA0EBayIDRQ0CIAAgBiAFKAIQEQAARQ0AC0EBDwsMAgtBASEDIAAgASACIAUoAgwRAQAEf0EBBUEAIQMCfwNAIAQgAyAERg0BGiADQQFqIQMgACAGIAUoAhARAABFDQALIANBAWsLIARJCw8LIAAoAhQgASACIABBGGooAgAoAgwRAQAPCyAAKAIUIAEgAiAAQRhqKAIAKAIMEQEAC9cGAQh/AkACQCAAQQNqQXxxIgIgAGsiCCABSw0AIAEgCGsiBkEESQ0AIAZBA3EhB0EAIQECQCAAIAJGIgkNAAJAIAIgAEF/c2pBA0kEQAwBCwNAIAEgACAEaiIDLAAAQb9/SmogA0EBaiwAAEG/f0pqIANBAmosAABBv39KaiADQQNqLAAAQb9/SmohASAEQQRqIgQNAAsLIAkNACAAIAJrIQMgACAEaiECA0AgASACLAAAQb9/SmohASACQQFqIQIgA0EBaiIDDQALCyAAIAhqIQQCQCAHRQ0AIAQgBkF8cWoiACwAAEG/f0ohBSAHQQFGDQAgBSAALAABQb9/SmohBSAHQQJGDQAgBSAALAACQb9/SmohBQsgBkECdiEGIAEgBWohAwNAIAQhACAGRQ0CIAZBwAEgBkHAAUkbIgVBA3EhByAFQQJ0IQRBACECIAVBBE8EQCAAIARB8AdxaiEIIAAhAQNAIAIgASgCACICQX9zQQd2IAJBBnZyQYGChAhxaiABQQRqKAIAIgJBf3NBB3YgAkEGdnJBgYKECHFqIAFBCGooAgAiAkF/c0EHdiACQQZ2ckGBgoQIcWogAUEMaigCACICQX9zQQd2IAJBBnZyQYGChAhxaiECIAggAUEQaiIBRw0ACwsgBiAFayEGIAAgBGohBCACQQh2Qf+B/AdxIAJB/4H8B3FqQYGABGxBEHYgA2ohAyAHRQ0ACwJ/IAAgBUH8AXFBAnRqIgAoAgAiAUF/c0EHdiABQQZ2ckGBgoQIcSIBIAdBAUYNABogASAAKAIEIgFBf3NBB3YgAUEGdnJBgYKECHFqIgEgB0ECRg0AGiAAKAIIIgBBf3NBB3YgAEEGdnJBgYKECHEgAWoLIgFBCHZB/4EccSABQf+B/AdxakGBgARsQRB2IANqDwsgAUUEQEEADwsgAUEDcSEEAkAgAUEESQRAQQAhAgwBCyABQXxxIQVBACECA0AgAyAAIAJqIgEsAABBv39KaiABQQFqLAAAQb9/SmogAUECaiwAAEG/f0pqIAFBA2osAABBv39KaiEDIAUgAkEEaiICRw0ACwsgBEUNACAAIAJqIQEDQCADIAEsAABBv39KaiEDIAFBAWohASAEQQFrIgQNAAsLIAML6wYCCn8CfiMAQaABayIFJAACQCAARQ0AIAJFDQADQAJAAkAgACACakEYTwRAIAAgAiAAIAJJIgQbQQlPDQIgASAAQQR0IgNrIgQgAkEEdCIGaiEHIAAgAk0NASAFQRBqIgAgASAGEO8BGiAHIAQgAxDtASAEIAAgBhDvARoMBAsgBUEIaiIHIAEgAEEEdGsiBkEIaikCADcDACAFIAYpAgA3AwAgAkEEdCEIQQAgAGshCSACIgEhBANAIAYgBEEEdGohAwNAIAVBmAFqIAcpAwAiDTcDACAFIAUpAwAiDjcDkAEgBUEYaiIKIANBCGoiCykCADcDACAFIAMpAgA3AxAgAyAONwIAIAsgDTcCACAHIAopAwA3AwAgBSAFKQMQNwMAIAAgBE1FBEAgAyAIaiEDIAIgBGohBAwBCwsgBCAJaiIEBEAgBCABIAEgBEsbIQEMAQUgBSkDACENIAZBCGogBUEIaiIHKQMANwIAIAYgDTcCACABQQJJDQVBASEEA0AgBiAEQQR0aiIIKQIAIQ0gByAIQQhqIgopAgA3AwAgBSANNwMAIAIgBGohAwNAIAVBmAFqIAcpAwAiDTcDACAFIAUpAwAiDjcDkAEgBUEYaiILIAYgA0EEdGoiCUEIaiIMKQIANwMAIAUgCSkCADcDECAJIA43AgAgDCANNwIAIAcgCykDADcDACAFIAUpAxA3AwAgACADSwRAIAIgA2ohAwwBCyAEIAMgAGsiA0cNAAsgBSkDACENIAogBykDADcCACAIIA03AgAgBEEBaiIEIAFHDQALDAULAAsACyAFQRBqIgAgBCADEO8BGiAEIAEgBhDtASAHIAAgAxDvARoMAgsCQCAERQRAIAJBAnQhBkEAIAJBBHRrIQcDQCAGBEAgASEDIAYhBANAIAMgB2oiCCgCACEJIAggAygCADYCACADIAk2AgAgA0EEaiEDIARBAWsiBA0ACwsgASAHaiEBIAIgACACayIATQ0ACwwBCyAAQQJ0IQZBACAAQQR0IgdrIQgDQCAGBEAgASEDIAYhBANAIAMgCGoiCSgCACEKIAkgAygCADYCACADIAo2AgAgA0EEaiEDIARBAWsiBA0ACwsgASAHaiEBIAIgAGsiAiAATw0ACwsgAkUNASAADQALCyAFQaABaiQAC7gFAQh/QStBgIDEACAAKAIcIghBAXEiBhshDCAEIAZqIQYCQCAIQQRxRQRAQQAhAQwBCwJAIAJBEE8EQCABIAIQEiEFDAELIAJFBEAMAQsgAkEDcSEJAkAgAkEESQRADAELIAJBfHEhCgNAIAUgASAHaiILLAAAQb9/SmogC0EBaiwAAEG/f0pqIAtBAmosAABBv39KaiALQQNqLAAAQb9/SmohBSAKIAdBBGoiB0cNAAsLIAlFDQAgASAHaiEHA0AgBSAHLAAAQb9/SmohBSAHQQFqIQcgCUEBayIJDQALCyAFIAZqIQYLAkACQCAAKAIARQRAQQEhBSAAKAIUIgYgACgCGCIAIAwgASACEI4BDQEMAgsgACgCBCIHIAZNBEBBASEFIAAoAhQiBiAAKAIYIgAgDCABIAIQjgENAQwCCyAIQQhxBEAgACgCECEIIABBMDYCECAALQAgIQpBASEFIABBAToAICAAKAIUIgkgACgCGCILIAwgASACEI4BDQEgByAGa0EBaiEFAkADQCAFQQFrIgVFDQEgCUEwIAsoAhARAABFDQALQQEPC0EBIQUgCSADIAQgCygCDBEBAA0BIAAgCjoAICAAIAg2AhBBACEFDAELIAcgBmshBgJAAkACQCAALQAgIgVBAWsOAwABAAILIAYhBUEAIQYMAQsgBkEBdiEFIAZBAWpBAXYhBgsgBUEBaiEFIABBGGooAgAhCCAAKAIQIQogACgCFCEAAkADQCAFQQFrIgVFDQEgACAKIAgoAhARAABFDQALQQEPC0EBIQUgACAIIAwgASACEI4BDQAgACADIAQgCCgCDBEBAA0AQQAhBQNAIAUgBkYEQEEADwsgBUEBaiEFIAAgCiAIKAIQEQAARQ0ACyAFQQFrIAZJDwsgBQ8LIAYgAyAEIAAoAgwRAQAL/gUBBX8gAEEIayEBIAEgAEEEaygCACIDQXhxIgBqIQICQAJAAkACQCADQQFxDQAgA0EDcUUNASABKAIAIgMgAGohACABIANrIgFBqIHBACgCAEYEQCACKAIEQQNxQQNHDQFBoIHBACAANgIAIAIgAigCBEF+cTYCBCABIABBAXI2AgQgAiAANgIADwsgASADEB8LAkACQCACKAIEIgNBAnFFBEAgAkGsgcEAKAIARg0CIAJBqIHBACgCAEYNBSACIANBeHEiAhAfIAEgACACaiIAQQFyNgIEIAAgAWogADYCACABQaiBwQAoAgBHDQFBoIHBACAANgIADwsgAiADQX5xNgIEIAEgAEEBcjYCBCAAIAFqIAA2AgALIABBgAJJDQIgASAAECRBACEBQcCBwQBBwIHBACgCAEEBayIANgIAIAANAUGI/8AAKAIAIgAEQANAIAFBAWohASAAKAIIIgANAAsLQcCBwQAgAUH/HyABQf8fSxs2AgAPC0GsgcEAIAE2AgBBpIHBAEGkgcEAKAIAIABqIgA2AgAgASAAQQFyNgIEQaiBwQAoAgAgAUYEQEGggcEAQQA2AgBBqIHBAEEANgIACyAAQbiBwQAoAgAiA00NAEGsgcEAKAIAIgJFDQBBACEBAkBBpIHBACgCACIEQSlJDQBBgP/AACEAA0AgAiAAKAIAIgVPBEAgBSAAKAIEaiACSw0CCyAAKAIIIgANAAsLQYj/wAAoAgAiAARAA0AgAUEBaiEBIAAoAggiAA0ACwtBwIHBACABQf8fIAFB/x9LGzYCACADIARPDQBBuIHBAEF/NgIACw8LIABBeHFBkP/AAGohAgJ/QZiBwQAoAgAiA0EBIABBA3Z0IgBxRQRAQZiBwQAgACADcjYCACACDAELIAIoAggLIQAgAiABNgIIIAAgATYCDCABIAI2AgwgASAANgIIDwtBqIHBACABNgIAQaCBwQBBoIHBACgCACAAaiIANgIAIAEgAEEBcjYCBCAAIAFqIAA2AgALlgUBC38jAEEwayIDJAAgA0EkaiABNgIAIANBAzoALCADQSA2AhwgA0EANgIoIAMgADYCICADQQA2AhQgA0EANgIMAn8CQAJAAkAgAigCECILRQRAIAJBDGooAgAiAEUNASACKAIIIgEgAEEDdGohBCAAQQFrQf////8BcUEBaiEIIAIoAgAhAANAIABBBGooAgAiBgRAIAMoAiAgACgCACAGIAMoAiQoAgwRAQANBAsgASgCACADQQxqIAFBBGooAgARAAANAyAFQQFqIQUgAEEIaiEAIAQgAUEIaiIBRw0ACwwBCyACQRRqKAIAIgBFDQAgAEEFdCEMIABBAWtB////P3FBAWohCCACKAIIIQYgAigCACEAA0AgAEEEaigCACIBBEAgAygCICAAKAIAIAEgAygCJCgCDBEBAA0DCyADIAUgC2oiAUEQaigCADYCHCADIAFBHGotAAA6ACwgAyABQRhqKAIANgIoIAFBDGooAgAhB0EAIQpBACEEAkACQAJAIAFBCGooAgBBAWsOAgACAQsgBiAHQQN0aiINKAIEQesARw0BIA0oAgAoAgAhBwtBASEECyADIAc2AhAgAyAENgIMIAFBBGooAgAhBAJAAkACQCABKAIAQQFrDgIAAgELIAYgBEEDdGoiBygCBEHrAEcNASAHKAIAKAIAIQQLQQEhCgsgAyAENgIYIAMgCjYCFCAGIAFBFGooAgBBA3RqIgEoAgAgA0EMaiABQQRqKAIAEQAADQIgCUEBaiEJIABBCGohACAMIAVBIGoiBUcNAAsLIAggAigCBE8NASADKAIgIAIoAgAgCEEDdGoiACgCACAAKAIEIAMoAiQoAgwRAQBFDQELQQEMAQtBAAsgA0EwaiQAC90LAg5/AX4jAEFAaiIDJAAgAUEUaigCACEMIAEoAiQhCSABKAIQIQcgA0EwaiENIANBIGoiDkEIaiEPAkACQANAIAEoAgAhBSABQYCAgIB4NgIAIAMCfyAFQYCAgIB4RwRAIAchBCABKQIIIRAgASgCBAwBCyAHIAxGDQIgASAHQRBqIgQ2AhAgBygCACIFQYCAgIB4Rg0CIAcpAgghECAHKAIECzYCECADIAU2AgwgAyAQNwIUQX8gEKciBSAJRyAFIAlLGyIHQQFHBEAgB0H/AXEEQCABIQRBACEHIwBBIGsiAiQAIANBDGoiBigCCCEBAkAgBi0ADCIKDQACQCABRQ0AIAYoAgRBEGshDCABQQR0IQggAUEBa0H/////AHFBAWoDQCAIIAxqEGtFDQEgB0EBaiEHIAhBEGsiCA0ACyEHCyAJIAEgB2siByAHIAlJGyIHIAFLDQAgBiAHNgIIIAchAQsCQCABIAlNBEAgBEGAgICAeDYCAAwBCwJAIAlFBEAgAiAGKAIAIgcQXCAGKAIEIQggAigCACEFIAYgAigCBDYCBCAGQQA2AgggBiAFNgIADAELIAJBCGogASAJayIBEFwgAigCCCEHIAIoAgwhCCAGIAk2AgggCCAGKAIEIAlBBHRqIAFBBHQQ7wEaIAYtAAwhCgsgAiABNgIYIAIgCDYCFCACIAc2AhAgAiAKOgAcIApFBEAgAkEQahBVIAIoAhghAQsgAQRAIAZBAToADCAEIAIpAhA3AgAgBEEIaiACQRhqKQIANwIADAELIARBgICAgHg2AgAgAigCEEUNACACKAIUEBULIAJBIGokACAAQQhqIAZBCGopAgA3AgAgACADKQIMNwIADAQLIAAgAykCDDcCACAAQQhqIANBFGopAgA3AgAMAwsCQCAEIAxHBEAgASAEQRBqIgc2AhAgBCgCACICQYCAgIB4Rw0BCyADQQA7ATggA0ECOgA0IANBAjoAMCADQSA2AiwgAyAJIAVrNgI8IANBDGoiASADQSxqECwgACADKQIMNwIAIANBADoAGCAAQQhqIAFBCGopAgA3AgAMAwsgDiAEKQIENwIAIA8gBEEMaigCADYCACADIAI2AhwgA0EsaiECIANBHGohBSMAQSBrIgQkAAJAIANBDGoiBigCCCIIIAlGBEAgAkEBOgAAIAIgBSkCADcCBCACQQxqIAVBCGopAgA3AgAMAQsgCSAIayEIIAYtAAwEQCAFLQAMRQRAIAUQVQsgBSgCCCIKIAhNBEAgBiAFKAIEIgggCCAKQQR0ahBvQQAhCgJAIAUtAAwNACAGQQA6AAxBASEKIAYoAggiCyAJTw0AIARBADsBGCAEQQI6ABQgBEECOgAQIARBIDYCDCAEIAkgC2s2AhwgBiAEQQxqECwLIAJBgICAgHg2AgQgAiAKOgAAIAUoAgBFDQIgCBAVDAILAkAgBSgCCCILIAhPBEAgBSgCBCELIAQgCDYCBCAEIAs2AgAMAQsgCCALQaiiwAAQWgALIAYgBCgCACIGIAYgBCgCBEEEdGoQbyAFKAIAIQYgBSgCBCILIAogCBChASACQQxqIAogCiAIayIIIAggCksbNgIAIAJBCGogCzYCACACIAY2AgQgAkEBOgAAIAJBEGogBS0ADDoAAAwBCyAEQQA7ARggBEECOgAUIARBAjoAECAEIAg2AhwgBEEgNgIMIAYgBEEMahAsIAJBAToAACACQQxqIAVBCGopAgA3AgAgAiAFKQIANwIECyAEQSBqJAAgAy0ALEUEQCABIAMpAgw3AgAgAUEIaiADQRRqKQIANwIAIAMoAjAiBEGAgICAeEYNASAERQ0BIAMoAjQQFQwBCwsgAygCMEGAgICAeEcEQCABIA0pAgA3AgAgAUEIaiANQQhqKQIANwIACyAAIAMpAgw3AgAgAEEIaiADQRRqKQIANwIADAELIABBgICAgHg2AgAgAUGAgICAeDYCAAsgA0FAayQAC5MEAQt/IAAoAgQhCiAAKAIAIQsgACgCCCEMAkADQCAFDQECQAJAIAIgBEkNAANAIAEgBGohBQJAAkACQAJAIAIgBGsiBkEITwRAIAVBA2pBfHEiACAFRg0BIAAgBWsiAEUNAUEAIQMDQCADIAVqLQAAQQpGDQUgA0EBaiIDIABHDQALIAZBCGsiAyAASQ0DDAILIAIgBEYEQCACIQQMBgtBACEDA0AgAyAFai0AAEEKRg0EIAYgA0EBaiIDRw0ACyACIQQMBQsgBkEIayEDQQAhAAsDQCAAIAVqIgdBBGooAgAiCUGKlKjQAHNBgYKECGsgCUF/c3EgBygCACIHQYqUqNAAc0GBgoQIayAHQX9zcXJBgIGChHhxDQEgAyAAQQhqIgBPDQALCyAAIAZGBEAgAiEEDAMLA0AgACAFai0AAEEKRgRAIAAhAwwCCyAGIABBAWoiAEcNAAsgAiEEDAILIAMgBGoiAEEBaiEEAkAgACACTw0AIAAgAWotAABBCkcNAEEAIQUgBCIDIQAMAwsgAiAETw0ACwtBASEFIAIiACAIIgNGDQILAkAgDC0AAARAIAtBsObAAEEEIAooAgwRAQANAQsgASAIaiEGIAAgCGshB0EAIQkgDCAAIAhHBH8gBiAHakEBay0AAEEKRgVBAAs6AAAgAyEIIAsgBiAHIAooAgwRAQBFDQELC0EBIQ0LIA0L1AYBBX8jAEHAAWsiAiQAIAAoAgAhAyACQQRqIgBBtAFqQZCHwAA2AgAgAkGwAWpBoIvAADYCACAAQaQBakHAi8AANgIAIABBnAFqQbCLwAA2AgAgAEGUAWpBsIvAADYCACACQZABakHQhsAANgIAIAJBiAFqQdCGwAA2AgAgAkGAAWpBoIvAADYCACACQfgAakGgi8AANgIAIABB7ABqQaCLwAA2AgAgAkHoAGpBoIvAADYCACACQeAAakGgi8AANgIAIABB1ABqQZCLwAA2AgAgAkHQAGpB0IbAADYCACACQcgAakGAi8AANgIAIAJBQGtB8IrAADYCACACQThqQeCKwAA2AgAgAkEwakH0hsAANgIAIAJBKGpB0IrAADYCACACQSBqQcCKwAA2AgAgAkEYakHAisAANgIAIAJBEGpB0IbAADYCACACIANBugFqNgKsASACIANB1ABqNgKkASACIANBgAFqNgKcASACIANB7ABqNgKUASACIANBpAFqNgKMASACIANBoAFqNgKEASACIANBuQFqNgJ8IAIgA0G4AWo2AnQgAiADQbcBajYCbCACIANBtgFqNgJkIAIgA0G1AWo2AlwgAiADQcgAajYCVCACIANBnAFqNgJMIAIgA0GoAWo2AkQgAiADQaoBajYCPCACIANB4ABqNgI0IAIgA0FAazYCLCACIANBtAFqNgIkIAIgA0EgajYCHCACIAM2AhQgAiADQZgBajYCDCACQdCGwAA2AgggAiADQZQBajYCBCACIANBuwFqNgK8ASACIAJBvAFqNgK0AUEXIQZBiInAACEEIwBBIGsiAyQAIANBFzYCACADQRc2AgQgASgCFEHQi8AAQQggAUEYaigCACgCDBEBACEFIANBADoADSADIAU6AAwgAyABNgIIAn8DQCADQQhqIAQoAgAgBEEEaigCACAAQdDowAAQICEFIABBCGohACAEQQhqIQQgBkEBayIGDQALIAMtAAwhASABQQBHIAMtAA1FDQAaQQEgAQ0AGiAFKAIAIgAtABxBBHFFBEAgACgCFEG/5sAAQQIgACgCGCgCDBEBAAwBCyAAKAIUQb7mwABBASAAKAIYKAIMEQEACyADQSBqJAAgAkHAAWokAAv1AwEEfyMAQRBrIgMkAAJAAkAgACgCnAEiAkEBTQRAAkAgACACakGoAWotAABFDQAgAUHgAGsiAkEeSw0AIAJBAnRBtKXAAGooAgAhAQsgA0EMaiAAQbIBai8BADsBACADIAE2AgAgAyAAKQGqATcCBCAALQC3AUUNAiAALQC5AUUNAiAAQQA6ALkBIABBADYCYCAAQeQAaigCACIBIAAoAqQBRg0BIAEgACgCmAFBAWtPDQIgACABQaScwAAQfUEBOgAMIABBADoAuQEgACAAKAJkQQFqNgJkIAAgACgCYCIBIAAoApQBQQFrIgIgASACSRs2AmAMAgsgAkECQYykwAAQWQALIAAgAUGknMAAEH1BAToADCAAQQEQnwELAkAgAAJ/IAAoAmAiAkEBaiIBIAAoApQBIgRJBEAgAEHkAGooAgAhBAJAIAAtALUBRQRAIAAgAiAEIAMQgQEMAQsgACgCFCEFIAAgBEG0nMAAEH0gAiACIAVHIAMQQQtBAAwBCyAAIARBAWsgAEHkAGooAgAgAxCBASAALQC3AUUNASAAKAKUASEBQQELOgC5ASAAIAE2AmALIABB3ABqKAIAIgIgAEHkAGooAgAiAUsEQCAAQdgAaigCACABakEBOgAAIANBEGokAA8LIAEgAkHQqcAAEFkAC/gDAQJ/IAAgAWohAgJAAkAgACgCBCIDQQFxDQAgA0EDcUUNASAAKAIAIgMgAWohASAAIANrIgBBqIHBACgCAEYEQCACKAIEQQNxQQNHDQFBoIHBACABNgIAIAIgAigCBEF+cTYCBCAAIAFBAXI2AgQgAiABNgIADwsgACADEB8LAkACQAJAIAIoAgQiA0ECcUUEQCACQayBwQAoAgBGDQIgAkGogcEAKAIARg0DIAIgA0F4cSICEB8gACABIAJqIgFBAXI2AgQgACABaiABNgIAIABBqIHBACgCAEcNAUGggcEAIAE2AgAPCyACIANBfnE2AgQgACABQQFyNgIEIAAgAWogATYCAAsgAUGAAk8EQCAAIAEQJAwDCyABQXhxQZD/wABqIQICf0GYgcEAKAIAIgNBASABQQN2dCIBcUUEQEGYgcEAIAEgA3I2AgAgAgwBCyACKAIICyEBIAIgADYCCCABIAA2AgwgACACNgIMIAAgATYCCA8LQayBwQAgADYCAEGkgcEAQaSBwQAoAgAgAWoiATYCACAAIAFBAXI2AgQgAEGogcEAKAIARw0BQaCBwQBBADYCAEGogcEAQQA2AgAPC0GogcEAIAA2AgBBoIHBAEGggcEAKAIAIAFqIgE2AgAgACABQQFyNgIEIAAgAWogATYCAAsL5wIBBX8CQEHN/3sgAEEQIABBEEsbIgBrIAFNDQBBECABQQtqQXhxIAFBC0kbIgQgAGpBDGoQDyICRQ0AIAJBCGshAQJAIABBAWsiAyACcUUEQCABIQAMAQsgAkEEayIFKAIAIgZBeHFBACAAIAIgA2pBACAAa3FBCGsiACABa0EQSxsgAGoiACABayICayEDIAZBA3EEQCAAIAMgACgCBEEBcXJBAnI2AgQgACADaiIDIAMoAgRBAXI2AgQgBSACIAUoAgBBAXFyQQJyNgIAIAEgAmoiAyADKAIEQQFyNgIEIAEgAhAbDAELIAEoAgAhASAAIAM2AgQgACABIAJqNgIACwJAIAAoAgQiAUEDcUUNACABQXhxIgIgBEEQak0NACAAIAQgAUEBcXJBAnI2AgQgACAEaiIBIAIgBGsiBEEDcjYCBCAAIAJqIgIgAigCBEEBcjYCBCABIAQQGwsgAEEIaiEDCyADC44DAQd/IwBBEGsiBCQAAkACQAJAAkACQAJAIAEoAgQiAkUNACABKAIAIQUgAkEDcSEGAkAgAkEESQRAQQAhAgwBCyAFQRxqIQMgAkF8cSEIQQAhAgNAIAMoAgAgA0EIaygCACADQRBrKAIAIANBGGsoAgAgAmpqamohAiADQSBqIQMgCCAHQQRqIgdHDQALCyAGBEAgB0EDdCAFakEEaiEDA0AgAygCACACaiECIANBCGohAyAGQQFrIgYNAAsLIAFBDGooAgAEQCACQQBIDQEgBSgCBEUgAkEQSXENASACQQF0IQILIAINAQtBASEDQQAhAgwBCyACQQBIDQFBrf3AAC0AABogAkEBEMkBIgNFDQILIARBADYCCCAEIAM2AgQgBCACNgIAIARBuODAACABEBZFDQJBmOHAAEEzIARBD2pBzOHAAEH04cAAEE4ACxCSAQALQQEgAkHo/cAAKAIAIgBB1gAgABsRAgAACyAAIAQpAgA3AgAgAEEIaiAEQQhqKAIANgIAIARBEGokAAvaAgEHf0EBIQkCQAJAIAJFDQAgASACQQF0aiEKIABBgP4DcUEIdiELIABB/wFxIQ0DQCABQQJqIQwgByABLQABIgJqIQggCyABLQAAIgFHBEAgASALSw0CIAghByAKIAwiAUYNAgwBCwJAAkAgByAITQRAIAQgCEkNASADIAdqIQEDQCACRQ0DIAJBAWshAiABLQAAIAFBAWohASANRw0AC0EAIQkMBQsgByAIQbzqwAAQWwALIAggBEG86sAAEFoACyAIIQcgCiAMIgFHDQALCyAGRQ0AIAUgBmohAyAAQf//A3EhAQNAIAVBAWohAAJAIAUtAAAiAsAiBEEATgRAIAAhBQwBCyAAIANHBEAgBS0AASAEQf8AcUEIdHIhAiAFQQJqIQUMAQtBp+PAAEErQazqwAAQiwEACyABIAJrIgFBAEgNASAJQQFzIQkgAyAFRw0ACwsgCUEBcQv9AgEEfyAAKAIMIQICQAJAIAFBgAJPBEAgACgCGCEEAkACQCAAIAJGBEAgAEEUQRAgAEEUaiICKAIAIgMbaigCACIBDQFBACECDAILIAAoAggiASACNgIMIAIgATYCCAwBCyACIABBEGogAxshAwNAIAMhBSABIgJBFGoiAygCACEBIAMgAkEQaiABGyEDIAJBFEEQIAEbaigCACIBDQALIAVBADYCAAsgBEUNAiAAIAAoAhxBAnRBgP7AAGoiASgCAEcEQCAEQRBBFCAEKAIQIABGG2ogAjYCACACRQ0DDAILIAEgAjYCACACDQFBnIHBAEGcgcEAKAIAQX4gACgCHHdxNgIADAILIAIgACgCCCIARwRAIAAgAjYCDCACIAA2AggPC0GYgcEAQZiBwQAoAgBBfiABQQN2d3E2AgAPCyACIAQ2AhggACgCECIBBEAgAiABNgIQIAEgAjYCGAsgAEEUaigCACIARQ0AIAJBFGogADYCACAAIAI2AhgLC4oDAgV/AX4jAEFAaiIFJABBASEHAkAgAC0ABA0AIAAtAAUhCCAAKAIAIgYoAhwiCUEEcUUEQCAGKAIUQbfmwABBtObAACAIG0ECQQMgCBsgBkEYaigCACgCDBEBAA0BIAYoAhQgASACIAYoAhgoAgwRAQANASAGKAIUQYTmwABBAiAGKAIYKAIMEQEADQEgAyAGIAQoAgwRAAAhBwwBCyAIRQRAIAYoAhRBuebAAEEDIAZBGGooAgAoAgwRAQANASAGKAIcIQkLIAVBAToAGyAFQTRqQZjmwAA2AgAgBSAGKQIUNwIMIAUgBUEbajYCFCAFIAYpAgg3AiQgBikCACEKIAUgCTYCOCAFIAYoAhA2AiwgBSAGLQAgOgA8IAUgCjcCHCAFIAVBDGoiBjYCMCAGIAEgAhAYDQAgBUEMakGE5sAAQQIQGA0AIAMgBUEcaiAEKAIMEQAADQAgBSgCMEG85sAAQQIgBSgCNCgCDBEBACEHCyAAQQE6AAUgACAHOgAEIAVBQGskACAAC/IDAQd/IwBBMGsiBSQAIAIgAWsiBiADSyEHIAJBAWsiCCAAKAIYQQFrSQRAIAAgCEG0ncAAEH1BADoADAsgAyAGIAcbIQMCQAJAIAFFBEAgACgCGCIBIAJGDQEgBUEQaiAAKAIUIAQQTCADBEAgAEEQaigCACACIAFraiECIABBCGohBCAFKAIYIgdBBHQhCSAFLQAcIQogBSgCFCELA0AgBSAHEFwgBSgCACEBIAUoAgQgCyAJEO8BIQYgBSAKOgAsIAUgBzYCKCAFIAY2AiQgBSABNgIgIAVBIGohCCAEKAIIIgEgBCgCAEYEQCAEIAFBARB8CyAEKAIEIAJBBHRqIQYCQCABIAJNBEAgASACRg0BIAIgARBXAAsgBkEQaiAGIAEgAmtBBHQQ7QELIAYgCCkCADcCACAEIAFBAWo2AgggBkEIaiAIQQhqKQIANwIAIANBAWsiAw0ACwsgBSgCEEUNAiAFKAIUEBUMAgsgACABQQFrQcSdwAAQfUEAOgAMIAVBCGogACABIAJB1J3AABBdIAUoAgghASAFKAIMIgYgA0kEQEG8n8AAQSNBrKDAABCLAQALIAMgASADQQR0aiAGIANrEBMgACACIANrIAIgBBBTDAELIAAgAyAAKAIUEHMLIABBAToAHCAFQTBqJAALmgQBBX8jAEEQayIDJAACQAJ/AkAgAUGAAU8EQCADQQA2AgwgAUGAEEkNASABQYCABEkEQCADIAFBP3FBgAFyOgAOIAMgAUEMdkHgAXI6AAwgAyABQQZ2QT9xQYABcjoADUEDDAMLIAMgAUE/cUGAAXI6AA8gAyABQQZ2QT9xQYABcjoADiADIAFBDHZBP3FBgAFyOgANIAMgAUESdkEHcUHwAXI6AAxBBAwCCyAAKAIIIgIgACgCAEYEQCMAQSBrIgQkAAJAAkAgAkEBaiICRQ0AIAAoAgAiBkEBdCIFIAIgAiAFSRsiAkEIIAJBCEsbIgVBf3NBH3YhAgJAIAZFBEAgBEEANgIYDAELIAQgBjYCHCAEQQE2AhggBCAAKAIENgIUCyAEQQhqIAIgBSAEQRRqED0gBCgCDCECIAQoAghFBEAgACAFNgIAIAAgAjYCBAwCCyACQYGAgIB4Rg0BIAJFDQAgAiAEQRBqKAIAQej9wAAoAgAiAEHWACAAGxECAAALEJIBAAsgBEEgaiQAIAAoAgghAgsgACACQQFqNgIIIAAoAgQgAmogAToAAAwCCyADIAFBP3FBgAFyOgANIAMgAUEGdkHAAXI6AAxBAgshASABIAAoAgAgACgCCCICa0sEQCAAIAIgARA4IAAoAgghAgsgACgCBCACaiADQQxqIAEQ7wEaIAAgASACajYCCAsgA0EQaiQAQQALwAICBX8BfiMAQTBrIgQkAEEnIQICQCAAQpDOAFQEQCAAIQcMAQsDQCAEQQlqIAJqIgNBBGsgACAAQpDOAIAiB0KQzgB+faciBUH//wNxQeQAbiIGQQF0QfbmwABqLwAAOwAAIANBAmsgBSAGQeQAbGtB//8DcUEBdEH25sAAai8AADsAACACQQRrIQIgAEL/wdcvViAHIQANAAsLIAenIgNB4wBLBEAgB6ciBUH//wNxQeQAbiEDIAJBAmsiAiAEQQlqaiAFIANB5ABsa0H//wNxQQF0QfbmwABqLwAAOwAACwJAIANBCk8EQCACQQJrIgIgBEEJamogA0EBdEH25sAAai8AADsAAAwBCyACQQFrIgIgBEEJamogA0EwajoAAAsgAUGM48AAQQAgBEEJaiACakEnIAJrEBQgBEEwaiQAC7YCAQR/IABCADcCECAAAn9BACABQYACSQ0AGkEfIAFB////B0sNABogAUEGIAFBCHZnIgNrdkEBcSADQQF0a0E+agsiAjYCHCACQQJ0QYD+wABqIQQCQEGcgcEAKAIAIgVBASACdCIDcUUEQEGcgcEAIAMgBXI2AgAgBCAANgIAIAAgBDYCGAwBCwJAAkAgASAEKAIAIgMoAgRBeHFGBEAgAyECDAELIAFBAEEZIAJBAXZrIAJBH0YbdCEEA0AgAyAEQR12QQRxakEQaiIFKAIAIgJFDQIgBEEBdCEEIAIhAyACKAIEQXhxIAFHDQALCyACKAIIIgEgADYCDCACIAA2AgggAEEANgIYIAAgAjYCDCAAIAE2AggPCyAFIAA2AgAgACADNgIYCyAAIAA2AgwgACAANgIIC58NAQp/IwBBEGsiAiQAQQEhCwJAAkAgASgCFCIJQScgAUEYaigCACgCECIKEQAADQAgACgCACEDIwBBEGsiBCQAAkACQAJAAkACQAJAAkACQAJAIAMOKAUHBwcHBwcHBwEDBwcCBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwYACyADQdwARg0DDAYLIAJBgAQ7AQogAkIANwECIAJB3OgBOwEADAYLIAJBgAQ7AQogAkIANwECIAJB3OQBOwEADAULIAJBgAQ7AQogAkIANwECIAJB3NwBOwEADAQLIAJBgAQ7AQogAkIANwECIAJB3LgBOwEADAMLIAJBgAQ7AQogAkIANwECIAJB3OAAOwEADAILIAJBgAQ7AQogAkIANwECIAJB3M4AOwEADAELIANBC3QhBUEhIQBBISEHAkADQCAAQQF2IAZqIgFBAnRB0PbAAGooAgBBC3QiACAFRwRAIAEgByAAIAVLGyIHIAFBAWogBiAAIAVJGyIGayEAIAYgB0kNAQwCCwsgAUEBaiEGCwJ/An8CQCAGQSBNBEAgBkECdCIAQdD2wABqKAIAQRV2IQEgBkEgRw0BQdcFIQdBHwwCCyAGQSFB8PXAABBZAAsgAEHU9sAAaigCAEEVdiEHQQAgBkUNARogBkEBawtBAnRB0PbAAGooAgBB////AHELIQACQAJAAkAgByABQX9zakUNACADIABrIQUgAUHXBSABQdcFSxshCCAHQQFrIQBBACEGA0AgASAIRg0CIAUgBiABQdT3wABqLQAAaiIGSQ0BIAAgAUEBaiIBRw0ACyAAIQELIAFBAXEhAAwBCyAIQdcFQYD2wAAQWQALAkACQAJAIABFBEACfwJAIANBIEkNAAJAAn9BASADQf8ASQ0AGiADQYCABEkNAQJAIANBgIAITwRAIANBsMcMa0HQuitJDQQgA0HLpgxrQQVJDQQgA0Ge9AtrQeILSQ0EIANB4dcLa0GfGEkNBCADQaKdC2tBDkkNBCADQX5xQZ7wCkYNBCADQWBxQeDNCkcNAQwECyADQczqwABBLEGk68AAQcQBQejswABBwgMQHgwEC0EAIANBuu4Ka0EGSQ0AGiADQYCAxABrQfCDdEkLDAILIANBqvDAAEEoQfrwwABBnwJBmfPAAEGvAhAeDAELQQALRQ0BIAIgAzYCBCACQYABOgAADAQLIARBCGpBADoAACAEQQA7AQYgBEH9ADoADyAEIANBD3FB0+PAAGotAAA6AA4gBCADQQR2QQ9xQdPjwABqLQAAOgANIAQgA0EIdkEPcUHT48AAai0AADoADCAEIANBDHZBD3FB0+PAAGotAAA6AAsgBCADQRB2QQ9xQdPjwABqLQAAOgAKIAQgA0EUdkEPcUHT48AAai0AADoACSADQQFyZ0ECdkECayIFQQtPDQEgBEEGaiIBIAVqIgBBvPbAAC8AADsAACAAQQJqQb72wAAtAAA6AAAgAiAEKQEGNwAAIAJBCGogAUEIai8BADsAACACQQo6AAsgAiAFOgAKDAMLIARBCGpBADoAACAEQQA7AQYgBEH9ADoADyAEIANBD3FB0+PAAGotAAA6AA4gBCADQQR2QQ9xQdPjwABqLQAAOgANIAQgA0EIdkEPcUHT48AAai0AADoADCAEIANBDHZBD3FB0+PAAGotAAA6AAsgBCADQRB2QQ9xQdPjwABqLQAAOgAKIAQgA0EUdkEPcUHT48AAai0AADoACSADQQFyZ0ECdkECayIFQQtPDQEgBEEGaiIBIAVqIgBBvPbAAC8AADsAACAAQQJqQb72wAAtAAA6AAAgAiAEKQEGNwAAIAJBCGogAUEIai8BADsAACACQQo6AAsgAiAFOgAKDAILIAVBCkGs9sAAEFgACyAFQQpBrPbAABBYAAsgBEEQaiQAAkAgAi0AAEGAAUYEQCACQQhqIQVBgAEhCANAAkAgCEGAAUcEQCACLQAKIgAgAi0AC08NBCACIABBAWo6AAogAEEKTw0GIAAgAmotAAAhAQwBC0EAIQggBUEANgIAIAIoAgQhASACQgA3AwALIAkgASAKEQAARQ0ACwwCCyACLQAKIgFBCiABQQpLGyEAIAItAAsiBSABIAEgBUkbIQcDQCABIAdGDQEgAiABQQFqIgU6AAogACABRg0DIAEgAmohCCAFIQEgCSAILQAAIAoRAABFDQALDAELIAlBJyAKEQAAIQsLIAJBEGokACALDwsgAEEKQcD2wAAQWQALoAQBA38CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAFBCGsOCAECAwQFDQYHAAsgAUGEAWsOCgcICwsJCwsLCwoLCyAALQC5ASEBIABBADoAuQEgAEEAIAAoAmBBfkF/IAEbaiIBIAAoApQBIgBBAWsgACABSxsgAUEASBs2AmAPCyAAQdAAaigCAEECdCEBIABBzABqKAIAIQIgACgCYCEEAkACQANAIAFFDQEgAUEEayEBIAIoAgAhAyACQQRqIQIgAyAETQ0ACyAAKAKUASIBQQFrIQIMAQsgACgClAEiAUEBayICIQMLIABBADoAuQEgACADIAIgASADSxs2AmAPCyAAEGogAC0AuAFFDQgMCQsgABBqIAAtALgBRQ0HDAgLIAAQaiAALQC4AUUNBgwHCyAAQQE2ApwBDwsgAEEANgKcAQ8LIAAQaiAALQC4AUUNAwwECyAAEGoMAwsgACgCYCIBRQ0BIAEgACgClAFPDQEgAEHIAGogARBRDwsCQCAAQeQAaigCACIBIAAoAqABIgJHBEAgAQRAIABBADoAuQEgACAAKAJgIgMgACgClAFBAWsiBCADIARJGzYCYCAAIAEgAkEAIAAtALYBIgIbIgFqQQFrIgMgASABIANJGyIBIAAoAqQBIAAoApgBQQFrIAIbIgAgACABSxs2AmQLDAELIABBARCgAQsLDwsgAEEAOgC5ASAAQQA2AmALxgIAAkACQAJAAkACQAJAAkAgA0EBaw4GAAECAwQFBgsgACgCFCEDIAAgAkHknMAAEH0iBEEAOgAMIAQgASADIAUQSCAAIAJBAWogACgCGCAFEFMPCyAAKAIUIQMgACACQfScwAAQfUEAIAFBAWoiASADIAEgA0kbIAUQSCAAQQAgAiAFEFMPCyAAQQAgACgCGCAFEFMPCyAAKAIUIQMgACACQYSdwAAQfSIAIAEgAyAFEEggAEEAOgAMDwsgACgCFCEDIAAgAkGUncAAEH1BACABQQFqIgAgAyAAIANJGyAFEEgPCyAAKAIUIQEgACACQaSdwAAQfSIAQQAgASAFEEggAEEAOgAMDwsgACgCFCEDIAAgAkHUnMAAEH0iACABIAEgBCADIAFrIgEgASAESxtqIgEgBRBIIAEgA0YEQCAAQQA6AAwLC6ACAQJ/IwBBEGsiAiQAAkACfwJAIAFBgAFPBEAgAkEANgIMIAFBgBBJDQEgAUGAgARJBEAgAiABQT9xQYABcjoADiACIAFBDHZB4AFyOgAMIAIgAUEGdkE/cUGAAXI6AA1BAwwDCyACIAFBP3FBgAFyOgAPIAIgAUEGdkE/cUGAAXI6AA4gAiABQQx2QT9xQYABcjoADSACIAFBEnZBB3FB8AFyOgAMQQQMAgsgACgCCCIDIAAoAgBGBH8gACADEHkgACgCCAUgAwsgACgCBGogAToAACAAIAAoAghBAWo2AggMAgsgAiABQT9xQYABcjoADSACIAFBBnZBwAFyOgAMQQILIQEgACACQQxqIgAgACABahCDAQsgAkEQaiQAQQALxwICBH8BfiMAQUBqIgMkAEEBIQUCQCAALQAEDQAgAC0ABSEFAkAgACgCACIEKAIcIgZBBHFFBEAgBUUNAUEBIQUgBCgCFEG35sAAQQIgBEEYaigCACgCDBEBAEUNAQwCCyAFRQRAQQEhBSAEKAIUQcXmwABBASAEQRhqKAIAKAIMEQEADQIgBCgCHCEGC0EBIQUgA0EBOgAbIANBNGpBmObAADYCACADIAQpAhQ3AgwgAyADQRtqNgIUIAMgBCkCCDcCJCAEKQIAIQcgAyAGNgI4IAMgBCgCEDYCLCADIAQtACA6ADwgAyAHNwIcIAMgA0EMajYCMCABIANBHGogAigCDBEAAA0BIAMoAjBBvObAAEECIAMoAjQoAgwRAQAhBQwBCyABIAQgAigCDBEAACEFCyAAQQE6AAUgACAFOgAEIANBQGskAAvEAgIEfwF+IwBBQGoiAyQAIAAoAgAhBSAAAn9BASAALQAIDQAaIAAoAgQiBCgCHCIGQQRxRQRAQQEgBCgCFEG35sAAQcHmwAAgBRtBAkEBIAUbIARBGGooAgAoAgwRAQANARogASAEIAIoAgwRAAAMAQsgBUUEQEEBIAQoAhRBwubAAEECIARBGGooAgAoAgwRAQANARogBCgCHCEGCyADQQE6ABsgA0E0akGY5sAANgIAIAMgBCkCFDcCDCADIANBG2o2AhQgAyAEKQIINwIkIAQpAgAhByADIAY2AjggAyAEKAIQNgIsIAMgBC0AIDoAPCADIAc3AhwgAyADQQxqNgIwQQEgASADQRxqIAIoAgwRAAANABogAygCMEG85sAAQQIgAygCNCgCDBEBAAs6AAggACAFQQFqNgIAIANBQGskACAAC5cCAQJ/IwBBEGsiAiQAAkAgACACQQxqAn8CQCABQYABTwRAIAJBADYCDCABQYAQSQ0BIAFBgIAESQRAIAIgAUE/cUGAAXI6AA4gAiABQQx2QeABcjoADCACIAFBBnZBP3FBgAFyOgANQQMMAwsgAiABQT9xQYABcjoADyACIAFBBnZBP3FBgAFyOgAOIAIgAUEMdkE/cUGAAXI6AA0gAiABQRJ2QQdxQfABcjoADEEEDAILIAAoAggiAyAAKAIARgR/IAAgAxB5IAAoAggFIAMLIAAoAgRqIAE6AAAgACAAKAIIQQFqNgIIDAILIAIgAUE/cUGAAXI6AA0gAiABQQZ2QcABcjoADEECCxDMAQsgAkEQaiQAQQALpAIBBn8jAEEQayICJAACQAJAIAEoAhAiBSAAKAIAIAAoAggiA2tLBEAgACADIAUQfCAAKAIEIQQgACgCCCEDIAJBCGogAUEMaigCADYCACACIAEpAgQ3AwAMAQsgACgCBCEEIAJBCGogAUEMaigCADYCACACIAEpAgQ3AwAgBUUNAQsCQCABKAIAIgZBgIDEAEYNACAEIANBBHRqIgEgBjYCACABIAIpAwA3AgQgAUEMaiACQQhqIgcoAgA2AgAgBUEBayIERQRAIANBAWohAwwBCyADIAVqIQMgAUEUaiEBA0AgAUEEayAGNgIAIAEgAikDADcCACABQQhqIAcoAgA2AgAgAUEQaiEBIARBAWsiBA0ACwsgACADNgIICyACQRBqJAALiAQBDX8jAEHQAGsiBiQAIAZBADsAHiAGQQI6ABogBkECOgAWIAZBQGsiB0EIaiILIAUgBkEWaiAFGyIFQQhqLwAAOwEAIAYgBSkAADcDQCAGQTBqIgUgASAHEEwgBkEIaiACEFwgC0EANgIAIAYgBikDCDcCQCMAQRBrIgokACACIAcoAgAgBygCCCIIa0sEQCAHIAggAhB8IAcoAgghCAsgBygCBCAIQQR0aiEJIAJBAk8EQCACQQFrIQwgBSgCCCINQQR0IQ4gBS0ADCEPIAUoAgQhEANAIApBCGogDRBcIAooAgghESAKKAIMIBAgDhDvASESIAkgDzoADCAJIA02AgggCSASNgIEIAkgETYCACAJQRBqIQkgDEEBayIMDQALIAIgCGpBAWshCAsCQCACBEAgCSAFKQIANwIAIAcgCEEBajYCCCAJQQhqIAVBCGopAgA3AgAMAQsgByAINgIIIAUoAgBFDQAgBSgCBBAVCyAKQRBqJAAgBkEoaiALKAIANgIAIAYgBikCQDcDIEHoByEFAkAgA0EBRgRAIAQiBUUNAQsgBigCICAGKAIoIgdrIAVPDQAgBkEgaiAHIAUQfAsgACAGKQMgNwIIIAAgAjYCGCAAIAE2AhQgAEEAOgAcIAAgBDYCBCAAIAM2AgAgAEEQaiAGQShqKAIANgIAIAZB0ABqJAAL8gEBBH8gACgCBCECIABB8KnAADYCBCAAKAIAIQEgAEHwqcAANgIAIAAoAgghAwJAAkAgASACRgRAIAAoAhAiAUUNASAAKAIMIgIgAygCCCIARg0CIAMoAgQiBCAAQQR0aiAEIAJBBHRqIAFBBHQQ7QEMAgsgAiABa0EEdiECA0AgASgCAARAIAFBBGooAgAQFQsgAUEQaiEBIAJBAWsiAg0ACyAAKAIQIgFFDQAgACgCDCICIAMoAggiAEcEQCADKAIEIgQgAEEEdGogBCACQQR0aiABQQR0EO0BCyADIAAgAWo2AggLDwsgAyAAIAFqNgIIC4oCAgR/AX4jAEEwayICJAAgASgCAEGAgICAeEYEQCABKAIMIQMgAkEkaiIEQQhqIgVBADYCACACQoCAgIAQNwIkIARBzN3AACADEBYaIAJBIGogBSgCACIDNgIAIAIgAikCJCIGNwMYIAFBCGogAzYCACABIAY3AgALIAEpAgAhBiABQoCAgIAQNwIAIAJBEGoiAyABQQhqIgEoAgA2AgAgAUEANgIAQa39wAAtAAAaIAIgBjcDCEEMQQQQyQEiAUUEQEEEQQxB6P3AACgCACIAQdYAIAAbEQIAAAsgASACKQMINwIAIAFBCGogAygCADYCACAAQfjewAA2AgQgACABNgIAIAJBMGokAAvfAQEBfyMAQRBrIhUkACAAKAIUIAEgAiAAQRhqKAIAKAIMEQEAIQEgFUEAOgANIBUgAToADCAVIAA2AgggFUEIaiADIAQgBSAGECAgByAIIAlB0IbAABAgIAogCyAMIA0QICAOIA8gECARECAgEiATIBRBkIfAABAgIQECfyAVLQAMIgJBAEcgFS0ADUUNABpBASACDQAaIAEoAgAiAC0AHEEEcUUEQCAAKAIUQb/mwABBAiAAKAIYKAIMEQEADAELIAAoAhRBvubAAEEBIAAoAhgoAgwRAQALIBVBEGokAAvSAQEEfyMAQSBrIgMkAAJAIAIgAkEBaiICSw0AIAEoAgAiBEEBdCIFIAIgAiAFSRsiAkEEIAJBBEsbIgJBAnQhBSACQYCAgIACSUECdCEGAkAgBEUEQCADQQA2AhgMAQsgA0EENgIYIAMgBEECdDYCHCADIAEoAgQ2AhQLIANBCGogBiAFIANBFGoQPCADKAIMIQQgAygCCARAIANBEGooAgAhAgwBCyABIAI2AgAgASAENgIEQYGAgIB4IQQLIAAgAjYCBCAAIAQ2AgAgA0EgaiQAC80BAAJAAkAgAQRAIAJBAEgNAQJAAkACfyADKAIEBEAgA0EIaigCACIBRQRAIAJFBEBBASEBDAQLQa39wAAtAAAaIAJBARDJAQwCCyADKAIAIAFBASACEL8BDAELIAJFBEBBASEBDAILQa39wAAtAAAaIAJBARDJAQsiAUUNAQsgACABNgIEIABBCGogAjYCACAAQQA2AgAPCyAAQQE2AgQMAgsgAEEANgIEDAELIABBADYCBCAAQQE2AgAPCyAAQQhqIAI2AgAgAEEBNgIAC9ABAQF/IwBBEGsiBSQAIAUgACgCFCABIAIgAEEYaigCACgCDBEBADoADCAFIAA2AgggBSACRToADSAFQQA2AgQgBUEEaiADIAQQKiEAIAUtAAwhAQJ/IAFBAEcgACgCACICRQ0AGkEBIAENABogBSgCCCEBAkAgAkEBRw0AIAUtAA1FDQAgAS0AHEEEcQ0AQQEgASgCFEHE5sAAQQEgAUEYaigCACgCDBEBAA0BGgsgASgCFEHS48AAQQEgAUEYaigCACgCDBEBAAsgBUEQaiQAC4QCAQJ/IwBBIGsiBiQAQfz9wABB/P3AACgCACIHQQFqNgIAAkACQCAHQQBIDQBByIHBAC0AAA0AQciBwQBBAToAAEHEgcEAQcSBwQAoAgBBAWo2AgAgBiAFOgAdIAYgBDoAHCAGIAM2AhggBiACNgIUIAZBwN/AADYCECAGQaDdwAA2AgxB7P3AACgCACICQQBIDQBB7P3AACACQQFqNgIAQez9wABB9P3AACgCAAR/IAYgACABKAIQEQIAIAYgBikDADcCDEH0/cAAKAIAIAZBDGpB+P3AACgCACgCFBECAEHs/cAAKAIAQQFrBSACCzYCAEHIgcEAQQA6AAAgBA0BCwALAAvPAQEBfyMAQRBrIg4kACAAKAIUIAFBAyAAQRhqKAIAKAIMEQEAIQEgDkEAOgANIA4gAToADCAOIAA2AgggDkEIaiACQQogAyAEECAgBUEKIAYgBxAgIAhBCSAJIAoQICALQQUgDCANECAhAQJ/IA4tAAwiAkEARyAOLQANRQ0AGkEBIAINABogASgCACIALQAcQQRxRQRAIAAoAhRBv+bAAEECIAAoAhgoAgwRAQAMAQsgACgCFEG+5sAAQQEgACgCGCgCDBEBAAsgDkEQaiQAC6IMAhJ/AX4jAEEQayIQJAAgACgClAEiCCAAKAIURwRAIABBADoAuQELIBBBCGohESAAKAKYASENIAAoAmAhCyAAQeQAaigCACEHIwBBQGoiBiQAQQAgAEEQaigCACICIAAoAhgiCWsgB2oiASACayIEIAEgBEkbIQ4gAEEMaigCACEMIAAoAhQhDwJAIAJFDQAgAUUNACACIAdqIAlBf3NqIQMgDEEMaiEFIAJBBHRBEGshAQNAIAogD2pBACAFLQAAIgQbIQogDiAERWohDiADRQ0BIAVBEGohBSADQQFrIQMgASIEQRBrIQEgBA0ACwsCQCAIIA9GDQAgCiALaiEKIABBADYCECAGQQA2AjggBiACNgI0IAYgAEEIaiIHNgIwIAYgDCACQQR0ajYCLCAGIAw2AiggBiAINgI8IAZBgICAgHg2AhggBkEMaiELIwBBQGoiASQAIAFBGGogBkEYaiIEEBcCQCABKAIYQYCAgIB4RgRAIAtBADYCCCALQoCAgIDAADcCACAEEJ4BDAELIAFBBBBcIAFBGGoiDEEIaikCACETIAEoAgAhBSABKAIEIgMgASkCGDcCACADQQhqIBM3AgAgAUEMaiICQQhqIg9BATYCACABIAM2AhAgASAFNgIMIAwgBEEoEO8BGiMAQRBrIgQkACAEIAwQFyAEKAIAQYCAgIB4RwRAIAIoAggiA0EEdCEFA0AgAigCACADRgRAIAIgA0EBEHwLIAIgA0EBaiIDNgIIIAIoAgQgBWoiEiAEKQIANwIAIBJBCGogBEEIaikCADcCACAEIAwQFyAFQRBqIQUgBCgCAEGAgICAeEcNAAsLIAwQngEgBEEQaiQAIAtBCGogDygCADYCACALIAEpAgw3AgALIAFBQGskACAGKAIUQQR0IQMgBigCECEFAkADQCADRQ0BIANBEGshAyAFKAIIIAVBEGohBSAIRg0AC0H0nsAAQTdBrJ/AABCLAQALIAZBIGoiASAGQRRqKAIANgIAIAYgBikCDDcDGCAHEIABIAcoAgAEQCAAKAIMEBULIAcgBikDGDcCACAHQQhqIAEoAgA2AgAgCSAAKAIQIgJLBEAgACAJIAJrIAgQcyAAKAIQIQILQQAhAwJAIA5FDQAgAkEBayIERQ0AIAAoAgxBDGohBUEAIQEDQAJAIAIgA0cEQCADQQFqIQMgDiABIAUtAABFaiIBSw0BDAMLIAIgAkG0nsAAEFkACyAFQRBqIQUgAyAESQ0ACwsCQAJAIAggCksNACADIAIgAiADSRshASAAKAIMIANBBHRqQQxqIQUDQCABIANGDQIgBS0AAEUNASAFQRBqIQUgA0EBaiEDIAogCGsiCiAITw0ACwsgCiAIQQFrIgEgASAKSxshCyADIAkgAmtqIgFBAE4hBCABQQAgBBshByAJQQAgASAEG2shCQwBCyABIAJBpJ7AABBZAAsCQAJAAkACQAJAQX8gCSANRyAJIA1LG0H/AXEOAgIAAQtBACACIAlrIgEgASACSxsiBCANIAlrIgEgASAESxsiA0EAIAcgCUkbIAdqIQcgASAETQ0BIAAgASADayAIEHMMAQsgAEEIaiEEIAkgDWsiAyAJIAdBf3NqIgEgASADSxsiBQRAAkAgAiAFayIBIAQoAggiAksNACAEIAE2AgggASACRg0AIAIgAWshAiAEKAIEIAFBBHRqIQEDQCABKAIABEAgAUEEaigCABAVCyABQRBqIQEgAkEBayICDQALCyAAKAIQIgFFDQIgACgCDCABQQR0akEEa0EAOgAACyAHIANrIAVqIQcLIABBAToAHCAAIA02AhggACAINgIUIBEgBzYCBCARIAs2AgAgBkFAayQADAELQYybwABBK0GUnsAAEIsBAAsgACAQKQMINwJgIABB1ABqIQgCQCAAKAKYASIBIABB3ABqKAIAIgRNBEAgACABNgJcDAELIAggASAEa0EAEE8gACgCmAEhAQsgCEEAIAEQcCAAKAKUASIBIAAoAmxNBEAgACABQQFrNgJsCyAAKAKYASIBIABB8ABqKAIATQRAIAAgAUEBazYCcAsgEEEQaiQAC8QBAQJ/IwBBIGsiBCQAAkAgAiADaiIDIAJJDQAgASgCACICQQF0IgUgAyADIAVJGyIDQQggA0EISxsiA0F/c0EfdiEFAkAgAkUEQCAEQQA2AhgMAQsgBCACNgIcIARBATYCGCAEIAEoAgQ2AhQLIARBCGogBSADIARBFGoQPCAEKAIMIQUgBCgCCARAIARBEGooAgAhAwwBCyABIAM2AgAgASAFNgIEQYGAgIB4IQULIAAgAzYCBCAAIAU2AgAgBEEgaiQAC9oBAQJ/IwBBIGsiAyQAAkACQCABIAEgAmoiAUsNACAAKAIAIgJBAXQiBCABIAEgBEkbIgFBCCABQQhLGyIEQX9zQR92IQECQCACRQRAIANBADYCGAwBCyADIAI2AhwgA0EBNgIYIAMgACgCBDYCFAsgA0EIaiABIAQgA0EUahA9IAMoAgwhASADKAIIRQRAIAAgBDYCACAAIAE2AgQMAgsgAUGBgICAeEYNASABRQ0AIAEgA0EQaigCAEHo/cAAKAIAIgBB1gAgABsRAgAACxCSAQALIANBIGokAAvaAQECfyMAQSBrIgMkAAJAAkAgASABIAJqIgFLDQAgACgCACICQQF0IgQgASABIARJGyIBQQggAUEISxsiBEF/c0EfdiEBAkAgAkUEQCADQQA2AhgMAQsgAyACNgIcIANBATYCGCADIAAoAgQ2AhQLIANBCGogASAEIANBFGoQMiADKAIMIQEgAygCCEUEQCAAIAQ2AgAgACABNgIEDAILIAFBgYCAgHhGDQEgAUUNACABIANBEGooAgBB6P3AACgCACIAQdYAIAAbEQIAAAsQkgEACyADQSBqJAALxwEBAX8jAEEQayIPJAAgACgCFCABIAIgAEEYaigCACgCDBEBACEBIA9BADoADSAPIAE6AAwgDyAANgIIIA9BCGogAyAEIAUgBhAgIAcgCCAJIAoQICALIAwgDSAOECAhAiAPLQAMIQECfyABQQBHIA8tAA1FDQAaQQEgAQ0AGiACKAIAIgAtABxBBHFFBEAgACgCFEG/5sAAQQIgACgCGCgCDBEBAAwBCyAAKAIUQb7mwABBASAAKAIYKAIMEQEACyAPQRBqJAAL1gEBA38jAEHQAGsiACQAIABBMzYCDCAAQfCMwAA2AgggAEEANgIoIABCgICAgBA3AiAgAEHEAGpB1I3AADYCACAAQQM6AEwgAEEgNgI8IABBADYCSCAAQQA2AjQgAEEANgIsIAAgAEEgajYCQCAAQQhqIgEoAgAgASgCBCAAQSxqEOsBBEBB7I3AAEE3IABBEGpBpI7AAEGAj8AAEE4ACyAAQRBqIgFBCGogAEEoaigCACICNgIAIAAgACkCIDcDECAAKAIUIAIQASABELABIABB0ABqJAALrQEBAX8gACIEAn8CQAJ/AkACQCABBEAgAkEASA0BIAMoAgQEQCADQQhqKAIAIgAEQCADKAIAIAAgASACEL8BDAULCyACRQ0CQa39wAAtAAAaIAIgARDJAQwDCyAEQQA2AgQgBEEIaiACNgIADAMLIARBADYCBAwCCyABCyIABEAgBCAANgIEIARBCGogAjYCAEEADAILIAQgATYCBCAEQQhqIAI2AgALQQELNgIAC64BAQF/AkACQCABBEAgAkEASA0BAn8gAygCBARAAkAgA0EIaigCACIERQRADAELIAMoAgAgBCABIAIQvwEMAgsLIAEgAkUNABpBrf3AAC0AABogAiABEMkBCyIDBEAgACADNgIEIABBCGogAjYCACAAQQA2AgAPCyAAIAE2AgQgAEEIaiACNgIADAILIABBADYCBCAAQQhqIAI2AgAMAQsgAEEANgIECyAAQQE2AgALtAEBA38jAEEQayICJAAgAkKAgICAwAA3AgQgAkEANgIMQQAgAUEIayIEIAEgBEkbIgFBA3YgAUEHcUEAR2oiBARAQQghAQNAIAIoAgQgA0YEQCACQQRqIAMQeCACKAIMIQMLIAIoAgggA0ECdGogATYCACACIAIoAgxBAWoiAzYCDCABQQhqIQEgBEEBayIEDQALCyAAIAIpAgQ3AgAgAEEIaiACQQxqKAIANgIAIAJBEGokAAu9AQEBfyMAQRBrIgskACAAKAIUIAEgAiAAQRhqKAIAKAIMEQEAIQEgC0EAOgANIAsgAToADCALIAA2AgggC0EIaiADIAQgBSAGECAgByAIIAkgChAgIQIgCy0ADCEBAn8gAUEARyALLQANRQ0AGkEBIAENABogAigCACIALQAcQQRxRQRAIAAoAhRBv+bAAEECIAAoAhgoAgwRAQAMAQsgACgCFEG+5sAAQQEgACgCGCgCDBEBAAsgC0EQaiQAC6ABAQJ/IwBBQGoiAiQAAkAgAQRAIAEoAgAiA0F/Rg0BIAEgA0EBajYCACACQRxqQgE3AgAgAkEBNgIUIAJBqITAADYCECACQQE2AiwgAiABQQRqNgIoIAIgAkEoajYCGCACQTBqIgMgAkEQahAdIAEgASgCAEEBazYCACACQQhqIAMQywEgACACKQMINwMAIAJBQGskAA8LEOMBAAsQ5AEAC8UBAQJ/AkACQCAAKAIIIgUgAU8EQCAAKAIEIAFBBHRqIQAgBSABayIEIAJJBEBBtKjAAEEhQdiowAAQiwEACyAEIAJrIgQgACAEQQR0aiACEBMgASACaiIEIAJJDQEgBCAFSw0CIAIEQCACQQR0IQIDQCAAIAMpAgA3AgAgAEEIaiADQQhqKQIANwIAIABBEGohACACQRBrIgINAAsLDwsgASAFQeihwAAQWAALIAEgBEH4ocAAEFsACyAEIAVB+KHAABBaAAuKAQEDfyMAQYABayIDJAAgACgCACEAA0AgAiADakH/AGogAEEPcSIEQTBB1wAgBEEKSRtqOgAAIAJBAWshAiAAQRBJIABBBHYhAEUNAAsgAkGAAWoiAEGAAUsEQCAAQYABQeTmwAAQWAALIAFB9ObAAEECIAIgA2pBgAFqQQAgAmsQFCADQYABaiQAC5IBAQN/IwBBgAFrIgMkACAALQAAIQJBACEAA0AgACADakH/AGogAkEPcSIEQTBBNyAEQQpJG2o6AAAgAEEBayEAIAJB/wFxIgRBBHYhAiAEQRBPDQALIABBgAFqIgJBgAFLBEAgAkGAAUHk5sAAEFgACyABQfTmwABBAiAAIANqQYABakEAIABrEBQgA0GAAWokAAuTAQEDfyMAQYABayIDJAAgAC0AACECQQAhAANAIAAgA2pB/wBqIAJBD3EiBEEwQdcAIARBCkkbajoAACAAQQFrIQAgAkH/AXEiBEEEdiECIARBEE8NAAsgAEGAAWoiAkGAAUsEQCACQYABQeTmwAAQWAALIAFB9ObAAEECIAAgA2pBgAFqQQAgAGsQFCADQYABaiQAC4kBAQN/IwBBgAFrIgMkACAAKAIAIQADQCACIANqQf8AaiAAQQ9xIgRBMEE3IARBCkkbajoAACACQQFrIQIgAEEQSSAAQQR2IQBFDQALIAJBgAFqIgBBgAFLBEAgAEGAAUHk5sAAEFgACyABQfTmwABBAiACIANqQYABakEAIAJrEBQgA0GAAWokAAvcAgEGfyMAQTBrIgMkACADIAI3AwggACEGAkAgAS0AAkUEQCACQoCAgICAgIAQWgRAIANBHGpCATcCACADQQI2AhQgA0HMlcAANgIQIANBwQA2AiwgAyADQShqNgIYIAMgA0EIajYCKEEBIQEjAEEgayIEJAAgA0EQaiIAQQxqKAIAIQUCQAJAAkACQAJAIAAoAgQOAgABAgsgBQ0BQYiVwAAhBUEAIQAMAgsgBQ0AIAAoAgAiBSgCBCEAIAUoAgAhBQwBCyAEQRRqIAAQHSAEKAIcIQAgBCgCGCEHDAELIARBCGogABBmIAQoAgghCCAEKAIMIgcgBSAAEO8BIQUgBCAANgIcIAQgBTYCGCAEIAg2AhQLIAcgABABIQAgBEEUahCwASAEQSBqJAAMAgtBACEBIAK6EAMhAAwBC0EAIQEgAhAEIQALIAYgADYCBCAGIAE2AgAgA0EwaiQAC5IBAQR/IAAtALQBBEAgAEEAOgC0AQNAIAAgAWoiAkGAAWoiAygCACEEIAMgAkHsAGoiAigCADYCACACIAQ2AgAgAUEEaiIBQRRHDQALQQAhAQNAIAAgAWoiAkEgaiIDKAIAIQQgAyACKAIANgIAIAIgBDYCACABQQRqIgFBIEcNAAsgAEHUAGpBACAAKAKYARBwCwuJAQEBfwJAIAEgAk0EQCAAKAIIIgQgAkkNASABIAJHBEAgACgCBCIAIAJBBHRqIQQgACABQQR0aiECIANBCGohAANAIAJBIDYCACACIAMpAAA3AAQgAkEMaiAALwAAOwAAIAQgAkEQaiICRw0ACwsPCyABIAJByKHAABBbAAsgAiAEQcihwAAQWgALwQEBBH8jAEEgayIBJAAgAUEIaiECQa39wAAtAAAaAkBBEEECEMkBIgMEQCACIAM2AgQgAkEINgIADAELQQJBEEHo/cAAKAIAIgBB1gAgABsRAgAACyABQQA2AhwgASABKAIMIgI2AhggASABKAIIIgM2AhQgA0UEQCABQRRqQQAQeiABKAIcIQQgASgCGCECCyACIARBAXRqQQA7AQAgACABKQIUNwIAIABBCGogAUEcaigCAEEBajYCACABQSBqJAALu1UBEn8jAEEgayIPJAACQCAABEAgACgCAA0BIABBfzYCACAPIAI2AhwgDyABNgIYIA8gAjYCFCAPQQhqIA9BFGoQywEgDygCCCEUIA8oAgwhEiMAQSBrIg4kACAOQQxqIQ0gFCEBIABBBGoiA0G8AWohBgJAIBJFDQAgASASaiETA0ACfyABLAAAIgJBAE4EQCACQf8BcSECIAFBAWoMAQsgAS0AAUE/cSEFIAJBH3EhBCACQV9NBEAgBEEGdCAFciECIAFBAmoMAQsgAS0AAkE/cSAFQQZ0ciEFIAJBcEkEQCAFIARBDHRyIQIgAUEDagwBCyAEQRJ0QYCA8ABxIAEtAANBP3EgBUEGdHJyIgJBgIDEAEYNAiABQQRqCyEBQQAhB0EAIQlBwQAgAiACQZ8BSxshBAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBi0AGCIFDgUAAQEBAwELIARBIGtB4ABJDQELIARBG0YNAiAEQdsARg0DDAQLIAMgAhAaDBkLIARBMGtBCkkNDiAEQRtGDQAgBEHbAEYNASAEQTtHDQMMDgsgBkEBOgAYIAYQTQwXCyAFQQFHDQAMDgsCQAJAAkACQAJAIAUODQECAwQFCQYJCQkACQcJCyAEQSBrQd8ASQ0ZDAgLAkAgBEEYSQ0AIARBGUYNACAEQXxxQRxHDQgLDBELIARBcHFBIEYNBSAEQTBrQSBJDREgBEHRAGtBB0kNEQJAAkAgBEHZAGsOBRMTABMBAAsgBEHgAGtBH08NBwwSCyAGQQw6ABgMFwsgBEEwa0HPAE8NBQwQCyAEQS9LBEAgBEE7RyAEQTpPcUUEQCAGQQQ6ABgMDQsgBEFAakE/SQ0TCyAEQXxxQTxHDQQgBkEEOgAYDAoLIARBQGpBP0kNESAEQTpHIARBfHFBPEdxDQMMDwsgBEFAakE/Tw0CDA8LIARBIGtB4ABJDRICQCAEQc8ATARAIARBGGsOAwYFBgELDAMLIARBB0YNDgwDCyAGQQI6ABgMBgsCQCAEQRhrDgMDAgMACwsgBEGZAWtBAkkNASAEQdAARw0AIAVBAUcNAwwGCyAEQXBxIghBgAFGDQAgBEGRAWtBBksNAQsgBkEAOgAYDAYLIAhBIEcNACAFQQRHDQAgBkEFOgAYDAELAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBUEBaw4KAAECAwQMBQYHCAwLIARBGE8NCgwQCyAEQXBxQSBGDQsCQCAEQRhJDQAgBEEZRg0AIARBfHFBHEcNCwsMDwsgBEEYSQ0OIARBGUYNDiAEQXxxQRxGDQ4gBEFwcUEgRw0JIAZBBToAGAwKCwJAIARBGEkNACAEQRlGDQAgBEF8cUEcRw0JCwwNCyAEQUBqQT9PBEAgBEFwcSIHQSBGDQkgB0EwRw0IDA8LDBALIARBfHFBPEYNAyAEQXBxQSBGDQQgBEFAakE/Tw0GDBALIARBL00NBSAEQTpJDQcgBEE7Rg0HIARBQGpBPksNBQwPCyAEQUBqQT9PDQQMDgsgBEEYSQ0PIARBGUYNDyAEQXxxQRxGDQ8MAwsgBkEIOgAYDAMLIAZBCToAGAwCCwJAIARB2ABrIgdBB0sNAEEBIAd0QcEBcUUNACAGQQ06ABgMDQsgBEEZRg0FIARBfHFBHEcNAAwFCwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIARBkAFrDhASAwMDAwMDAwADAxMXAQAAAgsgBkENOgAYDBoLIAZBDDoAGAwZCwJAIARBOmsOAgQCAAsgBEEZRg0CCyAFQQNrDgcJFwMKBAsGFwsgBUEHRg0EDAYLIAVBBUcNBQwOCyAFQQdHDQQMEwsgBEEYSQ0MIARBfHFBHEcNEwwMCyAEQTBrQQpPDRILIAZBCDoAGAwHCyAEQXBxIgRBIEYNBQwBCwJAIAVBA2sOBwIQEAMQBAAQCyAEQXBxIQQLIARBMEcNDgwNCyAEQTpHDQ0MCAsCQCAEQRhJDQAgBEEZRg0AIARBfHFBHEcNDQsMBQsgBEFwcUEgRwRAIARBOkcgBEF8cUE8R3ENDAwLCyAGQQk6ABgLIAZBFGooAgAiBCAGKAIMRgRAIAZBDGogBBB4IAYoAhQhBAsgBkEQaigCACAEQQJ0aiACNgIAIAYgBigCFEEBajYCFAwKCyAGKAIIIQQCQCACQTtGBEAgBigCACAERgRAIAYgBBB6IAYoAgghBAsgBigCBCAEQQF0akEAOwEAIAYgBigCCEEBajYCCAwBCyAEQQFrIQUgBARAIAYoAgQgBUEBdGoiBCAELwEAQQpsIAJqQTBrOwEADAELIAVBAEGIpcAAEFkACwwJCyAGQQc6ABggBhBNDAgLIAZBAzoAGCAGEE0MBwsgAyACECYMBgsgBkEAOgAYAkACQAJAAkACQAJAAkACQAJAIAZBFGooAgBFBEAgAkHg//8AcUHAAEYNASACQTdrDgICAwQLIAZBEGooAgAhBCACQTBGDQQgAkE4Rg0FIAQoAgAhBAwHCyADIAJBQGtB/wFxECYMBwsgA0H0AGogAykBqgE3AQAgA0H+AGogAy8BtgE7AQAgA0HwAGogA0HkAGooAgA2AgAgA0H8AGogA0GyAWovAQA7AQAgAyADKAJgIgIgAygClAFBAWsiBCACIARJGzYCbAwGCyADQQA6ALkBIAMgAykCbDcCYCADIANB9ABqKQEANwGqASADQbIBaiADQfwAai8BADsBACADIANB/gBqLwEAOwG2AQwFCyACQeMARw0EIAZBADoAGCMAQeAAayICJAAgAkEIaiADKAKUASIEIAMoApgBIgUgAygCQCADQcQAaigCAEEAEC0gAkEoaiAEIAVBAUEAQQAQLSADQQhqIgUQgAEgAygCCARAIANBDGooAgAQFQsgAyACKQIINwIAIANBGGogAkEIaiIEQRhqKQIANwIAIANBEGogBEEQaikCADcCACAFIARBCGopAgA3AgAgA0EgaiEEIANBKGoiBRCAASAFKAIABEAgA0EsaigCABAVCyAEIAIpAig3AgAgA0EAOgC0ASAEQRhqIAJBKGoiBUEYaikCADcCACAEQRBqIAVBEGopAgA3AgAgBEEIaiAFQQhqKQIANwIAIAJB1ABqIAMoApQBED4gA0HIAGohBCADKAJIBEAgA0HMAGooAgAQFQsgBCACKQJUNwIAIARBCGogAkHUAGoiB0EIaiIEKAIANgIAIANBsgFqQQA7AQAgA0GuAWpBAjoAACADQQI6AKoBIANB6ABqQQE6AAAgA0IANwJgIANBADsBqAEgA0EAOgC5ASADQYCABDYAtQEgA0IANwKcASADQZABakGAgIAINgIAIANBjAFqQQI6AAAgA0GIAWpBAjoAACADQYQBakEANgIAIANB/ABqQoCAgAg3AgAgA0H4AGpBAjoAACADQfQAakECOgAAIANCADcCbCADIAMoApgBIgVBAWs2AqQBIAIgBRBmIARBADYCACACIAIpAwA3AlQgByAFQQEQTyACQdAAaiAEKAIANgIAIAIgAikCVDcDSCADQdQAaiEEIAMoAlQEQCADQdgAaigCABAVCyAEIAIpA0g3AgAgBEEIaiACQdAAaigCADYCACADQQA6ALsBIAJB4ABqJAAMBAsgBCgCACIEQShGDQEMAgsgBCgCACIEQSNHDQEjAEEQayICJAACQAJAIAMoApgBIggEQCADQdgAaigCACEKIANB3ABqKAIAIQQgAygClAEhBwNAIAcEQEEAIQUDQCACQQA7AQwgAkECOgAIIAJBAjoABCACQcUANgIAIAMgBSAJIAIQgQEgByAFQQFqIgVHDQALCyAEIAlGDQIgCSAKakEBOgAAIAggCUEBaiIJRw0ACwsgAkEQaiQADAELIAQgBEHQqcAAEFkACwwCCyADQQE6AKgBDAELAkACQCAEQShrDgIAAQILIANBADoAqAEMAQsgAkEwRgRAIANBAToAqQEMAQsgA0EAOgCpAQsMBQsgBkEGOgAYDAQLIAZBADoAGAwDCyAGQQA6ABgCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAZBFGooAgBFBEAgAkFAag42AQIDEgQFBiIWBwgJCgsjIwwjIw0OIyMPECMRIyMjIyMiEhMjFBUWFxgjIyMhICMjIyMfHh0cIwsgBkEQaigCACEEAkAgAkHsAGsOBRkjIyMbAAsgAkHoAEYNGQwiCyMAQRBrIgIkACAGKAIEQZilwAAgBigCCBsvAQAhBSADQeQAaigCACEEIAMoAmAhByACQQxqIANBsgFqLwEAOwEAIAJBIDYCACACIAMpAaoBNwIEIAMoAhQgB2shCCADIARBtJzAABB9IAcgBUEBIAVBAUsbIgUgCCAFIAhJGyACEEEgA0HcAGooAgAiBSAETQRAIAQgBUHQqcAAEFkACyADQdgAaigCACAEakEBOgAAIAJBEGokAAwhCyADQQA6ALkBIAMgAygCYCICIAMoApQBQQFrIgQgAiAESRs2AmBBACADKAKgASICIANB5ABqIgQoAgAiBSACSRshAiAEIAIgBSAGKAIEQZilwAAgBigCCBsvAQAiBEEBIARBAUsbayIEIAIgBEobNgIADCALIAMgBhBUDB8LIAMtALkBIQIgA0EAOgC5ASADQQAgAygCYCAGKAIEQZilwAAgBigCCBsvAQAiBEEBIARBAUsbIgRBf3NBACAEayACG2oiAiADKAKUASIEQQFrIAIgBEkbIAJBAEgbNgJgDB4LIANBADoAuQEgA0EANgJgIAMoApgBQQFrIAMoAqQBIgIgA0HkAGoiBCgCACIFIAJLGyECIAQgAiAFIAYoAgRBmKXAACAGKAIIGy8BACIEQQEgBEEBSxtqIgQgAiAESRs2AgAMHQsgA0EAOgC5ASADQQA2AmBBACADKAKgASICIANB5ABqIgQoAgAiBSACSRshAiAEIAIgBSAGKAIEQZilwAAgBigCCBsvAQAiBEEBIARBAUsbayIEIAIgBEobNgIADBwLIwBBEGsiBSQAIAVBCGohCCADKAJgIQogA0HIAGoiBCgCBCECIAIgBCgCCEECdGohCwJ/AkAgBigCBEGYpcAAIAYoAggbLwEAIgRBASAEQQFLGyIJQQFrIgwEQEEBIQkDQCAHQQFqIQcDQCALIAIiBEYNAyAJQQFxBEAgBEEEaiECIAQoAgAgCk0NAQsLIARBBGohAkEAIQkgByAMRw0ACyAEQQRqIQILIAIhBANAIAQgC0YNAQJAIAwEQCACKAIAIQkMAQsgBCgCACEJIARBBGohBCAJIApNDQELC0EBDAELQQALIQIgCCAJNgIEIAggAjYCACAFKAIMIQIgBSgCCCEEIANBADoAuQEgAyACIAMoApQBIgJBAWsiByAEGyIEIAcgAiAESxs2AmAgBUEQaiQADBsLAkACQAJAAkAgBigCBEGYpcAAIAYoAggbLwEADgMAAQIDCyADIAMoAmAgA0HkAGoiAigCAEEBIAMgA0GqAWoQJyADQdQAaiACKAIAIAMoApgBEHAMAgsgAyADKAJgIANB5ABqIgIoAgBBAiADIANBqgFqECcgA0HUAGpBACACKAIAQQFqEHAMAQsgA0EAIAMoAhggA0GqAWoQUyADQdQAakEAIAMoApgBEHALDBoLAkACQAJAAkACQCAGKAIEQZilwAAgBigCCBsvAQAOAwABAgQLIAMoAhQhAiADKAJgIQQgAyADQeQAaigCACIFQYSdwAAQfSIHIAQgAiADQaoBahBIIAdBADoADAwCCyADKAIUIQIgAygCYEEBaiEEIAMgA0HkAGooAgAiBUGUncAAEH1BACAEIAIgAiAESxsgA0GqAWoQSAwBCyADKAIUIQIgAyADQeQAaigCACIFQaSdwAAQfSIEQQAgAiADQaoBahBIIARBADoADAsgA0HcAGooAgAiAiAFSwRAIANB2ABqKAIAIAVqQQE6AAAMAQsgBSACQdCpwAAQWQALDBkLIAMoApgBIAMoAqQBIgJBAWogAiADQeQAaigCACICSRshBCADIAIgBCAGKAIEQZilwAAgBigCCBsvAQAiBUEBIAVBAUsbIANBqgFqEFAgA0HUAGogAiAEEHAMGAsgAygCmAEgAygCpAEiAkEBaiACIANB5ABqKAIAIgJJGyEEIAMgAiAEIAYoAgRBmKXAACAGKAIIGy8BACIFQQEgBUEBSxsgA0GqAWoQISADQdQAaiACIAQQcAwXCyADKAJgIgIgAygClAEiBE8EQCADQQA6ALkBIAMgBEEBayICNgJgCyAGKAIEQZilwAAgBigCCBsvAQAiBEEBIARBAUsbIgQgAygCFCACayIFIAQgBUkbIQUgA0GqAWohCAJAAkAgAyADQeQAaigCACIHQcScwAAQfSIJKAIIIgQgAk8EQCAJKAIEIgogAkEEdGogBCACayAFEKEBIAQgBWshAiAEIAVJDQEgBQRAIAogBEEEdGohBCAKIAJBBHRqIQUgCEEIaiECA0AgBUEgNgIAIAUgCCkAADcABCAFQQxqIAIvAAA7AAAgBCAFQRBqIgVHDQALCwwCCyACIARBiKLAABBYAAsgAiAEQZiiwAAQWAALIAlBADoADCADQdwAaigCACICIAdNBEAgByACQdCpwAAQWQALIANB2ABqKAIAIAdqQQE6AAAMFgsgAyAGKAIEQZilwAAgBigCCBsvAQAiAkEBIAJBAUsbEJ8BDBULIAMgBigCBEGYpcAAIAYoAggbLwEAIgJBASACQQFLGxCgAQwUCwJAAkACQAJAIAYoAgRBmKXAACAGKAIIGy8BAA4GAAMBAwMCAwsgAygCYCICRQ0CIAIgAygClAFPDQIgA0HIAGogAhBRDAILIANByABqIAMoAmAQUgwBCyADQdAAakEANgIACwwTCyADIAMoAmAgA0HkAGoiAigCAEEAIAYoAgRBmKXAACAGKAIIGy8BACIEQQEgBEEBSxsgA0GqAWoQJyADQdwAaigCACIEIAIoAgAiAk0EQCACIARB0KnAABBZAAsgA0HYAGooAgAgAmpBAToAAAwSC0EAIQUjAEEQayILJAAgC0EIaiEMIAMoAmAhECADQcgAaiICKAIEIQcgByACKAIIQQJ0aiECAkACQAJAIAYoAgRBmKXAACAGKAIIGy8BACIEQQEgBEEBSxsiBEEBayIRRQ0AQQEhCgNAIAJBBGshBCAFIghBAWohBQJAA0AgBCICQQRqIAdGDQEgCgRAIAJBBGshBCACKAIAIBBPDQELC0EAIQpBASEJIAUgEUcNAQwCCwsgByECIAggEUcNAQsDQCACIAdGDQEgAkEEayICKAIAIQRBASEKIAkNAiAEIBBPDQALDAELQQAhCgsgDCAENgIEIAwgCjYCACALKAIMIQIgCygCCCEEIANBADoAuQEgAyACQQAgBBsiAiADKAKUASIEQQFrIAIgBEkbNgJgIAtBEGokAAwRCyADQQA6ALkBIANBACADKAJgIAYoAgRBmKXAACAGKAIIGy8BACICQQEgAkEBSxtqIgIgAygClAEiBEEBayACIARJGyACQQBIGzYCYAwQCyADKAJgIgIEQCAGKAIEQZilwAAgBigCCBsvAQAiBEEBIARBAUsbIQUgAkEBayEEIANB5ABqKAIAIQcjAEEQayICJAAgAkEIaiADEIQBAkACQCACKAIMIgggB0sEQCACKAIIIAdBBHRqIgcoAggiCCAETQ0BIAcoAgQgAkEQaiQAIARBBHRqIQIMAgsgByAIQZykwAAQWQALIAQgCEGcpMAAEFkACyACKAIAIQIDQCADIAIQGiAFQQFrIgUNAAsLDA8LIANBADoAuQEgAyADKAJgIgIgAygClAFBAWsiBCACIARJGzYCYCADQeQAaiADKAKgAUEAIAMtALYBIgQbIgIgBigCBEGYpcAAIAYoAggbLwEAIgVBASAFQQFLG2pBAWsiBSACIAIgBUkbIgIgAygCpAEgAygCmAFBAWsgBBsiBCACIARJGzYCAAwOCyADIAYQVAwNCyADQQA6ALkBIANB5ABqIAMoAqABQQAgAy0AtgEiBBsiAiAGKAIEIgVBmKXAACAGKAIIIgcbLwEAIghBASAIQQFLG2pBAWsiCCACIAIgCEkbIgIgAygCpAEgAygCmAFBAWsgBBsiBCACIARJGzYCACADIAVBAmpBmKXAACAHQQFLGy8BACICQQEgAkEBSxtBAWsiBCADKAKUASIFQQFrIgIgBCAFSRsiBCACIAIgBEsbNgJgDAwLAkACQAJAIAYoAgRBmKXAACAGKAIIGy8BAA4EAAICAQILIANByABqIAMoAmAQUgwBCyADQdAAakEANgIACwwLCyAGKAIIIgJFDQogBigCBCEEIAJBAXQhAgNAAkACQCAELwEAIgVBBEcEQCAFQRRGDQEMAgsgA0EBOgC1AQwBCyADQQE6ALgBCyAEQQJqIQQgAkECayICDQALDAoLIAQoAgBBP0cNCSAGKAIIIgIEQCAGKAIEIQUgAkEBdCEEIANBqgFqIQIgA0H0AGohBwNAAkACQCAFLwEAIghBlghNBEACQAJAAkACQCAIQQZrDgIBAgALIAhBGUYNAiAIQS9GDQQMBQsgA0EAOgC5ASADQgA3AmAgA0EAOgC2AQwECyADQQA6ALcBDAMLIANBADoAaAwCCwJAAkAgCEGXCGsOAwIBAAMLIAMQRyADQQA6ALkBIAMgAykCbDcCYCACIAcpAQA3AQAgAkEIaiAHQQhqLwEAOwEAIAMgAy8BfjsBtgEgAxA2DAILIANBADoAuQEgAyADKQJsNwJgIAIgBykBADcBACADIAMvAX47AbYBIAJBCGogB0EIai8BADsBAAwBCyADEEcgAxA2CyAFQQJqIQUgBEECayIEDQALCwwJCyAEKAIAQT9HDQggBigCCCICBEAgBigCBCEEIAJBAXQhBSADQfQAaiEHIANBqgFqIQgDQAJAAkACQCAELwEAIgJBlghNBEACQAJAAkACQCACQQZrDgIBAgALIAJBGUYNAiACQS9GDQQMBgsgA0EBOgC2ASADQQA6ALkBIANBADYCYCADIAMoAqABNgJkDAULIANBAToAtwEMBAsgA0EBOgBoDAMLAkAgAkGXCGsOAwECAAMLIAMgAygCZDYCcCAHIAgpAQA3AQAgAyADLwG2ATsBfiAHQQhqIAhBCGovAQA7AQAgAyADKAJgIgIgAygClAFBAWsiCSACIAlJGzYCbAtBACEJIwBBIGsiAiQAIAMtALQBRQRAIANBAToAtAEDQCADIAlqIgpBgAFqIgsoAgAhDCALIApB7ABqIgooAgA2AgAgCiAMNgIAIAlBBGoiCUEURw0AC0EAIQkDQCADIAlqIgpBIGoiCygCACEMIAsgCigCADYCACAKIAw2AgAgCUEEaiIJQSBHDQALIAIgAygClAEgAygCmAEiCUEBQQAgA0GqAWoQLSADQQhqIgoQgAEgAygCCARAIANBDGooAgAQFQsgAyACKQIANwIAIANBGGogAkEYaikCADcCACADQRBqIAJBEGopAgA3AgAgCiACQQhqKQIANwIAIANB1ABqQQAgCRBwCyACQSBqJAAgAxA2DAELIAMgAygCZDYCcCAHIAgpAQA3AQAgAyADLwG2ATsBfiAHQQhqIAhBCGovAQA7AQAgAyADKAJgIgIgAygClAFBAWsiCSACIAlJGzYCbAsgBEECaiEEIAVBAmsiBQ0ACwsMCAsgBCgCAEEhRw0HIANBADsAtQEgA0ECOgCqASADQQA7AagBIANCADcCnAEgA0IANwJsIANB6ABqQQE6AAAgA0GyAWpBADsBACADQa4BakECOgAAIANB/ABqQYCAgAg2AgAgA0H4AGpBAjoAACADQfQAakECOgAAIAMgAygCmAFBAWs2AqQBDAcLIANBADoAuQEgAyADKQJsNwJgIAMgA0H0AGopAQA3AaoBIANBsgFqIANB/ABqLwEAOwEAIAMgA0H+AGovAQA7AbYBDAYLAkAgAy0AugFFDQAgBigCBCICQZilwAAgBigCCCIEGy8BAEEIRw0AIAJBAmpBmKXAACAEQQFLGy8BACIFIAMoApgBIgkgBRshCiACQQRqQZilwAAgBEECSxsvAQAiBCADKAKUASICIAQbIQgCQAJAAkACQEF/IAIgCEcgAiAISxtB/wFxDgIDAQALIANB0ABqKAIAIgIEQCADQcwAaigCACELIAIhBANAIAsgAkEBdiAHaiICQQJ0aigCACAISSEFIAQgAiAFGyIEIAJBAWogByAFGyIHayECIAQgB0sNAAsLIAMgBzYCUAwBCyADQcgAaiEFQQAgCCACQXhxQQhqIgRrIgIgAiAISxsiAkEDdiACQQdxQQBHaiICBEBBACACayEJIAUoAgghAgNAIAUoAgAgAkYEQCAFIAIQeCAFKAIIIQILIAUoAgQgAkECdGogBDYCACAFIAUoAghBAWoiAjYCCCAEQQhqIQQgCUEBaiIJDQALCyADKAKYASEJCyADQQE6ALsBCyAJIApHBEAgA0EBOgC7ASADQQA2AqABIAMgCkEBazYCpAELIAMgCjYCmAEgAyAINgKUASADEDYLDAULIANB9ABqIAMpAaoBNwEAIANB/gBqIAMvAbYBOwEAIANB8ABqIANB5ABqKAIANgIAIANB/ABqIANBsgFqLwEAOwEAIAMgAygCYCICIAMoApQBQQFrIgQgAiAESRs2AmwMBAsCQCAGKAIEIgJBmKXAACAGKAIIIgQbLwEAIgVBASAFQQFLG0EBayIFIAJBAmpBmKXAACAEQQFLGy8BACICIAMoApgBIgQgAhtBAWsiAkkgAiAESXFFBEAgAygCoAEhBQwBCyADIAI2AqQBIAMgBTYCoAELIANBADoAuQEgA0EANgJgIANB5ABqIAVBACADLQC2ARs2AgAMAwsCQCAGKAIIIgdFDQAgA0GzAWotAAAhAiAGKAIEIQUgA0GxAWohCCADQa0BaiEJA0ACfwJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQCAFLwEAIgQOHA4AAQIDBA0FDQYNDQ0NDQ0NDQ0NDQcHCAkKDQsNCyADQQE6ALIBDBULIANBAjoAsgEMFAsgAkEBcgwJCyACQQJyDAgLIAJBCHIMBwsgAkEQcgwGCyACQQRyDAULIANBADoAsgEMDgsgAkH+AXEMAwsgAkH9AXEMAgsgAkH3AXEMAQsgAkHvAXELIgI6ALMBDAkLAkAgBEEeayIKQf//A3FBCE8EQCAEQSZrDgIBAwULIANBADoAqgEgAyAKOgCrAQwJCyAHQQJPDQIMCwtBACECIANBADsBsgEgA0ECOgCuAQsgA0ECOgCqAQwGCwJAAkACQCAFQQJqIgQvAQBBAmsOBAEAAAIACyAHQQFrDAgLIAdBBU8NBAwDCyAHQQNJDQggAyAFLQAEOgCrASADQQA6AKoBDAELAkACQAJAIARB+P8DcUEoRwRAIARBMGsOAgIBAwsgA0EAOgCuASADIARBKGs6AK8BDAcLIANBAjoArgEMBgsgB0ECSQ0IAkACQAJAIAVBAmoiBC8BAEECaw4EAQAAAgALIAdBAWsMCAsgB0EFSQ0DIAUtAAQhBCAFLwEGIQogCCAFLwEIOgAAIANBAToArgEgAyAEIApBCHRyOwCvAQwFCyAHQQNJDQggAyAFLQAEOgCvASADQQA6AK4BDAELIARB2gBrQf//A3FBCE8EQCAEQeQAa0H//wNxQQhPDQUgA0EAOgCuASADIARB3ABrOgCvAQwFCyADQQA6AKoBIAMgBEHSAGs6AKsBDAQLIAVBBmohBCAHQQNrDAQLIAVBBGohBCAHQQJrDAMLIAUtAAQhBCAFLwEGIQogCSAFLwEIOgAAIANBAToAqgEgAyAEIApBCHRyOwCrAQsgBUEKaiEEIAdBBWsMAQsgBUECaiEEIAdBAWsLIQcgBCEFIAcNAAsLDAILIAYoAggiAkUNASAGKAIEIQQgAkEBdCECA0ACQAJAIAQvAQAiBUEERwRAIAVBFEYNAQwCCyADQQA6ALUBDAELIANBADoAuAELIARBAmohBCACQQJrIgINAAsMAQsgA0EAOgC5ASADIAYoAgRBmKXAACAGKAIIGy8BACICQQEgAkEBSxtBAWsiAiADKAKUASIEQQFrIAIgBEkbNgJgCwwCCyAGQQo6ABgMAQsgBkELOgAYCyABIBNHDQALCyADLQAcBEAjAEEgayIBJAACQAJAAkAgAygCAEUNACADKAIEIgIgA0EQaigCACIEIAMoAhhrIgVPDQAgBSACayICIARLDQEgA0EANgIQIAEgA0EIajYCFCABIAI2AhggASAEIAJrNgIcIAEgA0EMaigCACIENgIMIAEgBCACQQR0ajYCECABQQxqEC4LIAFBIGokAAwBCyACIARB7JrAABBaAAsgA0EAOgAcCyMAQRBrIgYkACADQdwAaigCACEIIANB2ABqKAIAIQkgBkEANgIMIAYgCCAJajYCCCAGIAk2AgQjAEEwayIHJAAgBkEEaiIEKAIIQQFrIQUgBCgCACEBIAQoAgQhCgJAAkADQCABIApGDQEgBCABQQFqIgI2AgAgBCAFQQJqNgIIIAVBAWohBSABLQAAIAIhAUUNAAsgB0EIaiEBQa39wAAtAAAaAkBBEEEEEMkBIgIEQCABIAI2AgQgAUEENgIADAELQQRBEEHo/cAAKAIAIgBB1gAgABsRAgAACyAHKAIIIQIgBygCDCIKIAU2AgAgB0EUaiIBQQhqIgtBATYCACAHIAo2AhggByACNgIUIAdBIGoiAkEIaiAEQQhqKAIANgIAIAcgBCkCADcDICACKAIIIQogAigCACEEIAIoAgQhDANAIAQgDEcEQCACIARBAWoiBTYCACAELQAAIAIgCkEBaiIKNgIIIAUhBEUNASABKAIIIgUgASgCAEYEQCABIAUQeAsgASAFQQFqNgIIIAEoAgQgBUECdGogCkEBazYCAAwBCwsgDUEIaiALKAIANgIAIA0gBykCFDcCAAwBCyANQQA2AgggDUKAgICAwAA3AgALIAdBMGokACANIAMtALsBOgAMIAgEQCAJQQAgCBDuARoLIANBADoAuwEgBkEQaiQAIwBBQGoiBCQAIARBADoAHiAEQQA7ARwgBEEwaiAEQRxqELYBAn8CQAJAAn8CQCAEKAIwBEAgBEEgaiIDQQhqIARBOGooAgA2AgAgBCAEKQIwNwMgIARBEGohCSMAQRBrIgUkACADKAIIIRAgBUEIaiEKIAMoAgAhByMAQTBrIgEkACANKAIEIQIgAUEgaiAHIA0oAggiBxC1AQJ/AkAgASgCIARAIAFBGGogAUEoaigCADYCACABIAEpAiA3AxAgB0ECdCEIAkADQCAIRQ0BIAhBBGshCCABIAI2AiAgAkEEaiECIAFBCGohCyMAQRBrIgckACABQRBqIgYoAgghESAHQQhqIAYoAgAgAUEgaigCADUCABBGIAcoAgwhDCAHKAIIIhNFBEAgBkEEaiARIAwQ1AEgBiAGKAIIQQFqNgIICyALIBM2AgAgCyAMNgIEIAdBEGokACABKAIIRQ0ACyABKAIMIQIgASgCFCIHQYQBSQ0CIAcQAAwCCyABQSBqIgJBCGogAUEYaigCADYCACABIAEpAxA3AyAgASACKAIENgIEIAFBADYCACABKAIEIQIgASgCAAwCCyABKAIkIQILQQELIQcgCiACNgIEIAogBzYCACABQTBqJAAgBSgCDCEBIAUoAggiAkUEQCADQQRqIBAgARDUASADIAMoAghBAWo2AggLIAkgAjYCACAJIAE2AgQgBUEQaiQAIAQoAhBFDQEgBCgCFAwCCyAEKAI0IQEMAgsgBEEIaiEDIwBBEGsiASQAIARBIGoiAigCCCEHIAIoAgAaIAFBCGoiBUGCAUGDASANQQxqLQAAGzYCBCAFQQA2AgAgASgCDCEFIAEoAggiDUUEQCACQQRqIAcgBRDUASACIAIoAghBAWo2AggLIAMgDTYCACADIAU2AgQgAUEQaiQAIAQoAghFDQIgBCgCDAshASAEKAIkIgJBhAFJDQAgAhAAC0EBDAELIARBMGoiAUEIaiAEQShqKAIANgIAIAQgBCkDIDcDMCAEIAEoAgQ2AgQgBEEANgIAIAQoAgQhASAEKAIACyECIA4gATYCBCAOIAI2AgAgBEFAayQAIA4oAgQhASAOKAIABEAgDiABNgIcQbCAwABBKyAOQRxqQdyAwABBmITAABBOAAsgDkEMahCwASAOQSBqJAAgEgRAIBQQFQsgAEEANgIAIA9BIGokACABDwsQ4wEACxDkAQALkQECBH8BfiMAQSBrIgIkACABKAIAQYCAgIB4RgRAIAEoAgwhAyACQRRqIgRBCGoiBUEANgIAIAJCgICAgBA3AhQgBEHM3cAAIAMQFhogAkEQaiAFKAIAIgM2AgAgAiACKQIUIgY3AwggAUEIaiADNgIAIAEgBjcCAAsgAEH43sAANgIEIAAgATYCACACQSBqJAALoAIBBn8jAEEwayIDJAAgA0EgaiACQQhqLwAAOwEAIANBIDYCFCADIAIpAAA3AhggA0EIaiABEFwgA0EkaiICQQhqIghBADYCACADIAMpAwg3AiQgA0EUaiEGIAEgAigCACACKAIIIgRrSwRAIAIgBCABEHwgAigCCCEECyACKAIEIARBBHRqIQUgAUECTwRAIAFBAWshBwNAIAUgBikCADcCACAFQQhqIAZBCGopAgA3AgAgBUEQaiEFIAdBAWsiBw0ACyABIARqQQFrIQQLIAEEQCAFIAYpAgA3AgAgBUEIaiAGQQhqKQIANwIAIARBAWohBAsgAiAENgIIIABBCGogCCgCADYCACAAIAMpAiQ3AgAgAEEAOgAMIANBMGokAAtsAQF/IwBBEGsiASQAIAFBBGoQSSAAKAIABEAgACgCBBAVCyAAIAEpAgQ3AgAgAEEIaiABQQxqKAIANgIAIAAoAgwEQCAAQRBqKAIAEBULIABCgICAgMAANwIMIABBFGpBADYCACABQRBqJAALhAEBAX8jAEFAaiIFJAAgBSABNgIMIAUgADYCCCAFIAM2AhQgBSACNgIQIAVBGGoiAEEMakICNwIAIAVBMGoiAUEMakHtADYCACAFQQI2AhwgBUGI5sAANgIYIAVB7gA2AjQgBSABNgIgIAUgBUEQajYCOCAFIAVBCGo2AjAgACAEEJMBAAt3AQN/IAEgACgCACAAKAIIIgNrSwRAIAAgAyABEHsgACgCCCEDCyAAKAIEIgUgA2ohBAJAAkAgAUECTwRAIAQgAiABQQFrIgEQ7gEaIAUgASADaiIDaiEEDAELIAFFDQELIAQgAjoAACADQQFqIQMLIAAgAzYCCAukAQEDfyMAQRBrIgYkACAGQQhqIAAgASACQeSdwAAQXSAGKAIIIQcgAyACIAFrIgUgAyAFSRsiAyAGKAIMIgVLBEBBvKDAAEEhQeCgwAAQiwEACyAFIANrIgUgByAFQQR0aiADEBMgACABIAEgA2ogBBBTIAEEQCAAIAFBAWtB9J3AABB9QQA6AAwLIAAgAkEBa0GEnsAAEH1BADoADCAGQRBqJAALvQEBBX8CQCAAKAIIIgIEQCAAKAIEIQYgAiEEA0AgBiACQQF2IANqIgJBAnRqKAIAIgUgAUYNAiACIAQgASAFSRsiBCACQQFqIAMgASAFSxsiA2shAiADIARJDQALCyAAKAIIIgIgACgCAEYEQCAAIAIQeAsgACgCBCADQQJ0aiEEAkAgAiADTQRAIAIgA0YNASADIAIQVwALIARBBGogBCACIANrQQJ0EO0BCyAEIAE2AgAgACACQQFqNgIICwuVAgEFfwJAIAAoAggiAkUNACAAKAIEIQYgAiEDA0AgBiACQQF2IARqIgJBAnRqKAIAIgUgAUcEQCACIAMgASAFSRsiAyACQQFqIAQgASAFSxsiBGshAiADIARLDQEMAgsLAkAgACgCCCIBIAJLBEAgACgCBCACQQJ0aiIDKAIAGiADIANBBGogASACQX9zakECdBDtASAAIAFBAWs2AggMAQsjAEEwayIAJAAgACABNgIEIAAgAjYCACAAQQhqIgFBDGpCAjcCACAAQSBqIgJBDGpB1QA2AgAgAEEDNgIMIABB9OLAADYCCCAAQdUANgIkIAAgAjYCECAAIABBBGo2AiggACAANgIgIAFBkKPAABCTAQALCwvXAgEIfyMAQSBrIgQkACAEQRBqIAAoAhQgAxBMIARBCGogABCFAQJAIAEgAk0EQCAEKAIMIgAgAkkNASAEKAIIIAFBBHRqIQAgBEEQaiEDIwBBEGsiBSQAAkAgAiABayIBBEAgACABQQFrIgJBBHRqIgZBACABGyEBIAIEQCADKAIIIgJBBHQhByADLQAMIQggAygCBCEJA0AgBUEIaiACEFwgBSgCCCEKIAUoAgwgCSAHEO8BIQsgACgCAARAIABBBGooAgAQFQsgACAIOgAMIAAgAjYCCCAAIAs2AgQgACAKNgIAIAYgAEEQaiIARw0ACwsgASgCAARAIAEoAgQQFQsgASADKQIANwIAIAFBCGogA0EIaikCADcCAAwBCyADKAIARQ0AIAMoAgQQFQsgBUEQaiQAIARBIGokAA8LIAEgAkHknsAAEFsACyACIABB5J7AABBaAAt8AQJ/IABBADoAuQEgACAAKAJgIgIgACgClAFBAWsiAyACIANJGzYCYCAAKAKYAUEBayAAKAKkASICIAIgAEHkAGoiAigCACIDSRshACACIAAgAyABKAIEQZilwAAgASgCCBsvAQAiAUEBIAFBAUsbaiIBIAAgAUkbNgIAC2sBBX8CQCAAKAIIIgJFDQAgACgCBEEQayEEIAJBBHQhAyACQQFrQf////8AcUEBaiEFAkADQCADIARqEGtFDQEgAUEBaiEBIANBEGsiAw0ACyAFIQELIAFBAWsgAk8NACAAIAIgAWs2AggLC3UBAn8jAEEQayIEJAAgBEEIaiABKAIQIAIgAxDAASAEKAIMIQIgBCgCCCIDRQRAAkAgASgCCEUNACABQQxqKAIAIgVBhAFJDQAgBRAACyABQQE2AgggAUEMaiACNgIACyAAIAM2AgAgACACNgIEIARBEGokAAt2AQF/IwBBMGsiAiQAIAIgATYCBCACIAA2AgAgAkEIaiIAQQxqQgI3AgAgAkEgaiIBQQxqQdUANgIAIAJBAzYCDCACQcjiwAA2AgggAkHVADYCJCACIAE2AhAgAiACQQRqNgIoIAIgAjYCICAAQfyawAAQkwEAC3MBAX8jAEEwayIDJAAgAyAANgIAIAMgATYCBCADQQhqIgBBDGpCAjcCACADQSBqIgFBDGpB1QA2AgAgA0ECNgIMIANBoOnAADYCCCADQdUANgIkIAMgATYCECADIANBBGo2AiggAyADNgIgIAAgAhCTAQALcwEBfyMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBCGoiAEEMakICNwIAIANBIGoiAUEMakHVADYCACADQQI2AgwgA0HU5MAANgIIIANB1QA2AiQgAyABNgIQIAMgAzYCKCADIANBBGo2AiAgACACEJMBAAtzAQF/IwBBMGsiAyQAIAMgADYCACADIAE2AgQgA0EIaiIAQQxqQgI3AgAgA0EgaiIBQQxqQdUANgIAIANBAjYCDCADQcDpwAA2AgggA0HVADYCJCADIAE2AhAgAyADQQRqNgIoIAMgAzYCICAAIAIQkwEAC3MBAX8jAEEwayIDJAAgAyAANgIAIAMgATYCBCADQQhqIgBBDGpCAjcCACADQSBqIgFBDGpB1QA2AgAgA0ECNgIMIANB9OnAADYCCCADQdUANgIkIAMgATYCECADIANBBGo2AiggAyADNgIgIAAgAhCTAQALbwECfwJAAkACQCABRQRAQQQhAgwBCyABQf///z9LDQEgAUEEdCIDQQBIDQFBrf3AAC0AABogA0EEEMkBIgJFDQILIAAgAjYCBCAAIAE2AgAPCxCSAQALQQQgA0Ho/cAAKAIAIgBB1gAgABsRAgAAC2YBAX8jAEEQayIFJAAgBUEIaiABEIUBAkAgAiADTQRAIAUoAgwiASADSQ0BIAUoAgghASAAIAMgAms2AgQgACABIAJBBHRqNgIAIAVBEGokAA8LIAIgAyAEEFsACyADIAEgBBBaAAvlAwEIfyMAQRBrIgkkAAJAIAEEQCABKAIAIgJBf0YNASABIAJBAWo2AgAgCUEEaiECQa39wAAtAAAaIAFBBGoiAygCmAEhBiADKAKUASEDQQhBBBDJASIERQRAQQRBCEHo/cAAKAIAIgBB1gAgABsRAgAACyAEIAY2AgQgBCADNgIAIAJBAjYCCCACIAQ2AgQgAkECNgIAIAEgASgCAEEBazYCACMAQRBrIgckAAJAAkACQCACKAIIIgEgAigCAE8NACAHQQhqIQQjAEEgayIFJAACQCACKAIAIgggAU8EQAJ/QYGAgIB4IAhFDQAaIAhBAnQhAyACKAIEIQYCQCABRQRAQQQhAyAGEBUMAQtBBCAGIANBBCABQQJ0IggQvwEiA0UNARoLIAIgATYCACACIAM2AgRBgYCAgHgLIQEgBCAINgIEIAQgATYCACAFQSBqJAAMAQsgBUEUakIANwIAIAVBATYCDCAFQZCDwAA2AgggBUGwgMAANgIQIAVBCGpB5IPAABCTAQALIAcoAggiAUGBgICAeEYNACABRQ0BIAEgBygCDEHo/cAAKAIAIgBB1gAgABsRAgAACyAHQRBqJAAMAQsQkgEACyAAIAkpAgg3AwAgCUEQaiQADwsQ4wEACxDkAQALcQEBfyMAQRBrIgIkACACIABBHGo2AgwgAUGwhsAAQQZBtobAAEEFIABBCGpBvIbAAEHMhsAAQQQgAEEUakHghsAAQQQgAEEYakHQhsAAQeSGwABBECAAQfSGwABBhIfAAEELIAJBDGoQMCACQRBqJAALcQEBfyMAQRBrIgIkACACIABBE2o2AgwgAUHYi8AAQQhB4IvAAEEKIABB0IbAAEHqi8AAQQogAEEEakHZh8AAQQMgAEEIakHwisAAQYGIwABBCyAAQRJqQaCLwABBjIjAAEEOIAJBDGoQMCACQRBqJAALaQAjAEEwayIAJABBrP3AAC0AAARAIABBGGpCATcCACAAQQI2AhAgAEGU3sAANgIMIABB1QA2AiggACABNgIsIAAgAEEkajYCFCAAIABBLGo2AiQgAEEMakG83sAAEJMBAAsgAEEwaiQAC60BAQR/IwBB4AFrIgEkACABQQhqIQMjAEHgAWsiAiQAAkACQCAABEAgACgCAA0BIABBADYCACACQQRqIgQgAEHcARDvARogAyAEQQRqQdgBEO8BGiAAEBUgAkHgAWokAAwCCxDjAQALEOQBAAsgAUHEAWoQtAEgAUEQaiIAEIABIAAQsAEgAUEwaiIAEIABIAAQsAEgAUHQAGoQsAEgAUHcAGoQsAEgAUHgAWokAAtlAQN/IwBBEGsiAyQAIAEoAgghBCADQQhqIAEoAgAgAjUCABBGIAMoAgwhAiADKAIIIgVFBEAgAUEEaiAEIAIQ1AEgASABKAIIQQFqNgIICyAAIAU2AgAgACACNgIEIANBEGokAAtlAQF/IwBBEGsiAiQAAn8gACgCACIALQAARQRAIAIgAEEBajYCCCABQe2PwABBByACQQhqQfSPwAAQMwwBCyACIABBAWo2AgwgAUGEkMAAQQMgAkEMakGIkMAAEDMLIAJBEGokAAuIBQEGfyMAQfABayIFJAAgBUHcAWoiBEEAOgAQIARBADYCACAEQtCAgICAAzcCCCAFQegBaiABNgIAIAUgAkEARzoA7AEgBSAANgLkASAFIAM2AuABIAVBATYC3AEgBUEEaiIAQbwBahBJIABB0AFqQQA2AgAgAEHIAWpCgICAgMAANwIAIABB1AFqQQA6AAAgBCgCCCEDIARBDGooAgAhAiAEKAIAIQcgBCgCBCEIIAQtABAhBCMAQSBrIgEkACAAIAMgAiAHIAhBABAtIABBIGogAyACQQFBAEEAEC0gASACEGYgAUEUaiIGQQhqIglBADYCACABIAEpAwA3AhQgBiACQQEQTyABQRBqIgYgCSgCADYCACABIAEpAhQ3AwggAEHIAGogAxA+IABBADoAtAEgACACNgKYASAAIAM2ApQBIABBkAFqQYCAgAg2AgAgAEGMAWpBAjoAACAAQYgBakECOgAAIABBhAFqQQA2AgAgAEH8AGpCgICACDcCACAAQfgAakECOgAAIABB9ABqQQI6AAAgAEIANwJsIAAgBzYCQCAAQcQAaiAINgIAIABB6ABqQQE6AAAgAEECOgCqASAAQa4BakECOgAAIABBsgFqQQA7AQAgAEIANwJgIABBADsBqAEgAEGAgAQ2ALUBIABBADoAuQEgAEIANwKcASAAIAJBAWs2AqQBIABBADoAuwEgACAEOgC6ASAAIAEpAwg3AlQgAEHcAGogBigCADYCACABQSBqJABBrf3AAC0AABpB3AFBBBDJASIBRQRAQQRB3AFB6P3AACgCACIAQdYAIAAbEQIAAAsgAUEANgIAIAFBBGogAEHYARDvARogBUHwAWokACABC2ABAX8CQAJAAkAgAUUEQEEBIQIMAQsgAUEASA0BQa39wAAtAAAaIAFBARDJASICRQ0CCyAAIAI2AgQgACABNgIADwsQkgEAC0EBIAFB6P3AACgCACIAQdYAIAAbEQIAAAvpBAEHfyMAQRBrIgYkACAGQQhqIAEgAkECEFYCfyAGKAIIBEBBASECIAYoAgwMAQsjAEEgayIFJAAgASICKAIIIQEgAkEANgIIAn8CQAJAIAEEQCAFIAJBDGooAgAiATYCFCAFQQhqIQkgAigCECEHIwBB0ABrIgQkAAJAIAMtAABFBEAgBCADLQABuBADNgIEIARBADYCACAEKAIEIQMgBCgCACEHDAELIARBIGoiCkEMakIDNwIAIARBzABqQSo2AgAgBEE4aiIIQQxqQSo2AgAgBEEENgIkIARBrJDAADYCICAEIANBA2o2AkggBCADQQJqNgJAIARBKjYCPCAEIANBAWo2AjggBCAINgIoIARBFGoiCCAKEB0gBEEIaiAHIAQoAhggBCgCHBDAASAEKAIMIQMgBCgCCCEHIAgQsAELIAkgBzYCACAJIAM2AgQgBEHQAGokACAFKAIMIQMgBSgCCEUEQCAFIAM2AhgCQCACKAIARQRAIAJBBGogBUEUaiAFQRhqEMQBIgJBhAFPBEAgAhAACyAFKAIYIgJBhAFPBEAgAhAACyAFKAIUIgJBhAFJDQEgAhAADAELIAUgATYCHCAFQRxqENUBIQEgBSgCHCEEIAFFBEAQOyEBIARBhAFPBEAgBBAACyADQYQBSQ0FIAMQAAwFCyACQQRqIAQgAxDTAQtBAAwECyABQYQBSQ0BIAEQAAwBC0G8jcAAQRUQ4gEACyADIQELQQELIQIgBiABNgIEIAYgAjYCACAFQSBqJAAgBigCACECIAYoAgQLIQEgACACNgIAIAAgATYCBCAGQRBqJAALlQMBA38jAEEQayIEJAAgBEEIaiABIAIgAxBWIAAiBgJ/IAQoAggEQCAEKAIMIQNBAQwBCyMAQSBrIgMkACABKAIIIQAgAUEANgIIAn8CQAJAIAAEQCADIAFBDGooAgAiADYCFCABKAIQGiADQQhqIgJBggFBgwFB4JLAAC0AABs2AgQgAkEANgIAIAMoAgwhAiADKAIIRQRAIAMgAjYCGAJAIAEoAgBFBEAgAUEEaiADQRRqIANBGGoQxAEiAUGEAU8EQCABEAALIAMoAhgiAUGEAU8EQCABEAALIAMoAhQiAUGEAUkNASABEAAMAQsgAyAANgIcIANBHGoQ1QEhACADKAIcIQUgAEUEQBA7IQAgBUGEAU8EQCAFEAALIAJBhAFJDQUgAhAADAULIAFBBGogBSACENMBC0EADAQLIABBhAFJDQEgABAADAELQbyNwABBFRDiAQALIAIhAAtBAQshASAEIAA2AgQgBCABNgIAIANBIGokACAEKAIEIQMgBCgCAAs2AgAgBiADNgIEIARBEGokAAtlAQF/IwBBEGsiAiQAIAIgACgCACIAQQlqNgIMIAFB/JHAAEH/kcAAIABBjJLAAEGcksAAIABBBGpBjJLAAEGmksAAIABBCGpBsJLAAEHAksAAIAJBDGpByJLAABA1IAJBEGokAAtfAQF/IABB5ABqKAIAIgEgACgCpAFHBEAgACgCmAFBAWsgAUsEQCAAQQA6ALkBIAAgAUEBajYCZCAAIAAoAmAiASAAKAKUAUEBayIAIAAgAUsbNgJgCw8LIABBARCfAQtLAQF/AkAgACgCAEEgRw0AIAAtAARBAkcNACAAQQhqLQAAQQJHDQAgAEEMai0AAA0AIABBDWotAAAiAEEPcQ0AIABBEHFFIQELIAELYAEBfyMAQRBrIgIkACACIABBCWo2AgwgAUHAhcAAQcOFwAAgAEHQhcAAQeCFwAAgAEEEakHQhcAAQeqFwAAgAEEIakH0hcAAQYSGwAAgAkEMakGMhsAAEDUgAkEQaiQAC1YBAn8jAEEQayIFJAAgBUEIaiABKAIAIAQ1AgAQRiAFKAIMIQQgBSgCCCIGRQRAIAFBBGogAiADEJwBIAQQ0wELIAAgBjYCACAAIAQ2AgQgBUEQaiQAC14BAX8jAEEQayICJAAgAiAAKAIAIgBBAmo2AgwgAUHAjMAAQQNBw4zAAEEBIABBxIzAAEHUjMAAQQEgAEEBakHEjMAAQdWMwABBASACQQxqQYyGwAAQOiACQRBqJAALTQECfyACIAFrIgRBBHYiAyAAKAIAIAAoAggiAmtLBEAgACACIAMQfCAAKAIIIQILIAAoAgQgAkEEdGogASAEEO8BGiAAIAIgA2o2AggLTwEBfwJAIAEgAk0EQCAAKAIIIgMgAkkNASABIAJHBEAgACgCBCABakEBIAIgAWsQ7gEaCw8LIAEgAkHgqcAAEFsACyACIANB4KnAABBaAAtZAQF/IwBBEGsiAiQAIAIgAEEMajYCDCABQZiCwABBBkGegsAAQQUgAEEYakGkgsAAQbSCwABBBiAAQbyCwABBzILAAEENIAJBDGpB3ILAABA6IAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgAEEIajYCDCABQYSMwABBBkGKjMAAQQMgAEHQhsAAQY2MwABBAyAAQQRqQdCGwABBkIzAAEEHIAJBDGpBkIfAABA6IAJBEGokAAuzAgEKfyMAQTBrIgMkACADQQA7ABYgA0ECOgASIANBAjoADiADQRhqIgUgAiADQQ5qEEwgAyABNgIoIwBBEGsiCCQAIABBCGoiBygCCCEEAkACQCAFKAIQIgkgBygCACAEa0sEQCAHIAQgCRB8IAcoAgghBAwBCyAJRQ0BCyAHKAIEIARBBHRqIQYgBSgCCCIKQQR0IQwgBS0ADCECIAUoAgQhAQNAAkAgCEEIaiAKEFwgCCgCCCELIAgoAgwgASAMEO8BIQAgC0GAgICAeEYNACAGIAs2AgAgBkEMaiACOgAAIAZBCGogCjYCACAGQQRqIAA2AgAgBkEQaiEGIARBAWohBCAJQQFrIgkNAQsLIAcgBDYCCAsgBSgCAARAIAUoAgQQFQsgCEEQaiQAIANBMGokAAtAAQF/IwBBIGsiACQAIABBFGpCADcCACAAQQE2AgwgAEHs38AANgIIIABB9N/AADYCECAAQQhqQaDgwAAQkwEAC1sBAX8jAEEQayICJAACfyAAKAIARQRAIAEoAhRBl4zAAEEEIAFBGGooAgAoAgwRAQAMAQsgAiAAQQRqNgIMIAFBm4zAAEEEIAJBDGpBoIzAABAzCyACQRBqJAALWgEBfyMAQRBrIgIkAAJ/IAAtAABBAkYEQCABKAIUQZeMwABBBCABQRhqKAIAKAIMEQEADAELIAIgADYCDCABQZuMwABBBCACQQxqQbCMwAAQMwsgAkEQaiQAC1oBAX8jAEEQayICJAACfyAALQAAQQJGBEAgASgCFEGdk8AAQQQgAUEYaigCACgCDBEBAAwBCyACIAA2AgwgAUGhk8AAQQQgAkEMakGok8AAEDMLIAJBEGokAAtYAQF/IwBBEGsiAiQAIAJBCGogACABEDECQCACKAIIIgBBgYCAgHhHBEAgAEUNASAAIAIoAgxB6P3AACgCACIAQdYAIAAbEQIAAAsgAkEQaiQADwsQkgEAC1oBAX8jAEEQayICJAAgAkEIaiAAIAFBARA3AkAgAigCCCIAQYGAgIB4RwRAIABFDQEgACACKAIMQej9wAAoAgAiAEHWACAAGxECAAALIAJBEGokAA8LEJIBAAufAgEHfyMAQRBrIgQkACAEQQhqIQUjAEEgayICJAACQCABIAFBAWoiAUsNACAAKAIAIgZBAXQiAyABIAEgA0kbIgFBBCABQQRLGyIBQQF0IQcgAUGAgICABElBAXQhCAJAIAZFBEAgAkEANgIYDAELIAIgAzYCHCACQQI2AhggAiAAKAIENgIUCyACQQhqIAggByACQRRqEDwgAigCDCEDIAIoAggEQCACQRBqKAIAIQEMAQsgACABNgIAIAAgAzYCBEGBgICAeCEDCyAFIAE2AgQgBSADNgIAIAJBIGokAAJAIAQoAggiAEGBgICAeEcEQCAARQ0BIAAgBCgCDEHo/cAAKAIAIgBB1gAgABsRAgAACyAEQRBqJAAPCxCSAQALWgEBfyMAQRBrIgMkACADQQhqIAAgASACEDcCQCADKAIIIgBBgYCAgHhHBEAgAEUNASAAIAMoAgxB6P3AACgCACIAQdYAIAAbEQIAAAsgA0EQaiQADwsQkgEAC6ICAQV/IwBBEGsiBSQAIAVBCGohBiMAQSBrIgMkAAJAIAEgAmoiAiABSQ0AIAAoAgAiAUEBdCIEIAIgAiAESRsiAkEEIAJBBEsbIgJBBHQhBCACQYCAgMAASUECdCEHAkAgAUUEQCADQQA2AhgMAQsgAyAAKAIENgIUIANBBDYCGCADIAFBBHQ2AhwLIANBCGogByAEIANBFGoQPCADKAIMIQQgAygCCARAIANBEGooAgAhAgwBCyAAIAI2AgAgACAENgIEQYGAgIB4IQQLIAYgAjYCBCAGIAQ2AgAgA0EgaiQAAkAgBSgCCCIAQYGAgIB4RwRAIABFDQEgACAFKAIMQej9wAAoAgAiAEHWACAAGxECAAALIAVBEGokAA8LEJIBAAtAAQF/IwBBEGsiAyQAIANBCGogABCFASABIAMoAgwiAEkEQCADKAIIIANBEGokACABQQR0ag8LIAEgACACEFkAC/kZAhx/A34CQCAABEAgACgCACICQX9GDQEgACACQQFqNgIAIwBB4ABrIggkACMAQRBrIgIkACACQQhqIABBBGoQhAECQCACKAIMIgMgAUsEQCACKAIIIAJBEGokACABQQR0aiEBDAELIAEgA0H8o8AAEFkACyAIQdgAaiABKAIIQQR0IAEoAgQiAWo2AgAgCEEANgJcIAhBgICAgHg2AjQgCEGAgICAeDYCFCAIIAE2AlQgCEEIaiEFIwBB4ABrIgEkACABQRRqIAhBFGoiDCIDEBACQCABKAIUQYCAgIB4RgRAIAVBADYCCCAFQoCAgIDAADcCACADELgBIANBIGoQuAEMAQtBrf3AAC0AABoCQEGAAUEEEMkBIgIEQCABIAI2AgQgAUEENgIADAELQQRBgAFB6P3AACgCACIAQdYAIAAbEQIAAAsgAUEUaiIGQQhqKQIAIR4gBkEQaikCACEfIAZBGGopAgAhICABKAIAIQcgASgCBCICIAEpAhQ3AgAgAkEYaiAgNwIAIAJBEGogHzcCACACQQhqIB43AgAgAUEIaiIEQQhqIg1BATYCACABIAI2AgwgASAHNgIIIAYgA0HMABDvARojAEEgayICJAAgAiAGEBAgAigCAEGAgICAeEcEQANAIAQoAggiCSAEKAIARgRAAkBBACELIwBBEGsiDiQAIA5BCGohDyMAQSBrIgMkAAJAIAkgCUEBaiIHSw0AIAQoAgAiC0EBdCIQIAcgByAQSRsiB0EEIAdBBEsbIgdBBXQhECAHQYCAgCBJQQJ0IQoCQCALRQRAIANBADYCGAwBCyADQQQ2AhggAyALQQV0NgIcIAMgBCgCBDYCFAsgA0EIaiAKIBAgA0EUahA8IAMoAgwhCyADKAIIBEAgA0EQaigCACEHDAELIAQgBzYCACAEIAs2AgRBgYCAgHghCwsgDyAHNgIEIA8gCzYCACADQSBqJAACQCAOKAIIIgNBgYCAgHhHBEAgA0UNASADIA4oAgxB6P3AACgCACIAQdYAIAAbEQIAAAsgDkEQaiQADAELEJIBAAsLIAJBCGopAgAhHiACQRBqKQIAIR8gAkEYaikCACEgIAQoAgQgCUEFdGoiAyACKQIANwIAIANBGGogIDcCACADQRBqIB83AgAgA0EIaiAeNwIAIAQgCUEBajYCCCACIAYQECACKAIAQYCAgIB4Rw0ACwsgAhC4ASAGELgBIAZBIGoQuAEgAkEgaiQAIAVBCGogDSgCADYCACAFIAEpAgg3AgALIAFB4ABqJAAgCEEAOgAWIAhBADsBFCMAQTBrIgMkACAFKAIEIQcgA0EgaiAMIAUoAggiARC1AQJ/AkAgAygCIARAIANBGGogA0EoaigCADYCACADIAMpAiA3AxAgAUEFdCEQAkADQCAQRQ0BIBBBIGshECADIAc2AiAgB0EgaiEHIANBCGohFiMAQRBrIgskACADQRBqIg4oAgghGCALQQhqIRcgA0EgaigCACEPIA4oAgAhASMAQUBqIgIkACACQThqIgQQCTYCBCAEIAE2AgACfwJAAkACQCACKAI4IgEEQCACIAIoAjw2AjQgAiABNgIwIAIgDzYCOCACQShqIREjAEEQayIMJAAgAkE4aigCACIBKAIEIQQgASgCCCEBIAJBMGoiEygCACEUIwBBIGsiCSQAIwBBEGsiDSQAIA1BBGoiBUEIaiIVQQA2AgAgDUKAgICAEDcCBCAEIAFBAnRqIgYgBGtBAnYiASAFKAIAIAUoAggiCmtLBEAgBSAKIAEQewsjAEEQayIBJAAgBCAGRwRAIAYgBGtBAnYhEgNAAkACfwJAIAQoAgAiBkGAAU8EQCABQQA2AgwgBkGAEEkNASAGQYCABEkEQCABIAZBP3FBgAFyOgAOIAEgBkEMdkHgAXI6AAwgASAGQQZ2QT9xQYABcjoADUEDDAMLIAEgBkE/cUGAAXI6AA8gASAGQRJ2QfABcjoADCABIAZBBnZBP3FBgAFyOgAOIAEgBkEMdkE/cUGAAXI6AA1BBAwCCyAFKAIIIgogBSgCAEYEQCAFIAoQeSAFKAIIIQoLIAogBSgCBGogBjoAACAFIAUoAghBAWo2AggMAgsgASAGQT9xQYABcjoADSABIAZBBnZBwAFyOgAMQQILIQYgBSABQQxqIgogBiAKahCDAQsgBEEEaiEEIBJBAWsiEg0ACwsgAUEQaiQAIAlBFGoiAUEIaiAVKAIANgIAIAEgDSkCBDcCACANQRBqJAAgCUEIaiAUIAkoAhggCSgCHBDAASAJKQMIIR4gARCwASAMQQhqIB43AwAgCUEgaiQAIAwoAgwhASAMKAIIIgRFBEAgE0EEakHzkMAAQQQQnAEgARDTAQsgESAENgIAIBEgATYCBCAMQRBqJAAgAigCKEUNASACKAIsIQEMAgsgAigCPCEBDAILIAJBIGohDCMAQRBrIgYkACAGQQhqIQ0gAkEwaiISKAIAIQojAEGQAWsiASQAIAFB+ABqIQUgD0EUaiIELQAJIglBAXEhEyAELQAAIRQgBC0ABCEVIAQtAAghGSAJQQJxIRogCUEEcSEbIAlBCHEhHCAJQRBxIR1BACEJAn8gCi0AAUUEQBAIDAELQQEhCRAJCyERIAUgCjYCECAFQQA2AgggBSARNgIEIAUgCTYCAAJ/AkACQAJAAkAgASgCeCIFQQJHBEAgAUHkAGogAUGIAWooAgA2AgAgASABKAJ8NgJYIAEgBTYCVCABIAEpAoABNwJcAkAgFEECRg0AIAEgBCgAADYCeCABQcgAaiABQdQAakHYksAAIAFB+ABqEGcgASgCSEUNACABKAJMIQQMBAsgFUECRw0BDAILIAEoAnwhBAwDCyABIAQoAAQ2AnggAUFAayABQdQAakHaksAAIAFB+ABqEGcgASgCQEUNACABKAJEIQQMAQsCQAJAAkAgGUEBaw4CAAECCyABQTBqIAFB1ABqQdySwABBBBBoIAEoAjBFDQEgASgCNCEEDAILIAFBOGogAUHUAGpB4ZLAAEEFEGggASgCOEUNACABKAI8IQQMAQsCQCATRQ0AIAFBKGogAUHUAGpB5pLAAEEGEGggASgCKEUNACABKAIsIQQMAQsCQCAaRQ0AIAFBIGogAUHUAGpB7JLAAEEJEGggASgCIEUNACABKAIkIQQMAQsCQCAbRQ0AIAFBGGogAUHUAGpB9ZLAAEENEGggASgCGEUNACABKAIcIQQMAQsCQCAcRQ0AIAFBEGogAUHUAGpBgpPAAEEFEGggASgCEEUNACABKAIUIQQMAQsCQCAdRQ0AIAFBCGogAUHUAGpBh5PAAEEHEGggASgCCEUNACABKAIMIQQMAQsgAUH4AGoiBEEQaiABQdQAaiIFQRBqKAIANgIAIARBCGogBUEIaikCADcDACABIAEpAlQ3A3ggBCgCBCEFAkAgBCgCCEUNACAEQQxqKAIAIgRBhAFJDQAgBBAACyABIAU2AgQgAUEANgIAIAEoAgQhBCABKAIADAILIAEoAlgiBUGEAU8EQCAFEAALIAEoAlxFDQAgAUHgAGooAgAiBUGEAUkNACAFEAALQQELIQUgDSAENgIEIA0gBTYCACABQZABaiQAIAYoAgwhASAGKAIIIgRFBEAgEkEEakH3kMAAQQMQnAEgARDTAQsgDCAENgIAIAwgATYCBCAGQRBqJAAgAigCIARAIAIoAiQhAQwBCyACQRhqIAJBMGpB+pDAAEEGIA9BDGoQbSACKAIYBEAgAigCHCEBDAELIAJBEGogAkEwakGAkcAAQQkgD0EQahBtIAIoAhAEQCACKAIUIQEMAQsgAigCMBogAkEIaiIBIAIoAjQ2AgQgAUEANgIAIAIoAgwhASACKAIIDAILIAIoAjQiBEGEAUkNACAEEAALQQELIQQgFyABNgIEIBcgBDYCACACQUBrJAAgCygCDCEBIAsoAggiAkUEQCAOQQRqIBggARDUASAOIA4oAghBAWo2AggLIBYgAjYCACAWIAE2AgQgC0EQaiQAIAMoAghFDQALIAMoAgwhByADKAIUIgFBhAFJDQIgARAADAILIANBIGoiAUEIaiADQRhqKAIANgIAIAMgAykDEDcDICADIAEoAgQ2AgQgA0EANgIAIAMoAgQhByADKAIADAILIAMoAiQhBwtBAQshASAIIAc2AgQgCCABNgIAIANBMGokACAIKAIEIQECQCAIKAIARQRAIAhBCGoiAygCCCICBEAgAygCBCEHA0AgBxCwASAHQSBqIQcgAkEBayICDQALCyAIKAIIBEAgCCgCDBAVCyAIQeAAaiQADAELIAggATYCFEGwgMAAQSsgCEEUakHcgMAAQbCEwAAQTgALIAAgACgCAEEBazYCACABDwsQ4wEACxDkAQAL7AIBBH8jAEEQayIHJAAgAUUEQEHgl8AAQTIQ4gEACyAHQQRqIgYgASADIAQgBSACKAIQEQcAIwBBEGsiAyQAAkACQAJAIAYoAggiASAGKAIATw0AIANBCGohCCMAQSBrIgIkAAJAIAYoAgAiBCABTwRAAn9BgYCAgHggBEUNABogBEECdCEFIAYoAgQhCQJAIAFFBEBBBCEFIAkQFQwBC0EEIAkgBUEEIAFBAnQiBBC/ASIFRQ0BGgsgBiABNgIAIAYgBTYCBEGBgICAeAshBSAIIAQ2AgQgCCAFNgIAIAJBIGokAAwBCyACQRRqQgA3AgAgAkEBNgIMIAJB/JbAADYCCCACQdiWwAA2AhAgAkEIakHQl8AAEJMBAAsgAygCCCIBQYGAgIB4Rg0AIAFFDQEgASADKAIMQej9wAAoAgAiAEHWACAAGxECAAALIANBEGokAAwBCxCSAQALIAAgBykCCDcDACAHQRBqJAALOgEBfyAAKAIIIgEEQCAAKAIEIQADQCAAKAIABEAgAEEEaigCABAVCyAAQRBqIQAgAUEBayIBDQALCwtLACABIAAgAkGUnMAAEH0iACgCCCICTwRAIAEgAkHYocAAEFkACyAAKAIEIAFBBHRqIgAgAykCADcCACAAQQhqIANBCGopAgA3AgALvwQBBn8CQCAABEAgACgCACICQX9GDQEgACACQQFqNgIAIwBBIGsiAiQAIAJBFGoiAyAAQQRqIgEpAmA3AgAgA0EIaiABQegAaigCADYCACACIgMtABwEfyADIAMpAhQ3AgxBAQVBAAshAiADIAI2AggjAEEgayIEJAAgBEEAOgAeIARBADsBHCADAn8gA0EIaiICKAIARQRAIARBCGoiAkEANgIAIAJBgQFBgAEgBEEcai0AABs2AgQgBCgCCCEBIAQoAgwMAQsgBEEQaiEGIAJBBGohAiMAQUBqIgEkACABQTBqIARBHGoQtgECfwJAAkACfwJAIAEoAjAEQCABQSBqIgVBCGogAUE4aigCADYCACABIAEpAjA3AyAgAUEYaiAFIAIQYyABKAIYRQ0BIAEoAhwMAgsgASgCNCECDAILIAFBEGogAUEgaiACQQRqEGMgASgCEEUNAiABKAIUCyECIAEoAiQiBUGEAUkNACAFEAALQQEMAQsgAUEwaiICQQhqIAFBKGooAgA2AgAgASABKQMgNwMwIAFBCGoiBSACKAIENgIEIAVBADYCACABKAIMIQIgASgCCAshBSAGIAI2AgQgBiAFNgIAIAFBQGskACAEKAIQIQEgBCgCFAs2AgQgAyABNgIAIARBIGokACADKAIEIQIgAygCAARAIAMgAjYCFEGwgMAAQSsgA0EUakHcgMAAQcCEwAAQTgALIANBIGokACAAIAAoAgBBAWs2AgAgAg8LEOMBAAsQ5AEAC0UBAX8gAiABayIDIAAoAgAgACgCCCICa0sEQCAAIAIgAxB7IAAoAgghAgsgACgCBCACaiABIAMQ7wEaIAAgAiADajYCCAtGAQN/IAFBEGooAgAiAiABKAIYIgNrIQQgAiADSQRAIAQgAkHEnsAAEFgACyAAIAM2AgQgACABQQxqKAIAIARBBHRqNgIAC0YBA38gAUEQaigCACICIAEoAhgiA2shBCACIANJBEAgBCACQdSewAAQWAALIAAgAzYCBCAAIAFBDGooAgAgBEEEdGo2AgALTwECfyAAKAIEIQIgACgCACEDAkAgACgCCCIALQAARQ0AIANBsObAAEEEIAIoAgwRAQBFDQBBAQ8LIAAgAUEKRjoAACADIAEgAigCEBEAAAtNAQF/IwBBEGsiAiQAIAIgACgCACIAQQxqNgIMIAFBtI/AAEEEQbiPwABBBSAAQcCPwABB0I/AAEEHIAJBDGpB2I/AABA/IAJBEGokAAtCAQF/IAIgACgCACAAKAIIIgNrSwRAIAAgAyACEDggACgCCCEDCyAAKAIEIANqIAEgAhDvARogACACIANqNgIIQQALXwECf0Gt/cAALQAAGiABKAIEIQIgASgCACEDQQhBBBDJASIBRQRAQQRBCEHo/cAAKAIAIgBB1gAgABsRAgAACyABIAI2AgQgASADNgIAIABBiN/AADYCBCAAIAE2AgALQgEBfyACIAAoAgAgACgCCCIDa0sEQCAAIAMgAhA5IAAoAgghAwsgACgCBCADaiABIAIQ7wEaIAAgAiADajYCCEEAC0gBAX8jAEEgayIDJAAgA0EMakIANwIAIANBATYCBCADQYzjwAA2AgggAyABNgIcIAMgADYCGCADIANBGGo2AgAgAyACEJMBAAtJAQF/IwBBEGsiAiQAIAIgADYCDCABQYCAwABBAkGCgMAAQQYgAEG8AWpBiIDAAEGYgMAAQQggAkEMakGggMAAED8gAkEQaiQAC/4BAQJ/IwBBEGsiAyQAIAMgACgCACIAQQRqNgIMIwBBEGsiAiQAIAIgASgCFEGQj8AAQQQgAUEYaigCACgCDBEBADoADCACIAE2AgggAkEAOgANIAJBADYCBCACQQRqIABBlI/AABAqIANBDGpBpI/AABAqIQACfyACLQAMIgFBAEcgACgCACIARQ0AGkEBIAENABogAigCCCEBAkAgAEEBRw0AIAItAA1FDQAgAS0AHEEEcQ0AQQEgASgCFEHE5sAAQQEgAUEYaigCACgCDBEBAA0BGgsgASgCFEHS48AAQQEgAUEYaigCACgCDBEBAAsgAkEQaiQAIANBEGokAAs5AAJAAn8gAkGAgMQARwRAQQEgACACIAEoAhARAAANARoLIAMNAUEACw8LIAAgAyAEIAEoAgwRAQALzAIBA38gACgCACEAIAEoAhwiA0EQcUUEQCADQSBxRQRAIAAzAQAgARAjDwsjAEGAAWsiAyQAIAAvAQAhAkEAIQADQCAAIANqQf8AakEwQTcgAkEPcSIEQQpJGyAEajoAACAAQQFrIQAgAkH//wNxIgRBBHYhAiAEQRBPDQALIABBgAFqIgJBgAFLBEAgAkGAAUHk5sAAEFgACyABQfTmwABBAiAAIANqQYABakEAIABrEBQgA0GAAWokAA8LIwBBgAFrIgMkACAALwEAIQJBACEAA0AgACADakH/AGpBMEHXACACQQ9xIgRBCkkbIARqOgAAIABBAWshACACQf//A3EiBEEEdiECIARBEE8NAAsgAEGAAWoiAkGAAUsEQCACQYABQeTmwAAQWAALIAFB9ObAAEECIAAgA2pBgAFqQQAgAGsQFCADQYABaiQACzcBAX8gACgCACEAIAEoAhwiAkEQcUUEQCACQSBxRQRAIAAgARDXAQ8LIAAgARBFDwsgACABEEILNwEBfyAAKAIAIQAgASgCHCICQRBxRQRAIAJBIHFFBEAgACABENgBDwsgACABEEMPCyAAIAEQRAtAAQF/IwBBIGsiACQAIABBFGpCADcCACAAQQE2AgwgAEGA4cAANgIIIABBsODAADYCECAAQQhqQYjhwAAQkwEAC7YCAQJ/IwBBIGsiAiQAIAJBATsBHCACIAE2AhggAiAANgIUIAJBkOTAADYCECACQYzjwAA2AgwjAEEQayIBJAAgAkEMaiIAKAIIIgJFBEBBoN3AAEErQejewAAQiwEACyABIAAoAgw2AgwgASAANgIIIAEgAjYCBCMAQRBrIgAkACABQQRqIgEoAgAiAkEMaigCACEDAkACfwJAAkAgAigCBA4CAAEDCyADDQJBACECQaDdwAAMAQsgAw0BIAIoAgAiAygCBCECIAMoAgALIQMgACACNgIEIAAgAzYCACAAQZjfwAAgASgCBCIAKAIIIAEoAgggAC0AECAALQAREDQACyAAIAI2AgwgAEGAgICAeDYCACAAQazfwAAgASgCBCIAKAIIIAEoAgggAC0AECAALQAREDQACzABAX8gASgCHCICQRBxRQRAIAJBIHFFBEAgACABENgBDwsgACABEEMPCyAAIAEQRAswAQF/IAEoAhwiAkEQcUUEQCACQSBxRQRAIAAgARDXAQ8LIAAgARBFDwsgACABEEILMwEBfyMAQRBrIgIkACACIAAoAgA2AgwgAUHMkMAAQQ0gAkEMakHckMAAEDMgAkEQaiQACzIAAkAgAEH8////B0sNACAARQRAQQQPC0Gt/cAALQAAGiAAQQQQyQEiAEUNACAADwsACzABAX8jAEEQayICJAAgAiAANgIMIAFB/4HAAEEGIAJBDGpBiILAABAzIAJBEGokAAswAQF/IwBBEGsiAiQAIAIgADYCDCABQfSDwABBBSACQQxqQfyDwAAQMyACQRBqJAALMAEBfyMAQRBrIgIkACACIAA2AgwgAUGchsAAQQQgAkEMakGghsAAEDMgAkEQaiQACzABAX8jAEEQayICJAAgAiAANgIMIAFB1ozAAEEKIAJBDGpB4IzAABAzIAJBEGokAAu/EwIYfwV+IwBBEGsiFCQAIBQgATYCDCAUIAA2AgggFEEIaiEAIwBBMGsiCSQAAkACQEEAQdyVwAAoAgARBgAiEgRAIBIoAgANASASQX82AgAgACgCACEPIAAoAgQhEyMAQRBrIhgkACASQQRqIgYoAgQiByAPIBMgDxsiAHEhAiAArSIeQhmIQoGChIiQoMCAAX4hGyAGKAIAIQQgCUEIaiILAn8CQANAIBsgAiAEaikAACIdhSIaQoGChIiQoMCAAX0gGkJ/hYNCgIGChIiQoMCAf4MhHANAIBxQBEAgHSAdQgGGg0KAgYKEiJCgwIB/g0IAUg0DIANBCGoiAyACaiAHcSECDAILIBx6IRogHEIBfSAcgyEcIAQgGqdBA3YgAmogB3FBdGxqIgFBDGsiACgCACAPRw0AIABBBGooAgAgE0cNAAsLIAtBATYCBCALQRRqIAY2AgAgC0EQaiABNgIAIAtBDGogEzYCACALQQhqIA82AgBBAAwBCyAGKAIIRQRAIBhBCGohGSMAQSBrIgokAAJAIAYoAgwiB0EBaiIBIAdJBEAQdCAKKAIEIQEgCigCACECDAELIAYoAgQiCEEBaiIRQQN2IQACQAJAIAggAEEHbCAIQQhJGyIMQQF2IAFJBEAgASAMQQFqIgAgACABSRsiAEEISQ0BIABBgICAgAJJBEBBASEBIABBA3QiAEEOSQ0DQX8gAEEHbkEBa2d2QQFqIQEMAwsQdCAKKAIMIQEgCigCCCICQYGAgIB4Rw0DDAILIAYoAgAhAyAAIBFBB3FBAEdqIgIEQCADIQEDQCABIAEpAwAiGkJ/hUIHiEKBgoSIkKDAgAGDIBpC//79+/fv37//AIR8NwMAIAFBCGohASACQQFrIgINAAsLAkACQCARQQhPBEAgAyARaiADKQAANwAADAELIANBCGogAyAREO0BIBFFDQELIANBDGshFyADIQBBACEBA0ACQCADIAEiBWoiEC0AAEGAAUcNACAFQXRsIgEgF2ohFSABIANqQQxrIRYCQANAIAMgFSgCACIBIBUoAgQgARsiDiAIcSIEIgJqKQAAQoCBgoSIkKDAgH+DIhtQBEBBCCEBIAQhAgNAIAEgAmohAiABQQhqIQEgAyACIAhxIgJqKQAAQoCBgoSIkKDAgH+DIhtQDQALCyADIBt6p0EDdiACaiAIcSIBaiwAAEEATgRAIAMpAwBCgIGChIiQoMCAf4N6p0EDdiEBCyABIARrIAUgBGtzIAhxQQhJDQEgASADaiIELQAAIAQgDkEZdiIEOgAAIAFBCGsgCHEgA2pBCGogBDoAACABQXRsIANqIQ5B/wFHBEBBdCEBA0AgACABaiIELQAAIQIgBCABIA5qIgQtAAA6AAAgBCACOgAAIAFBAWoiAQ0ACwwBCwsgEEH/AToAACAFQQhrIAhxIANqQQhqQf8BOgAAIA5BDGsiAUEIaiAWQQhqKAAANgAAIAEgFikAADcAAAwBCyAQIA5BGXYiAToAACAFQQhrIAhxIANqQQhqIAE6AAALIAVBAWohASAAQQxrIQAgBSAIRw0ACwsgBiAMIAdrNgIIQYGAgIB4IQIMAgtBBEEIIABBBEkbIQELIApBEGohAiMAQRBrIgUkAAJAAkACQCABrUIMfiIaQiCIpw0AIBqnIgBBB2ohAyAAIANLDQAgA0F4cSIEIAFqQQhqIQMgAyAESQ0AIANB+P///wdNDQELEHQgAiAFKQMANwIEIAJBADYCAAwBCyADBH9Brf3AAC0AABogA0EIEMkBBUEICyIABEAgAkEANgIMIAIgAUEBayIDNgIEIAIgACAEajYCACACIAMgAUEDdkEHbCADQQhJGzYCCAwBC0EIIANB6P3AACgCACIAQdYAIAAbEQIAAAsgBUEQaiQAIAooAhAiAEUEQCAKQRhqKAIAIQEgCigCFCECDAELIAooAhghFSAAQf8BIAooAhQiDEEJahDuASENIAYoAgAhBCAHBEAgBEEMayEWIAQpAwBCf4VCgIGChIiQoMCAf4MhGyAEIQAgByEDA0AgG1AEQCAAIQEDQCAQQQhqIRAgASkDCCABQQhqIgAhAUJ/hUKAgYKEiJCgwIB/gyIbUA0ACwsgDSAWIBt6p0EDdiAQaiIOQXRsaiIFKAIAIgEgBSgCBCABGyIXIAxxIgJqKQAAQoCBgoSIkKDAgH+DIhpQBEBBCCEBA0AgASACaiEFIAFBCGohASANIAUgDHEiAmopAABCgIGChIiQoMCAf4MiGlANAAsLIBtCAX0gG4MhGyANIBp6p0EDdiACaiAMcSIBaiwAAEEATgRAIA0pAwBCgIGChIiQoMCAf4N6p0EDdiEBCyABIA1qIBdBGXYiBToAACABQQhrIAxxIA1qQQhqIAU6AAAgAUF0bCANakEMayIFQQhqIA5BdGwgBGpBDGsiAUEIaigAADYAACAFIAEpAAA3AAAgA0EBayIDDQALCyAGIAw2AgQgBiANNgIAIAYgFSAHazYCCEGBgICAeCECQQghASAIRQ0AIBGtQgx+p0EHakF4cSIAIAhqQXdGDQAgBCAAaxAVCyAZIAE2AgQgGSACNgIAIApBIGokAAsgCyAeNwMIIAtBGGogBjYCACALQRRqIBM2AgAgC0EQaiAPNgIAQQELNgIAIBhBEGokAAJAIAkoAghFBEAgCUEYaigCACEBDAELIAlBIGooAgAhBiAJQRhqKQMAIRsgCSkDECEaIAkgDyATEAU2AhAgCSAbNwIIIAlBCGohAyAGKAIEIgQgGqciAXEiByAGKAIAIgVqKQAAQoCBgoSIkKDAgH+DIhpQBEBBCCECA0AgAiAHaiEAIAJBCGohAiAFIAAgBHEiB2opAABCgIGChIiQoMCAf4MiGlANAAsLIAUgGnqnQQN2IAdqIARxIgJqLAAAIgdBAE4EQCAFIAUpAwBCgIGChIiQoMCAf4N6p0EDdiICai0AACEHCyACIAVqIAFBGXYiADoAACACQQhrIARxIAVqQQhqIAA6AAAgBiAGKAIIIAdBAXFrNgIIIAYgBigCDEEBajYCDCAFIAJBdGxqIgFBDGsiACADKQIANwIAIABBCGogA0EIaigCADYCAAsgAUEEaygCABACIQAgEiASKAIAQQFqNgIAIAlBMGokAAwCC0HQk8AAQcYAIAlBL2pBmJTAAEH4lMAAEE4ACyMAQTBrIgAkACAAQRhqQgE3AgAgAEEBNgIQIABBhOTAADYCDCAAQewANgIoIAAgAEEkajYCFCAAIABBL2o2AiQgAEEMakHIlsAAEJMBAAsgFEEQaiQAIAALyQEBAn8jAEEQayIAJAAgASgCFEHk3cAAQQsgAUEYaigCACgCDBEBACEDIABBCGoiAkEAOgAFIAIgAzoABCACIAE2AgAgAiIBLQAEIQMCQCACLQAFRQRAIANBAEchAQwBC0EBIQIgA0UEQCABKAIAIgItABxBBHFFBEAgASACKAIUQb/mwABBAiACKAIYKAIMEQEAIgE6AAQMAgsgAigCFEG+5sAAQQEgAigCGCgCDBEBACECCyABIAI6AAQgAiEBCyAAQRBqJAAgAQsqAQF/IABBEGoQLgJAIAAoAgAiAUGAgICAeEYNACABRQ0AIAAoAgQQFQsLLwECfyAAIAAoAqABIgIgACgCpAFBAWoiAyABIABBqgFqECEgAEHUAGogAiADEHALLwECfyAAIAAoAqABIgIgACgCpAFBAWoiAyABIABBqgFqEFAgAEHUAGogAiADEHALKwAgASACSQRAQbSnwABBI0GkqMAAEIsBAAsgAiAAIAJBBHRqIAEgAmsQEws1AQF/IAEoAhRBjOTAAEEBIAFBGGooAgAoAgwRAQAhAiAAQQA6AAUgACACOgAEIAAgATYCAAsjAAJAIAFB/P///wdNBEAgACABQQQgAhC/ASIADQELAAsgAAslACAARQRAQeCXwABBMhDiAQALIAAgAiADIAQgBSABKAIQEQgACzMAIAEoAhQgAC0AAEECdCIAQYiFwABqKAIAIABB0ITAAGooAgAgAUEYaigCACgCDBEBAAszACABKAIUIAAtAABBAnQiAEGwjcAAaigCACAAQaSNwABqKAIAIAFBGGooAgAoAgwRAQALMwAgASgCFCAALQAAQQJ0IgBBxJPAAGooAgAgAEG4k8AAaigCACABQRhqKAIAKAIMEQEACyMAIABFBEBB4JfAAEEyEOIBAAsgACACIAMgBCABKAIQEQUACyMAIABFBEBB4JfAAEEyEOIBAAsgACACIAMgBCABKAIQERgACyMAIABFBEBB4JfAAEEyEOIBAAsgACACIAMgBCABKAIQERoACyMAIABFBEBB4JfAAEEyEOIBAAsgACACIAMgBCABKAIQERwACyMAIABFBEBB4JfAAEEyEOIBAAsgACACIAMgBCABKAIQEQwACx8AIAAoAgBBgICAgHhyQYCAgIB4RwRAIAAoAgQQFQsLMQAgASgCFEGdkMAAQZiQwAAgACgCAC0AACIAG0EHQQUgABsgAUEYaigCACgCDBEBAAshACAARQRAQeCXwABBMhDiAQALIAAgAiADIAEoAhARAwALEQAgACgCAARAIAAoAgQQFQsLIgAgAC0AAEUEQCABQeDowABBBRARDwsgAUHl6MAAQQQQEQsuACABKAIUQfuLwABB9IvAACAALQAAIgAbQQlBByAAGyABQRhqKAIAKAIMEQEACx8AIABFBEBB4JfAAEEyEOIBAAsgACACIAEoAhARAAALDwAgABCwASAAQQxqELABCxsAEAchAiAAQQA2AgggACACNgIEIAAgATYCAAsdAQF/EAchAiAAQQA2AgggACACNgIEIAAgATYCAAu5AwICfgZ/QbD9wAAoAgBFBEAjAEEwayIDJAACfwJAIAAEQCAAKAIAIABBADYCAA0BCyADQRBqQZiVwAApAwA3AwAgA0GQlcAAKQMANwMIQQAMAQsgA0EQaiAAQRBqKQIANwMAIAMgACkCCDcDCCAAKAIECyEAQbD9wAApAgAhAUG0/cAAIAA2AgBBsP3AAEEBNgIAIANBGGoiAEEQakHA/cAAKQIANwMAIABBCGoiAEG4/cAAKQIANwMAQbj9wAAgAykDCDcCAEHA/cAAIANBEGopAwA3AgAgAyABNwMYIAGnBEACQCAAKAIEIgZFDQAgACgCDCIHBEAgACgCACIEQQhqIQUgBCkDAEJ/hUKAgYKEiJCgwIB/gyEBA0AgAVAEQANAIARB4ABrIQQgBSkDACAFQQhqIQVCf4VCgIGChIiQoMCAf4MiAVANAAsLIAFCAX0hAiAEIAF6p0EDdkF0bGpBBGsoAgAiCEGEAU8EQCAIEAALIAEgAoMhASAHQQFrIgcNAAsLIAZBAWqtQgx+p0EHakF4cSIEIAZqQXdGDQAgACgCACAEaxAVCwsgA0EwaiQAC0G0/cAACxYAIAAoAgBBgICAgHhHBEAgABCwAQsLHAAgASgCFEHj48AAQQ4gAUEYaigCACgCDBEBAAsUACAAKAIAIgBBhAFPBEAgABAACwuXAQECfyAAKAIAIgAoAgQhAiAAKAIIIQMjAEEQayIAJAAgAEEEaiABEKIBIAMEQCADQQJ0IQEDQCAAIAI2AgwgAEEEaiAAQQxqQdyRwAAQKSACQQRqIQIgAUEEayIBDQALCyAAQQRqIgEtAAQEf0EBBSABKAIAIgEoAhRBxubAAEEBIAFBGGooAgAoAgwRAQALIABBEGokAAuXAQECfyAAKAIAIgAoAgQhAiAAKAIIIQMjAEEQayIAJAAgAEEEaiABEKIBIAMEQCADQQF0IQEDQCAAIAI2AgwgAEEEaiAAQQxqQZyRwAAQKSACQQJqIQIgAUECayIBDQALCyAAQQRqIgEtAAQEf0EBBSABKAIAIgEoAhRBxubAAEEBIAFBGGooAgAoAgwRAQALIABBEGokAAuXAQECfyAAKAIAIgAoAgQhAiAAKAIIIQMjAEEQayIAJAAgAEEEaiABEKIBIAMEQCADQQJ0IQEDQCAAIAI2AgwgAEEEaiAAQQxqQbyRwAAQKSACQQRqIQIgAUEEayIBDQALCyAAQQRqIgEtAAQEf0EBBSABKAIAIgEoAhRBxubAAEEBIAFBGGooAgAoAgwRAQALIABBEGokAAuQAQECfyAAKAIAIgAoAgQhAiAAKAIIIQMjAEEQayIAJAAgAEEEaiABEKIBIAMEQANAIAAgAjYCDCAAQQRqIABBDGpBzJHAABApIAJBAWohAiADQQFrIgMNAAsLIABBBGoiAS0ABAR/QQEFIAEoAgAiASgCFEHG5sAAQQEgAUEYaigCACgCDBEBAAsgAEEQaiQAC8kFAQZ/AkACQAJAAkAgAkEJTwRAIAIgAxAcIgINAUEAIQAMBAtBACECIANBzP97Sw0BQRAgA0ELakF4cSADQQtJGyEEIABBBGsiBigCACIFQXhxIQcCQCAFQQNxRQRAIARBgAJJDQEgByAEQQRySQ0BIAcgBGtBgYAITw0BDAULIABBCGsiCCAHaiEJAkACQAJAAkAgBCAHSwRAIAlBrIHBACgCAEYNBCAJQaiBwQAoAgBGDQIgCSgCBCIBQQJxDQUgAUF4cSIBIAdqIgUgBEkNBSAJIAEQHyAFIARrIgNBEEkNASAGIAQgBigCAEEBcXJBAnI2AgAgBCAIaiICIANBA3I2AgQgBSAIaiIBIAEoAgRBAXI2AgQgAiADEBsMCQsgByAEayICQQ9LDQIMCAsgBiAFIAYoAgBBAXFyQQJyNgIAIAUgCGoiASABKAIEQQFyNgIEDAcLQaCBwQAoAgAgB2oiASAESQ0CAkAgASAEayIDQQ9NBEAgBiAFQQFxIAFyQQJyNgIAIAEgCGoiASABKAIEQQFyNgIEQQAhAwwBCyAGIAQgBUEBcXJBAnI2AgAgBCAIaiICIANBAXI2AgQgASAIaiIBIAM2AgAgASABKAIEQX5xNgIEC0GogcEAIAI2AgBBoIHBACADNgIADAYLIAYgBCAFQQFxckECcjYCACAEIAhqIgEgAkEDcjYCBCAJIAkoAgRBAXI2AgQgASACEBsMBQtBpIHBACgCACAHaiIBIARLDQMLIAMQDyIBRQ0BIAEgACAGKAIAIgFBeHFBfEF4IAFBA3EbaiIBIAMgASADSRsQ7wEgABAVIQAMAwsgAiAAIAEgAyABIANJGxDvARogABAVCyACIQAMAQsgBiAEIAVBAXFyQQJyNgIAIAQgCGoiAiABIARrIgFBAXI2AgRBpIHBACABNgIAQayBwQAgAjYCAAsgAAsUACAAIAIgAxAFNgIEIABBADYCAAsLACABBEAgABAVCwsTACABKAIUIAFBGGooAgAgABAWCxEAIABBCGoiABCAASAAELABCxMAIAAoAgAgASgCACACKAIAEAwLEAAgACABIAEgAmoQgwFBAAsUACAAKAIAIAEgACgCBCgCDBEAAAuSAQECfyAAKAIEIQIgACgCCCEDIwBBEGsiACQAIABBBGogARCiASADBEAgA0EEdCEBA0AgACACNgIMIABBBGogAEEMakGMkcAAECkgAkEQaiECIAFBEGsiAQ0ACwsgAEEEaiIBLQAEBH9BAQUgASgCACIBKAIUQcbmwABBASABQRhqKAIAKAIMEQEACyAAQRBqJAALkgEBAn8gACgCBCECIAAoAgghAyMAQRBrIgAkACAAQQRqIAEQogEgAwRAIANBBHQhAQNAIAAgAjYCDCAAQQRqIABBDGpB7JHAABApIAJBEGohAiABQRBrIgENAAsLIABBBGoiAS0ABAR/QQEFIAEoAgAiASgCFEHG5sAAQQEgAUEYaigCACgCDBEBAAsgAEEQaiQACxkAAn8gAUEJTwRAIAEgABAcDAELIAAQDwsLEQAgACgCBCAAKAIIIAEQ6wELqAIBBn8jAEEQayIFJAACQAJAAkAgASgCCCICIAEoAgBPDQAgBUEIaiEGIwBBIGsiBCQAAkAgASgCACIDIAJPBEACf0GBgICAeCADRQ0AGiABKAIEIQcCQCACRQRAQQEhAyAHEBUMAQtBASAHIANBASACEL8BIgNFDQEaCyABIAI2AgAgASADNgIEQYGAgIB4CyEDIAYgAjYCBCAGIAM2AgAgBEEgaiQADAELIARBFGpCADcCACAEQQE2AgwgBEG8mcAANgIIIARBmJnAADYCECAEQQhqQZCawAAQkwEACyAFKAIIIgJBgYCAgHhGDQAgAkUNASACIAUoAgxB6P3AACgCACIAQdYAIAAbEQIAAAsgBUEQaiQADAELEJIBAAsgACABKQIENwMACw4AIAAgASABIAJqEIMBCyAAIABC5N7HhZDQhd59NwMIIABCwff56MyTstFBNwMACyIAIABCjYSZ6OiU74GjfzcDCCAAQqSF9JiC9Ziku383AwALIAAgAELrnd3g6M63nQc3AwggAEL9xtfm68XEvTM3AwALEwAgAEGI38AANgIEIAAgATYCAAsQACABIAAoAgAgACgCBBARCw0AIAAgASACEMwBQQALDQAgACgCACABIAIQBgsNACAAKAIAIAEgAhALCwwAIAAoAgAQCkEBRgsOACAAKAIAGgNADAALAAsLACAANQIAIAEQIwsLACAAMQAAIAEQIwsLACAAKQMAIAEQIwsLACAAIwBqJAAjAAsHACAAELABCwwAIAAQgAEgABCwAQudAQEBfyAAKAIAIQIjAEFAaiIAJAAgAEIANwM4IABBOGogAigCABANIABBGGpCATcCACAAIAAoAjwiAjYCNCAAIAAoAjg2AjAgACACNgIsIABB0QA2AiggAEECNgIQIABBnJjAADYCDCAAIABBLGoiAjYCJCAAIABBJGo2AhQgASgCFCABQRhqKAIAIABBDGoQFiACELABIABBQGskAAt8AQJ/QQIhAyMAQRBrIgIkACACQQRqIAEQogEDQCACIAA2AgwgAkEEaiACQQxqQayRwAAQKSAAQQFqIQAgA0EBayIDDQALIAJBBGoiAC0ABAR/QQEFIAAoAgAiACgCFEHG5sAAQQEgAEEYaigCACgCDBEBAAsgAkEQaiQACxwAIAEoAhRB6I/AAEEFIAFBGGooAgAoAgwRAQALDAAgACgCACABELEBCwsAIAAoAgAgARAlCwkAIAAgARAOAAsNAEGsmMAAQRsQ4gEACw4AQceYwABBzwAQ4gEACw0AIABBnKXAACABEBYLDQAgAEHM3cAAIAEQFgsNACAAQbjgwAAgARAWCxwAIAEoAhRBsODAAEEFIAFBGGooAgAoAgwRAQALmgQBBX8jAEEQayIDJAACQAJ/AkAgAUGAAU8EQCADQQA2AgwgAUGAEEkNASABQYCABEkEQCADIAFBP3FBgAFyOgAOIAMgAUEMdkHgAXI6AAwgAyABQQZ2QT9xQYABcjoADUEDDAMLIAMgAUE/cUGAAXI6AA8gAyABQQZ2QT9xQYABcjoADiADIAFBDHZBP3FBgAFyOgANIAMgAUESdkEHcUHwAXI6AAxBBAwCCyAAKAIIIgIgACgCAEYEQCMAQSBrIgQkAAJAAkAgAkEBaiICRQ0AIAAoAgAiBkEBdCIFIAIgAiAFSRsiAkEIIAJBCEsbIgVBf3NBH3YhAgJAIAZFBEAgBEEANgIYDAELIAQgBjYCHCAEQQE2AhggBCAAKAIENgIUCyAEQQhqIAIgBSAEQRRqEDIgBCgCDCECIAQoAghFBEAgACAFNgIAIAAgAjYCBAwCCyACQYGAgIB4Rg0BIAJFDQAgAiAEQRBqKAIAQej9wAAoAgAiAEHWACAAGxECAAALEJIBAAsgBEEgaiQAIAAoAgghAgsgACACQQFqNgIIIAAoAgQgAmogAToAAAwCCyADIAFBP3FBgAFyOgANIAMgAUEGdkHAAXI6AAxBAgshASABIAAoAgAgACgCCCICa0sEQCAAIAIgARA5IAAoAgghAgsgACgCBCACaiADQQxqIAEQ7wEaIAAgASACajYCCAsgA0EQaiQAQQALDQAgAEGY5sAAIAEQFgsKACACIAAgARARC8ECAQN/IAAoAgAhACMAQYABayIEJAACQAJAAkACfwJAIAEoAhwiAkEQcUUEQCACQSBxDQEgADUCACABECMMAgsgACgCACECQQAhAANAIAAgBGpB/wBqQTBB1wAgAkEPcSIDQQpJGyADajoAACAAQQFrIQAgAkEQSSACQQR2IQJFDQALIABBgAFqIgJBgAFLDQIgAUH05sAAQQIgACAEakGAAWpBACAAaxAUDAELIAAoAgAhAkEAIQADQCAAIARqQf8AakEwQTcgAkEPcSIDQQpJGyADajoAACAAQQFrIQAgAkEQSSACQQR2IQJFDQALIABBgAFqIgJBgAFLDQIgAUH05sAAQQIgACAEakGAAWpBACAAaxAUCyEAIARBgAFqJAAMAgsgAkGAAUHk5sAAEFgACyACQYABQeTmwAAQWAALIAALkQUBB38CQAJ/AkAgAiIEIAAgAWtLBEAgACAEaiECIAEgBGoiCCAEQRBJDQIaIAJBfHEhA0EAIAJBA3EiBmsgBgRAIAEgBGpBAWshAANAIAJBAWsiAiAALQAAOgAAIABBAWshACACIANLDQALCyADIAQgBmsiBkF8cSIHayECIAhqIglBA3EEQCAHQQBMDQIgCUEDdCIFQRhxIQggCUF8cSIAQQRrIQFBACAFa0EYcSEEIAAoAgAhAANAIAAgBHQhBSADQQRrIgMgBSABKAIAIgAgCHZyNgIAIAFBBGshASACIANJDQALDAILIAdBAEwNASABIAZqQQRrIQEDQCADQQRrIgMgASgCADYCACABQQRrIQEgAiADSQ0ACwwBCwJAIARBEEkEQCAAIQIMAQtBACAAa0EDcSIFIABqIQMgBQRAIAAhAiABIQADQCACIAAtAAA6AAAgAEEBaiEAIAMgAkEBaiICSw0ACwsgBCAFayIJQXxxIgcgA2ohAgJAIAEgBWoiBUEDcQRAIAdBAEwNASAFQQN0IgRBGHEhBiAFQXxxIgBBBGohAUEAIARrQRhxIQggACgCACEAA0AgACAGdiEEIAMgBCABKAIAIgAgCHRyNgIAIAFBBGohASADQQRqIgMgAkkNAAsMAQsgB0EATA0AIAUhAQNAIAMgASgCADYCACABQQRqIQEgA0EEaiIDIAJJDQALCyAJQQNxIQQgBSAHaiEBCyAERQ0CIAIgBGohAANAIAIgAS0AADoAACABQQFqIQEgACACQQFqIgJLDQALDAILIAZBA3EiAEUNASACIABrIQAgCSAHawtBAWshAQNAIAJBAWsiAiABLQAAOgAAIAFBAWshASAAIAJJDQALCwuvAQEDfyABIQUCQCACQRBJBEAgACEBDAELQQAgAGtBA3EiAyAAaiEEIAMEQCAAIQEDQCABIAU6AAAgBCABQQFqIgFLDQALCyACIANrIgJBfHEiAyAEaiEBIANBAEoEQCAFQf8BcUGBgoQIbCEDA0AgBCADNgIAIARBBGoiBCABSQ0ACwsgAkEDcSECCyACBEAgASACaiECA0AgASAFOgAAIAIgAUEBaiIBSw0ACwsgAAu8AgEIfwJAIAIiBkEQSQRAIAAhAgwBC0EAIABrQQNxIgQgAGohBSAEBEAgACECIAEhAwNAIAIgAy0AADoAACADQQFqIQMgBSACQQFqIgJLDQALCyAGIARrIgZBfHEiByAFaiECAkAgASAEaiIEQQNxBEAgB0EATA0BIARBA3QiA0EYcSEJIARBfHEiCEEEaiEBQQAgA2tBGHEhCiAIKAIAIQMDQCADIAl2IQggBSAIIAEoAgAiAyAKdHI2AgAgAUEEaiEBIAVBBGoiBSACSQ0ACwwBCyAHQQBMDQAgBCEBA0AgBSABKAIANgIAIAFBBGohASAFQQRqIgUgAkkNAAsLIAZBA3EhBiAEIAdqIQELIAYEQCACIAZqIQMDQCACIAEtAAA6AAAgAUEBaiEBIAMgAkEBaiICSw0ACwsgAAsJACAAIAEQsQELAwABCwucfAkAQYCAwAALkxVWdHBhcnNlcgIAAAAcAAAABAAAAAMAAAB0ZXJtaW5hbAQAAAAEAAAABAAAAAUAAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlAAYAAAAEAAAABAAAAAcAAABHcm91bmRFc2NhcGVFc2NhcGVJbnRlcm1lZGlhdGVDc2lFbnRyeUNzaVBhcmFtQ3NpSW50ZXJtZWRpYXRlQ3NpSWdub3JlRGNzRW50cnlEY3NQYXJhbURjc0ludGVybWVkaWF0ZURjc1Bhc3N0aHJvdWdoRGNzSWdub3JlT3NjU3RyaW5nU29zUG1BcGNTdHJpbmdQYXJhbXMAAAAEAAAABAAAAAQAAAAIAAAAUGFyc2Vyc3RhdGUACQAAAAEAAAABAAAACgAAAHBhcmFtcwAACwAAAAwAAAAEAAAADAAAAGludGVybWVkaWF0ZXMAAAAEAAAABAAAAAQAAAANAAAAVHJpZWQgdG8gc2hyaW5rIHRvIGEgbGFyZ2VyIGNhcGFjaXR5bAEQACQAAAAvcnVzdGMvMDdkY2E0ODlhYzJkOTMzYzc4ZDNjNTE1OGUzZjQzYmVlZmViMDJjZS9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjLnJzmAEQAEwAAADPAQAACQAAAEVycm9yAAAABAAAAAQAAAAEAAAADgAAAHNyYy9saWIucnMAAAwCEAAKAAAAIQAAADAAAAAwABAAAAAAAAwCEAAKAAAAOwAAAC0AAAAMAhAACgAAAEEAAAAvAAAABgAAAAYAAAASAAAACAAAAAgAAAAPAAAACQAAAAgAAAAIAAAADwAAAA4AAAAJAAAACQAAAA4AAABsABAAcgAQAHgAEACKABAAkgAQAJoAEACpABAAsgAQALoAEADCABAA0QAQAN8AEADoABAA8QAQAFBlbmZvcmVncm91bmQAAAAPAAAABAAAAAEAAAAQAAAAYmFja2dyb3VuZGludGVuc2l0eQAPAAAAAQAAAAEAAAARAAAAYXR0cnMAAAASAAAABAAAAAQAAAATAAAAVGFicxIAAAAEAAAABAAAABQAAABCdWZmZXJsaW5lcwAVAAAADAAAAAQAAAAWAAAAY29scxIAAAAEAAAABAAAABcAAAByb3dzc2Nyb2xsYmFja19saW1pdBIAAAAIAAAABAAAABgAAAB0cmltX25lZWRlZAASAAAABAAAAAQAAAAZAAAATm9ybWFsQm9sZEZhaW50YnVmZmVyb3RoZXJfYnVmZmVyYWN0aXZlX2J1ZmZlcl90eXBlY3Vyc29ycGVuY2hhcnNldHNhY3RpdmVfY2hhcnNldHRhYnNpbnNlcnRfbW9kZW9yaWdpbl9tb2RlYXV0b193cmFwX21vZGVuZXdfbGluZV9tb2RlbmV4dF9wcmludF93cmFwc3RvcF9tYXJnaW5ib3R0b21fbWFyZ2luc2F2ZWRfY3R4YWx0ZXJuYXRlX3NhdmVkX2N0eGRpcnR5X2xpbmVzcmVzaXphYmxlcmVzaXplZAAAAEwDEAAEAAAAYAMQAAQAAACvAxAABgAAALUDEAAMAAAAwQMQABIAAABkAxAAEAAAANMDEAAGAAAA2QMQAAMAAADcAxAACAAAAOQDEAAOAAAA8gMQAAQAAAD2AxAACwAAAAEEEAALAAAADAQQAA4AAAAaBBAADQAAACcEEAAQAAAANwQQAAoAAABBBBAADQAAAE4EEAAJAAAAVwQQABMAAABqBBAACwAAAHUEEAAJAAAAfgQQAAcAAAAaAAAAIAAAAAQAAAAbAAAADwAAAAEAAAABAAAAHAAAABIAAAAMAAAABAAAAB0AAAAPAAAACgAAAAEAAAAeAAAADwAAAAIAAAABAAAAHwAAACAAAAAMAAAABAAAACEAAAAPAAAAAQAAAAEAAAAiAAAAEgAAABQAAAAEAAAAIwAAACQAAAAMAAAABAAAACUAAABUZXJtaW5hbFNhdmVkQ3R4Y3Vyc29yX2NvbGN1cnNvcl9yb3dQcmltYXJ5QWx0ZXJuYXRlQ3Vyc29yY29scm93dmlzaWJsZU5vbmVTb21lABIAAAAEAAAABAAAACYAAAASAAAABAAAAAQAAAAnAAAAUkdCcg8AAAABAAAAAQAAACgAAABnYkRpcnR5TGluZXMSAAAABAAAAAQAAAApAAAATWFwIGtleSBpcyBub3QgYSBzdHJpbmcgYW5kIGNhbm5vdCBiZSBhbiBvYmplY3Qga2V5AAYAAAAEAAAABQAAAKADEACmAxAAqgMQAGB1bndyYXBfdGhyb3dgIGZhaWxlZAAAACsAAAAMAAAABAAAACwAAAAtAAAALgAAAGEgRGlzcGxheSBpbXBsZW1lbnRhdGlvbiByZXR1cm5lZCBhbiBlcnJvciB1bmV4cGVjdGVkbHkALwAAAAAAAAABAAAAMAAAAC9ydXN0Yy8wN2RjYTQ4OWFjMmQ5MzNjNzhkM2M1MTU4ZTNmNDNiZWVmZWIwMmNlL2xpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwA0BxAASwAAADMKAAAOAAAAQ2VsbDEAAAAEAAAABAAAADIAAAAxAAAABAAAAAQAAAAzAAAATGluZWNlbGxzAAAANAAAAAwAAAAEAAAANQAAAHdyYXBwZWQAMQAAAAQAAAAEAAAAGQAAAEVycm9ySW5kZXhlZDEAAAAEAAAABAAAABMAAABSR0IAMQAAAAQAAAAEAAAANgAAAEFzY2lpRHJhd2luZ3JnYigsKQAAJAgQAAQAAAAoCBAAAQAAACgIEAABAAAAKQgQAAEAAABJbnRlcm1lZGlhdGVzAAAAMQAAAAQAAAAEAAAANwAAAFNlZ21lbnR0ZXh0cGVub2Zmc2V0Y2hhcldpZHRoAAAAOAAAAAQAAAAEAAAAOQAAADgAAAAEAAAABAAAADoAAAA4AAAABAAAAAQAAAA7AAAAOAAAAAQAAAAEAAAAPAAAADgAAAAEAAAABAAAABkAAAA4AAAABAAAAAQAAAAmAAAAOAAAAAQAAAAEAAAAPQAAAFBlbmZvcmVncm91bmQAAAA+AAAABAAAAAEAAAA/AAAAYmFja2dyb3VuZGludGVuc2l0eQA+AAAAAQAAAAEAAABAAAAAYXR0cnMAAAA4AAAABAAAAAQAAAATAAAAZmdiZ2JvbGQBZmFpbnRpdGFsaWN1bmRlcmxpbmVzdHJpa2V0aHJvdWdoYmxpbmtpbnZlcnNlTm9ybWFsQm9sZEZhaW50Tm9uZVNvbWUAAAA4AAAABAAAAAQAAAAnAAAABgAAAAQAAAAFAAAAjgkQAJQJEACYCRAAY2Fubm90IGFjY2VzcyBhIFRocmVhZCBMb2NhbCBTdG9yYWdlIHZhbHVlIGR1cmluZyBvciBhZnRlciBkZXN0cnVjdGlvbgAAQgAAAAAAAAABAAAAQwAAAC9ydXN0Yy8wN2RjYTQ4OWFjMmQ5MzNjNzhkM2M1MTU4ZTNmNDNiZWVmZWIwMmNlL2xpYnJhcnkvc3RkL3NyYy90aHJlYWQvbG9jYWwucnMAKAoQAE8AAAD2AAAAGgAAAP//////////iAoQAEGglcAAC9gVIGNhbid0IGJlIHJlcHJlc2VudGVkIGFzIGEgSmF2YVNjcmlwdCBudW1iZXKIChAAAAAAAKAKEAAsAAAARAAAAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3NlcmRlLXdhc20tYmluZGdlbi0wLjQuNS9zcmMvbGliLnJzAAAA4AoQAGUAAAA1AAAADgAAAFRyaWVkIHRvIHNocmluayB0byBhIGxhcmdlciBjYXBhY2l0eVgLEAAkAAAAL3J1c3RjLzA3ZGNhNDg5YWMyZDkzM2M3OGQzYzUxNThlM2Y0M2JlZWZlYjAyY2UvbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5yc4QLEABMAAAAzwEAAAkAAABjbG9zdXJlIGludm9rZWQgcmVjdXJzaXZlbHkgb3IgYWZ0ZXIgYmVpbmcgZHJvcHBlZEpzVmFsdWUoKQASDBAACAAAABoMEAABAAAAbnVsbCBwb2ludGVyIHBhc3NlZCB0byBydXN0cmVjdXJzaXZlIHVzZSBvZiBhbiBvYmplY3QgZGV0ZWN0ZWQgd2hpY2ggd291bGQgbGVhZCB0byB1bnNhZmUgYWxpYXNpbmcgaW4gcnVzdAAAVHJpZWQgdG8gc2hyaW5rIHRvIGEgbGFyZ2VyIGNhcGFjaXR5mAwQACQAAAAvcnVzdGMvMDdkY2E0ODlhYzJkOTMzYzc4ZDNjNTE1OGUzZjQzYmVlZmViMDJjZS9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjLnJzxAwQAEwAAADPAQAACQAAAC9ydXN0Yy8wN2RjYTQ4OWFjMmQ5MzNjNzhkM2M1MTU4ZTNmNDNiZWVmZWIwMmNlL2xpYnJhcnkvYWxsb2Mvc3JjL3ZlYy9tb2QucnMgDRAATAAAACQIAAAkAAAAIA0QAEwAAADvBQAAFQAAAGNhbGxlZCBgT3B0aW9uOjp1bndyYXAoKWAgb24gYSBgTm9uZWAgdmFsdWUvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9hdnQtMC4xMC4yL3NyYy9idWZmZXIucnMAAAC3DRAAWgAAAGEAAAANAAAAtw0QAFoAAABlAAAADQAAALcNEABaAAAAagAAAA0AAAC3DRAAWgAAAG8AAAAdAAAAtw0QAFoAAAB8AAAAJQAAALcNEABaAAAAhgAAACUAAAC3DRAAWgAAAI4AAAAVAAAAtw0QAFoAAACYAAAAJQAAALcNEABaAAAAnwAAABUAAAC3DRAAWgAAAKQAAAAlAAAAtw0QAFoAAACvAAAAEQAAALcNEABaAAAAvgAAABEAAAC3DRAAWgAAAMAAAAARAAAAtw0QAFoAAADKAAAADQAAALcNEABaAAAAzgAAABEAAAC3DRAAWgAAANEAAAANAAAAtw0QAFoAAAD7AAAAKwAAALcNEABaAAAAQAEAACwAAAC3DRAAWgAAADkBAAAbAAAAtw0QAFoAAABMAQAAFAAAALcNEABaAAAAXgEAABgAAAC3DRAAWgAAAGMBAAAYAAAAYXNzZXJ0aW9uIGZhaWxlZDogbGluZXMuaXRlcigpLmFsbCh8bHwgbC5sZW4oKSA9PSBjb2xzKQC3DRAAWgAAANIBAAAFAAAAYXNzZXJ0aW9uIGZhaWxlZDogbWlkIDw9IHNlbGYubGVuKCkvcnVzdGMvMDdkY2E0ODlhYzJkOTMzYzc4ZDNjNTE1OGUzZjQzYmVlZmViMDJjZS9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL21vZC5yc98PEABNAAAAaA0AAAkAAABhc3NlcnRpb24gZmFpbGVkOiBrIDw9IHNlbGYubGVuKCkAAADfDxAATQAAAJMNAAAJAAAAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYXZ0LTAuMTAuMi9zcmMvbGluZS5yc3AQEABYAAAAFgAAABMAAABwEBAAWAAAABoAAAATAAAAcBAQAFgAAAAeAAAAEwAAAHAQEABYAAAAHwAAABMAAABwEBAAWAAAACMAAAATAAAAcBAQAFgAAAAlAAAAEwAAAHAQEABYAAAAOgAAACUAAAAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9hdnQtMC4xMC4yL3NyYy90YWJzLnJzOBEQAFgAAAAXAAAAFAAAAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL2F2dC0wLjEwLjIvc3JjL3Rlcm1pbmFsLnJzoBEQAFwAAABwAQAAFQAAAKAREABcAAAApwEAABEAAACgERAAXAAAAOYCAAAjAAAAL2hvbWUvcnVubmVyLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYXZ0LTAuMTAuMi9zcmMvcGFyc2VyLnJzAAAsEhAAWgAAAIwBAAAnAAAAAAAAAFIAAAAMAAAABAAAAFMAAABUAAAALgAAAGYmAACSJQAACSQAAAwkAAANJAAACiQAALAAAACxAAAAJCQAAAskAAAYJQAAECUAAAwlAAAUJQAAPCUAALojAAC7IwAAACUAALwjAAC9IwAAHCUAACQlAAA0JQAALCUAAAIlAABkIgAAZSIAAMADAABgIgAAowAAAMUiAAAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi91bmljb2RlLXdpZHRoLTAuMS4xMS9zcmMvdGFibGVzLnJzMBMQAGQAAAAnAAAAGQAAADATEABkAAAALQAAAB0AAABhc3NlcnRpb24gZmFpbGVkOiBtaWQgPD0gc2VsZi5sZW4oKS9ydXN0Yy8wN2RjYTQ4OWFjMmQ5MzNjNzhkM2M1MTU4ZTNmNDNiZWVmZWIwMmNlL2xpYnJhcnkvY29yZS9zcmMvc2xpY2UvbW9kLnJz1xMQAE0AAABoDQAACQAAAGFzc2VydGlvbiBmYWlsZWQ6IGsgPD0gc2VsZi5sZW4oKQAAANcTEABNAAAAkw0AAAkAAAAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9hdnQtMC4xMC4yL3NyYy90ZXJtaW5hbC9kaXJ0eV9saW5lcy5yc2gUEABoAAAADAAAAA8AAABoFBAAaAAAABAAAAAPAAAAAAECAwMEBQYHCAkKCwwNDgMDAwMDAwMPAwMDAwMDAw8JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCRAJCQkJCQkJERERERERERIREREREREREgBB8avAAAufFAECAwQFBgcGCAYJCgsMDQ4PEAYGBhESExQGFRYXGBkaGxwdHh8gISIjIiQlJicoKSolKywtLi8wMTIzNDU2Nzg5OgY7PAoKBgYGBgY9BgYGBgYGBgYGBgYGBgY+P0BBQgZDBkQGBgZFRkdISUpLTE0GBk4GBgYKBgYGBgYGBgZPUFFSU1RVVldYWQZaBgZbBlxdXl1fYGFiY2RlZmdoBgYGBgYGBgYGBgYGBmlqBgYGBgZrBgEGbAYGbW47OztvcHFyO3M7dHV2dzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozt4eQYGBgYGent8BgYGBn0GBn5/gIGCg4SFhgYGBoc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzuIBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXTs7Ozs7Ozs7iQYGBgYGBgYGBgYGiosGAXGMBo0GBgYGBgYGjgYGBo8GkAYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGkQYGkgYGBgYGBgYGkwYGBgYGlJUGlpcGmJmam5ydnp+gLgahLKIGBqOkpaYGBqeoqaqrBqwGBgatBgYGrq8GsLGyswYGBgYGtAa1Bra3uAYGBga5ursGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGR7wGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGvb4GBgYGBgYGBgYGBgYGBgYGv8DBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzvCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O8PEBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGxTs7OzvGxzs7Ozs7yAYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGyQYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgbKywYGBgYGBgbMzQYGzgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBs/Q0QYGBgYGBgYGBgYGBgYGBgYGBgYGBtIGvwa+BgYGBgbT1AYGBgYGBgbUBgYGBgYGBgYGBgYGBgYG1QbWBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgbXBgbY2drbBtzdBgbe3+Dh4uM75OXm5+g76TvqBgYG6wYGBgbs7Ts7Bu7v8AYGBgYGBgYGBgYGBgYGBgYGBgYGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O+XxCgYGCgoKCwYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBl1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXfIAAAAAAAAAAFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVFQAAAAAAAAAAXdd3df/3f/9VdVVVV9VX9V91f1/31X93XVVVVd1V1VVV9dVV/VVX1X9X/131VVVVVfXVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVdXd3d1dVVVVVVVVVVVVVVVVdVVVVXVVVVVVVVVVV1/1dV1X/3VVVVVVVVVVVAEGswMAAC1lVVVVVVVVVVf3////f/19V/f///9//X1VVVVVVVVVVVVVVVVVdVVVV/////////////////////11VVVVVVVVVVVVVVRUAUFVVVVVVVVVVVVVVVVVVVVVVAQBBj8HAAAu0ARBBEFVVVVVVVVVVVVVVVVVVAFBVVQAAQFRVVVVVVVVVVVVVFQAAAAAAVVVVVVRVVVVVVVVVVQUAEAAUBFBVVVVVVVVVFVFVVVVVVVVVAAAAAAAAQFVVVVVVVVVVVVVVVVVVVVVVVVVVVVUFAABUVVVVVVVVVVVVVVVVVRUAAFVVUVVVVVVVBRAAAAEBUFVVVVVVVVVVVVUBVVVVVVVVVVVVVVVVVVBVAABVVVVVVVVVVVVVBQBB0MLAAAvAFUBVVVVVVVVVVVVVVVVVRVQBAFRRAQBVVQVVVVVVVVVVUVVVVVVVVVVVVVVVVVVVVAFUVVFVVVVVBVVVVVVVVUVBVVVVVVVVVVVVVVVVVVVUQRUUUFFVVVVVVVVVUFFVVQEQVFFVVVVVBVVVVVVVBQBRVVVVVVVVVVVVVVVVVVUUAVRVUVVBVVUFVVVVVVVVVUVVVVVVVVVVVVVVVVVVVVVUVVVRVVVVVVVVVVVVVVVVVFRVVVVVVVVVVVVVVVVVBFQFBFBVQVVVBVVVVVVVVVVVRVVQVVVVVQVVVVVVVVVVUFVVVVVVVVVVVVVVVVUVVAFUVVFVVVVVBVVVVVVVVVVRVVVVVVVVVVVVVVVVVVVVVVVFVQVEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVEAQFVVFQBAVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUQAAVFVVAEBVVVVVVVVVVVVVVVVVVVVVVVVQVVVVVVVVEVFVVVVVVVVVVVVVVVVVAQAAQAAEVQEAAAEAAAAAAAAAAFRVRVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUBBABBQVVVVVVVVVAFVFVVVQFUVVVFQVVRVVVVUVVVVVVVVVVVqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqAAAAAAAAAABVVVVVVVVVAVVVVVVVVVVVVVVVVQVUVVVVVVVVBVVVVVVVVVUFVVVVVVVVVQVVVVVVVVVVVVVVVVVVVVVVEABQVUUBAABVVVFVVVVVVVVVVVVVFQBVVVVVVVVVVVVVVVVVQVVVVVVVVVVVUVVVVVVVVVVVVVVVVVVAFVRVRVUBVVVVVVVVFRRVVVVVVVVVVVVVVVVVVUUAQEQBAFQVAAAUVVVVVVVVVVVVVVVVAAAAAAAAAEBVVVVVVVVVVVVVVVUAVVVVVVVVVVVVVVVVBEBURVVVVVVVVVVVVRUAAFVVVVBVVVVVVVVVBVAQUFVVVVVVVVVVVVVVVVVFUBFQVVVVVVVVVVVVVVVVVVUAAAVVVVVVVVVAAAAABABUUVVUUFVVVRUA139fX3//BUD3XdV1VVVVVVVVVVUABAAAVVdV1f1XVVVVVVVVVVVVV1VVVVVVVVVVAAAAAAAAAABUVVVV1V1dVdV1VVV9ddVVVVVVVVVVVVXVV9V/////Vf//X1VVVV1V//9fVVVVVVVVVV9VVVVVVXVXVVVV1VVVVVVVVffV19VdXXX9193/d1X/VV9VVVdXdVVVVV//9fVVVVVV9fVVVVVdXVVVXVVVVVVV1VVVVVV1VaVVVVVpVVVVVVVVVVVVVVVVVVVVqVaWVVVVVVVVVVVVVVX/////////////////////////////////////////////3///////////Vf///////////1VVVf/////1X1VV3/9fVfX1VV9f9df1X1VVVfVfVdVVVVVpVX1d9VVaVXdVVVVVVVVVVXdVqqqqVVVV399/31VVVZVVVVVVlVVV9VlVpVVVVVXpVfr/7//+///fVe//r/vv+1VZpVVVVVVVVVVWVVVVVV1VVVVmlZpVVVVVVVVV9f//VVVVVVWpVVVVVVVVVlVVlVVVVVVVVZVWVVVVVVVVVVVVVVVVVvlfVVVVVVVVVVVVVVVVVVVVVVVVVVUVUFVVVVVVVVVVVVVVAAAAAAAAAACqqqqqqqqaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqlVVVaqqqqqqWlVVVVVVVaqqqqqqqqqqqqqqqqqqCqCqqqpqqaqqqqqqqqqqqqqqqqqqqqqqqqqqaoGqqqqqqqqqqqpVqaqqqqqqqqqqqqqpqqqqqqqqaqqqqqqqqqqqqqqqqqqqqqqqqqqqqlVVlaqqqqqqqqqqqqqqaqqqqqqqqqqqqqr//6qqqqqqqqqqqqqqqqqqqlaqqqqqqqqqqqqqqqqqalVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUVQAAAUFVVVVVVVVUFVVVVVVVVVVVVVVVVVVVVVVVVVVVQVVVVRUUVVVVVVVVVQVVUVVVVVVVQVVVVVVVVAAAAAFBVVRVVVVVVVVVVVVUFAFBVVVVVVRUAAFBVVVWqqqqqqqqqVkBVVVVVVVVVVVVVVRUFUFBVVVVVVVVVVVVRVVVVVVVVVVVVVVVVVVVVVQFAQUFVVRVVVVRVVVVVVVVVVVVVVVRVVVVVVVVVVVVVVVUEFFQFUVVVVVVVVVVVVVVQVUVVVVVVVVVVVVVVVVFUUVVVVVWqqqqqqqqqqqpVVVVVVVVVVVVVVVVVVUVVVVVVVVVVVQAAAACqqlpVAAAAAKqqqqqqqqqqaqqqqqpqqlVVVVVVqqqqqqqqqqpWVVVVVVVVVVVVVVVVVVVVqmpVVVVVAV1VVVVVVVVVVVVVVVVVVVVRVVVVVVVVVVVUVVVVVVVVVVVVVVVVVVVVVVVVVVUFQFUBQVUAVVVVVVVVVVVVVUAVVVVVVVVVVVVVQVVVVVVVVVVVVVVVVVVVVQBVVVVVVVVVVVVVVVVVVVVVFVRVVVVVVVVVVVVVVVVVVVVVVVVVAVUFAABUVVVVVVVVVVVVVVUFUFVVVVVVVVVVVVVVVVVVUVVVVVVVVVVVVVVVVVUAAABAVVVVVVVVVVVVVRRUVRVQVVVVVVVVVVVVVVUVQEFRRVVVUVVVVVVVVVVVVVVVVUBVVVVVVVVVVRUAAQBUVVVVVVVVVVVVVVVVVVUVVVVVUFVVVVVVVVVVVVVVVQUAQFVVARRVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVRVQBFVFVVVVVVVVVRUVAEBVVVVVVVRVVVVVVVVVVQUAVABUVVVVVVVVVVVVVVVVVVVVVQAABURVVVVVVUVVVVVVVVVVVVVVVVVVVVVVVVVVVRUARBUEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVBVBVEFRVVVVVVVVQVVVVVVVVVVVVVVVVVVVVVVVVVVUVAEARVFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUVUQAQVVVVVVVVVVVVAQUQAFVVVVVVVVVVVVVVVVVVVVUVAABBVVVVVVVVVVVVVVVVVVVVFUQVVVVVVVVVVVVVVVVVVVVVVVVVVVUABVVUVVVVVVVVVQEAQFVVVVVVVVVVVRUAFEBVFVVVAUABVVVVVVVVVVVVVVUFAABAUFVVVVVVVVVVVVVVVVVVVVVVVVVVVQBAABBVVVVVBQAAAAAABQAEQVVVVVVVVVVVVVVVVVVVAUBFEAAQVVVVVVVVVVVVVVVVVVVVVVVVUBFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVFVRVVVBVVVVVVVVVVVVVVVUFQFVEVVVVVVVVVVVVVVVVVVVVVBUAAABQVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQBUVVVVVVVVVVVVVVVVVVUAQFVVVVVVFVVVVVVVVVVVVVVVVVVVVRVAVVVVVVVVVVVVVVVVVVVVVVVVVapUVVVaVVVVqqqqqqqqqqqqqqqqqqpVVaqqqqqqWlVVVVVVVVVVVVWqqlZVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVqqmqaaqqqqqqqqqqalVVVWVVVVVVVVVVallVVVWqVVWqqqqqqqqqqqqqqqqqqqqqqqqqVVVVVVVVVVVBAFVVVVVVVVUAQZvYwAALRVAAAAAAAEBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVRVQVRUAAABAAQBVVVVVVVVVBVBVVVVVBVRVVVVVVVVVVVVVVVVVVQBB7djAAAsCQBUAQfvYwAALryRUVVFVVVVUVVVVVRUAAQAAAFVVVVUAQAAAAAAUABAEQFVVVVVVVVVVVVVVVVVVVVVFVVVVVVVVVVVVVVVVVVVVAFVVVVVVVVVVAEBVVVVVVVVVVVVVVQBAVVVVVVVVVVVVVVVVVVVWVVVVVVVVVVVVVVVVVVVVVVWVVVVVVVVVVVVVVVVV//9/Vf////////9f//////////////////9fVf/////////vq6rq/////1dVVVVValVVVaqqqqqqqqqqqqqqVaqqVlVaVVVVqlpVVVVVVVWqqqqqqqqqqlZVVamqmqqqqqqqqqqqqqqqqqqqqqqqpqqqqqqqVVVVqqqqqqqqqqqqqmqVqlVVVaqqqqpWVqqqqqqqqqqqqqqqqqqqqqqqaqaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqWqqqqqqqqqqqqqqqqqqqqWlVVlWqqqqqqqqpVVVVVZVVVVVVVVWlVVVVWVVVVVVVVVVVVVVVVVVVVVVVVVVWVqqqqqqpVVVVVVVVVVVVVVVWqWlVWaqlVqlVVlVZVqqpWVVVVVVVVVVWqqqpVVlVVVVVVVaqqqqqqqqqqqqqqaqqqmqqqqqqqqqqqqqqqqqqqVVVVVVVVVVVVVVVVqqqqVqqqVlWqqqqqqqqqqqqqqpqqWlWlqqqqVaqqVlWqqlZVUVVVVVVVVVUAAAAAAAAAAP///////////////////19jYWxsZWQgYE9wdGlvbjo6dW53cmFwKClgIG9uIGEgYE5vbmVgIHZhbHVlAFcAAAAMAAAABAAAAFgAAABZAAAAWgAAAEFjY2Vzc0Vycm9ybWVtb3J5IGFsbG9jYXRpb24gb2YgIGJ5dGVzIGZhaWxlZAAAAO8uEAAVAAAABC8QAA0AAABsaWJyYXJ5L3N0ZC9zcmMvYWxsb2MucnMkLxAAGAAAAGIBAAAJAAAAbGlicmFyeS9zdGQvc3JjL3Bhbmlja2luZy5yc0wvEAAcAAAAhAIAAB4AAABXAAAADAAAAAQAAABbAAAAXAAAAAgAAAAEAAAAXQAAAFwAAAAIAAAABAAAAF4AAABfAAAAYAAAABAAAAAEAAAAYQAAAGIAAABjAAAAAAAAAAEAAABkAAAASGFzaCB0YWJsZSBjYXBhY2l0eSBvdmVyZmxvd9AvEAAcAAAAL3J1c3QvZGVwcy9oYXNoYnJvd24tMC4xNC4zL3NyYy9yYXcvbW9kLnJzAAD0LxAAKgAAAFYAAAAoAAAARXJyb3IAAABlAAAADAAAAAQAAABmAAAAZwAAAGgAAABsaWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjLnJzY2FwYWNpdHkgb3ZlcmZsb3cAAABsMBAAEQAAAFAwEAAcAAAAOwIAAAUAAABhIGZvcm1hdHRpbmcgdHJhaXQgaW1wbGVtZW50YXRpb24gcmV0dXJuZWQgYW4gZXJyb3IAaQAAAAAAAAABAAAAagAAAGxpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5yc9wwEAAYAAAAZAIAACAAAAApIHNob3VsZCBiZSA8IGxlbiAoaXMgKWluc2VydGlvbiBpbmRleCAoaXMgKSBzaG91bGQgYmUgPD0gbGVuIChpcyAAABsxEAAUAAAALzEQABcAAAAaMRAAAQAAAHJlbW92YWwgaW5kZXggKGlzIAAAYDEQABIAAAAEMRAAFgAAABoxEAABAAAAbGlicmFyeS9jb3JlL3NyYy9mbXQvbW9kLnJzY2FsbGVkIGBPcHRpb246OnVud3JhcCgpYCBvbiBhIGBOb25lYCB2YWx1ZSkwMTIzNDU2Nzg5YWJjZGVmQm9ycm93TXV0RXJyb3JhbHJlYWR5IGJvcnJvd2VkOiAA8TEQABIAAABbAAAAcAAAAAAAAAABAAAAcQAAAGluZGV4IG91dCBvZiBib3VuZHM6IHRoZSBsZW4gaXMgIGJ1dCB0aGUgaW5kZXggaXMgAAAgMhAAIAAAAEAyEAASAAAAcgAAAAQAAAAEAAAAcwAAAD09IT1tYXRjaGVzYXNzZXJ0aW9uIGBsZWZ0ICByaWdodGAgZmFpbGVkCiAgbGVmdDogCiByaWdodDogAH8yEAAQAAAAjzIQABcAAACmMhAACQAAACByaWdodGAgZmFpbGVkOiAKICBsZWZ0OiAAAAB/MhAAEAAAAMgyEAAQAAAA2DIQAAkAAACmMhAACQAAADogAACMMRAAAAAAAAQzEAACAAAAcgAAAAwAAAAEAAAAdAAAAHUAAAB2AAAAICAgICB7ICwgIHsKLAp9IH0oKAosCl1saWJyYXJ5L2NvcmUvc3JjL2ZtdC9udW0ucnMAAEczEAAbAAAAaQAAABcAAAAweDAwMDEwMjAzMDQwNTA2MDcwODA5MTAxMTEyMTMxNDE1MTYxNzE4MTkyMDIxMjIyMzI0MjUyNjI3MjgyOTMwMzEzMjMzMzQzNTM2MzczODM5NDA0MTQyNDM0NDQ1NDY0NzQ4NDk1MDUxNTI1MzU0NTU1NjU3NTg1OTYwNjE2MjYzNjQ2NTY2Njc2ODY5NzA3MTcyNzM3NDc1NzY3Nzc4Nzk4MDgxODI4Mzg0ODU4Njg3ODg4OTkwOTE5MjkzOTQ5NTk2OTc5ODk5AACMMRAAGwAAAOAHAAAJAAAAcgAAAAgAAAAEAAAAbQAAAGZhbHNldHJ1ZXJhbmdlIHN0YXJ0IGluZGV4ICBvdXQgb2YgcmFuZ2UgZm9yIHNsaWNlIG9mIGxlbmd0aCAAAABpNBAAEgAAAHs0EAAiAAAAcmFuZ2UgZW5kIGluZGV4ILA0EAAQAAAAezQQACIAAABzbGljZSBpbmRleCBzdGFydHMgYXQgIGJ1dCBlbmRzIGF0IADQNBAAFgAAAOY0EAANAAAAbGlicmFyeS9jb3JlL3NyYy91bmljb2RlL3ByaW50YWJsZS5ycwAAAAQ1EAAlAAAAGgAAADYAAAAENRAAJQAAAAoAAAArAAAAAAYBAQMBBAIFBwcCCAgJAgoFCwIOBBABEQISBRMRFAEVAhcCGQ0cBR0IHwEkAWoEawKvA7ECvALPAtEC1AzVCdYC1wLaAeAF4QLnBOgC7iDwBPgC+gP7AQwnOz5OT4+enp97i5OWorK6hrEGBwk2PT5W89DRBBQYNjdWV3+qrq+9NeASh4mOngQNDhESKTE0OkVGSUpOT2RlXLa3GxwHCAoLFBc2OTqoqdjZCTeQkagHCjs+ZmmPkhFvX7/u71pi9Pz/U1Samy4vJyhVnaCho6SnqK26vMQGCwwVHTo/RVGmp8zNoAcZGiIlPj/n7O//xcYEICMlJigzODpISkxQU1VWWFpcXmBjZWZrc3h9f4qkqq+wwNCur25vvpNeInsFAwQtA2YDAS8ugIIdAzEPHAQkCR4FKwVEBA4qgKoGJAQkBCgINAtOQ4E3CRYKCBg7RTkDYwgJMBYFIQMbBQFAOARLBS8ECgcJB0AgJwQMCTYDOgUaBwQMB1BJNzMNMwcuCAqBJlJLKwgqFhomHBQXCU4EJAlEDRkHCgZICCcJdQtCPioGOwUKBlEGAQUQAwWAi2IeSAgKgKZeIkULCgYNEzoGCjYsBBeAuTxkUwxICQpGRRtICFMNSQcKgPZGCh0DR0k3Aw4ICgY5BwqBNhkHOwMcVgEPMg2Dm2Z1C4DEikxjDYQwEBaPqoJHobmCOQcqBFwGJgpGCigFE4KwW2VLBDkHEUAFCwIOl/gIhNYqCaLngTMPAR0GDgQIgYyJBGsFDQMJBxCSYEcJdDyA9gpzCHAVRnoUDBQMVwkZgIeBRwOFQg8VhFAfBgaA1SsFPiEBcC0DGgQCgUAfEToFAYHQKoLmgPcpTAQKBAKDEURMPYDCPAYBBFUFGzQCgQ4sBGQMVgqArjgdDSwECQcCDgaAmoPYBBEDDQN3BF8GDAQBDwwEOAgKBigIIk6BVAwdAwkHNggOBAkHCQeAyyUKhAYAAQMFBQYGAgcGCAcJEQocCxkMGg0QDgwPBBADEhITCRYBFwQYARkDGgcbARwCHxYgAysDLQsuATADMQIyAacCqQKqBKsI+gL7Bf0C/gP/Ca14eYuNojBXWIuMkBzdDg9LTPv8Li8/XF1f4oSNjpGSqbG6u8XGycre5OX/AAQREikxNDc6Oz1JSl2EjpKpsbS6u8bKzs/k5QAEDQ4REikxNDo7RUZJSl5kZYSRm53Jzs8NESk6O0VJV1tcXl9kZY2RqbS6u8XJ3+Tl8A0RRUlkZYCEsry+v9XX8PGDhYukpr6/xcfP2ttImL3Nxs7PSU5PV1leX4mOj7G2t7/BxsfXERYXW1z29/7/gG1x3t8OH25vHB1ffX6ur3+7vBYXHh9GR05PWFpcXn5/tcXU1dzw8fVyc490dZYmLi+nr7e/x8/X35pAl5gwjx/S1M7/Tk9aWwcIDxAnL+7vbm83PT9CRZCRU2d1yMnQ0djZ5/7/ACBfIoLfBIJECBsEBhGBrA6AqwUfCYEbAxkIAQQvBDQEBwMBBwYHEQpQDxIHVQcDBBwKCQMIAwcDAgMDAwwEBQMLBgEOFQVOBxsHVwcCBhcMUARDAy0DAQQRBg8MOgQdJV8gbQRqJYDIBYKwAxoGgv0DWQcWCRgJFAwUDGoGCgYaBlkHKwVGCiwEDAQBAzELLAQaBgsDgKwGCgYvMU0DgKQIPAMPAzwHOAgrBYL/ERgILxEtAyEPIQ+AjASClxkLFYiUBS8FOwcCDhgJgL4idAyA1hoMBYD/BYDfDPKdAzcJgVwUgLgIgMsFChg7AwoGOAhGCAwGdAseA1oEWQmAgxgcChYJTASAigarpAwXBDGhBIHaJgcMBQWAphCB9QcBICoGTASAjQSAvgMbAw8NbGlicmFyeS9jb3JlL3NyYy91bmljb2RlL3VuaWNvZGVfZGF0YS5yc8g6EAAoAAAAUAAAACgAAADIOhAAKAAAAFwAAAAWAAAAbGlicmFyeS9jb3JlL3NyYy9lc2NhcGUucnMAABA7EAAaAAAAOAAAAAsAAABcdXsAEDsQABoAAABmAAAAIwAAAAADAACDBCAAkQVgAF0ToAASFyAfDCBgH+8soCsqMCAsb6bgLAKoYC0e+2AuAP4gNp7/YDb9AeE2AQohNyQN4TerDmE5LxihOTAcYUjzHqFMQDRhUPBqoVFPbyFSnbyhUgDPYVNl0aFTANohVADg4VWu4mFX7OQhWdDooVkgAO5Z8AF/WgBwAAcALQEBAQIBAgEBSAswFRABZQcCBgICAQQjAR4bWws6CQkBGAQBCQEDAQUrAzwIKhgBIDcBAQEECAQBAwcKAh0BOgEBAQIECAEJAQoCGgECAjkBBAIEAgIDAwEeAgMBCwI5AQQFAQIEARQCFgYBAToBAQIBBAgBBwMKAh4BOwEBAQwBCQEoAQMBNwEBAwUDAQQHAgsCHQE6AQIBAgEDAQUCBwILAhwCOQIBAQIECAEJAQoCHQFIAQQBAgMBAQgBUQECBwwIYgECCQsHSQIbAQEBAQE3DgEFAQIFCwEkCQFmBAEGAQICAhkCBAMQBA0BAgIGAQ8BAAMAAx0CHgIeAkACAQcIAQILCQEtAwEBdQIiAXYDBAIJAQYD2wICAToBAQcBAQEBAggGCgIBMB8xBDAHAQEFASgJDAIgBAICAQM4AQECAwEBAzoIAgKYAwENAQcEAQYBAwLGQAABwyEAA40BYCAABmkCAAQBCiACUAIAAQMBBAEZAgUBlwIaEg0BJggZCy4DMAECBAICJwFDBgICAgIMAQgBLwEzAQEDAgIFAgEBKgIIAe4BAgEEAQABABAQEAACAAHiAZUFAAMBAgUEKAMEAaUCAAQAAlADRgsxBHsBNg8pAQICCgMxBAICBwE9AyQFAQg+AQwCNAkKBAIBXwMCAQECBgECAZ0BAwgVAjkCAQEBARYBDgcDBcMIAgMBARcBUQECBgEBAgEBAgEC6wECBAYCAQIbAlUIAgEBAmoBAQECBgEBZQMCBAEFAAkBAvUBCgIBAQQBkAQCAgQBIAooBgIECAEJBgIDLg0BAgAHAQYBAVIWAgcBAgECegYDAQECAQcBAUgCAwEBAQACCwI0BQUBAQEAAQYPAAU7BwABPwRRAQACAC4CFwABAQMEBQgIAgceBJQDADcEMggBDgEWBQEPAAcBEQIHAQIBBWQBoAcAAT0EAAQAB20HAGCA8AB7CXByb2R1Y2VycwIIbGFuZ3VhZ2UBBFJ1c3QADHByb2Nlc3NlZC1ieQMFcnVzdGMdMS43Ni4wICgwN2RjYTQ4OWEgMjAyNC0wMi0wNCkGd2FscnVzBjAuMTkuMAx3YXNtLWJpbmRnZW4SMC4yLjg0IChjZWE4Y2MzZDIpACwPdGFyZ2V0X2ZlYXR1cmVzAisPbXV0YWJsZS1nbG9iYWxzKwhzaWduLWV4dA==");var ZB=async()=>(await yg(WB),XB);function gB(A){return typeof A=="number"?A:typeof A=="string"?A.split(":").reverse().map(parseFloat).reduce((g,B,I)=>g+B*Math.pow(60,I)):void 0}function jB(A,g){let B;return function(){for(var I=arguments.length,Q=new Array(I),C=0;CA.apply(this,Q),g)}}function PB(A,g){let B=!0;return function(){if(B){B=!1;for(var I=arguments.length,Q=new Array(I),C=0;CB=!0,g)}}}class Fg{constructor(){let g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1;this.speed=g,this.startTime=performance.now()}getTime(){return this.speed*(performance.now()-this.startTime)/1e3}setTime(g){this.startTime=performance.now()-g/this.speed*1e3}}class KA{constructor(){}getTime(g){}setTime(g){}}const $B=ZB();class RA{constructor(g){this.core=g,this.driver=g.driver}onEnter(g){}init(){}play(){}pause(){}togglePlay(){}seek(g){return!1}step(){}stop(){this.driver.stop()}}class _B extends RA{async init(){try{return await this.core.initializeDriver(),this.core.setState("stopped")}catch(g){throw this.core.setState("errored"),g}}async play(){return this.core.dispatchEvent("play"),await(await this.init()).doPlay()}togglePlay(){return this.play()}async seek(g){return await(await this.init()).seek(g)}async step(){return await(await this.init()).step()}stop(){}}class AI extends RA{onEnter(g){let{reason:B,message:I}=g;this.core.dispatchEvent("stopped",{message:I}),B==="paused"?this.core.dispatchEvent("pause"):B==="ended"&&this.core.dispatchEvent("ended")}play(){return this.core.dispatchEvent("play"),this.doPlay()}async doPlay(){const g=await this.driver.play();g===!0?this.core.setState("playing"):typeof g=="function"&&(this.core.setState("playing"),this.driver.stop=g)}togglePlay(){return this.play()}seek(g){return this.driver.seek(g)}step(){this.driver.step()}}class gI extends RA{onEnter(){this.core.dispatchEvent("playing")}pause(){this.driver.pause()===!0&&this.core.setState("stopped",{reason:"paused"})}togglePlay(){return this.pause()}seek(g){return this.driver.seek(g)}}class BI extends RA{onEnter(){this.core.dispatchEvent("loading")}}class II extends RA{onEnter(){this.core.dispatchEvent("offline")}}class QI extends RA{onEnter(){this.core.dispatchEvent("errored")}}class CI{constructor(g,B){this.logger=B.logger,this.state=new _B(this),this.stateName="uninitialized",this.driver=null,this.driverFn=g,this.changedLines=new Set,this.cursor=void 0,this.duration=void 0,this.cols=B.cols,this.rows=B.rows,this.speed=B.speed??1,this.loop=B.loop,this.idleTimeLimit=B.idleTimeLimit,this.preload=B.preload,this.startAt=gB(B.startAt),this.poster=this.parsePoster(B.poster),this.markers=this.normalizeMarkers(B.markers),this.pauseOnMarkers=B.pauseOnMarkers,this.commandQueue=Promise.resolve(),this.eventHandlers=new Map([["marker",[]],["ended",[]],["errored",[]],["init",[]],["input",[]],["loading",[]],["offline",[]],["pause",[]],["play",[]],["playing",[]],["reset",[]],["resize",[]],["seeked",[]],["stopped",[]],["terminalUpdate",[]]])}addEventListener(g,B){this.eventHandlers.get(g).push(B)}dispatchEvent(g){let B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};for(const I of this.eventHandlers.get(g))I(B)}async init(){this.wasm=await $B;const g=this.feed.bind(this),B=o=>{this.dispatchEvent("input",{data:o})},I=o=>{let{index:V,time:c,label:G}=o;this.dispatchEvent("marker",{index:V,time:c,label:G})},Q=this.now.bind(this),C=(o,V)=>window.setTimeout(o,V/this.speed),e=(o,V)=>window.setInterval(o,V/this.speed),E=this.resetVt.bind(this),i=this.setState.bind(this),t=this.poster.type==="npt"?this.poster.value:void 0;this.driver=this.driverFn({feed:g,onInput:B,onMarker:I,reset:E,now:Q,setTimeout:C,setInterval:e,setState:i,logger:this.logger},{cols:this.cols,rows:this.rows,idleTimeLimit:this.idleTimeLimit,startAt:this.startAt,loop:this.loop,posterTime:t,markers:this.markers,pauseOnMarkers:this.pauseOnMarkers}),typeof this.driver=="function"&&(this.driver={play:this.driver}),(this.preload||t!==void 0)&&this.withState(o=>o.init());const s=this.poster.type==="text"?this.renderPoster(this.poster.value):void 0,n={isPausable:!!this.driver.pause,isSeekable:!!this.driver.seek,poster:s};if(this.driver.init===void 0&&(this.driver.init=()=>({})),this.driver.pause===void 0&&(this.driver.pause=()=>{}),this.driver.seek===void 0&&(this.driver.seek=o=>!1),this.driver.step===void 0&&(this.driver.step=()=>{}),this.driver.stop===void 0&&(this.driver.stop=()=>{}),this.driver.getCurrentTime===void 0){const o=this.driver.play;let V=new KA;this.driver.play=()=>(V=new Fg(this.speed),o()),this.driver.getCurrentTime=()=>V.getTime()}return n}play(){return this.withState(g=>g.play())}pause(){return this.withState(g=>g.pause())}togglePlay(){return this.withState(g=>g.togglePlay())}seek(g){return this.withState(async B=>{await B.seek(g)&&this.dispatchEvent("seeked")})}step(){return this.withState(g=>g.step())}stop(){return this.withState(g=>g.stop())}withState(g){return this.enqueueCommand(()=>g(this.state))}enqueueCommand(g){return this.commandQueue=this.commandQueue.then(g),this.commandQueue}getChangedLines(){if(this.changedLines.size>0){const g=new Map,B=this.vt.rows;for(const I of this.changedLines)I1&&arguments[1]!==void 0?arguments[1]:{};if(this.stateName===g)return this.state;if(this.stateName=g,g==="playing")this.state=new gI(this);else if(g==="stopped")this.state=new AI(this);else if(g==="loading")this.state=new BI(this);else if(g==="offline")this.state=new II(this);else if(g==="errored")this.state=new QI(this);else throw`invalid state: ${g}`;return this.state.onEnter(B),this.state}feed(g){this.doFeed(g),this.dispatchEvent("terminalUpdate")}doFeed(g){const[B,I]=this.vt.feed(g);if(B.forEach(Q=>this.changedLines.add(Q)),this.cursor=void 0,I){const[Q,C]=this.vt.get_size();this.vt.cols=Q,this.vt.rows=C,this.logger.debug(`core: vt resize (${Q}x${C})`),this.dispatchEvent("resize",{cols:Q,rows:C})}}now(){return performance.now()*this.speed}async initializeDriver(){const g=await this.driver.init();this.cols=this.cols??g.cols??80,this.rows=this.rows??g.rows??24,this.duration=this.duration??g.duration,this.markers=this.normalizeMarkers(g.markers)??this.markers??[],this.cols===0&&(this.cols=80),this.rows===0&&(this.rows=24),this.initializeVt(this.cols,this.rows);const B=g.poster!==void 0?this.renderPoster(g.poster):void 0;this.dispatchEvent("init",{cols:this.cols,rows:this.rows,duration:this.duration,markers:this.markers,theme:g.theme,poster:B})}resetVt(g,B){let I=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0,Q=arguments.length>3&&arguments[3]!==void 0?arguments[3]:void 0;this.cols=g,this.rows=B,this.cursor=void 0,this.initializeVt(g,B),I!==void 0&&I!==""&&this.doFeed(I),this.dispatchEvent("reset",{cols:g,rows:B,theme:Q})}initializeVt(g,B){this.logger.debug(`core: vt init (${g}x${B})`),this.vt=this.wasm.create(g,B,!0,100),this.vt.cols=g,this.vt.rows=B,this.changedLines.clear();for(let I=0;IQ.feed(E));const C=Q.get_cursor()??!1,e=[];for(let E=0;Etypeof B=="number"?[B,""]:B)}}const Yg=Symbol("store-raw"),bA=Symbol("store-node"),EI=Symbol("store-name");function BB(A,g){let B=A[eA];if(!B&&(Object.defineProperty(A,eA,{value:B=new Proxy(A,tI)}),!Array.isArray(A))){const I=Object.keys(A),Q=Object.getOwnPropertyDescriptors(A);for(let C=0,e=I.length;CA[eA][g]),B}function IB(A){if(Hg()){const g=Ng(A);(g._||(g._=QB()))()}}function iI(A){return IB(A),Reflect.ownKeys(A)}function QB(A){const[g,B]=BA(A,{equals:!1,internal:!0});return g.$=B,g}const tI={get(A,g,B){if(g===Yg)return A;if(g===eA)return B;if(g===ZA)return IB(A),B;const I=Ng(A),Q=I.hasOwnProperty(g);let C=Q?I[g]():A[g];if(g===bA||g==="__proto__")return C;if(!Q){const e=Object.getOwnPropertyDescriptor(A,g);Hg()&&(typeof C!="function"||A.hasOwnProperty(g))&&!(e&&e.get)&&(C=kg(I,g,C)())}return GA(C)?BB(C):C},has(A,g){return g===Yg||g===eA||g===ZA||g===bA||g==="__proto__"?!0:(this.get(A,g,A),g in A)},set(){return!0},deleteProperty(){return!0},ownKeys:iI,getOwnPropertyDescriptor:eI};function AA(A,g,B,I=!1){if(!I&&A[g]===B)return;const Q=A[g],C=A.length;B===void 0?delete A[g]:A[g]=B;let e=Ng(A),E;(E=kg(e,g,Q))&&E.$(()=>B),Array.isArray(A)&&A.length!==C&&(E=kg(e,"length",C))&&E.$(A.length),(E=e._)&&E.$()}function CB(A,g){const B=Object.keys(g);for(let I=0;I1){I=g.shift();const e=typeof I,E=Array.isArray(A);if(Array.isArray(I)){for(let i=0;i1){OA(A[I],g,[I].concat(B));return}Q=A[I],B=[I].concat(B)}let C=g[0];typeof C=="function"&&(C=C(Q,B),C===Q)||I===void 0&&C==null||(C=qA(C),I===void 0||GA(Q)&&GA(C)&&!Array.isArray(C)?CB(Q,C):AA(A,I,C))}function EB(...[A,g]){const B=qA(A||{}),I=Array.isArray(B),Q=BB(B);function C(...e){iA(()=>{I&&e.length===1?sI(B,e[0]):OA(B,e)})}return[Q,C]}const Rg=Symbol("store-root");function MA(A,g,B,I,Q){const C=g[B];if(A===C)return;if(!GA(A)||!GA(C)||Q&&A[Q]!==C[Q]){if(A!==C){if(B===Rg)return A;AA(g,B,A)}return}if(Array.isArray(A)){if(A.length&&C.length&&(!I||Q&&A[0]&&A[0][Q]!=null)){let i,t,s,n,o,V,c,G;for(s=0,n=Math.min(C.length,A.length);s=s&&o>=s&&(C[n]===A[o]||Q&&C[s]&&A[s]&&C[n][Q]===A[o][Q]);n--,o--)D[o]=C[n];if(s>o||s>n){for(t=s;t<=o;t++)AA(C,t,A[t]);for(;tA.length&&AA(C,"length",A.length);return}for(c=new Array(o+1),t=o;t>=s;t--)V=A[t],G=Q&&V?V[Q]:V,i=u.get(G),c[t]=i===void 0?-1:i,u.set(G,t);for(i=s;i<=n;i++)V=C[i],G=Q&&V?V[Q]:V,t=u.get(G),t!==void 0&&t!==-1&&(D[t]=C[i],t=c[t],u.set(G,t));for(t=s;tA.length&&AA(C,"length",A.length);return}const e=Object.keys(A);for(let i=0,t=e.length;i{if(!GA(C)||!GA(Q))return Q;const e=MA(Q,{[Rg]:C},Rg,B,I);return e===void 0?C:e}}const oI=j("");var nI=A=>{const g=()=>{if(A.text.length==1){const I=A.text.codePointAt(0);if(I>=9600&&I<=9631||I==57520||I==57522)return I}},B=()=>g()?" ":A.text;return(()=>{const I=oI.cloneNode(!0);return T(I,B),IA(Q=>{const C=VI(A.pen,g(),A.extraClass),e=rI(A.pen,A.offset,B().length,A.charWidth,A.terminalCols);return C!==Q._v$&&Zg(I,Q._v$=C),Q._v$2=SA(I,e,Q._v$2),Q},{_v$:void 0,_v$2:void 0}),I})()};function VI(A,g,B){const I=iB(A.get("fg"),A.get("bold"),"fg-"),Q=iB(A.get("bg"),A.get("blink"),"bg-");let C=B??"";return g!==void 0&&(C+=` cp-${g.toString(16)}`),I&&(C+=" "+I),Q&&(C+=" "+Q),A.has("bold")&&(C+=" ap-bright"),A.has("faint")&&(C+=" ap-faint"),A.has("italic")&&(C+=" ap-italic"),A.has("underline")&&(C+=" ap-underline"),A.has("blink")&&(C+=" ap-blink"),A.get("inverse")&&(C+=" ap-inverse"),C}function iB(A,g,B){if(typeof A=="number")return g&&A<8&&(A+=8),`${B}${A}`}function rI(A,g,B,I,Q){const C=A.get("fg"),e=A.get("bg");let E={left:`${100*g/Q}%`,width:`${B*I+.01}ch`};return typeof C=="string"&&(E["--fg"]=C),typeof e=="string"&&(E["--bg"]=e),E}const aI=j('');var cI=A=>{const g=()=>{if(typeof A.cursor=="number"){const B=[];let I=0,Q=0;for(;Q0&&B.push({...C,text:C.text.substring(0,e)}),B.push({...C,text:C.text[e],offset:C.offset+e,extraClass:"ap-cursor"}),e{const B=aI.cloneNode(!0);return T(B,M(JB,{get each(){return g()},children:I=>M(nI,UB({get terminalCols(){return A.terminalCols}},I))})),IA(()=>B.style.setProperty("height",A.height)),B})()};const lI=j('
');var tB=A=>{const g=()=>A.lineHeight??1.3333333333,B=_(()=>({width:`${A.cols}ch`,height:`${g()*A.rows}em`,"font-size":`${(A.scale||1)*100}%`,"font-family":A.fontFamily,"line-height":`${g()}em`,"--term-line-height":g()})),I=()=>A.cursor?.[0],Q=()=>A.cursor?.[1];return(()=>{const C=lI.cloneNode(!0),e=A.ref;return typeof e=="function"?Qg(e,C):A.ref=C,T(C,M(Xg,{get each(){return A.lines},children:(E,i)=>M(cI,{get segments(){return E.segments},get cursor(){return _(()=>i()===Q())()?I():null},get height(){return`${g()}em`},get terminalCols(){return A.cols}})})),IA(E=>{const i=!!(A.blink||A.cursorHold),t=!!A.blink,s=B();return i!==E._v$&&C.classList.toggle("ap-cursor-on",E._v$=i),t!==E._v$2&&C.classList.toggle("ap-blink",E._v$2=t),E._v$3=SA(C,s,E._v$3),E},{_v$:void 0,_v$2:void 0,_v$3:void 0}),C})()};const DI=j(''),wI=j(''),GI=j(''),hI=j(''),fI=j('
'),uI=j('');function ng(A){let g=Math.floor(A);const B=Math.floor(g/86400);g%=86400;const I=Math.floor(g/3600);g%=3600;const Q=Math.floor(g/60);return g%=60,B>0?`${lA(B)}:${lA(I)}:${lA(Q)}:${lA(g)}`:I>0?`${lA(I)}:${lA(Q)}:${lA(g)}`:`${lA(Q)}:${lA(g)}`}function lA(A){return A<10?`0${A}`:A.toString()}var dI=A=>{const g=r=>F=>{F.preventDefault(),r(F)},B=()=>typeof A.currentTime=="number"?ng(A.currentTime):"--:--",I=()=>typeof A.remainingTime=="number"?"-"+ng(A.remainingTime):B(),Q=_(()=>typeof A.duration=="number"?A.markers.filter(r=>r[0]`${r[0]/A.duration*100}%`,e=r=>r[1]===""?ng(r[0]):`${ng(r[0])} - ${r[1]}`,E=r=>typeof A.currentTime=="number"?r[0]<=A.currentTime:!1,i=()=>({width:"100%",transform:`scaleX(${A.progress||0}`,"transform-origin":"left center"}),t=r=>{const F=r.currentTarget.offsetWidth,N=r.currentTarget.getBoundingClientRect(),R=r.clientX-N.left;return`${Math.max(0,R/F)*100}%`},[s,n]=BA(!1),o=PB(A.onSeekClick,50),V=r=>{r.altKey||r.shiftKey||r.metaKey||r.ctrlKey||r.button!==0||(n(!0),A.onSeekClick(t(r)))},c=r=>g(()=>{A.onSeekClick({marker:r})}),G=r=>{r.altKey||r.shiftKey||r.metaKey||r.ctrlKey||s()&&o(t(r))},D=()=>{n(!1)},u=g(r=>{r.stopPropagation()});return document.addEventListener("mouseup",D),$A(()=>{document.removeEventListener("mouseup",D)}),(()=>{const r=fI.cloneNode(!0),F=r.firstChild,N=F.firstChild,R=N.nextSibling,b=F.nextSibling,W=A.ref;return typeof W=="function"?Qg(W,r):A.ref=r,T(r,M(hg,{get when(){return A.isPausable},get children(){const O=GI.cloneNode(!0);return JA(O,"click",g(A.onPlayClick),!0),T(O,M(vg,{get children(){return[M(YA,{get when(){return A.isPlaying},get children(){return DI.cloneNode(!0)}}),M(YA,{get when(){return!A.isPlaying},get children(){return wI.cloneNode(!0)}})]}})),O}}),F),T(N,B),T(R,I),T(r,M(hg,{get when(){return typeof A.progress=="number"||A.isSeekable},get children(){const O=hI.cloneNode(!0),L=O.firstChild,Z=L.firstChild,P=Z.firstChild;return L.$$mousemove=G,L.$$mousedown=V,T(L,M(Xg,{get each(){return Q()},children:(m,tA)=>(()=>{const p=uI.cloneNode(!0),h=p.firstChild,w=h.nextSibling;return JA(p,"mousedown",u,!0),JA(p,"click",c(tA()),!0),T(w,()=>e(m)),IA(Y=>{const U=C(m),k=!!E(m);return U!==Y._v$&&p.style.setProperty("left",Y._v$=U),k!==Y._v$2&&h.classList.toggle("ap-marker-past",Y._v$2=k),Y},{_v$:void 0,_v$2:void 0}),p})()}),null),IA(m=>SA(P,i(),m)),O}}),b),JA(b,"click",g(A.onFullscreenClick),!0),IA(()=>r.classList.toggle("ap-seekable",!!A.isSeekable)),r})()};fg(["click","mousedown","mousemove"]);const yI=j('
\u{1F4A5}
');var FI=A=>yI.cloneNode(!0);const YI=j('
');var NI=A=>YI.cloneNode(!0);const kI=j('
');var RI=A=>{const g=()=>({"font-family":A.fontFamily});return(()=>{const B=kI.cloneNode(!0),I=B.firstChild;return T(I,()=>A.message),IA(Q=>SA(I,g(),Q)),B})()};const qI=j('
');var MI=A=>{const g=B=>I=>{I.preventDefault(),B(I)};return(()=>{const B=qI.cloneNode(!0);return JA(B,"click",g(A.onClick),!0),B})()};fg(["click"]);const UI=j('
'),JI=32;var SI=A=>{const g=A.logger,B=A.core,I=A.autoPlay,[Q,C]=EB({lines:[],cursor:void 0,charW:A.charW,charH:A.charH,bordersW:A.bordersW,bordersH:A.bordersH,containerW:0,containerH:0,isPausable:!0,isSeekable:!0,isFullscreen:!1,currentTime:null,remainingTime:null,progress:null,blink:!0,cursorHold:!1}),[e,E]=BA(!1),[i,t]=BA(I?null:"start"),[s,n]=BA(null),[o,V]=BA({cols:A.cols,rows:A.rows}),[c,G]=BA(void 0),[D,u]=EB([]),[r,F]=BA(!1),[N,R]=BA(void 0),b=()=>o().cols||80,W=()=>o().rows||24,O=()=>A.controls===!1?0:JI,L=()=>A.controls===!0||A.controls==="auto"&&r();let Z,P,m,tA,p,h,w,Y,U;function k(){CA(),d(),Sg()}function $(){f(),XA(),l()}function gA(a){iA(()=>{a.rows{let{cols:y,rows:q,duration:v,theme:K,poster:oA,markers:ag}=a;iA(()=>{gA({cols:y,rows:q}),G(v),R(K),u(ag),sA(oA)})}),B.addEventListener("play",()=>{t(null)}),B.addEventListener("playing",()=>{iA(()=>{E(!0),t(null),k()})}),B.addEventListener("stopped",a=>{let{message:y}=a;iA(()=>{E(!1),$(),y!==void 0&&(n(y),t("info"))})}),B.addEventListener("loading",()=>{iA(()=>{E(!1),$(),t("loader")})}),B.addEventListener("offline",()=>{iA(()=>{E(!1),$(),n("Stream offline"),t("info")})}),B.addEventListener("errored",()=>{t("error")}),B.addEventListener("resize",gA),B.addEventListener("reset",a=>{let{cols:y,rows:q,theme:v}=a;iA(()=>{gA({cols:y,rows:q}),R(v),CA()})}),B.addEventListener("seeked",()=>{l()}),B.addEventListener("terminalUpdate",()=>{Z===void 0&&(Z=requestAnimationFrame(CA))});const xA=()=>{U=new ResizeObserver(jB(a=>{C({containerW:p.offsetWidth,containerH:p.offsetHeight}),p.dispatchEvent(new CustomEvent("resize",{detail:{el:h}}))},10)),U.observe(p)};dB(async()=>{g.info("player mounted"),g.debug("font measurements",{charW:Q.charW,charH:Q.charH}),xA();const{isPausable:a,isSeekable:y,poster:q}=await B.init();iA(()=>{C({isPausable:a,isSeekable:y,containerW:p.offsetWidth,containerH:p.offsetHeight}),sA(q)}),I&&B.play()}),$A(()=>{B.stop(),f(),XA(),U.disconnect()});const CA=()=>{const a=B.getChangedLines();iA(()=>{a&&a.forEach((y,q)=>{C("lines",q,eB(y))}),C("cursor",eB(B.getCursor())),C("cursorHold",!0)}),Z=void 0},DA=_(()=>{g.debug(`containerW = ${Q.containerW}`);const a=Q.charW*b()+Q.bordersW,y=Q.charH*W()+Q.bordersH;let q=A.fit??"width";if(q==="both"||Q.isFullscreen){const v=Q.containerW/(Q.containerH-O()),K=a/y;v>K?q="height":q="width"}if(q===!1||q==="none")return{};if(q==="width"){const v=Q.containerW/a;return{scale:v,width:Q.containerW,height:y*v+O()}}else if(q==="height"){const v=(Q.containerH-O())/y;return{scale:v,width:a*v,height:Q.containerH}}else throw`unsupported fit mode: ${q}`}),hA=()=>{C("isFullscreen",document.fullscreenElement??document.webkitFullscreenElement)},zA=()=>{Q.isFullscreen?(document.exitFullscreen??document.webkitExitFullscreen??(()=>{})).apply(document):(p.requestFullscreen??p.webkitRequestFullscreen??(()=>{})).apply(p)},rg=a=>{if(!(a.altKey||a.metaKey||a.ctrlKey)){if(a.shiftKey){if(a.key=="ArrowLeft")B.seek("<<<");else if(a.key=="ArrowRight")B.seek(">>>");else return;a.stopPropagation(),a.preventDefault();return}if(a.key==" ")B.togglePlay();else if(a.key==".")B.step(),l();else if(a.key=="f")zA();else if(a.key=="ArrowLeft")B.seek("<<");else if(a.key=="ArrowRight")B.seek(">>");else if(a.key=="[")B.seek({marker:"prev"});else if(a.key=="]")B.seek({marker:"next"});else if(a.key.charCodeAt(0)>=48&&a.key.charCodeAt(0)<=57){const y=(a.key.charCodeAt(0)-48)/10;B.seek(`${y*100}%`)}else return;a.stopPropagation(),a.preventDefault()}},Ug=()=>{Q.isFullscreen&&J(!0)},Jg=()=>{Q.isFullscreen||J(!1)},Sg=()=>{m=setInterval(l,100)},XA=()=>{clearInterval(m)},l=()=>{const a=B.getCurrentTime(),y=B.getRemainingTime(),q=B.getProgress();C({currentTime:a,remainingTime:y,progress:q})},d=()=>{tA=setInterval(()=>{C(a=>{const y={blink:!a.blink};return y.blink&&(y.cursorHold=!1),y})},500)},f=()=>{clearInterval(tA),C("blink",!0)},J=a=>{clearTimeout(P),a&&(P=setTimeout(()=>J(!1),2e3)),F(a)},x=()=>{const a={};(A.fit===!1||A.fit==="none")&&A.terminalFontSize!==void 0&&(A.terminalFontSize==="small"?a["font-size"]="12px":A.terminalFontSize==="medium"?a["font-size"]="18px":A.terminalFontSize==="big"?a["font-size"]="24px":a["font-size"]=A.terminalFontSize);const y=DA();y.width!==void 0&&(a.width=`${y.width}px`,a.height=`${y.height}px`);const q=N();return q!==void 0&&(A.theme===void 0||A.theme===null)&&(a["--term-color-foreground"]=q.foreground,a["--term-color-background"]=q.background,q.palette.forEach((v,K)=>{a[`--term-color-${K}`]=v})),a},fA=()=>`ap-player asciinema-player-theme-${A.theme??"asciinema"}`,Lg=()=>DA()?.scale;return(()=>{const a=UI.cloneNode(!0),y=a.firstChild,q=p;typeof q=="function"?Qg(q,a):p=a,a.addEventListener("webkitfullscreenchange",hA),a.addEventListener("fullscreenchange",hA),a.$$mousemove=Ug,a.$$keydown=rg,a.addEventListener("keypress",rg);const v=h;return typeof v=="function"?Qg(v,y):h=y,y.$$mousemove=()=>J(!0),y.addEventListener("mouseleave",Jg),T(y,M(tB,{get cols(){return b()},get rows(){return W()},get scale(){return Lg()},get blink(){return Q.blink},get lines(){return Q.lines},get cursor(){return Q.cursor},get cursorHold(){return Q.cursorHold},get fontFamily(){return A.terminalFontFamily},get lineHeight(){return A.terminalLineHeight},ref(K){const oA=w;typeof oA=="function"?oA(K):w=K}}),null),T(y,M(hg,{get when(){return A.controls!==!1},get children(){return M(dI,{get duration(){return c()},get currentTime(){return Q.currentTime},get remainingTime(){return Q.remainingTime},get progress(){return Q.progress},markers:D,get isPlaying(){return e()},get isPausable(){return Q.isPausable},get isSeekable(){return Q.isSeekable},onPlayClick:()=>B.togglePlay(),onFullscreenClick:zA,onSeekClick:K=>B.seek(K),ref(K){const oA=Y;typeof oA=="function"?oA(K):Y=K}})}}),null),T(y,M(vg,{get children(){return[M(YA,{get when(){return i()=="start"},get children(){return M(MI,{onClick:()=>B.play()})}}),M(YA,{get when(){return i()=="loader"},get children(){return M(NI,{})}}),M(YA,{get when(){return i()=="info"},get children(){return M(RI,{get message(){return s()},get fontFamily(){return A.terminalFontFamily}})}}),M(YA,{get when(){return i()=="error"},get children(){return M(FI,{})}})]}}),null),IA(K=>{const oA=!!L(),ag=fA(),fQ=x();return oA!==K._v$&&a.classList.toggle("ap-hud",K._v$=oA),ag!==K._v$2&&Zg(y,K._v$2=ag),K._v$3=SA(y,fQ,K._v$3),K},{_v$:void 0,_v$2:void 0,_v$3:void 0}),a})()};fg(["keydown","mousemove"]);class LI{log(){}debug(){}info(){}warn(){}error(){}}class sB{constructor(g,B){this.logger=g,this.prefix=B}log(g){for(var B=arguments.length,I=new Array(B>1?B-1:0),Q=1;Q1?B-1:0),Q=1;Q1?B-1:0),Q=1;Q1?B-1:0),Q=1;Q1?B-1:0),Q=1;QB.push(C));return{next:()=>{for(g===B.length&&(B=[],g=0);B.length===0;){const C=this.input.next();if(C.done)break;Q.step(C.value)}return B.length===0&&!I&&(Q.flush(),I=!0),B.length>0?{done:!1,value:B[g++]}:{done:!0}}}}}function mI(A){return g=>B=>{g(A(B))}}function pI(A){return g=>B=>{A(B).forEach(g)}}function HI(A){return g=>B=>{A(B)&&g(B)}}function KI(A){let g=0;return B=>I=>{gI=>{g+=1,g>A&&B(I)}}function OI(A,g){return A.reverse().reduce((B,I)=>{const Q=oB(I(B.step));return{step:Q.step,flush:()=>{Q.flush(),B.flush()}}},oB(g))}function oB(A){return typeof A=="function"?{step:A,flush:()=>{}}:A}class xI{constructor(g,B,I){this.left=g,this.right=B,this.comparator=I}[Symbol.iterator](){let g,B;return{next:()=>{if(g===void 0&&this.left!==void 0){const I=this.left.next();I.done?this.left=void 0:g=I.value}if(B===void 0&&this.right!==void 0){const I=this.right.next();I.done?this.right=void 0:B=I.value}if(g===void 0&&B===void 0)return{done:!0};if(g===void 0){const I=B;return B=void 0,{done:!1,value:I}}else if(B===void 0){const I=g;return g=void 0,{done:!1,value:I}}else if(this.comparator(g,B)){const I=g;return g=void 0,{done:!1,value:I}}else{const I=B;return B=void 0,{done:!1,value:I}}}}}}async function nB(A){let g,B;if(A instanceof Response){const I=await A.text(),Q=zI(I);Q!==void 0?(g=Q.header,B=Q.events):g=JSON.parse(I)}else if(typeof A=="object"&&typeof A.version=="number")g=A;else if(Array.isArray(A))g=A[0],B=A.slice(1,A.length);else throw"invalid data";if(g.version===1)return XI(g);if(g.version===2)return vI(g,B);throw`asciicast v${g.version} format not supported`}function zI(A){const g=A.split(` +`);let B;try{B=JSON.parse(g[0])}catch{return}const I=new QA(g).drop(1).filter(Q=>Q[0]==="[").map(JSON.parse).toArray();return{header:B,events:I}}function XI(A){let g=0;const B=new QA(A.stdout).map(I=>(g+=I[0],[g,"o",I[1]]));return{cols:A.width,rows:A.height,events:B}}function vI(A,g){return{cols:A.width,rows:A.height,theme:TI(A.theme),events:g,idleTimeLimit:A.idle_time_limit}}function TI(A){const g=/^#[0-9A-Fa-f]{6}$/,B=/^(#[0-9A-Fa-f]{6}:){7,}#[0-9A-Fa-f]{6}$/,I=A?.fg,Q=A?.bg,C=A?.palette;if(g.test(I)&&g.test(Q)&&B.test(C))return{foreground:I,background:Q,palette:C.split(":")}}function WI(A){const g=JSON.stringify({version:2,width:A.cols,height:A.rows}),B=A.events.map(JSON.stringify).join(` +`);return`${g} +${B} +`}function ZI(A,g,B){let{feed:I,onInput:Q,onMarker:C,now:e,setTimeout:E,setState:i,logger:t}=g,{idleTimeLimit:s,startAt:n,loop:o,posterTime:V,markers:c,pauseOnMarkers:G,cols:D,rows:u}=B,r,F,N,R,b,W,O,L=0,Z=0,P,m,tA=0;async function p(){const{parser:l,minFrameTime:d,inputOffset:f,dumpFilename:J,encoding:x="utf-8"}=A,fA=PI(await l(await h(A),{encoding:x}),t,{idleTimeLimit:s,startAt:n,minFrameTime:d,inputOffset:f,markers_:c});if({cols:r,rows:F,events:N,duration:b,effectiveStartAt:W}=fA,D=D??r,u=u??F,N.length===0)throw"recording is missing events";J!==void 0&&gQ(fA,J);const Lg=V!==void 0?Jg(V):void 0;return R=N.filter(vA=>vA[1]==="m").map(vA=>[vA[0],vA[2].label]),{cols:r,rows:F,duration:b,theme:fA.theme,poster:Lg,markers:R}}function h(l){let{url:d,data:f,fetchOpts:J={}}=l;if(typeof d=="string")return w(d,J);if(Array.isArray(d))return Promise.all(d.map(x=>w(x,J)));if(f!==void 0)return typeof f=="function"&&(f=f()),f instanceof Promise||(f=Promise.resolve(f)),f.then(x=>typeof x=="string"||x instanceof ArrayBuffer?new Response(x):x);throw"failed fetching recording file: url/data missing in src"}async function w(l,d){const f=await fetch(l,d);if(!f.ok)throw`failed fetching recording from ${l}: ${f.status} ${f.statusText}`;return f}function Y(l){let d=l*1e3-(e()-P);return d<0&&(d=0),d}function U(){const l=N[L];l?O=E(k,Y(l[0])):sA()}function k(){let l=N[L],d;do{if(Z=l[0],L++,gA(l))return;l=N[L],d=e()-P}while(l&&d>l[0]*1e3);U()}function $(){clearTimeout(O),O=null}function gA(l){const[d,f,J]=l;if(f==="o")I(J);else if(f==="i")Q(J);else if(f==="m"&&(C(J),G))return CA(),m=d*1e3,i("stopped",{reason:"paused"}),!0;return!1}function sA(){$(),tA++,o===!0||typeof o=="number"&&tA>"?l=f+5:l==="<<<"?l=f-.1*b:l===">>>"?l=f+.1*b:l[l.length-1]==="%"&&(l=parseFloat(l.substring(0,l.length-1))/100*b);else if(typeof l=="object"){if(l.marker==="prev")l=zA(f)??0,d&&f-l<1&&(l=zA(l)??0);else if(l.marker==="next")l=rg(f)??b;else if(typeof l.marker=="number"){const fA=R[l.marker];if(fA===void 0)throw`invalid marker index: ${l.marker}`;l=fA[0]}}const J=Math.min(Math.max(l,0),b);Jl;)J=f[0],f=R[--d];return J}function Ug(){let l=N[L++];for(;l!==void 0&&l[1]!=="o";)l=N[L++];if(l===void 0)return;I(l[2]);const d=l[0];Z=d,m=d*1e3,W=null}function Jg(l){return N.filter(d=>d[0]d[2])}function Sg(){return O?(e()-P)/1e3:(m??0)/1e3}function XA(){I(`\x1B[8;${u};${D};t`)}return{init:p,play:xA,pause:CA,seek:hA,step:Ug,stop:CA,getCurrentTime:Sg}}function jI(A){let g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:.016666666666666666,B;return I=>{let Q=0,C=0;return{step:e=>{if(Q++,B===void 0){B=e;return}e[1]===B[1]&&e[0]-B[0]{B!==void 0&&(I(B),C++),A.debug(`batched ${Q} frames to ${C} frames`)}}}}function PI(A,g,B){let{startAt:I=0,idleTimeLimit:Q,minFrameTime:C,inputOffset:e,markers_:E}=B,{events:i}=A;i===void 0&&(i=$I(A)),i instanceof QA||(i=new QA(i)),Q=Q??A.idleTimeLimit??1/0;const t={offset:0};i=i.map(_I).transform(jI(g,C)).map(AQ(Q,I,t)).map(rB()),E!==void 0&&(E=new QA(E).map(VB),i=i.filter(o=>o[1]!=="m").multiplex(E,(o,V)=>o[0]o[1]==="i"?[o[0]+e,o[1],o[2]]:o),i.sort((o,V)=>o[0]-V[0]));const s=i[i.length-1][0],n=I-t.offset;return{...A,events:i,duration:s,effectiveStartAt:n}}function $I(A){let{output:g=[],input:B=[],markers:I=[]}=A;const Q=new QA(g).map(E=>[E[0],"o",E[1]]),C=new QA(B).map(E=>[E[0],"i",E[1]]),e=new QA(I).map(VB);return Q.multiplex(C,(E,i)=>E[0]E[0]0&&(Q+=E,C[0]C[1]==="m"?[C[0],C[1],C[2].label]:C),Q=WI({...A,events:I});B.href=URL.createObjectURL(new Blob([Q],{type:"text/plain"})),B.download=g,B.click()}function BQ(A,g,B){let{hourColor:I=3,minuteColor:Q=4,separatorColor:C=9}=A,{feed:e}=g,{cols:E=5,rows:i=1}=B;const t=Math.floor(i/2),s=Math.floor(E/2)-2,n=`\x1B[?25l\x1B[1m\x1B[${t}B`;let o;const V=()=>{const G=new Date,D=G.getHours(),u=G.getMinutes(),r=[];r.push("\r");for(let F=0;F{V().forEach(e)};return{init:()=>{const D=[n].concat(V());return{cols:E,rows:i,duration:1440,poster:D}},play:()=>(e(n),c(),o=setInterval(c,1e3),!0),stop:()=>{clearInterval(o)},getCurrentTime:()=>{const G=new Date;return G.getHours()*60+G.getMinutes()}}}function IQ(A,g){let{feed:B,setTimeout:I}=g;const Q=32,C=126-Q;let e;const E=()=>{const t=Math.pow(5,Math.random()*4);e=I(i,t)},i=()=>{E();const t=String.fromCharCode(Q+Math.floor(Math.random()*C));B(t)};return()=>(E(),()=>clearInterval(e))}function QQ(A,g){let{url:B,iterations:I=10}=A,{feed:Q,setState:C,now:e}=g,E,i=0;return{async init(){const t=await nB(await fetch(B)),{cols:s,rows:n,events:o}=t;E=Array.from(o).filter(c=>{let[G,D,u]=c;return D==="o"}).map(c=>{let[G,D,u]=c;return[G,u]});const V=E[E.length-1][0];for(const[c,G]of E)i+=new Blob([G]).size;return{cols:s,rows:n,duration:V}},play(){const t=e();for(let c=0;c{C("stopped",{reason:"ended"})},0),!0}}}class CQ{constructor(){this.items=[],this.onPush=void 0}push(g){this.items.push(g),this.onPush!==void 0&&(this.onPush(this.popAll()),this.onPush=void 0)}popAll(){if(this.items.length>0){const g=this.items;return this.items=[],g}else{const g=this;return new Promise(B=>{g.onPush=B})}}}function aB(A,g,B,I,Q,C){if(A===0)return C.debug("using no buffer"),EQ(g);{let e;return typeof A=="number"?(C.debug(`using fixed time buffer (${A} ms)`),e=E=>A):(C.debug("using adaptive buffer"),e=oQ(C)),eQ(e,g,B,C,I??0,Q)}}function EQ(A){return{pushEvent(g){g[1]==="o"&&A(g[2])},pushText(g){A(g)},stop(){}}}function eQ(A,g,B,I,Q){let C=arguments.length>5&&arguments[5]!==void 0?arguments[5]:.016666666666666666,e=performance.now()-Q*1e3,E=A(0);const i=new CQ;C*=1e3;let t=-C,s=!1;function n(){return performance.now()-e}return setTimeout(async()=>{for(;!s;){const o=await i.popAll();if(s)return;for(const V of o){const c=V[0]*1e3+E;if(c-t0&&(await iQ(G),s))return;B(V[0]),g(V[2]),t=c}}},0),{pushEvent(o){let V=n()-o[0]*1e3;if(V<0&&(I.debug(`correcting epoch by ${V} ms`),e+=V,V=0),E=A(V),o[1]==="o")i.push(o);else if(o[1]==="r"){const[c,G]=o[2].split("x");i.push([o[0],"o",`\x1B[8;${G};${c};t`])}},pushText(o){i.push([n(),"o",o])},stop(){s=!0,i.push(void 0)}}}function iQ(A){return new Promise(g=>{setTimeout(g,A)})}const tQ=1.5,cB=10,sQ=12,lB=10;function oQ(A){let g=cB,B=0,I=[];return Q=>{if(I.push(Q),I.length>lB){I=I.slice(-lB);const C=nQ(I);Bg?(g=Vg(B+=1),A.debug(`latency increased, raising bufferTime to ${g} ms`)):(B==1&&C1&&Cg+B,0)/A.length}function Vg(A){return cB*tQ**A}function VQ(A){return Math.min(500*Math.pow(2,A),5e3)}function rQ(A,g){let{url:B,bufferTime:I,reconnectDelay:Q=VQ,minFrameTime:C}=A,{feed:e,reset:E,setState:i,logger:t}=g;t=new sB(t,"websocket: ");const s=new TextDecoder;let n,o,V=new KA,c=0,G,D=!1;function u(h){o!==void 0&&o.stop(),o=aB(I,e,w=>V.setTime(w),h,C,t)}function r(h){if(typeof h.data=="string")t.info("activating asciicast-compatible handler"),u(),n.onmessage=R,R(h);else{const w=new Uint8Array(h.data);if(w[0]==65&&w[1]==76&&w[2]==105&&w[3]==83)w[4]==1?(t.info("activating ALiS v1 handler"),n.onmessage=W):(t.warn(`unsupported ALiS version (${w[4]})`),n.close());else{t.info("activating raw text handler"),u();const Y=s.decode(w),U=F(Y)??N(Y);if(U!==void 0){const[k,$]=U;m(k,$,0,void 0)}n.onmessage=P,P(h)}}}function F(h){const w=h.match(/\x1b\[8;(\d+);(\d+)t/);if(w!==null)return[parseInt(w[2],10),parseInt(w[1],10)]}function N(h){const w=h.match(/\[.*COLUMNS="(\d{1,3})" LINES="(\d{1,3})".*\]/);if(w!==null)return[parseInt(w[1],10),parseInt(w[2],10)]}function R(h){const w=JSON.parse(h.data);Array.isArray(w)?o.pushEvent(w):w.cols!==void 0||w.width!==void 0?m(w.cols??w.width,w.rows??w.height,w.time,w.init??void 0):w.status==="offline"&&tA()}const b=54;function W(h){const w=h.data,Y=new DataView(w),U=Y.getUint8(0);let k=1;if(U===1){const $=Y.getUint16(k,!0);k+=2;const gA=Y.getUint16(k,!0);k+=2;const sA=Y.getFloat32(k,!0);k+=4;const xA=Y.getUint8(k);k+=1;let CA;xA===1&&(CA=O(new Uint8Array(w,k,b)),k+=b);const DA=Y.getUint32(k,!0);k+=4;let hA;DA>0&&(hA=s.decode(new Uint8Array(w,k,DA)),k+=DA),m($,gA,sA,hA,CA)}else if(U===111){const $=Y.getFloat32(1,!0),gA=Y.getUint32(5,!0),sA=s.decode(new Uint8Array(w,9,gA));o.pushEvent([$,"o",sA])}else if(U===114){const $=Y.getFloat32(1,!0),gA=Y.getUint16(5,!0),sA=Y.getUint16(7,!0);o.pushEvent([$,"r",`${gA}x${sA}`])}else U===4?tA():t.debug(`unknown frame type: ${U}`)}function O(h){const w=L(h[0],h[1],h[2]),Y=L(h[3],h[4],h[5]),U=[];for(let k=0;k<16;k++)U.push(L(h[k*3+6],h[k*3+7],h[k*3+8]));return{foreground:w,background:Y,palette:U}}function L(h,w,Y){return`#${Z(h)}${Z(w)}${Z(Y)}`}function Z(h){return h.toString(16).padStart(2,"0")}function P(h){o.pushText(s.decode(h.data))}function m(h,w,Y,U,k){t.debug(`stream reset (${h}x${w} @${Y})`),i("playing"),u(Y),E(h,w,U,k),V=new Fg,typeof Y=="number"&&V.setTime(Y)}function tA(){t.info("stream offline"),i("offline"),V=new KA}function p(){n=new WebSocket(B),n.binaryType="arraybuffer",n.onopen=()=>{t.info("opened"),G=setTimeout(()=>{c=0},1e3)},n.onmessage=r,n.onclose=h=>{if(D||h.code===1e3||h.code===1005)t.info("closed"),i("stopped",{reason:"ended",message:"Stream ended"});else{clearTimeout(G);const w=Q(c++);t.info(`unclean close, reconnecting in ${w}...`),i("loading"),setTimeout(p,w)}}}return{play:()=>{p()},stop:()=>{D=!0,o!==void 0&&o.stop(),n!==void 0&&n.close()},getCurrentTime:()=>V.getTime()}}function aQ(A,g){let{url:B,bufferTime:I,minFrameTime:Q}=A,{feed:C,reset:e,setState:E,logger:i}=g;i=new sB(i,"eventsource: ");let t,s,n=new KA;function o(V){s!==void 0&&s.stop(),s=aB(I,C,c=>n.setTime(c),V,Q,i)}return{play:()=>{t=new EventSource(B),t.addEventListener("open",()=>{i.info("opened"),o()}),t.addEventListener("error",V=>{i.info("errored"),i.debug({e:V}),E("loading")}),t.addEventListener("message",V=>{const c=JSON.parse(V.data);if(Array.isArray(c))s.pushEvent(c);else if(c.cols!==void 0||c.width!==void 0){const G=c.cols??c.width,D=c.rows??c.height;i.debug(`vt reset (${G}x${D})`),E("playing"),o(c.time),e(G,D,c.init??void 0),n=new Fg,typeof c.time=="number"&&n.setTime(c.time)}else c.state==="offline"&&(i.info("stream offline"),E("offline"),n=new KA)}),t.addEventListener("done",()=>{i.info("closed"),t.close(),E("stopped",{reason:"ended"})})},stop:()=>{s!==void 0&&s.stop(),t!==void 0&&t.close()},getCurrentTime:()=>n.getTime()}}async function cQ(A,g){let{encoding:B}=g;const I=new TextDecoder(B);let Q,C,e=(await A[0].text()).split(` +`).filter(D=>D.length>0).map(D=>D.split(" "));e[0].length<3&&(e=e.map(D=>["O",D[0],D[1]]));const E=await A[1].arrayBuffer(),i=new Uint8Array(E),t=i.findIndex(D=>D==10)+1,n=I.decode(i.subarray(0,t)).match(/COLUMNS="(\d+)" LINES="(\d+)"/);n!==null&&(Q=parseInt(n[1],10),C=parseInt(n[2],10));const o={array:i,cursor:t};let V=o;if(A[2]!==void 0){const D=await A[2].arrayBuffer();V={array:new Uint8Array(D),cursor:t}}const c=[];let G=0;for(const D of e)if(G+=parseFloat(D[1]),D[0]==="O"){const u=parseInt(D[2],10),r=o.array.subarray(o.cursor,o.cursor+u),F=I.decode(r);c.push([G,"o",F]),o.cursor+=u}else if(D[0]==="I"){const u=parseInt(D[2],10),r=V.array.subarray(V.cursor,V.cursor+u),F=I.decode(r);c.push([G,"i",F]),V.cursor+=u}else if(D[0]==="S"&&D[2]==="SIGWINCH"){const u=parseInt(D[4].slice(5),10),r=parseInt(D[3].slice(5),10);c.push([G,"r",`${u}x${r}`])}else D[0]==="H"&&D[2]==="COLUMNS"?Q=parseInt(D[3],10):D[0]==="H"&&D[2]==="LINES"&&(C=parseInt(D[3],10));return Q=Q??80,C=C??24,{cols:Q,rows:C,events:c}}async function lQ(A,g){let{encoding:B}=g;const I=new TextDecoder(B),Q=await A.arrayBuffer(),C=new Uint8Array(Q),e=qg(C),E=e.time,t=I.decode(e.data).match(/\x1b\[8;(\d+);(\d+)t/),s=[];let n=80,o=24;t!==null&&(n=parseInt(t[2],10),o=parseInt(t[1],10));let V=0,c=qg(C);for(;c!==void 0;){const G=c.time-E,D=I.decode(c.data);s.push([G,"o",D]),V+=c.len,c=qg(C.subarray(V))}return{cols:n,rows:o,events:s}}function qg(A){if(A.length<13)return;const g=DQ(A.subarray(0,8)),B=Mg(A.subarray(8,12)),I=A.subarray(12,12+B);return{time:g,data:I,len:B+12}}function Mg(A){return A[0]+A[1]*256+A[2]*256*256+A[3]*256*256*256}function DQ(A){const g=Mg(A.subarray(0,4)),B=Mg(A.subarray(4,8));return g+B/1e6}const DB=new Map([["benchmark",QQ],["clock",BQ],["eventsource",aQ],["random",IQ],["recording",ZI],["websocket",rQ]]),wB=new Map([["asciicast",nB],["typescript",cQ],["ttyrec",lQ]]);function wQ(A,g){let B=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const I=B.logger??new LI,Q=new CI(GQ(A),{logger:I,cols:B.cols,rows:B.rows,loop:B.loop,speed:B.speed,preload:B.preload,startAt:B.startAt,poster:B.poster,markers:B.markers,pauseOnMarkers:B.pauseOnMarkers,idleTimeLimit:B.idleTimeLimit}),C=hQ(B.terminalFontFamily,B.terminalLineHeight),e={logger:I,core:Q,cols:B.cols,rows:B.rows,fit:B.fit,controls:B.controls??"auto",autoPlay:B.autoPlay??B.autoplay,terminalFontSize:B.terminalFontSize,terminalFontFamily:B.terminalFontFamily,terminalLineHeight:B.terminalLineHeight,theme:B.theme,...C};let E;const i=Wg(()=>(E=M(SI,e),E),g),t={el:E,dispose:i,getCurrentTime:()=>Q.getCurrentTime(),getDuration:()=>Q.getDuration(),play:()=>Q.play(),pause:()=>Q.pause(),seek:s=>Q.seek(s)};return t.addEventListener=(s,n)=>Q.addEventListener(s,n.bind(t)),t}function GQ(A){if(typeof A=="function")return A;if(typeof A=="string"&&(A.substring(0,5)=="ws://"||A.substring(0,6)=="wss://"?A={driver:"websocket",url:A}:A.substring(0,6)=="clock:"?A={driver:"clock"}:A.substring(0,7)=="random:"?A={driver:"random"}:A.substring(0,10)=="benchmark:"?A={driver:"benchmark",url:A.substring(10)}:A={driver:"recording",url:A}),A.driver===void 0&&(A.driver="recording"),A.driver=="recording"&&(A.parser===void 0&&(A.parser="asciicast"),typeof A.parser=="string"))if(wB.has(A.parser))A.parser=wB.get(A.parser);else throw`unknown parser: ${A.parser}`;if(DB.has(A.driver)){const g=DB.get(A.driver);return(B,I)=>g(A,B,I)}else throw`unsupported driver: ${JSON.stringify(A)}`}function hQ(A,g){const Q=document.createElement("div");Q.style.height="0px",Q.style.overflow="hidden",Q.style.fontSize="15px",document.body.appendChild(Q);let C;const e=Wg(()=>(C=M(tB,{cols:80,rows:24,lineHeight:g,fontFamily:A,lines:[]}),C),Q),E={charW:C.clientWidth/80,charH:C.clientHeight/24,bordersW:C.offsetWidth-C.clientWidth,bordersH:C.offsetHeight-C.clientHeight};return e(),document.body.removeChild(Q),E}},"./node_modules/asciinema-player/dist/bundle/asciinema-player.css":function(GB,TA,WA){WA.r(TA)}}]); diff --git a/data/gitea/public/assets/js/citation-js-bibtex.53a6f177.js b/data/gitea/public/assets/js/citation-js-bibtex.53a6f177.js new file mode 100644 index 0000000..c526c05 --- /dev/null +++ b/data/gitea/public/assets/js/citation-js-bibtex.53a6f177.js @@ -0,0 +1,11 @@ +(self.webpackChunk=self.webpackChunk||[]).push([["citation-js-bibtex"],{"./node_modules/@citation-js/date/lib/index.js":function(ce,L,S){"use strict";Object.defineProperty(L,"__esModule",{value:!0}),Object.defineProperty(L,"format",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(L,"parse",{enumerable:!0,get:function(){return $.default}});var $=R(S("./node_modules/@citation-js/date/lib/input.js")),P=R(S("./node_modules/@citation-js/date/lib/output.js"));function R(_){return _&&_.__esModule?_:{default:_}}},"./node_modules/@citation-js/date/lib/input.js":function(ce,L){"use strict";Object.defineProperty(L,"__esModule",{value:!0}),L.default=void 0;function S(s,h){return D(s)||_(s,h)||P(s,h)||$()}function $(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function P(s,h){if(s){if(typeof s=="string")return R(s,h);var c=Object.prototype.toString.call(s).slice(8,-1);if(c==="Object"&&s.constructor&&(c=s.constructor.name),c==="Map"||c==="Set")return Array.from(s);if(c==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c))return R(s,h)}}function R(s,h){(h==null||h>s.length)&&(h=s.length);for(var c=0,v=new Array(h);c+O<0))return null;+c[0]<0||+c[0]>+c[1]&&+c[1]>0?v=c.pop():v=c.shift()}return[c.pop(),v]}else return null}function Q(s){if(typeof s!="string")return null;const h=s.match(/^(\d+) ?(a\.?d\.?|b\.?c\.?)$/i);if(h){const c=h.slice(1),v=S(c,2),p=v[0],O=v[1];return[p*(O.toLowerCase()[0]==="a"?1:-1)]}else return/^-?\d+$/.test(s)?[s]:null}function q(s){const h=ne(s)||W(s)||H(s)||U(s)||J(s)||ue(s)||Q(s);return h&&h.map(c=>parseInt(c))}function G(s){return le.test(s)?s.match(le).slice(1,3):s.split(X)}function ie(s,h){const c=[],v=typeof s=="string"&&G(s);h?c.push(s,h):v&&v.length===2?c.push(...v):c.push(s);const p=c.map(q);return p.filter(Boolean).length===c.length?{"date-parts":p}:{raw:h?c.join("/"):s}}var ae=ie;L.default=ae},"./node_modules/@citation-js/date/lib/output.js":function(ce,L){"use strict";Object.defineProperty(L,"__esModule",{value:!0}),L.default=void 0;function S(R,_,D){if(R.length>=_)return R;for(;R.length<_;)R=D+R;return R.slice(-_)}var P=function(_,D="-"){if(!_["date-parts"])return _.raw;const j=_["date-parts"][0].map(X=>X.toString());switch(j.length){case 3:j[2]=S(j[2],2,"0");case 2:j[1]=S(j[1],2,"0");case 1:j[0]=S(j[0],4,"0");break}return j.join(D)};L.default=P},"./node_modules/@citation-js/plugin-bibtex/lib-mjs/index.js":function(ce,L,S){"use strict";var $={};S.r($),S.d($,{argumentCommands:function(){return ie},commands:function(){return U},defaultStrings:function(){return ue},diacritics:function(){return H},fieldTypes:function(){return W},formatting:function(){return G},formattingCommands:function(){return q},formattingEnvs:function(){return Q},ligaturePattern:function(){return ae},ligatures:function(){return s},mathCommands:function(){return J},mathScriptFormatting:function(){return h},mathScripts:function(){return c},required:function(){return ne},sentenceCaseLanguages:function(){return v}});var P=S("./node_modules/@citation-js/core/lib-mjs/index.js"),R=S("./node_modules/moo/moo.js"),_=S.n(R),D=JSON.parse('{"source":{"article":"article-journal","book":"book","mvbook":"book","inbook":"chapter","bookinbook":"book","booklet":"book","collection":"book","mvcollection":"book","incollection":"chapter","dataset":"dataset","manual":"report","misc":"document","online":"webpage","patent":"patent","periodical":"periodical","proceedings":"book","mvproceedings":"book","inproceedings":"paper-conference","reference":"book","mvreference":"book","inreference":"entry","report":"report","software":"software","thesis":"thesis","unpublished":"manuscript","artwork":"graphic","audio":"song","image":"figure","jurisdiction":"legal_case","legislation":"legislation","legal":"treaty","letter":"personal_communication","movie":"motion_picture","music":"musical_score","performance":"performance","review":"review","standard":"standard","video":"motion_picture","conference":"paper-conference","electronic":"webpage","mastersthesis":"thesis","phdthesis":"thesis","techreport":"report","www":"webpage"},"target":{"article":"article","article-journal":"article","article-magazine":"article","article-newspaper":"article","bill":"legislation","book":"book","broadcast":"audio","chapter":"inbook","classic":"unpublished","collection":"misc","dataset":"dataset","document":"misc","entry":"inreference","entry-dictionary":"inreference","entry-encyclopedia":"inreference","event":"misc","figure":"artwork","graphic":"artwork","hearing":"legal","interview":"audio","legal_case":"jurisdiction","legislation":"legislation","manuscript":"unpublished","motion_picture":"movie","musical_score":"music","paper-conference":"inproceedings","patent":"patent","performance":"performance","periodical":"periodical","personal_communication":"letter","post":"online","post-weblog":"online","regulation":"legal","report":"report","review":"review","review-book":"review","software":"software","song":"music","speech":"audio","standard":"standard","thesis":"thesis","treaty":"legal","webpage":"online"}}'),j=JSON.parse('{"source":{"article":"article-journal","book":"book","booklet":"book","conference":"paper-conference","inbook":"chapter","incollection":"chapter","inproceedings":"paper-conference","manual":"report","mastersthesis":"thesis","misc":"document","phdthesis":"thesis","proceedings":"book","techreport":"report","unpublished":"manuscript"},"target":{"article":"article","article-journal":"article","article-magazine":"article","article-newspaper":"article","book":"book","chapter":"inbook","manuscript":"unpublished","paper-conference":"inproceedings","report":"techreport","review":"article","review-book":"article"}}'),X=JSON.parse('{"biblatex":{"article":["author","title","journaltitle",["year","date"]],"book":["author","title",["year","date"]],"mvbook":["author","title",["year","date"]],"inbook":["author","title","booktitle",["year","date"]],"booklet":[["author","editor"],"title",["year","date"]],"collection":["editor","title",["year","date"]],"mvcollection":["editor","title",["year","date"]],"incollection":["author","title","booktitle",["year","date"]],"dataset":[["author","editor"],"title",["year","date"]],"online":[["author","editor"],"title",["year","date"],["doi","eprint","url"]],"patent":["author","title","number",["year","date"]],"periodical":["editor","title",["year","date"]],"proceedings":["title",["year","date"]],"mvproceedings":["title",["year","date"]],"inproceedings":["author","title","booktitle",["year","date"]],"report":["author","title","type","institution",["year","date"]],"thesis":["author","title","type","institution",["year","date"]],"unpublished":["author","title",["year","date"]],"conference":["author","title","booktitle",["year","date"]],"electronic":[["author","editor"],"title",["year","date"],["doi","eprint","url"]],"mastersthesis":["author","title","institution",["year","date"]],"phdthesis":["author","title","institution",["year","date"]],"techreport":["author","title","institution",["year","date"]],"www":[["author","editor"],"title",["year","date"],["doi","eprint","url"]]},"bibtex":{"article":["author","title","journal","year"],"book":[["author","editor"],"title","publisher","year"],"booklet":["title"],"inbook":[["author","editor"],"title",["chapter","pages"],"publisher","year"],"incollection":["author","title","booktitle","publisher","year"],"inproceedings":["author","title","booktitle","year"],"mastersthesis":["author","title","school","year"],"phdthesis":["author","title","school","year"],"proceedings":["title","year"],"techreport":["author","title","institution","year"],"unpublished":["author","title","note"]}}'),le=JSON.parse('{"abstract":["field","literal"],"addendum":["field","literal"],"afterword":["list","name"],"annotation":["field","literal"],"annotator":["list","name"],"author":["list","name"],"authortype":["field","key"],"bookauthor":["list","name"],"bookpagination":["field","key"],"booksubtitle":["field","literal"],"booktitle":["field","title"],"booktitleaddon":["field","literal"],"chapter":["field","literal"],"commentator":["list","name"],"date":["field","date"],"doi":["field","verbatim"],"edition":["field","literal"],"editor":["list","name"],"editora":["list","name"],"editorb":["list","name"],"editorc":["list","name"],"editortype":["field","key"],"editoratype":["field","key"],"editorbtype":["field","key"],"editorctype":["field","key"],"eid":["field","literal"],"entrysubtype":["field","literal"],"eprint":["field","verbatim"],"eprintclass":["field","literal"],"eprinttype":["field","literal"],"eventdate":["field","date"],"eventtitle":["field","title"],"eventtitleaddon":["field","literal"],"file":["field","verbatim"],"foreword":["list","name"],"holder":["list","name"],"howpublished":["field","literal"],"indextitle":["field","literal"],"institution":["list","literal"],"introduction":["list","name"],"isan":["field","literal"],"isbn":["field","literal"],"ismn":["field","literal"],"isrn":["field","literal"],"issn":["field","literal"],"issue":["field","literal"],"issuesubtitle":["field","literal"],"issuetitle":["field","literal"],"iswc":["field","literal"],"journalsubtitle":["field","literal"],"journaltitle":["field","literal"],"label":["field","literal"],"language":["list","key"],"library":["field","literal"],"location":["list","literal"],"mainsubtitle":["field","literal"],"maintitle":["field","title"],"maintitleaddon":["field","literal"],"month":["field","literal"],"nameaddon":["field","literal"],"note":["field","literal"],"number":["field","literal"],"organization":["list","literal"],"origdate":["field","date"],"origlanguage":["list","key"],"origlocation":["list","literal"],"origpublisher":["list","literal"],"origtitle":["field","title"],"pages":["field","range"],"pagetotal":["field","literal"],"pagination":["field","key"],"part":["field","literal"],"publisher":["list","literal"],"pubstate":["field","key"],"reprinttitle":["field","literal"],"series":["field","title"],"shortauthor":["list","name"],"shorteditor":["list","name"],"shorthand":["field","literal"],"shorthandintro":["field","literal"],"shortjournal":["field","literal"],"shortseries":["field","literal"],"shorttitle":["field","title"],"subtitle":["field","literal"],"title":["field","title"],"titleaddon":["field","literal"],"translator":["list","name"],"type":["field","title"],"url":["field","uri"],"urldate":["field","date"],"venue":["field","literal"],"version":["field","literal"],"volume":["field","integer"],"volumes":["field","integer"],"year":["field","literal"],"crossref":["field","entry key"],"entryset":["separated","literal"],"execute":["field","code"],"gender":["field","gender"],"langid":["field","identifier"],"langidopts":["field","literal"],"ids":["separated","entry key"],"indexsorttitle":["field","literal"],"keywords":["separated","literal"],"options":["separated","options"],"presort":["field","string"],"related":["separated","literal"],"relatedoptions":["separated","literal"],"relatedtype":["field","identifier"],"relatedstring":["field","literal"],"sortkey":["field","literal"],"sortname":["list","name"],"sortshorthand":["field","literal"],"sorttitle":["field","literal"],"sortyear":["field","integer"],"xdata":["separated","entry key"],"xref":["field","entry key"],"namea":["list","name"],"nameb":["list","name"],"namec":["list","name"],"nameatype":["field","key"],"namebtype":["field","key"],"namectype":["field","key"],"lista":["list","literal"],"listb":["list","literal"],"listc":["list","literal"],"listd":["list","literal"],"liste":["list","literal"],"listf":["list","literal"],"usera":["field","literal"],"userb":["field","literal"],"userc":["field","literal"],"userd":["field","literal"],"usere":["field","literal"],"userf":["field","literal"],"verba":["field","literal"],"verbb":["field","literal"],"verbc":["field","literal"],"address":["list","literal"],"annote":["field","literal"],"archiveprefix":["field","literal"],"journal":["field","literal"],"key":["field","literal"],"pdf":["field","verbatim"],"primaryclass":["field","literal"],"school":["list","literal"],"numpages":["field","integer"],"pmid":["field","literal"],"pmcid":["field","literal"]}'),B=JSON.parse('{"SN":{"`":"\u0300","\'":"\u0301","^":"\u0302","~":"\u0303","=":"\u0304","u":"\u0306",".":"\u0307","\\"":"\u0308","r":"\u030A","H":"\u030B","v":"\u030C","b":"\u0332","d":"\u0323","c":"\u0327","k":"\u0328","t":"\u0361","textcommabelow":"\u0326"},"Pi":{"textquotesingle":"\'","textasciigrave":"`","textquotedbl":"\\"","textdollar":"$","textless":"<","textgreater":">","textbackslash":"\\\\","textasciicircum":"^","textunderscore":"_","textbraceleft":"{","textbar":"|","textbraceright":"}","textasciitilde":"~","textexclamdown":"\xA1","textcent":"\xA2","textsterling":"\xA3","textcurrency":"\xA4","textyen":"\xA5","textbrokenbar":"\xA6","textsection":"\xA7","textasciidieresis":"\xA8","textcopyright":"\xA9","textordfeminine":"\xAA","guillemetleft":"\xAB","guillemotleft":"\xAB","textlnot":"\xAC","textregistered":"\xAE","textasciimacron":"\xAF","textdegree":"\xB0","textpm":"\xB1","texttwosuperior":"\xB2","textthreesuperior":"\xB3","textasciiacute":"\xB4","textmu":"\xB5","textparagraph":"\xB6","textperiodcentered":"\xB7","textonesuperior":"\xB9","textordmasculine":"\xBA","guillemetright":"\xBB","guillemotright":"\xBB","textonequarter":"\xBC","textonehalf":"\xBD","textthreequarters":"\xBE","textquestiondown":"\xBF","AE":"\xC6","DH":"\xD0","texttimes":"\xD7","O":"\xD8","TH":"\xDE","ss":"\xDF","ae":"\xE6","dh":"\xF0","textdiv":"\xF7","o":"\xF8","th":"\xFE","DJ":"\u0110","dj":"\u0111","i":"\u0131","IJ":"\u0132","ij":"\u0133","L":"\u0141","l":"\u0142","NG":"\u014A","ng":"\u014B","OE":"\u0152","oe":"\u0153","textflorin":"\u0192","j":"\u0237","textasciicaron":"\u02C7","textasciibreve":"\u02D8","textacutedbl":"\u02DD","textgravedbl":"\u02F5","texttildelow":"\u02F7","textbaht":"\u0E3F","SS":"\u1E9E","textcompwordmark":"\u200C","textendash":"\u2013","textemdash":"\u2014","textbardbl":"\u2016","textquoteleft":"\u2018","textquoteright":"\u2019","quotesinglbase":"\u201A","textquotedblleft":"\u201C","textquotedblright":"\u201D","quotedblbase":"\u201E","textdagger":"\u2020","textdaggerdbl":"\u2021","textbullet":"\u2022","textellipsis":"\u2026","textperthousand":"\u2030","textpertenthousand":"\u2031","guilsinglleft":"\u2039","guilsinglright":"\u203A","textreferencemark":"\u203B","textinterrobang":"\u203D","textfractionsolidus":"\u2044","textlquill":"\u2045","textrquill":"\u2046","textdiscount":"\u2052","textcolonmonetary":"\u20A1","textlira":"\u20A4","textnaira":"\u20A6","textwon":"\u20A9","textdong":"\u20AB","texteuro":"\u20AC","textpeso":"\u20B1","textcelsius":"\u2103","textnumero":"\u2116","textcircledP":"\u2117","textrecipe":"\u211E","textservicemark":"\u2120","texttrademark":"\u2122","textohm":"\u2126","textmho":"\u2127","textestimated":"\u212E","textleftarrow":"\u2190","textuparrow":"\u2191","textrightarrow":"\u2192","textdownarrow":"\u2193","textminus":"\u2212","Hwithstroke":"\u0126","hwithstroke":"\u0127","textasteriskcentered":"\u2217","textsurd":"\u221A","textlangle":"\u2329","textrangle":"\u232A","textblank":"\u2422","textvisiblespace":"\u2423","textopenbullet":"\u25E6","textbigcircle":"\u25EF","textmusicalnote":"\u266A","textmarried":"\u26AD","textdivorced":"\u26AE","textinterrobangdown":"\u2E18","textcommabelow":null,"copyright":"\xA9"},"vl":{"Gamma":"\u0393","Delta":"\u0394","Theta":"\u0398","Lambda":"\u039B","Xi":"\u039E","Pi":"\u03A0","Sigma":"\u03A3","Phi":"\u03A6","Psi":"\u03A8","Omega":"\u03A9","alpha":"\u03B1","beta":"\u03B2","gamma":"\u03B3","delta":"\u03B4","varepsilon":"\u03B5","zeta":"\u03B6","eta":"\u03B7","theta":"\u03B8","iota":"\u03B9","kappa":"\u03BA","lambda":"\u03BB","mu":"\u03BC","nu":"\u03BD","xi":"\u03BE","pi":"\u03C0","rho":"\u03C1","varsigma":"\u03C2","sigma":"\u03C3","tau":"\u03C4","upsilon":"\u03C5","varphi":"\u03C6","chi":"\u03C7","psi":"\u03C8","omega":"\u03C9","vartheta":"\u03D1","Upsilon":"\u03D2","phi":"\u03D5","varpi":"\u03D6","varrho":"\u03F1","epsilon":"\u03F5"}}');const ne=X,W=le,H=B.SN,U=B.Pi,J=B.vl,ue={jan:"01",feb:"02",mar:"03",apr:"04",may:"05",jun:"06",jul:"07",aug:"08",sep:"09",oct:"10",nov:"11",dec:"12",acmcs:"ACM Computing Surveys",acta:"Acta Informatica",cacm:"Communications of the ACM",ibmjrd:"IBM Journal of Research and Development",ibmsj:"IBM Systems Journal",ieeese:"IEEE Transactions on Software Engineering",ieeetc:"IEEE Transactions on Computers",ieeetcad:"IEEE Transactions on Computer-Aided Design of Integrated Circuits",ipl:"Information Processing Letters",jacm:"Journal of the ACM",jcss:"Journal of Computer and System Sciences",scp:"Science of Computer Programming",sicomp:"SIAM Journal on Computing",tocs:"ACM Transactions on Computer Systems",tods:"ACM Transactions on Database Systems",tog:"ACM Transactions on Graphics",toms:"ACM Transactions on Mathematical Software",toois:"ACM Transactions on Office Information Systems",toplas:"ACM Transactions on Programming Languages and Systems",tcs:"Theoretical Computer Science"},Q={it:"italics",itshape:"italics",sl:"italics",slshape:"italics",em:"italics",bf:"bold",bfseries:"bold",sc:"smallcaps",scshape:"smallcaps",rm:void 0,sf:void 0,tt:void 0},q={textit:"italics",textsl:"italics",emph:"italics",mkbibitalic:"italics",mkbibemph:"italics",textbf:"bold",strong:"bold",mkbibbold:"bold",textsc:"smallcaps",textsuperscript:"superscript",textsubscript:"subscript",enquote:"quotes",mkbibquote:"quotes",textmd:void 0,textrm:void 0,textsf:void 0,texttt:void 0,textup:void 0},G={italics:["",""],bold:["",""],superscript:["",""],subscript:["",""],smallcaps:['',""],nocase:['',""],quotes:["\u201C","\u201D"]},ie={ElsevierGlyph(e){return String.fromCharCode(parseInt(e,16))},href(e,t){return e},url(e){return e}},ae=/---?|''|``|~/g,s={"--":"\u2013","---":"\u2014","``":"\u201C","''":"\u201D","~":"\xA0"},h={"^":"superscript",sp:"superscript",_:"subscript",sb:"subscript",mathrm:void 0},c={"^":{0:"\u2070",1:"\xB9",2:"\xB2",3:"\xB3",4:"\u2074",5:"\u2075",6:"\u2076",7:"\u2077",8:"\u2078",9:"\u2079","+":"\u207A","-":"\u207B","=":"\u207C","(":"\u207D",")":"\u207E",i:"\u2071",n:"\u207F"},_:{0:"\u2080",1:"\u2081",2:"\u2082",3:"\u2083",4:"\u2084",5:"\u2085",6:"\u2086",7:"\u2087",8:"\u2088",9:"\u2089","+":"\u208A","-":"\u208B","=":"\u208C","(":"\u208D",")":"\u208E",a:"\u2090",e:"\u2091",o:"\u2092",x:"\u2093",\u0259:"\u2094",h:"\u2095",k:"\u2096",l:"\u2097",m:"\u2098",n:"\u2099",s:"\u209A",p:"\u209B",t:"\u209C"}},v=["american","british","canadian","english","australian","newzealand","usenglish","ukenglish","en","eng","en-au","en-bz","en-ca","en-cb","en-gb","en-ie","en-jm","en-nz","en-ph","en-tt","en-us","en-za","en-zw","anglais"];var p={constants:$,types:{biblatex:D,bibtex:j},parse:{biblatex:!0,strict:!1,sentenceCase:"never"},format:{useIdAsLabel:!1,asciiOnly:!0},biber:{annotationMarker:"+an",namedAnnotationMarker:":"}};function O(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function x(e){for(var t=1;t{const[,t,r]=e.match(w.parseEntry)||[];if(!t||!r)return{};{const n={type:"book",label:t,properties:{}};return r.trim().split(w.splitPairs).filter(a=>a).forEach(a=>{let[l,k]=a.split(w.splitPair);k&&(l=l.trim(),k=k.trim(),l==="type"?n.type=k:n.properties[l]=k)}),n}},C=e=>e.trim().split(w.splitEntries).map(g),V=new Set(["the","a","an"]),z=/(?:<\/?.*?>|[\u0020-\u002F\u003A-\u0040\u005B-\u005E\u0060\u007B-\u007F])+/g,Y=/[^\u0020-\u007F]+/g;function Z(e){return e?e.normalize("NFKD").replace(Y,"").split(z).find(t=>t.length&&!V.has(t.toLowerCase())):""}const I=new P.util.Translator([{source:"given",target:"given"},{source:"family",target:"family"},{source:"suffix",target:"suffix"},{source:"prefix",target:"non-dropping-particle"},{source:"family",target:"literal",when:{source:!1,target:{family:!1,given:!1}}}]),oe=["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],E="BibTeX type",F="BibTeX label",K={jan:1,feb:2,mar:3,apr:4,may:5,jun:6,jul:7,aug:8,sep:9,oct:10,nov:11,dec:12,january:1,february:2,march:3,april:4,may:5,june:6,july:7,august:8,september:9,october:10,november:11,december:12},he={bathesis:"Bachelor's thesis",mathesis:"Master's thesis",phdthesis:"PhD thesis",candthesis:"Candidate thesis",techreport:"technical report",resreport:"research report",software:"computer software",datacd:"data cd",audiocd:"audio cd",patent:"patent",patentde:"German patent",patenteu:"European patent",patentfr:"French patent",patentuk:"British patent",patentus:"U.S. patent",patreq:"patent request",patreqde:"German patent request",patreqeu:"European patent request",patreqfr:"French patent request",patrequk:"British patent request",patrequs:"U.S. patent request"},Ve=/(^(?:ISAN )?(?:[0-9a-f]{4}-){4}[0-9a-z](?:-(?:[0-9a-f]{4}-){2}[0-9a-z])?$)|(^(?:979-?0-?|M-?)(?:\d{9}|(?=[\d-]{11}$)\d+-\d+-\d)$)|(^ISRN .{1,36}$)|(^(?:ISWC )?T-?\d{9}-?\d$)/i;function Ye(e){const t=e.split("T")[0].replace(/[?~%]$/,"").split("-"),r=+t[0].replace(/^Y(?=-?\d{4}\d+)/,"").replace(/X/g,"0"),n=+t[1],a=+t[2];return!n||n>20?[r]:a?[r,n,a]:[r,n]}function Ze(e){if(e==null)return[];if(+e)return[parseInt(e,10)];if(e=e.trim().toLowerCase(),e in K)return[K[e]];const t=e.split(/\s+/);let r,n;return t[0]in K?(r=K[t[0]],n=parseInt(t[1])):t[1]in K&&(r=K[t[1]],n=parseInt(t[0])),n?[r,n]:r?[r]:[]}function Xe(e,t,r,n){let a="";return e&&e[0]&&(a+=Z(e[0].family||e[0].literal)),t&&t["date-parts"]&&t["date-parts"][0]&&(a+=t["date-parts"][0][0]),r?a+=r:n&&(a+=Z(n)),a}const d={PICK:{toTarget(...e){return e.find(Boolean)},toSource(e){return[e]}},DATE:{toTarget(e){const t=e.split("/").map(r=>r&&r!==".."?Ye(r):void 0);return isNaN(t[0][0])?{literal:e}:{"date-parts":t}},toSource(e){if("date-parts"in e)return e["date-parts"].map(t=>t.map(r=>r.toString().padStart(2,"0")).join("-")).join("/")}},YEAR_MONTH:{toTarget(e,t,r){return isNaN(+e)?{literal:e}:!isNaN(+r)&&!isNaN(+t)?{"date-parts":[[+e,+t,+r]]}:{"date-parts":[[+e,...Ze(t)]]}},toSource(e){if("date-parts"in e){const[t,r,n]=e["date-parts"][0];return[t.toString(),r?n?`${oe[r-1]} ${n}`:r:void 0]}else return[]}},EPRINT:{toTarget(e,t){if(t==="pubmed")return e},toSource(e){return[e,"pubmed"]}},EVENT_TITLE:{toTarget(e,t){return t&&(e+=" ("+t+")"),e},toSource(e){return e.match(/^(.+)(?: \((.+)\))?$/).slice(1,3)}},HOW_PUBLISHED:{toTarget(e){if(e.startsWith("http"))return e}},KEYWORDS:{toTarget(e){return e.join(",")},toSource(e){return e.split(",")}},LABEL:{toTarget(e){return[e,e]},toSource(e,t,r,n,a,l){let k;return e===null?k="null":e===void 0?k="undefined":k=e.toString().replace(z,""),p.format.useIdAsLabel?k:t&&!z.test(t)?t:Xe(r,n,a,l)||k}},NAMES:{toTarget(e){return e.map(I.convertToTarget)},toSource(e){return e.map(I.convertToSource)}},NAMES_ORCID:{toTarget(e,t){return e.map((r,n)=>{var a;const l=I.convertToTarget(r);return typeof(t==null||(a=t.item)===null||a===void 0?void 0:a[n])=="string"&&(l._orcid=t.item[n]),l})},toSource(e){const t=[],r=[];for(let n=0;n=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function st(e,t){if(e==null)return{};var r={},n=Object.keys(e),a,l;for(l=0;l=0)&&(r[a]=e[a]);return r}function je(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function lt(e){for(var t=1;tt.convertToTarget(lt({[E]:n,[F]:a},_e(n,l,r))))}function Re(e,t){return e.map(r=>{const n=t.convertToSource(r),{[E]:a,[F]:l}=n,k=ot(n,[E,F].map(Pe));return{type:a,label:l,properties:k}})}function pt(e){return Ce(e,ke)}function ft(e){return Re(e,ke)}function ht(e){return Ce(e,we)}function mt(e){return Re(e,we)}function dt(e){const t=e.toUpperCase(),r=e.toLowerCase();for(let n=0;n1;){const{value:n,hyphenated:a}=e.shift();t+=n+(a?"-":" ")}const r=t+e[0].value;return r[0]&&r}function gt(e,t=!0){const r=[],n=[];if(t)for(;e.length>1&&e[0].upperCase!==!1;){for(r.push(...n),n.length=0;e.length>1&&e[0].upperCase!==!1&&!e[0].hyphenated;)r.push(e.shift());for(;e.length>0&&e[0].upperCase!==!1&&e[0].hyphenated;)n.push(e.shift())}const a=[],l=[];for(;e.length>1;){for(a.push(...l),l.length=0;e.length>1&&e[0].upperCase===!1;)a.push(e.shift());for(;e.length>0&&e[0].upperCase!==!1;)l.push(e.shift())}return n.length&&l.unshift(...n),e.length&&l.push(e[0]),[ee(r),ee(a),ee(l)]}function bt(e){if(e[0][0].label){const l={};for(const[{value:k,label:M}]of e)l[M]=k;return l}const t={},[r,n,a]=gt(e[0],e.length===1);return a&&(t.family=a),n&&(t.prefix=n),e.length===3?(t.given=ee(e[2]),t.suffix=ee(e[1])):e.length===2?t.given=ee(e[1]):r&&(t.given=r),t}function Ae(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function N(e){for(var t=1;te.slice(1).trim()},lbrace:{match:"{",push:"bracedLiteral"},mathShift:{match:"$",push:"mathLiteral"},whitespace:{match:/[\s]+|~/,lineBreaks:!0,value(e){return e==="~"?"\xA0":" "}}},Ie=_().states({stringLiteral:N(N({},te),{},{text:/[^{$}\s~\\]+/}),namesLiteral:N(N({and:/\s+[aA][nN][dD]\s+/,comma:",",hyphen:"-",equals:"="},te),{},{text:/[^{$}\s~\\,=-]+/}),listLiteral:N(N({and:/\s+and\s+/},te),{},{text:/[^{$}\s~\\]+/}),separatedLiteral:N(N({comma:","},te),{},{text:/[^{$}\s~\\,]+/}),annotation:N(N({},te),{},{colon:":",equals:"=",comma:",",semicolon:";",quote:'"',itemCount:/\d+/,text:/[^{$}\s~\\":;,=]+/}),bracedLiteral:N(N({},te),{},{rbrace:{match:"}",pop:!0},text:/[^{$}\s~\\]+/}),mathLiteral:N(N({},te),{},{mathShift:{match:"$",pop:!0},script:/[\^_]/,text:/[^{$}\s~\\^_]+/}),environment:N(N({commandEnd:{match:"\\end",pop:!0}},te),{},{text:/[^{$}\s~\\]+/})});function se(e){return e[0],e}function pe(e,t){return t in G?e&&G[t].join(e):e}const Ne=new P.util.Grammar({String(){let e="";for(;!this.matchEndOfFile();)e+=this.consumeRule("Text");return se(e)},StringNames(){const e=[];for(;;){if(this.consumeToken("whitespace",!0),e.push(this.consumeRule("Name")),this.consumeToken("whitespace",!0),this.matchEndOfFile())return e;this.consumeToken("and")}},Name(){const e=[];for(;;){if(e.push(this.consumeRule("NamePiece")),this.matchEndOfFile()||this.matchToken("and"))return bt(e);this.consumeToken("comma"),this.consumeToken("whitespace",!0)}},NamePiece(){const e=[];for(;;){const t=this.consumeRule("NameToken");if(t.label)return t.label=ee([...e,{value:t.label}]),[t];if(e.push(t),this.matchEndOfFile()||this.matchToken("and")||this.matchToken("comma"))return e;for(;this.matchToken("hyphen")||this.matchToken("whitespace");)this.consumeToken()}},NameToken(){let e=null,t="";for(;;)if(e===null&&this.matchToken("text")){const r=this.consumeToken().value;t+=r,e=dt(r)}else{if(this.matchEndOfFile()||this.matchToken("and")||this.matchToken("comma")||this.matchToken("whitespace"))return{value:t,upperCase:e};if(this.matchToken("hyphen"))return{value:t,upperCase:e,hyphenated:!0};if(this.matchToken("equals")){this.consumeToken("equals");const r=this.consumeRule("NamePiece");return r[0].label&&(t+="="+r[0].label),{value:ee(r),label:t}}else t+=this.consumeRule("Text")}},StringList(){const e=[];for(;!this.matchEndOfFile();){let t="";for(;!this.matchEndOfFile()&&!this.matchToken("and");)t+=this.consumeRule("Text");e.push(se(t)),this.consumeToken("and",!0)}return e.length===1?e[0]:e},StringSeparated(){const e=[];for(;!this.matchEndOfFile();){let t="";for(;!this.matchEndOfFile()&&!this.matchToken("comma");)t+=this.consumeRule("Text");e.push(t.trim()),this.consumeToken("comma",!0),this.consumeToken("whitespace",!0)}return e},StringVerbatim(){let e="";for(;!this.matchEndOfFile();)e+=this.consumeToken().text;return se(e)},StringUri(){const e=this.consumeRule("StringVerbatim");try{return decodeURI(e)===e?encodeURI(e):e}catch{return encodeURI(e)}},StringTitleCase(){this.state.sentenceCase=!0;let e="";for(;!this.matchEndOfFile();)e+=this.consumeRule("Text");return se(e)},Annotations(){const e={};for(;;){const{scope:t,item:r,part:n,value:a}=this.consumeRule("Annotation");if(t==="part"?(e.part||(e.part=[]),e.part[r]||(e.part[r]={}),e.part[r][n]=a):t==="item"?(e.item||(e.item=[]),e.item[r]=a):e.field=a,this.matchEndOfFile())break;this.consumeToken("semicolon"),this.consumeRule("_")}return e},Annotation(){const e={};if(this.matchToken("itemCount")?(e.item=parseInt(this.consumeToken("itemCount"))-1,this.matchToken("colon")?(this.consumeToken("colon"),e.part=this.consumeToken("text"),e.scope="part"):e.scope="item"):e.scope="field",this.consumeToken("equals"),this.consumeRule("_"),this.matchToken("quote")){this.consumeToken("quote");let t="";for(;!this.matchToken("quote");)this.matchToken("itemCount")||this.matchToken("colon")||this.matchToken("comma")||this.matchToken("semicolon")||this.matchToken("equals")?(t+=this.token.value,this.token=this.lexer.next()):t+=this.consumeRule("Text");this.consumeToken("quote"),e.value=se(t),this.consumeRule("_")}else{e.value=[];let t="";for(;;)if(t+=this.consumeRule("Text"),this.matchToken("comma"))this.consumeToken("comma"),this.consumeRule("_"),e.value.push(se(t)),t="";else if(this.matchEndOfFile()||this.matchToken("semicolon")){e.value.push(se(t));break}}return e},BracketString(){var e;let t="";this.consumeToken("lbrace");const r=this.state.sentenceCase;for(this.state.sentenceCase=r&&this.matchToken("command"),(e=this.state).partlyLowercase&&(e.partlyLowercase=this.state.sentenceCase);!this.matchToken("rbrace");)t+=this.consumeRule("Text");const a=r&&!this.state.sentenceCase&&this.state.partlyLowercase;return this.state.sentenceCase=r,this.consumeToken("rbrace"),a?pe(t,"nocase"):t},MathString(){let e="";for(this.consumeToken("mathShift");!this.matchToken("mathShift");){if(this.matchToken("script")){const t=this.consumeToken("script").value,r=this.consumeRule("Text").split("");if(r.every(n=>n in c[t]))e+=r.map(n=>c[t][n]).join("");else{const n=h[t];e+=G[n].join(r.join(""))}continue}if(this.matchToken("command")){const t=this.token.value;if(t in h){this.consumeToken("command");const r=this.consumeRule("BracketString");e+=pe(r,h[t]);continue}}e+=this.consumeRule("Text")}return this.consumeToken("mathShift"),e},Text(){if(this.matchToken("lbrace"))return this.consumeRule("BracketString");if(this.matchToken("mathShift"))return this.consumeRule("MathString");if(this.matchToken("whitespace"))return this.consumeToken("whitespace").value;if(this.matchToken("commandBegin"))return this.consumeRule("EnclosedEnv");if(this.matchToken("command"))return this.consumeRule("Command");const e=this.consumeToken("text").value.replace(ae,M=>s[M]),t=this.state.afterPunctuation;if(this.state.afterPunctuation=/[?!.:]$/.test(e),!this.state.sentenceCase){var r;return(r=this.state).partlyLowercase||(r.partlyLowercase=e===e.toLowerCase()&&e!==e.toUpperCase()),e}const[n,...a]=e,l=a.join(""),k=l.toLowerCase();return l!==k?e:t?n+k:e.toLowerCase()},Command(){const e=this.consumeToken("command"),t=e.value;if(t in Q){const r=this.consumeRule("Env"),n=Q[t];return pe(r,n)}else if(t in q){const r=this.consumeRule("BracketString"),n=q[t];return pe(r,n)}else{if(t in U)return U[t];if(t in J)return J[t];if(t in H&&!this.matchEndOfFile()){const r=this.consumeRule("Text");return(r[0]+H[t]).normalize("NFC")+r.slice(1)}else if(t in ie){const r=ie[t],n=[];let a=r.length;for(;a-- >0;)this.consumeToken("whitespace",!0),n.push(this.consumeRule("BracketString"));return r(...n)}else return/^[&%$#_{}]$/.test(t)?e.text.slice(1):e.text}},Env(){let e="";for(;!this.matchEndOfFile()&&!this.matchToken("rbrace");)e+=this.consumeRule("Text");return e},EnclosedEnv(){this.consumeToken("commandBegin");const e=this.consumeRule("BracketString");let t="";for(;!this.matchToken("commandEnd");)t+=this.consumeRule("Text");const r=this.consumeToken("commandEnd"),n=this.consumeRule("BracketString");if(e!==n)throw new SyntaxError(this.lexer.formatError(r,`environment started with "${e}", ended with "${n}"`));return pe(t,Q[e])},_(){for(;this.matchToken("whitespace");)this.consumeToken("whitespace")}},{sentenceCase:!1,partlyLowercase:!1,afterPunctuation:!0});function Le(e){return v.includes(e.toLowerCase())}function kt(e){return Array.isArray(e)?e.every(Le):Le(e)}function xt(e,t){if(e[1]==="name")return e[0]==="list"?"StringNames":"Name";if(e[1]==="title"){const r=p.parse.sentenceCase;return r==="always"||r==="english"&&kt(t)?"StringTitleCase":"String"}switch(e[0]==="field"?e[1]:e[0]){case"list":return"StringList";case"separated":return"StringSeparated";case"verbatim":return"StringVerbatim";case"uri":return"StringUri";case"title":case"literal":default:return"String"}}function Tt(e){if(e[1]==="name")return"namesLiteral";switch(e[0]){case"list":return"listLiteral";case"separated":return"separatedLiteral";case"field":default:return"stringLiteral"}}function De(e,t,r=[]){const n=W[t]||[];return Ne.parse(Ie.reset(e,{state:Tt(n),line:0,col:0}),xt(n,r))}function St(e){return Ne.parse(Ie.reset(e,{state:"annotation",line:0,col:0}),"Annotations")}function Be(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Me(e){for(var t=1;tUt in l)?k.push(M.join("/")):typeof M=="string"&&!(M in l)&&k.push(M);k.length&&r.push([a,`missing fields: ${k.join(", ")}`])}else r.push([a,`invalid type: "${n}"`]);if(r.length)throw new RangeError(["Invalid entries:"].concat(r.map(([n,a])=>` - ${n} has ${a}`)).join(` +`))}function qe(e){const t={};"language"in e.properties&&(t.language=De(e.properties.language,"language"));for(const r in e.properties){const n=e.properties[r];n!==""&&(t[r]=De(n+"",r,t.language))}for(const r in e.annotations)for(const n in e.annotations[r])t[r+"+an:"+n]=St(e.annotations[r][n]);return Me(Me({},e),{},{properties:t})}function ze(e){return p.parse.strict&&$e(e,ne.biblatex),ht(e.map(qe))}function Fe(e){return p.parse.strict&&$e(e,ne.bibtex),pt(e.map(qe))}const jt="@bibtex",Pt={"@biblatex/text":{parse:T,parseType:{dataType:"String",predicate:/@\s{0,5}[A-Za-z]{1,13}\s{0,5}\{\s{0,5}[^@{}"=,\\\s]{0,100}\s{0,5},[\s\S]*\}/}},"@biblatex/entry+object":{parse(e){return ze([e])},parseType:{dataType:"SimpleObject",propertyConstraint:{props:["type","label","properties"]}}},"@biblatex/entries+list":{parse:ze,parseType:{elementConstraint:"@biblatex/entry+object"}},"@bibtex/text":{parse:T,outputs:"@bibtex/entries+list"},"@bibtex/entry+object":{parse(e){return Fe([e])}},"@bibtex/entries+list":{parse:Fe},"@bibtxt/text":{parse:C,parseType:{dataType:"String",predicate:/^\s*(\[(?!\s*[{[]).*?\]\s*(\n\s*[^[]((?!:)\S)+\s*:\s*.+?\s*)*\s*)+$/}}},re={};for(const e in U)re[U[e]]=e;for(const e in H)re[H[e]]=e;for(const e in s)re[s[e]]=e;const me={};for(const e in J)me[J[e]]=e;const Ct=/[^a-zA-Z0-9\s!"#%&'()*+,\-./:;=?@[\]{}\u0300-\u0308\u030a-\u030c\u0332\u0323\u0327\u0328\u0361\u0326]/g,Rt=/.[\u0300-\u0308\u030a-\u030c\u0332\u0323\u0327\u0328\u0361\u0326]+/g,At=/[\u0300-\u0308\u030a-\u030c\u0332\u0323\u0327\u0328\u0361\u0326]/g,de={separated:",",list:" and "},Ke={i:"\\textit{",b:"\\textbf{",sc:"\\textsc{",sup:"\\textsuperscript{",sub:"\\textsubscript{",'span style="font-variant:small-caps;"':"\\textsc{",'span class="nocase"':"{"};function It(e){return e in re?re[e]in s?re[e]:`\\${re[e]}{}`:e in me?`$\\${me[e]}$`:""}function fe(e){return p.format.asciiOnly?e.normalize("NFKD").replace(Ct,t=>It(t)).replace(Rt,t=>Array.from(t).reduce((r,n)=>`{\\${re[n]} ${r}}`)).replace(At,""):e}function Ue(e){const t=[];let r=e.split(/<(\/?(?:i|b|sc|sup|sub|span)|span .*?)>/g);return r=r.map((n,a)=>a%2===0?fe(n):n in Ke?(t.push("/"+n.split(" ")[0]),Ke[n]):n===t[t.length-1]?(t.pop(),"}"):""),r.join("")}function Nt(e){if(e.family&&!e.prefix&&!e.given&!e.suffix)return e.family.includes(de.list)?e.family:`{${e.family}}`;const t=[""];return e.prefix&&e.family&&(t[0]+=e.prefix+" "),e.family&&(t[0]+=e.family),e.suffix?(t.push(e.suffix),t.push(e.given||"")):t.push(e.given),fe(t.join(", ").trim())}function Lt(e){return Ue(e).split(/(:\s*)/).map((t,r)=>r%2?t:t.replace(/([^\\])\b([a-z]*[A-Z].*?)\b/g,"$1{$2}")).join("")}function ge(e,t){switch(t){case"title":return Lt(e);case"literal":return Ue(e.toString());case"name":return Nt(e);case"verbatim":case"uri":return e.toString();default:return fe(e.toString())}}function Dt(e,t,r){const n=de[r];return e.map(a=>{const l=ge(a,t);return l.includes(n)?`{${l}}`:l}).join(n)}function be(e){return Array.isArray(e)?e.map(t=>fe(t).replace(/([;,"])/g,"{$1}")).join(", "):'"'+fe(e).replace(/(["])/g,"{$1}")+'"'}function Bt(e,t){if(!(e in W))return ge(t,"verbatim");const[r,n]=W[e];return r in de?Dt(t,n,r):ge(t,n)}function Mt(e){const t=[];if(e.field&&t.push("="+be(e.field)),e.item)for(const[r,n]of Object.entries(e.item)){if(!n)continue;const a=parseInt(r)+1;t.push(a+"="+be(n))}if(e.part)for(const[r,n]of Object.entries(e.part)){if(!n)continue;const a=parseInt(r)+1;for(const l in n)n[l]&&t.push(a+":"+l+"="+be(n[l]))}return t.join("; ")}function Ge({type:e,label:t,properties:r}){const n={type:e,label:t,properties:{}};for(const a in r){const l=r[a],[k,M]=a.split("+an:");M?(n.annotations||(n.annotations={}),n.annotations[k]||(n.annotations[k]={}),n.annotations[k][M]=Mt(l)):n.properties[a]=Bt(a,l)}return n}function $t(e){return mt(e).map(Ge)}function We(e){return ft(e).map(Ge)}function He(e,t,r){return r.listItem.join(`${e} = {${t}},`)}function qt(e,t){const r=[];for(const n in e.properties)if(r.push(He(n,e.properties[n],t)),e.annotations&&e.annotations[n])for(const a in e.annotations[n]){let l=n+p.biber.annotationMarker;a!=="default"&&(l+=p.biber.namedAnnotationMarker+a),r.push(He(l,e.annotations[n][a],t))}return t.entry.join(`@${e.type}{${e.label},${t.list.join(r.join(""))}}`)}function Je(e,t){const r=e.map(n=>qt(n,t)).join("");return t.bibliographyContainer.join(r)}function zt({type:e,label:t,properties:r},n){const a=Object.entries(r).concat([["type",e]]).map(([l,k])=>n.listItem.join(`${l}: ${k}`));return n.entry.join(`[${t}]${n.list.join(a.join(""))}`)}function Ft(e,t){const r=e.map(n=>zt(n,t)).join(` +`);return t.bibliographyContainer.join(r)}const ye=function(e,t){return function(r,n={}){const{type:a,format:l=a||"text"}=n;if(r=e(r),l==="object")return r;if(P.plugins.dict.has(l))return t(r,P.plugins.dict.get(l),n);throw new RangeError(`Output dictionary "${l}" not available`)}};var Kt={bibtex:ye(We,Je),biblatex:ye($t,Je),bibtxt:ye(We,Ft)};P.plugins.add(jt,{input:Pt,output:Kt,config:p})},"./node_modules/moo/moo.js":function(ce,L){var S,$,P;(function(R,_){$=[],S=_,P=typeof S=="function"?S.apply(L,$):S,P!==void 0&&(ce.exports=P)})(this,function(){"use strict";var R=Object.prototype.hasOwnProperty,_=Object.prototype.toString,D=typeof new RegExp().sticky=="boolean";function j(i){return i&&_.call(i)==="[object RegExp]"}function X(i){return i&&typeof i=="object"&&!j(i)&&!Array.isArray(i)}function le(i){return i.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function B(i){var o=new RegExp("|"+i);return o.exec("").length-1}function ne(i){return"("+i+")"}function W(i){if(!i.length)return"(?!)";var o=i.map(function(u){return"(?:"+u+")"}).join("|");return"(?:"+o+")"}function H(i){if(typeof i=="string")return"(?:"+le(i)+")";if(j(i)){if(i.ignoreCase)throw new Error("RegExp /i flag not allowed");if(i.global)throw new Error("RegExp /g flag is implied");if(i.sticky)throw new Error("RegExp /y flag is implied");if(i.multiline)throw new Error("RegExp /m flag is implied");return i.source}else throw new Error("Not a pattern: "+i)}function U(i,o){return i.length>o?i:Array(o-i.length+1).join(" ")+i}function J(i,o){for(var u=i.length,f=0;;){var b=i.lastIndexOf(` +`,u-1);if(b===-1||(f++,u=b,f===o)||u===0)break}var m=f0)throw new Error("RegExp has capture groups: "+I+` +Use (?: \u2026 ) instead`);if(!g.lineBreaks&&I.test(` +`))throw new Error("Rule should declare lineBreaks: "+I);T.push(ne(Z))}}var E=u&&u.fallback,F=D&&!E?"ym":"gm",K=D||E?"":"|";m===!0&&(F+="u");var he=new RegExp(W(T)+K,F);return{regexp:he,groups:y,fast:f,error:u||ie}}function s(i){var o=ae(G(i));return new p({start:o},"start")}function h(i,o,u){var f=i&&(i.push||i.next);if(f&&!u[f])throw new Error("Missing state '"+f+"' (in token '"+i.defaultType+"' of state '"+o+"')");if(i&&i.pop&&+i.pop!=1)throw new Error("pop must be 1 (in token '"+i.defaultType+"' of state '"+o+"')")}function c(i,o){var u=i.$all?G(i.$all):[];delete i.$all;var f=Object.getOwnPropertyNames(i);o||(o=f[0]);for(var b=Object.create(null),m=0;mthis.currentVersion())return null;{const[n,i]=this.log[t-1],s=new this.constructor(JSON.parse(n),JSON.parse(i));return s.log=this.log.slice(0,t),s}}function tt(t=1){return this.retrieveVersion(this.currentVersion()-t)}function it(){return this.retrieveVersion(this.currentVersion())}function pt(){return this.log.push([JSON.stringify(this.data),JSON.stringify(this._options)]),this}const ot=["real","string"],Q=["json","html","string","rtf"],lt=["csl","bibtex","bibtxt","citation-*","ris","ndjson"],gt=["string","function"];function K(t){if(typeof t!="object")throw new TypeError("Options not an object!");const{format:n,type:i,style:s,lang:h,append:B,prepend:L}=t;if(n&&!ot.includes(n))throw new TypeError(`Option format ("${n}") should be one of: ${ot}`);if(i&&!Q.includes(i))throw new TypeError(`Option type ("${i}") should be one of: ${Q}`);if(s&&!lt.includes(s)&&!/^citation/.test(s))throw new TypeError(`Option style ("${s}") should be one of: ${lt}`);if(h&&typeof h!="string")throw new TypeError(`Option lang should be a string, but is a ${typeof h}`);if(L&&!gt.includes(typeof L))throw new TypeError(`Option prepend should be a string or a function, but is a ${typeof L}`);if(B&&!gt.includes(typeof B))throw new TypeError(`Option append should be a string or a function, but is a ${typeof B}`);if(/^citation/.test(s)&&i==="json")throw new Error(`Combination type/style of json/citation-* is not valid: ${i}/${s}`);return!0}function yt(t){if(typeof t!="object")throw new TypeError("Options should be an object");if(t.output)K(t.output);else{if(t.maxChainLength&&typeof t.maxChainLength!="number")throw new TypeError("Option maxChainLength should be a number");if(t.forceType&&typeof t.forceType!="string")throw new TypeError("Option forceType should be a string");if(t.generateGraph!=null&&typeof t.generateGraph!="boolean")throw new TypeError("Option generateGraph should be a boolean");if(t.strict!=null&&typeof t.strict!="boolean")throw new TypeError("Option strict should be a boolean");if(t.target!=null&&typeof t.target!="string")throw new TypeError("Option target should be a boolean")}return!0}const ut={format:"real",type:"json",style:"csl",lang:"en-US"};function f(t,n){return K(t),n&&this.save(),Object.assign(this._options,t),this}function p(t){switch(t){case void 0:return"Undefined";case null:return"Null";default:return t.constructor.name}}function w(t){switch(typeof t){case"string":return"String";case"object":if(Array.isArray(t))return"Array";if(p(t)==="Object")return"SimpleObject";if(p(t)!=="Null")return"ComplexObject";default:return"Primitive"}}function G(t,n){if(t._graph){const i=n.findIndex(({type:s})=>s==="@else/list+object");i!==-1&&n.splice(i+1,0,...t._graph.slice(0,-1))}return t._graph=n,t}function j(t){return delete t._graph,t}const b={_output(t,n,i){this._log.push(n,i),!(this._levels.indexOf(t)b._output(t,n,i);typeof console.Console=="function"?b._console=new console.Console(process.stderr):b._console=console;var q=b;const et={},X={},st={};function Ut(t,n){switch(n){case"Array":return t.length===0||t.every(i=>Et(i)==="@csl/object")?"@csl/list+object":"@else/list+object";case"SimpleObject":case"ComplexObject":return"@csl/object";default:return"@invalid"}}function Ft(t=[],n){for(const i of t)if(et[i].predicate(n))return Ft(et[i].extensions,n)||i}function Et(t){const n=w(t);return n==="Array"&&t.length===0?Ut(t,n):Ft(X[n],t)||Ut(t,n)}function Rt(t,{dataType:n,predicate:i,extends:s}){let h=[];t in st&&(h=st[t],delete st[t],q.debug("[core]",`Subclasses "${h}" finally registered to parent type "${t}"`));const B={predicate:i,extensions:h};if(et[t]=B,s){const L=et[s];L?L.extensions.push(t):(st[s]||(st[s]=[]),st[s].push(t),q.debug("[core]",`Subclass "${t}" is waiting on parent type "${s}"`))}else(X[n]||(X[n]=[])).push(t)}function Lt(t){return Object.prototype.hasOwnProperty.call(et,t)}function mt(t){delete et[t],[...Object.keys(X).map(i=>X[i]),...Object.keys(et).map(i=>et[i].extensions).filter(i=>i.length>0)].forEach(i=>{const s=i.indexOf(t);s>-1&&i.splice(s,1)})}function at(){return Object.keys(et)}function jt(){const t=n=>({name:n,children:et[n].extensions.map(t)});return{name:"Type tree",children:Object.keys(X).map(n=>({name:n,children:X[n].map(t)}))}}const $t=/^(?:@(.+?))(?:\/(?:(.+?)\+)?(?:(.+)))?$/;function u(t,n,i){return n=e(n),n in t?Object.defineProperty(t,n,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[n]=i,t}function e(t){var n=r(t,"string");return typeof n=="symbol"?n:n+""}function r(t,n){if(typeof t!="object"||!t)return t;var i=t[Symbol.toPrimitive];if(i!==void 0){var s=i.call(t,n||"default");if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(t)}class o{constructor(n){u(this,"validDataTypes",["String","Array","SimpleObject","ComplexObject","Primitive"]),this.data=n}validateDataType(){const n=this.data.dataType;if(n&&!this.validDataTypes.includes(n))throw new RangeError(`dataType was ${n}; expected one of ${this.validDataTypes}`)}validateParseType(){const n=this.data.predicate;if(n&&!(n instanceof RegExp||typeof n=="function"))throw new TypeError(`predicate was ${typeof n}; expected RegExp or function`)}validateTokenList(){const n=this.data.tokenList;if(n&&typeof n!="object")throw new TypeError(`tokenList was ${typeof n}; expected object or RegExp`)}validatePropertyConstraint(){const n=this.data.propertyConstraint;if(n&&typeof n!="object")throw new TypeError(`propertyConstraint was ${typeof n}; expected array or object`)}validateElementConstraint(){const n=this.data.elementConstraint;if(n&&typeof n!="string")throw new TypeError(`elementConstraint was ${typeof n}; expected string`)}validateExtends(){const n=this.data.extends;if(n&&typeof n!="string")throw new TypeError(`extends was ${typeof n}; expected string`)}validate(){if(this.data===null||typeof this.data!="object")throw new TypeError(`typeParser was ${typeof this.data}; expected object`);this.validateDataType(),this.validateParseType(),this.validateTokenList(),this.validatePropertyConstraint(),this.validateElementConstraint(),this.validateExtends()}parseTokenList(){let n=this.data.tokenList;if(n)n instanceof RegExp&&(n={token:n});else return[];const{token:i,split:s=/\s+/,trim:h=!0,every:B=!0}=n,L=Y=>h?Y.trim():Y,ct=B?"every":"some";return[Y=>L(Y).split(s)[ct](rt=>i.test(rt))]}parsePropertyConstraint(){return[].concat(this.data.propertyConstraint||[]).map(({props:i,match:s,value:h})=>{switch(i=[].concat(i),s){case"any":case"some":return B=>i.some(L=>L in B&&(!h||h(B[L])));case"none":return B=>!i.some(L=>L in B&&(!h||h(B[L])));case"every":default:return B=>i.every(L=>L in B&&(!h||h(B[L])))}})}parseElementConstraint(){const n=this.data.elementConstraint;return n?[i=>i.every(s=>Et(s)===n)]:[]}parsePredicate(){return this.data.predicate instanceof RegExp?[this.data.predicate.test.bind(this.data.predicate)]:this.data.predicate?[this.data.predicate]:[]}getCombinedPredicate(){const n=[...this.parsePredicate(),...this.parseTokenList(),...this.parsePropertyConstraint(),...this.parseElementConstraint()];return n.length===0?()=>!0:n.length===1?n[0]:i=>n.every(s=>s(i))}getDataType(){return this.data.dataType?this.data.dataType:this.data.predicate instanceof RegExp||this.data.tokenList?"String":this.data.elementConstraint?"Array":"Primitive"}get dataType(){return this.getDataType()}get predicate(){return this.getCombinedPredicate()}get extends(){return this.data.extends}}class a{constructor(n,{async:i}={}){this.parser=n,this.async=i}validate(){const n=this.parser;if(typeof n!="function")throw new TypeError(`parser was ${typeof n}; expected function`)}}class y{constructor(n,i={}){this.format=n,i.parseType&&(this.typeParser=new o(i.parseType)),i.parse&&(this.dataParser=new a(i.parse,{async:!1})),i.parseAsync&&(this.asyncDataParser=new a(i.parseAsync,{async:!0}))}validateFormat(){const n=this.format;if(!$t.test(n))throw new TypeError(`format name was "${n}"; didn't match expected pattern`)}validate(){this.validateFormat(),this.typeParser&&this.typeParser.validate(),this.dataParser&&this.dataParser.validate(),this.asyncDataParser&&this.asyncDataParser.validate()}}var E=A("./node_modules/@citation-js/name/lib/index.js");function R(t,n){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);n&&(s=s.filter(function(h){return Object.getOwnPropertyDescriptor(t,h).enumerable})),i.push.apply(i,s)}return i}function V(t){for(var n=1;nse(s,n)).filter(Boolean);return i.length?i:void 0}}function Gt(t,n){return t.every(i=>typeof i=="number")?t:!n||t.some(i=>isNaN(parseInt(i)))?void 0:t.map(i=>parseInt(i))}function Ue(t,n){const i="date-parts";if(!(typeof t!="object"||t===null)){if(t[i]instanceof Array&&t[i].every(s=>s instanceof Array)){const s=t[i].map(h=>Gt(h,n)).filter(Boolean);return s.length?V(V({},t),{},{"date-parts":s}):void 0}else if(t instanceof Array&&t.every(s=>s[i]instanceof Array)){const s=t.map(h=>Gt(h[i],n)).filter(Boolean);return s.length?{"date-parts":s}:void 0}else if(t[i]instanceof Array){const s=Gt(t[i],n);return s&&{"date-parts":[s]}}else if("literal"in t||"raw"in t)return t}}function ae(t,n){if(t=_t("language",t,n),Jt[t]===!0)return t;if(n){if(t in Jt)return Jt[t];if(t.toLowerCase()!==t)return ae(t.toLowerCase(),n)}}function _t(t,n,i){const s=[].concat(oe[t]);switch(oe[t]){case vt:return se(n,i);case J:return Ie(n,i);case ht:return Ue(n,i);case ie:return ae(n,i)}if(i){if(typeof n=="string"&&s.includes("number")&&!s.includes("string")&&!isNaN(+n))return parseFloat(n);if(typeof n=="number"&&s.includes("string")&&!s.includes("number"))return n.toString();if(Array.isArray(n)&&n.length)return _t(t,n[0],i)}if(s.includes(typeof n))return n}function ce(t,n=!0){return t.map(function(i){const s={};for(const h in i){const B=_t(h,i[h],n);B!==void 0&&(s[h]=B)}return s})}function fe(t,n){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);n&&(s=s.filter(function(h){return Object.getOwnPropertyDescriptor(t,h).enumerable})),i.push.apply(i,s)}return i}function le(t){for(var n=1;nMt(s,n));else{const s={};for(const h in t)s[h]=Mt(t[h],n);i=s}return n.delete(t),i}var Pt=Mt,Ne=A("./node_modules/sync-fetch/browser.js"),he=A.n(Ne),Me=A("./node_modules/fetch-ponyfill/build/fetch-browser.js"),ke=A.n(Me),pe={rE:"0.7.11"};const{fetch:He,Headers:Ve}=ke()(),de=typeof location<"u"&&typeof document<"u";let zt=de?"":`Citation.js/${pe.rE} Node.js/${process.version}`;function ye(t){const n={},i=t instanceof Ve||t instanceof he().Headers?Array.from(t):Object.entries(t);for(const[s,h]of i)n[s.toLowerCase()]=h.toString();return n}function Ee(t={}){const n={headers:{accept:"*/*"},method:"GET",checkContentType:t.checkContentType};if(zt&&!de&&(n.headers["user-agent"]=zt),t.body){n.method="POST";const i=typeof t.body!="string";n.body=i?JSON.stringify(t.body):t.body,n.headers["content-type"]=i?"application/json":"text/plain"}return t.headers&&Object.assign(n.headers,ye(t.headers)),n}function Je(t,n){if(!t.accept||t.accept==="*/*"||!n["content-type"])return!0;const[i,s]=n["content-type"].split(";")[0].trim().split("/");return t.accept.split(",").map(h=>h.split(";")[0].trim().split("/")).some(([h,B])=>(h===i||h==="*")&&(B===s||B==="*"))}function Ae(t,n){const{status:i,headers:s}=t;let h;if(i>=400?h=new Error(`Server responded with status code ${i}`):n.checkContentType===!0&&!Je(n.headers,ye(s))&&(h=new Error(`Server responded with content-type ${s.get("content-type")}`)),h)throw h.status=i,h.headers=s,h.body=t.body,h;return t}function Ge(t,n){const i=Ee(n);return q.http("[core]",i.method,t,i),Ae(he()(t,i),i).text()}async function _e(t,n){const i=Ee(n);return q.http("[core]",i.method,t,i),He(t,i).then(s=>Ae(s,i)).then(s=>s.text())}function We(t){zt=t}var Yr=null;function ze(t,n){let i;for(;i===void 0||t.includes(i);)i=`${n}${Math.random().toString().slice(2)}`;return i}var Xt=ze;class dt{constructor(n){this.stack=n,this.index=0,this.current=this.stack[this.index]}static getPatternText(n){return`"${n instanceof RegExp?n.source:n}"`}static getMatchCallback(n){if(Array.isArray(n)){const i=n.map(dt.getMatchCallback);return s=>i.some(h=>h(s))}else return n instanceof Function?n:n instanceof RegExp?i=>n.test(i):i=>n===i}tokensLeft(){return this.stack.length-this.index}matches(n){return dt.getMatchCallback(n)(this.current,this.index,this.stack)}matchesSequence(n){const i=this.stack.slice(this.index,this.index+n.length).join("");return typeof n=="string"?i===n:n.every((s,h)=>dt.getMatchCallback(s)(i[h]))}consumeToken(n=/^[\s\S]$/,{inverse:i=!1,spaced:s=!0}={}){s&&this.consumeWhitespace();const h=this.current;if(dt.getMatchCallback(n)(h,this.index,this.stack))this.current=this.stack[++this.index];else throw new SyntaxError(`Unexpected token at index ${this.index}: Expected ${dt.getPatternText(n)}, got "${h}"`);return s&&this.consumeWhitespace(),h}consumeWhitespace(n=/^\s$/,{optional:i=!0}={}){return this.consume(n,{min:+!i})}consumeN(n){if(this.tokensLeft()s)throw new SyntaxError(`Too many ${dt.getPatternText(n)}`);return B&&(Y=Y.map(B)),L&&(Y=Y.filter(L)),Y.join("")}}var Xe=dt;class Ke{constructor(n={}){this.data=n}set(n,i){return this.data[n]=i,this}add(...n){return this.set(...n)}delete(n){return delete this.data[n],this}remove(...n){return this.delete(...n)}get(n){return this.data[n]}has(n){return Object.prototype.hasOwnProperty.call(this.data,n)}list(){return Object.keys(this.data)}}var Kt=Ke;class Ye{constructor(n,i){this.rules=n,this.defaultState=i,this.mainRule=Object.keys(n)[0],this.log=[]}parse(n,i){return this.lexer=n,this.token=this.lexer.next(),this.state=Mt(this.defaultState),this.log=[],this.consumeRule(i||this.mainRule)}matchEndOfFile(){return!this.token}matchToken(n){return this.token&&n===this.token.type}consumeToken(n,i){const s=this.token;if(!n||s&&s.type===n)return this.token=this.lexer.next(),s;if(i)return;{const h=s?`"${s.type}"`:"EOF",B=new SyntaxError(this.lexer.formatError(s,`expected "${n}", got ${h}`));throw B.message+=` (${this.log.join("->")})`,B}}consumeRule(n){this.log.push(n);const i=this.rules[n].call(this);return this.log.pop(),i}}function Qe(t){return function(i){return typeof t=="boolean"?t:Object.keys(t).every(s=>{const h=t[s];return h===!0?s in i:h===!1?!(s in i):typeof h=="function"?h(i[s]):Array.isArray(h)?h.includes(i[s]):i[s]===h})}}function Ze(t,n){let i,s,h,B;if(typeof t=="string")i=s=t;else if(t)i=n?t.target:t.source,s=n?t.source:t.target,t.convert&&(h=n?t.convert.toSource:t.convert.toTarget),t.when&&(B=n?t.when.target:t.when.source,B!=null&&(B=Qe(B)));else return null;return i=[].concat(i).filter(Boolean),s=[].concat(s).filter(Boolean),{inputProp:i,outputProp:s,convert:h,condition:B}}function ge(t,n){return n=n===Dt.CONVERT_TO_SOURCE,t=t.map(i=>Ze(i,n)).filter(Boolean),function(s){const h={};for(const{inputProp:B,outputProp:L,convert:ct,condition:At}of t){if(L.length===0)continue;if(At&&!At(s))continue;if(B.length!==0&&B.every(rt=>!(rt in s)))continue;let Y=B.map(rt=>s[rt]);if(ct)try{const rt=ct.apply(s,Y);Y=L.length===1?[rt]:rt}catch(rt){throw new Error(`Failed to convert ${B} to ${L}`,{cause:rt})}L.forEach((rt,Ot)=>{const Vt=Y[Ot];Vt!==void 0&&(h[rt]=Vt)})}return h}}class Dt{constructor(n){this.convertToSource=ge(n,Dt.CONVERT_TO_SOURCE),this.convertToTarget=ge(n,Dt.CONVERT_TO_TARGET)}}Dt.CONVERT_TO_SOURCE=Symbol("convert to source"),Dt.CONVERT_TO_TARGET=Symbol("convert to target");function qe(t){return t.reduce((n,i)=>{const s=n[n.length-1];return s&&s.type===i.type?s.count=s.count+1||2:n.push(i),n},[]).map(n=>(n.count>1?n.count+"x ":"")+n.type).join(" -> ")}class me{constructor(n,i={}){this.options=Object.assign({generateGraph:!0,forceType:Et(n),maxChainLength:10,strict:!0,target:"@csl/list+object"},i),this.type=this.options.forceType,this.data=typeof n=="object"?Pt(n):n,this.graph=[{type:this.type,data:n}],this.iteration=0}iterate(){if(this.iteration!==0){const n=Ce(this.type);n&&n.outputs?this.type=n.outputs:this.type=Et(this.data),this.graph.push({type:this.type})}return this.error||this.type===this.options.target?!1:this.iteration>=this.options.maxChainLength?(this.error=new RangeError(`Max. number of parsing iterations reached (${qe(this.graph)})`),!1):(this.iteration++,!0)}end(){if(this.error){if(q.error("[core]",this.error.message),this.options.strict!==!1)throw this.error;return[]}else return this.options.target==="@csl/list+object"?Wt(this.data).map(this.options.generateGraph?n=>G(n,this.graph):j):this.data}}const Yt=(...t)=>{const n=new me(...t);for(;n.iterate();)try{n.data=kt(n.data,n.type)}catch(i){n.error=i}return n.end()},tr=t=>{const n=Et(t),i=n.match(/array|object/)?Pt(t):t;return kt(i,n)},Qt=async(...t)=>{const n=new me(...t);for(;n.iterate();)n.data=await te(n.data,n.type).catch(i=>{n.error=i});return n.end()},er=async t=>{const n=Et(t),i=n.match(/array|object/)?Pt(t):t;return te(i,n)},xt={},Bt={},Zt={"@csl/object":t=>[t],"@csl/list+object":t=>t,"@else/list+object":t=>t.map(Yt).flat(),"@invalid":()=>{throw new Error("This format is not supported or recognized")}},qt={"@else/list+object":async t=>(await Promise.all(t.map(Qt))).flat()};function kt(t,n){if(typeof xt[n]=="function")return xt[n](t);if(typeof Zt[n]=="function")return Zt[n](t);throw new TypeError(`No synchronous parser found for ${n}`)}async function te(t,n){if(typeof Bt[n]=="function")return Bt[n](t);if(typeof qt[n]=="function")return qt[n](t);if(De(n,!1))return kt(t,n);throw new TypeError(`No parser found for ${n}`)}function ee(t,{parser:n,async:i}){i?Bt[t]=n:xt[t]=n}function De(t,n){return n?Bt[t]||qt[t]:xt[t]||Zt[t]}function re(t,n){delete(n?Bt:xt)[t]}function rr(t){return Object.keys(t?Bt:xt)}const Ct={};function nr(t,n){const i=new y(t,n);i.validate();const s=Ct[t]||(Ct[t]={});i.typeParser&&(Rt(t,i.typeParser),s.type=!0),i.dataParser&&(ee(t,i.dataParser),s.data=!0),i.asyncDataParser&&(ee(t,i.asyncDataParser),s.asyncData=!0),n.outputs&&(s.outputs=n.outputs)}function Ce(t){return Ct[t]}function ur(t){const n=Ct[t];n&&(n.type&&mt(t),n.data&&re(t),n.asyncData&&re(t,!0),delete Ct[t])}function ir(t){return t in Ct}function or(){return Object.keys(Ct)}const sr=Object.assign({},g,T,S,D);function ar(t,n={},i=!1){return(n===!0||i===!0)&&this.save(),this.data.push(...Yt(t,n)),this.data.filter(s=>!Object.prototype.hasOwnProperty.call(s,"id")).forEach(s=>{s.id=Xt(this.getIds(),"temp_id_")}),this}async function cr(t,n={},i=!1){return(n===!0||i===!0)&&this.save(),this.data.push(...await Qt(t,n)),this.data.filter(s=>!Object.prototype.hasOwnProperty.call(s,"id")).forEach(s=>{s.id=Xt(this.getIds(),"temp_id_")}),this}function fr(t,n={},i=!1){return(n===!0||i===!0)&&this.save(),this.data=[],typeof n!="boolean"?this.add(t,n):this.add(t)}async function lr(t,n={},i=!1){return(n===!0||i===!0)&&this.save(),this.data=[],typeof n!="boolean"?this.addAsync(t,n):this.addAsync(t)}function hr(t){return t&&this.save(),this.data=[],this._options={},this}function we(t){if("citation-label"in t)return t["citation-label"];let n="";return t.author&&(n+=t.author[0].family||t.author[0].literal),t.issued&&t.issued["date-parts"]&&t.issued["date-parts"][0]&&(n+=t.issued["date-parts"][0][0]),t["year-suffix"]?n+=t["year-suffix"]:t.title&&(n+=t.title.replace(/<\/?.*?>/g,"").match(/^(?:(?:the|a|an)\s+)?(\S+)/i)[1]),n}var pr={label(t){return t.reduce((n,i)=>(n[i.id]=we(i),n),{})}};function be(t,n,i=n==="label"){let s=i?we(t):t[n];switch(n){case"author":case"editor":return s.map(h=>h.literal||h.family||(0,E.format)(h));case"accessed":case"issued":return s["date-parts"][0];case"page":return s.split("-").map(h=>parseInt(h));case"edition":case"issue":case"volume":return s=parseInt(s),isNaN(s)?-1/0:s;default:return s||-1/0}}function dr(t,n,i,s=/^!/.test(i)){i=i.replace(/^!/,"");const h=be(t,i),B=be(n,i);return(s?-1:1)*(h>B?1:h{const s=t.slice();let h=0;for(;!h&&s.length;)h=dr(n,i,s.shift());return h}}function Er(t=[],n){return n&&this.save(),this.data.sort(typeof t=="function"?t:yr(...t,"label")),this}function Ar(t,n){if(typeof t!="string")throw new TypeError(`Invalid output format name, expected string, got ${typeof t}`);if(typeof n!="function")throw new TypeError(`Invalid formatter, expected function, got ${typeof n}`)}const wt=new Kt;function gr(t,n){Ar(t,n),wt.set(t,n)}function mr(t){wt.remove(t)}function Dr(t){return wt.has(t)}function Cr(){return wt.list()}function Fe(t,n,...i){if(!wt.has(t))throw new Error(`Output format "${t}" unavailable`);return wt.get(t)(n,...i)}function wr(){return this.data.map(t=>t.id)}function br(t,...n){return Fe(t,ce(this.data),...n)}function Fr(t={}){K(t);const n=Object.assign({},this.defaultOptions,this._options.output,t),{type:i,style:s}=n,[h,B]=s.split("-"),L=h==="citation"?"bibliography":h==="csl"?"data":h,ct=i==="string"?"text":i==="json"?"object":i;let At;switch(L){case"bibliography":{const{lang:Ot,append:Vt,prepend:Kr}=n;At={template:B,lang:Ot,format:ct,append:Vt,prepend:Kr};break}case"data":case"bibtex":case"bibtxt":case"ndjson":case"ris":At={type:ct};break;default:throw new Error(`Invalid style "${L}"`)}const Y=this.format(L,Object.assign(At,t._newOptions)),{format:rt}=n;if(rt==="real"&&ct==="html"&&typeof document<"u"&&typeof document.createElement=="function"){const Ot=document.createElement("div");return Ot.innerHTML=Y,Ot.firstChild}else return rt==="string"&&typeof Y=="object"?JSON.stringify(Y):Y}function vr(t,n,i){typeof n=="function"&&!i&&(i=n,n=void 0);const s=new this().setAsync(t,n);if(typeof i=="function"){s.then(i);return}else return s}var xr=vr;function Tt(t,n={}){return this instanceof Tt?(this._options=n,this.log=[],this.data=[],this.set(t,n),this.options(n),this):new Tt(t,n)}Object.assign(Tt.prototype,m,P,O,F,_),Tt.prototype[Symbol.iterator]=function*(){yield*this.data},Object.assign(Tt,l);var Br=Tt;function Tr(t,n){if(typeof t!="string")throw new TypeError(`Invalid dict name, expected string, got ${typeof t}`);if(typeof n!="object")throw new TypeError(`Invalid dict, expected object, got ${typeof n}`);for(const i in n){const s=n[i];if(!Array.isArray(s)||s.some(h=>typeof h!="string"))throw new TypeError(`Invalid dict entry "${i}", expected array of strings`)}}const bt=new Kt({html:{bibliographyContainer:['
',"
"],entry:['
',"
"],list:['
    ',"
"],listItem:["
  • ","
  • "]},text:{bibliographyContainer:["",` +`],entry:["",` +`],list:[` +`,""],listItem:[" ",` +`]}});function Or(t,n){Tr(t,n),bt.set(t,n)}function jr(t){bt.remove(t)}function Pr(t){return bt.has(t)}function Sr(){return bt.list()}function ve(t){if(!bt.has(t))throw new Error(`Dict "${t}" unavailable`);return bt.get(t)}const Ir={wr_start:'
    ',wr_end:"
    ",en_start:'
    ',en_end:"
    ",ul_start:'
      ',ul_end:"
    ",li_start:"
  • ",li_end:"
  • "},Ur={wr_start:"",wr_end:` +`,en_start:"",en_end:` +`,ul_start:` +`,ul_end:"",li_start:" ",li_end:` +`},St={};function Rr(t,n){St[t]=n}function Lr(t){return St[t]}function $r(t){return Object.prototype.hasOwnProperty.call(St,t)}function Nr(t){delete St[t]}function Mr(){return Object.keys(St)}const ne={input:v,output:M,dict:d,config:C},It={};function xe(t,n={}){const i=It[t]={};for(const s in n){if(s==="config"){i.config={[t]:n.config},ne.config.add(t,n.config);continue}const h=i[s]={},B=n[s];for(const L in B){const ct=B[L];h[L]=!0,ne[s].add(L,ct)}}}function kr(t){const n=It[t];for(const i in n){const s=n[i];for(const h in s)ne[i].remove(h)}delete It[t]}function Hr(t){return t in It}function Vr(){return Object.keys(It)}function Ht(){return[]}const Jr=[[/((?:\[|:|,)\s*)'((?:\\'|[^'])*?[^\\])?'(?=\s*(?:\]|}|,))/g,'$1"$2"'],[/((?:(?:"|]|}|\/[gmiuys]|\.|(?:\d|\.|-)*\d)\s*,|{)\s*)(?:"([^":\n]+?)"|'([^":\n]+?)'|([^":\n]+?))(\s*):/g,'$1"$2$3$4"$5:']];function ue(t){if(typeof t!="string")return JSON.parse(t);try{return JSON.parse(t)}catch{return q.debug("[plugin-common]","Invalid JSON, switching to experimental parser"),Jr.forEach(([i,s])=>{t=t.replace(i,s)}),JSON.parse(t)}}function Be(t){return t.val()||t.text()||t.html()}function Te(t){return t.value||t.textContent}const Gr="@else",Qr={empty:x,json:$,jquery:H,html:N},_r={"@empty/text":{parse:Ht,parseType:{dataType:"String",predicate:t=>t===""}},"@empty/whitespace+text":{parse:Ht,parseType:{dataType:"String",predicate:/^\s+$/}},"@empty":{parse:Ht,parseType:{dataType:"Primitive",predicate:t=>t==null}},"@else/json":{parse:ue,parseType:{dataType:"String",predicate:/^\s*(\{[\S\s]*\}|\[[\S\s]*\])\s*$/}},"@else/url":{parseType:{dataType:"String",predicate:/^https?:\/\/(([\w-]+\.)*[\w-]+)(:\d+)?(\/[^?/]*)*(\?[^#]*)?(#.*)?$/i}},"@else/jquery":{parse:Be,parseType:{dataType:"ComplexObject",predicate(t){return typeof jQuery<"u"&&t instanceof jQuery}}},"@else/html":{parse:Te,parseType:{dataType:"ComplexObject",predicate(t){return typeof HTMLElement<"u"&&t instanceof HTMLElement}}}};function Oe(t,n,i){return t+(nPe(h,n)):s=Object.keys(t).filter(h=>JSON.stringify(t[h])).map(h=>`"${h}": ${Pe(t[h],n)}`),s=s.map(Oe).map(h=>n.listItem.join(h)),s=n.list.join(s.join("")),i?`[${s}]`:`{${s}}`}function Pe(t,n){return typeof t=="object"&&t!==null?t.length===0?"[]":Object.keys(t).length===0?"{}":je(t,n):JSON.stringify(t)}function Se(t,n){let i=t.map(s=>je(s,n));return i=i.map(Oe).map(s=>n.entry.join(s)),i=i.join(""),n.bibliographyContainer.join(`[${i}]`)}function Zr(t){return Se(t,plugins.dict.get("html"))}var Wr={data(t,{type:n,format:i=n||"text",version:s="1.0.2"}={}){return s<"1.0.2"&&(t=Nt(t)),i==="object"?Pt(t):i==="text"?JSON.stringify(t,null,2):(q.warn("[core]","This feature (JSON output with special formatting) is unstable. See https://github.com/larsgw/citation.js/issues/144"),Se(t,ve(i)))},ndjson(t,{version:n="1.0.2"}={}){return n<"1.0.2"&&(t=Nt(t)),t.map(i=>JSON.stringify(i)).join(` +`)}},zr=Object.assign({},Wr,pr);xe(Gr,{input:_r,output:zr});const Xr=pe.rE},"./node_modules/@citation-js/name/lib/index.js":function(ft,U,A){"use strict";Object.defineProperty(U,"__esModule",{value:!0}),Object.defineProperty(U,"parse",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(U,"format",{enumerable:!0,get:function(){return P.default}});var m=g(A("./node_modules/@citation-js/name/lib/input.js")),P=g(A("./node_modules/@citation-js/name/lib/output.js"));function g(T){return T&&T.__esModule?T:{default:T}}},"./node_modules/@citation-js/name/lib/input.js":function(ft,U){"use strict";Object.defineProperty(U,"__esModule",{value:!0}),U.default=U.parse=U.types=U.scope=void 0;function A(N,I){return g(N)||P(N,I)||m()}function m(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}function P(N,I){var nt=[],tt=!0,it=!1,pt=void 0;try{for(var ot=N[Symbol.iterator](),Q;!(tt=(Q=ot.next()).done)&&(nt.push(Q.value),!(I&&nt.length===I));tt=!0);}catch(lt){it=!0,pt=lt}finally{try{!tt&&ot.return!=null&&ot.return()}finally{if(it)throw pt}}return nt}function g(N){if(Array.isArray(N))return N}const T=N=>N.replace(/$|( )|(?!^)(?=[A-Z])/g,"\\.?$1"),S=N=>`(?:${N.join("|")})\\b`,D=(N,I)=>new RegExp(`(?:^| )(${N}$)`,I),c=["mr","mrs","ms","miss","dr","herr","monsieur","hr","frau","a v m","admiraal","admiral","air cdre","air commodore","air marshal","air vice marshal","alderman","alhaji","ambassador","baron","barones","brig","brig gen","brig general","brigadier","brigadier general","brother","canon","capt","captain","cardinal","cdr","chief","cik","cmdr","coach","col","col dr","colonel","commandant","commander","commissioner","commodore","comte","comtessa","congressman","conseiller","consul","conte","contessa","corporal","councillor","count","countess","crown prince","crown princess","dame","datin","dato","datuk","datuk seri","deacon","deaconess","dean","dhr","dipl ing","doctor","dott","dott sa","dr","dr ing","dra","drs","embajador","embajadora","en","encik","eng","eur ing","exma sra","exmo sr","f o","father","first lieutient","first officer","flt lieut","flying officer","fr","frau","fraulein","fru","gen","generaal","general","governor","graaf","gravin","group captain","grp capt","h e dr","h h","h m","h r h","hajah","haji","hajim","her highness","her majesty","herr","high chief","his highness","his holiness","his majesty","hon","hr","hra","ing","ir","jonkheer","judge","justice","khun ying","kolonel","lady","lcda","lic","lieut","lieut cdr","lieut col","lieut gen","lord","m","m l","m r","madame","mademoiselle","maj gen","major","master","mevrouw","miss","mlle","mme","monsieur","monsignor","mr","mrs","ms","mstr","nti","pastor","president","prince","princess","princesse","prinses","prof","prof dr","prof sir","professor","puan","puan sri","rabbi","rear admiral","rev","rev canon","rev dr","rev mother","reverend","rva","senator","sergeant","sheikh","sheikha","sig","sig na","sig ra","sir","sister","sqn ldr","sr","sr d","sra","srta","sultan","tan sri","tan sri dato","tengku","teuku","than puying","the hon dr","the hon justice","the hon miss","the hon mr","the hon mrs","the hon ms","the hon sir","the very rev","toh puan","tun","vice admiral","viscount","viscountess","wg cdr"],v=["I","II","III","IV","V","Senior","Junior","Jr","Sr","PhD","Ph\\.D","APR","RPh","PE","MD","MA","DMD","CME","BVM","CFRE","CLU","CPA","CSC","CSJ","DC","DD","DDS","DO","DVM","EdD","Esq","JD","LLD","OD","OSB","PC","Ret","RGS","RN","RNC","SHCJ","SJ","SNJM","SSMO","USA","USAF","USAFR","USAR","USCG","USMC","USMCR","USN","USNR"],O=["Vere","Von","Van","De","Del","Della","Di","Da","Pietro","Vanden","Du","St.","St","La","Lo","Ter","O","O'","Mac","Fitz"],F=S(c.map(T)),M=S(v.map(T)),_=S(O),l=new RegExp(`^((?:${F} )*)(.*)$`,"i"),d=D(`(?:${M}, )*(?:${M})`,"i"),C=D(`${/(?:[A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178\u0179\u017B\u017D\u0181\u0182\u0184\u0186\u0187\u0189-\u018B\u018E-\u0191\u0193\u0194\u0196-\u0198\u019C\u019D\u019F\u01A0\u01A2\u01A4\u01A6\u01A7\u01A9\u01AC\u01AE\u01AF\u01B1-\u01B3\u01B5\u01B7\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A\u023B\u023D\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1C90-\u1CBA\u1CBD-\u1CBF\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E\u213F\u2145\u2160-\u216F\u2183\u24B6-\u24CF\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AE\uA7B0-\uA7B4\uA7B6\uA7B8\uFF21-\uFF3A]|\uD801[\uDC00-\uDC27\uDCB0-\uDCD3]|\uD803[\uDC80-\uDCB2]|\uD806[\uDCA0-\uDCBF]|\uD81B[\uDE40-\uDE5F]|\uD835[\uDC00-\uDC19\uDC34-\uDC4D\uDC68-\uDC81\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB5\uDCD0-\uDCE9\uDD04\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD38\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD6C-\uDD85\uDDA0-\uDDB9\uDDD4-\uDDED\uDE08-\uDE21\uDE3C-\uDE55\uDE70-\uDE89\uDEA8-\uDEC0\uDEE2-\uDEFA\uDF1C-\uDF34\uDF56-\uDF6E\uDF90-\uDFA8\uDFCA]|\uD83A[\uDD00-\uDD21]|\uD83C[\uDD30-\uDD49\uDD50-\uDD69\uDD70-\uDD89])/.source}.*`),k=D(`(?:${/(?:[a-z\xAA\xB5\xBA\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02B8\u02C0\u02C1\u02E0-\u02E4\u0345\u0371\u0373\u0377\u037A-\u037D\u0390\u03AC-\u03CE\u03D0\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0560-\u0588\u10D0-\u10FA\u10FD-\u10FF\u13F8-\u13FD\u1C80-\u1C88\u1D00-\u1DBF\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6\u1FC7\u1FD0-\u1FD3\u1FD6\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6\u1FF7\u2071\u207F\u2090-\u209C\u210A\u210E\u210F\u2113\u212F\u2134\u2139\u213C\u213D\u2146-\u2149\u214E\u2170-\u217F\u2184\u24D0-\u24E9\u2C30-\u2C5E\u2C61\u2C65\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73\u2C74\u2C76-\u2C7D\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B-\uA69D\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7AF\uA7B5\uA7B7\uA7B9\uA7F8-\uA7FA\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A]|\uD801[\uDC28-\uDC4F\uDCD8-\uDCFB]|\uD803[\uDCC0-\uDCF2]|\uD806[\uDCC0-\uDCDF]|\uD81B[\uDE60-\uDE7F]|\uD835[\uDC1A-\uDC33\uDC4E-\uDC54\uDC56-\uDC67\uDC82-\uDC9B\uDCB6-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDCCF\uDCEA-\uDD03\uDD1E-\uDD37\uDD52-\uDD6B\uDD86-\uDD9F\uDDBA-\uDDD3\uDDEE-\uDE07\uDE22-\uDE3B\uDE56-\uDE6F\uDE8A-\uDEA5\uDEC2-\uDEDA\uDEDC-\uDEE1\uDEFC-\uDF14\uDF16-\uDF1B\uDF36-\uDF4E\uDF50-\uDF55\uDF70-\uDF88\uDF8A-\uDF8F\uDFAA-\uDFC2\uDFC4-\uDFC9\uDFCB]|\uD83A[\uDD22-\uDD43])/.source}.*|${_}.*|\\S*)`),x=function(I=""){typeof I!="string"&&(I=I+"");let nt="",tt="",it="";if(/[^.], /.test(I)){const p=I.split(", ");it=p.shift();const w=RegExp(M).exec(p.join(", "));nt=p.splice(w&&w.index!==0?0:-1,1)[0],tt=p.join(", ")}else{const p=I.split(d,2),w=p.shift().split(k,2);nt=w[0],it=w[1],tt=p.pop()}const pt=nt.match(l),ot=A(pt,3),Q=ot[1],lt=ot[2],gt=tt,K=it.split(C,2).reverse(),yt=A(K,2),ut=yt[0],f=yt[1];if(!lt&&ut)return ut.includes(" ")?{literal:ut}:{family:ut};if(ut){const p={"dropping-particle":Q,given:lt,suffix:gt,"non-dropping-particle":f,family:ut};return Object.keys(p).forEach(w=>{p[w]||delete p[w]}),p}else return{literal:I}};U.default=U.parse=x;const $="@name";U.scope=$;const H="@name";U.types=H},"./node_modules/@citation-js/name/lib/output.js":function(ft,U){"use strict";Object.defineProperty(U,"__esModule",{value:!0}),U.default=void 0;const A=["dropping-particle","given"],m=["suffix"],P=["non-dropping-particle","family"];var T=function(D,c=!1){const v=O=>O.map(F=>D[F]||"").filter(Boolean).join(" ");if(D.literal)return D.literal;if(c){const O=v(m)?`, ${v(m)}`:"",F=v(A)?`, ${v(A)}`:"";return v(P)+O+F}else return`${v([...A,...m,...P])}`};U.default=T},"./node_modules/base64-js/index.js":function(ft,U){"use strict";U.byteLength=c,U.toByteArray=O,U.fromByteArray=_;for(var A=[],m=[],P=typeof Uint8Array<"u"?Uint8Array:Array,g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",T=0,S=g.length;T0)throw new Error("Invalid string. Length must be a multiple of 4");var C=l.indexOf("=");C===-1&&(C=d);var k=C===d?0:4-C%4;return[C,k]}function c(l){var d=D(l),C=d[0],k=d[1];return(C+k)*3/4-k}function v(l,d,C){return(d+C)*3/4-C}function O(l){var d,C=D(l),k=C[0],x=C[1],$=new P(v(l,k,x)),H=0,N=x>0?k-4:k,I;for(I=0;I>16&255,$[H++]=d>>8&255,$[H++]=d&255;return x===2&&(d=m[l.charCodeAt(I)]<<2|m[l.charCodeAt(I+1)]>>4,$[H++]=d&255),x===1&&(d=m[l.charCodeAt(I)]<<10|m[l.charCodeAt(I+1)]<<4|m[l.charCodeAt(I+2)]>>2,$[H++]=d>>8&255,$[H++]=d&255),$}function F(l){return A[l>>18&63]+A[l>>12&63]+A[l>>6&63]+A[l&63]}function M(l,d,C){for(var k,x=[],$=d;$N?N:H+$));return k===1?(d=l[C-1],x.push(A[d>>2]+A[d<<4&63]+"==")):k===2&&(d=(l[C-2]<<8)+l[C-1],x.push(A[d>>10]+A[d>>4&63]+A[d<<2&63]+"=")),x.join("")}},"./node_modules/buffer/index.js":function(ft,U,A){"use strict";var m=A("./node_modules/base64-js/index.js"),P=A("./node_modules/ieee754/index.js"),g=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;U.Buffer=c,U.SlowBuffer=$,U.INSPECT_MAX_BYTES=50;var T=2147483647;U.kMaxLength=T,c.TYPED_ARRAY_SUPPORT=S(),!c.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function S(){try{var u=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(u,e),u.foo()===42}catch{return!1}}Object.defineProperty(c.prototype,"parent",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.buffer}}),Object.defineProperty(c.prototype,"offset",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.byteOffset}});function D(u){if(u>T)throw new RangeError('The value "'+u+'" is invalid for option "size"');var e=new Uint8Array(u);return Object.setPrototypeOf(e,c.prototype),e}function c(u,e,r){if(typeof u=="number"){if(typeof e=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return M(u)}return v(u,e,r)}c.poolSize=8192;function v(u,e,r){if(typeof u=="string")return _(u,e);if(ArrayBuffer.isView(u))return d(u);if(u==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof u);if(at(u,ArrayBuffer)||u&&at(u.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(at(u,SharedArrayBuffer)||u&&at(u.buffer,SharedArrayBuffer)))return C(u,e,r);if(typeof u=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var o=u.valueOf&&u.valueOf();if(o!=null&&o!==u)return c.from(o,e,r);var a=k(u);if(a)return a;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof u[Symbol.toPrimitive]=="function")return c.from(u[Symbol.toPrimitive]("string"),e,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof u)}c.from=function(u,e,r){return v(u,e,r)},Object.setPrototypeOf(c.prototype,Uint8Array.prototype),Object.setPrototypeOf(c,Uint8Array);function O(u){if(typeof u!="number")throw new TypeError('"size" argument must be of type number');if(u<0)throw new RangeError('The value "'+u+'" is invalid for option "size"')}function F(u,e,r){return O(u),u<=0?D(u):e!==void 0?typeof r=="string"?D(u).fill(e,r):D(u).fill(e):D(u)}c.alloc=function(u,e,r){return F(u,e,r)};function M(u){return O(u),D(u<0?0:x(u)|0)}c.allocUnsafe=function(u){return M(u)},c.allocUnsafeSlow=function(u){return M(u)};function _(u,e){if((typeof e!="string"||e==="")&&(e="utf8"),!c.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var r=H(u,e)|0,o=D(r),a=o.write(u,e);return a!==r&&(o=o.slice(0,a)),o}function l(u){for(var e=u.length<0?0:x(u.length)|0,r=D(e),o=0;o=T)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+T.toString(16)+" bytes");return u|0}function $(u){return+u!=u&&(u=0),c.alloc(+u)}c.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==c.prototype},c.compare=function(e,r){if(at(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),at(r,Uint8Array)&&(r=c.from(r,r.offset,r.byteLength)),!c.isBuffer(e)||!c.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===r)return 0;for(var o=e.length,a=r.length,y=0,E=Math.min(o,a);ya.length?c.from(E).copy(a,y):Uint8Array.prototype.set.call(a,E,y);else if(c.isBuffer(E))E.copy(a,y);else throw new TypeError('"list" argument must be an Array of Buffers');y+=E.length}return a};function H(u,e){if(c.isBuffer(u))return u.length;if(ArrayBuffer.isView(u)||at(u,ArrayBuffer))return u.byteLength;if(typeof u!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof u);var r=u.length,o=arguments.length>2&&arguments[2]===!0;if(!o&&r===0)return 0;for(var a=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return Ft(u).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return Lt(u).length;default:if(a)return o?-1:Ft(u).length;e=(""+e).toLowerCase(),a=!0}}c.byteLength=H;function N(u,e,r){var o=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,e>>>=0,r<=e))return"";for(u||(u="utf8");;)switch(u){case"hex":return w(this,e,r);case"utf8":case"utf-8":return K(this,e,r);case"ascii":return f(this,e,r);case"latin1":case"binary":return p(this,e,r);case"base64":return gt(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return G(this,e,r);default:if(o)throw new TypeError("Unknown encoding: "+u);u=(u+"").toLowerCase(),o=!0}}c.prototype._isBuffer=!0;function I(u,e,r){var o=u[e];u[e]=u[r],u[r]=o}c.prototype.swap16=function(){var e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var r=0;rr&&(e+=" ... "),""},g&&(c.prototype[g]=c.prototype.inspect),c.prototype.compare=function(e,r,o,a,y){if(at(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(r===void 0&&(r=0),o===void 0&&(o=e?e.length:0),a===void 0&&(a=0),y===void 0&&(y=this.length),r<0||o>e.length||a<0||y>this.length)throw new RangeError("out of range index");if(a>=y&&r>=o)return 0;if(a>=y)return-1;if(r>=o)return 1;if(r>>>=0,o>>>=0,a>>>=0,y>>>=0,this===e)return 0;for(var E=y-a,R=o-r,V=Math.min(E,R),W=this.slice(a,y),Z=e.slice(r,o),z=0;z2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,jt(r)&&(r=a?0:u.length-1),r<0&&(r=u.length+r),r>=u.length){if(a)return-1;r=u.length-1}else if(r<0)if(a)r=0;else return-1;if(typeof e=="string"&&(e=c.from(e,o)),c.isBuffer(e))return e.length===0?-1:tt(u,e,r,o,a);if(typeof e=="number")return e=e&255,typeof Uint8Array.prototype.indexOf=="function"?a?Uint8Array.prototype.indexOf.call(u,e,r):Uint8Array.prototype.lastIndexOf.call(u,e,r):tt(u,[e],r,o,a);throw new TypeError("val must be string, number or Buffer")}function tt(u,e,r,o,a){var y=1,E=u.length,R=e.length;if(o!==void 0&&(o=String(o).toLowerCase(),o==="ucs2"||o==="ucs-2"||o==="utf16le"||o==="utf-16le")){if(u.length<2||e.length<2)return-1;y=2,E/=2,R/=2,r/=2}function V(J,ht){return y===1?J[ht]:J.readUInt16BE(ht*y)}var W;if(a){var Z=-1;for(W=r;WE&&(r=E-R),W=r;W>=0;W--){for(var z=!0,vt=0;vta&&(o=a)):o=a;var y=e.length;o>y/2&&(o=y/2);for(var E=0;E>>0,isFinite(o)?(o=o>>>0,a===void 0&&(a="utf8")):(a=o,o=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var y=this.length-r;if((o===void 0||o>y)&&(o=y),e.length>0&&(o<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");a||(a="utf8");for(var E=!1;;)switch(a){case"hex":return it(this,e,r,o);case"utf8":case"utf-8":return pt(this,e,r,o);case"ascii":case"latin1":case"binary":return ot(this,e,r,o);case"base64":return Q(this,e,r,o);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return lt(this,e,r,o);default:if(E)throw new TypeError("Unknown encoding: "+a);a=(""+a).toLowerCase(),E=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function gt(u,e,r){return e===0&&r===u.length?m.fromByteArray(u):m.fromByteArray(u.slice(e,r))}function K(u,e,r){r=Math.min(u.length,r);for(var o=[],a=e;a239?4:y>223?3:y>191?2:1;if(a+R<=r){var V,W,Z,z;switch(R){case 1:y<128&&(E=y);break;case 2:V=u[a+1],(V&192)===128&&(z=(y&31)<<6|V&63,z>127&&(E=z));break;case 3:V=u[a+1],W=u[a+2],(V&192)===128&&(W&192)===128&&(z=(y&15)<<12|(V&63)<<6|W&63,z>2047&&(z<55296||z>57343)&&(E=z));break;case 4:V=u[a+1],W=u[a+2],Z=u[a+3],(V&192)===128&&(W&192)===128&&(Z&192)===128&&(z=(y&15)<<18|(V&63)<<12|(W&63)<<6|Z&63,z>65535&&z<1114112&&(E=z))}}E===null?(E=65533,R=1):E>65535&&(E-=65536,o.push(E>>>10&1023|55296),E=56320|E&1023),o.push(E),a+=R}return ut(o)}var yt=4096;function ut(u){var e=u.length;if(e<=yt)return String.fromCharCode.apply(String,u);for(var r="",o=0;oo)&&(r=o);for(var a="",y=e;yo&&(e=o),r<0?(r+=o,r<0&&(r=0)):r>o&&(r=o),rr)throw new RangeError("Trying to access beyond buffer length")}c.prototype.readUintLE=c.prototype.readUIntLE=function(e,r,o){e=e>>>0,r=r>>>0,o||j(e,r,this.length);for(var a=this[e],y=1,E=0;++E>>0,r=r>>>0,o||j(e,r,this.length);for(var a=this[e+--r],y=1;r>0&&(y*=256);)a+=this[e+--r]*y;return a},c.prototype.readUint8=c.prototype.readUInt8=function(e,r){return e=e>>>0,r||j(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,r){return e=e>>>0,r||j(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,r){return e=e>>>0,r||j(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,r){return e=e>>>0,r||j(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,r){return e=e>>>0,r||j(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,r,o){e=e>>>0,r=r>>>0,o||j(e,r,this.length);for(var a=this[e],y=1,E=0;++E=y&&(a-=Math.pow(2,8*r)),a},c.prototype.readIntBE=function(e,r,o){e=e>>>0,r=r>>>0,o||j(e,r,this.length);for(var a=r,y=1,E=this[e+--a];a>0&&(y*=256);)E+=this[e+--a]*y;return y*=128,E>=y&&(E-=Math.pow(2,8*r)),E},c.prototype.readInt8=function(e,r){return e=e>>>0,r||j(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]},c.prototype.readInt16LE=function(e,r){e=e>>>0,r||j(e,2,this.length);var o=this[e]|this[e+1]<<8;return o&32768?o|4294901760:o},c.prototype.readInt16BE=function(e,r){e=e>>>0,r||j(e,2,this.length);var o=this[e+1]|this[e]<<8;return o&32768?o|4294901760:o},c.prototype.readInt32LE=function(e,r){return e=e>>>0,r||j(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,r){return e=e>>>0,r||j(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,r){return e=e>>>0,r||j(e,4,this.length),P.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,r){return e=e>>>0,r||j(e,4,this.length),P.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,r){return e=e>>>0,r||j(e,8,this.length),P.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,r){return e=e>>>0,r||j(e,8,this.length),P.read(this,e,!1,52,8)};function b(u,e,r,o,a,y){if(!c.isBuffer(u))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>a||eu.length)throw new RangeError("Index out of range")}c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,r,o,a){if(e=+e,r=r>>>0,o=o>>>0,!a){var y=Math.pow(2,8*o)-1;b(this,e,r,o,y,0)}var E=1,R=0;for(this[r]=e&255;++R>>0,o=o>>>0,!a){var y=Math.pow(2,8*o)-1;b(this,e,r,o,y,0)}var E=o-1,R=1;for(this[r+E]=e&255;--E>=0&&(R*=256);)this[r+E]=e/R&255;return r+o},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,r,o){return e=+e,r=r>>>0,o||b(this,e,r,1,255,0),this[r]=e&255,r+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,r,o){return e=+e,r=r>>>0,o||b(this,e,r,2,65535,0),this[r]=e&255,this[r+1]=e>>>8,r+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,r,o){return e=+e,r=r>>>0,o||b(this,e,r,2,65535,0),this[r]=e>>>8,this[r+1]=e&255,r+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,r,o){return e=+e,r=r>>>0,o||b(this,e,r,4,4294967295,0),this[r+3]=e>>>24,this[r+2]=e>>>16,this[r+1]=e>>>8,this[r]=e&255,r+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,r,o){return e=+e,r=r>>>0,o||b(this,e,r,4,4294967295,0),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4},c.prototype.writeIntLE=function(e,r,o,a){if(e=+e,r=r>>>0,!a){var y=Math.pow(2,8*o-1);b(this,e,r,o,y-1,-y)}var E=0,R=1,V=0;for(this[r]=e&255;++E>0)-V&255;return r+o},c.prototype.writeIntBE=function(e,r,o,a){if(e=+e,r=r>>>0,!a){var y=Math.pow(2,8*o-1);b(this,e,r,o,y-1,-y)}var E=o-1,R=1,V=0;for(this[r+E]=e&255;--E>=0&&(R*=256);)e<0&&V===0&&this[r+E+1]!==0&&(V=1),this[r+E]=(e/R>>0)-V&255;return r+o},c.prototype.writeInt8=function(e,r,o){return e=+e,r=r>>>0,o||b(this,e,r,1,127,-128),e<0&&(e=255+e+1),this[r]=e&255,r+1},c.prototype.writeInt16LE=function(e,r,o){return e=+e,r=r>>>0,o||b(this,e,r,2,32767,-32768),this[r]=e&255,this[r+1]=e>>>8,r+2},c.prototype.writeInt16BE=function(e,r,o){return e=+e,r=r>>>0,o||b(this,e,r,2,32767,-32768),this[r]=e>>>8,this[r+1]=e&255,r+2},c.prototype.writeInt32LE=function(e,r,o){return e=+e,r=r>>>0,o||b(this,e,r,4,2147483647,-2147483648),this[r]=e&255,this[r+1]=e>>>8,this[r+2]=e>>>16,this[r+3]=e>>>24,r+4},c.prototype.writeInt32BE=function(e,r,o){return e=+e,r=r>>>0,o||b(this,e,r,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[r]=e>>>24,this[r+1]=e>>>16,this[r+2]=e>>>8,this[r+3]=e&255,r+4};function q(u,e,r,o,a,y){if(r+o>u.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function et(u,e,r,o,a){return e=+e,r=r>>>0,a||q(u,e,r,4,34028234663852886e22,-34028234663852886e22),P.write(u,e,r,o,23,4),r+4}c.prototype.writeFloatLE=function(e,r,o){return et(this,e,r,!0,o)},c.prototype.writeFloatBE=function(e,r,o){return et(this,e,r,!1,o)};function X(u,e,r,o,a){return e=+e,r=r>>>0,a||q(u,e,r,8,17976931348623157e292,-17976931348623157e292),P.write(u,e,r,o,52,8),r+8}c.prototype.writeDoubleLE=function(e,r,o){return X(this,e,r,!0,o)},c.prototype.writeDoubleBE=function(e,r,o){return X(this,e,r,!1,o)},c.prototype.copy=function(e,r,o,a){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(o||(o=0),!a&&a!==0&&(a=this.length),r>=e.length&&(r=e.length),r||(r=0),a>0&&a=this.length)throw new RangeError("Index out of range");if(a<0)throw new RangeError("sourceEnd out of bounds");a>this.length&&(a=this.length),e.length-r>>0,o=o===void 0?this.length:o>>>0,e||(e=0);var E;if(typeof e=="number")for(E=r;E55295&&r<57344){if(!a){if(r>56319){(e-=3)>-1&&y.push(239,191,189);continue}else if(E+1===o){(e-=3)>-1&&y.push(239,191,189);continue}a=r;continue}if(r<56320){(e-=3)>-1&&y.push(239,191,189),a=r;continue}r=(a-55296<<10|r-56320)+65536}else a&&(e-=3)>-1&&y.push(239,191,189);if(a=null,r<128){if((e-=1)<0)break;y.push(r)}else if(r<2048){if((e-=2)<0)break;y.push(r>>6|192,r&63|128)}else if(r<65536){if((e-=3)<0)break;y.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((e-=4)<0)break;y.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return y}function Et(u){for(var e=[],r=0;r>8,a=r%256,y.push(a),y.push(o);return y}function Lt(u){return m.toByteArray(Ut(u))}function mt(u,e,r,o){for(var a=0;a=e.length||a>=u.length);++a)e[a+r]=u[a];return a}function at(u,e){return u instanceof e||u!=null&&u.constructor!=null&&u.constructor.name!=null&&u.constructor.name===e.name}function jt(u){return u!==u}var $t=function(){for(var u="0123456789abcdef",e=new Array(256),r=0;r<16;++r)for(var o=r*16,a=0;a<16;++a)e[o+a]=u[r]+u[a];return e}()},"./node_modules/fetch-ponyfill/build/fetch-browser.js":function(ft,U,A){var m;(function(P){"use strict";function g(T){var S=T&&T.Promise||P.Promise,D=T&&T.XMLHttpRequest||P.XMLHttpRequest;return function(){var c=Object.create(P,{fetch:{value:void 0,writable:!0}});return function(v,O){O(U)}(this,function(v){"use strict";var O=typeof c<"u"&&c||typeof self<"u"&&self||typeof O<"u"&&O,F={searchParams:"URLSearchParams"in O,iterable:"Symbol"in O&&"iterator"in Symbol,blob:"FileReader"in O&&"Blob"in O&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in O,arrayBuffer:"ArrayBuffer"in O};function M(f){return f&&DataView.prototype.isPrototypeOf(f)}if(F.arrayBuffer)var _=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],l=ArrayBuffer.isView||function(f){return f&&_.indexOf(Object.prototype.toString.call(f))>-1};function d(f){if(typeof f!="string"&&(f=String(f)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(f)||f==="")throw new TypeError("Invalid character in header field name");return f.toLowerCase()}function C(f){return typeof f!="string"&&(f=String(f)),f}function k(f){var p={next:function(){var w=f.shift();return{done:w===void 0,value:w}}};return F.iterable&&(p[Symbol.iterator]=function(){return p}),p}function x(f){this.map={},f instanceof x?f.forEach(function(p,w){this.append(w,p)},this):Array.isArray(f)?f.forEach(function(p){this.append(p[0],p[1])},this):f&&Object.getOwnPropertyNames(f).forEach(function(p){this.append(p,f[p])},this)}x.prototype.append=function(f,p){f=d(f),p=C(p);var w=this.map[f];this.map[f]=w?w+", "+p:p},x.prototype.delete=function(f){delete this.map[d(f)]},x.prototype.get=function(f){return f=d(f),this.has(f)?this.map[f]:null},x.prototype.has=function(f){return this.map.hasOwnProperty(d(f))},x.prototype.set=function(f,p){this.map[d(f)]=C(p)},x.prototype.forEach=function(f,p){for(var w in this.map)this.map.hasOwnProperty(w)&&f.call(p,this.map[w],w,this)},x.prototype.keys=function(){var f=[];return this.forEach(function(p,w){f.push(w)}),k(f)},x.prototype.values=function(){var f=[];return this.forEach(function(p){f.push(p)}),k(f)},x.prototype.entries=function(){var f=[];return this.forEach(function(p,w){f.push([w,p])}),k(f)},F.iterable&&(x.prototype[Symbol.iterator]=x.prototype.entries);function $(f){if(f.bodyUsed)return S.reject(new TypeError("Already read"));f.bodyUsed=!0}function H(f){return new S(function(p,w){f.onload=function(){p(f.result)},f.onerror=function(){w(f.error)}})}function N(f){var p=new FileReader,w=H(p);return p.readAsArrayBuffer(f),w}function I(f){var p=new FileReader,w=H(p);return p.readAsText(f),w}function nt(f){for(var p=new Uint8Array(f),w=new Array(p.length),G=0;G-1?p:f}function Q(f,p){if(!(this instanceof Q))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');p=p||{};var w=p.body;if(f instanceof Q){if(f.bodyUsed)throw new TypeError("Already read");this.url=f.url,this.credentials=f.credentials,p.headers||(this.headers=new x(f.headers)),this.method=f.method,this.mode=f.mode,this.signal=f.signal,!w&&f._bodyInit!=null&&(w=f._bodyInit,f.bodyUsed=!0)}else this.url=String(f);if(this.credentials=p.credentials||this.credentials||"same-origin",(p.headers||!this.headers)&&(this.headers=new x(p.headers)),this.method=ot(p.method||this.method||"GET"),this.mode=p.mode||this.mode||null,this.signal=p.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&w)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(w),(this.method==="GET"||this.method==="HEAD")&&(p.cache==="no-store"||p.cache==="no-cache")){var G=/([?&])_=[^&]*/;if(G.test(this.url))this.url=this.url.replace(G,"$1_="+new Date().getTime());else{var j=/\?/;this.url+=(j.test(this.url)?"&":"?")+"_="+new Date().getTime()}}}Q.prototype.clone=function(){return new Q(this,{body:this._bodyInit})};function lt(f){var p=new FormData;return f.trim().split("&").forEach(function(w){if(w){var G=w.split("="),j=G.shift().replace(/\+/g," "),b=G.join("=").replace(/\+/g," ");p.append(decodeURIComponent(j),decodeURIComponent(b))}}),p}function gt(f){var p=new x,w=f.replace(/\r?\n[\t ]+/g," ");return w.split("\r").map(function(G){return G.indexOf(` +`)===0?G.substr(1,G.length):G}).forEach(function(G){var j=G.split(":"),b=j.shift().trim();if(b){var q=j.join(":").trim();p.append(b,q)}}),p}it.call(Q.prototype);function K(f,p){if(!(this instanceof K))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');p||(p={}),this.type="default",this.status=p.status===void 0?200:p.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in p?p.statusText:"",this.headers=new x(p.headers),this.url=p.url||"",this._initBody(f)}it.call(K.prototype),K.prototype.clone=function(){return new K(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new x(this.headers),url:this.url})},K.error=function(){var f=new K(null,{status:0,statusText:""});return f.type="error",f};var yt=[301,302,303,307,308];K.redirect=function(f,p){if(yt.indexOf(p)===-1)throw new RangeError("Invalid status code");return new K(null,{status:p,headers:{location:f}})},v.DOMException=O.DOMException;try{new v.DOMException}catch{v.DOMException=function(p,w){this.message=p,this.name=w;var G=Error(p);this.stack=G.stack},v.DOMException.prototype=Object.create(Error.prototype),v.DOMException.prototype.constructor=v.DOMException}function ut(f,p){return new S(function(w,G){var j=new Q(f,p);if(j.signal&&j.signal.aborted)return G(new v.DOMException("Aborted","AbortError"));var b=new D;function q(){b.abort()}b.onload=function(){var X={status:b.status,statusText:b.statusText,headers:gt(b.getAllResponseHeaders()||"")};X.url="responseURL"in b?b.responseURL:X.headers.get("X-Request-URL");var st="response"in b?b.response:b.responseText;setTimeout(function(){w(new K(st,X))},0)},b.onerror=function(){setTimeout(function(){G(new TypeError("Network request failed"))},0)},b.ontimeout=function(){setTimeout(function(){G(new TypeError("Network request failed"))},0)},b.onabort=function(){setTimeout(function(){G(new v.DOMException("Aborted","AbortError"))},0)};function et(X){try{return X===""&&O.location.href?O.location.href:X}catch{return X}}b.open(j.method,et(j.url),!0),j.credentials==="include"?b.withCredentials=!0:j.credentials==="omit"&&(b.withCredentials=!1),"responseType"in b&&(F.blob?b.responseType="blob":F.arrayBuffer&&j.headers.get("Content-Type")&&j.headers.get("Content-Type").indexOf("application/octet-stream")!==-1&&(b.responseType="arraybuffer")),p&&typeof p.headers=="object"&&!(p.headers instanceof x)?Object.getOwnPropertyNames(p.headers).forEach(function(X){b.setRequestHeader(X,C(p.headers[X]))}):j.headers.forEach(function(X,st){b.setRequestHeader(st,X)}),j.signal&&(j.signal.addEventListener("abort",q),b.onreadystatechange=function(){b.readyState===4&&j.signal.removeEventListener("abort",q)}),b.send(typeof j._bodyInit>"u"?null:j._bodyInit)})}ut.polyfill=!0,O.fetch||(O.fetch=ut,O.Headers=x,O.Request=Q,O.Response=K),v.Headers=x,v.Request=Q,v.Response=K,v.fetch=ut,Object.defineProperty(v,"__esModule",{value:!0})}),{fetch:c.fetch,Headers:c.Headers,Request:c.Request,Response:c.Response,DOMException:c.DOMException}}()}m=function(){return g}.call(U,A,U,ft),m!==void 0&&(ft.exports=m)})(typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof A.g<"u"?A.g:this)},"./node_modules/ieee754/index.js":function(ft,U){U.read=function(A,m,P,g,T){var S,D,c=T*8-g-1,v=(1<>1,F=-7,M=P?T-1:0,_=P?-1:1,l=A[m+M];for(M+=_,S=l&(1<<-F)-1,l>>=-F,F+=c;F>0;S=S*256+A[m+M],M+=_,F-=8);for(D=S&(1<<-F)-1,S>>=-F,F+=g;F>0;D=D*256+A[m+M],M+=_,F-=8);if(S===0)S=1-O;else{if(S===v)return D?NaN:(l?-1:1)*(1/0);D=D+Math.pow(2,g),S=S-O}return(l?-1:1)*D*Math.pow(2,S-g)},U.write=function(A,m,P,g,T,S){var D,c,v,O=S*8-T-1,F=(1<>1,_=T===23?Math.pow(2,-24)-Math.pow(2,-77):0,l=g?0:S-1,d=g?1:-1,C=m<0||m===0&&1/m<0?1:0;for(m=Math.abs(m),isNaN(m)||m===1/0?(c=isNaN(m)?1:0,D=F):(D=Math.floor(Math.log(m)/Math.LN2),m*(v=Math.pow(2,-D))<1&&(D--,v*=2),D+M>=1?m+=_/v:m+=_*Math.pow(2,1-M),m*v>=2&&(D++,v/=2),D+M>=F?(c=0,D=F):D+M>=1?(c=(m*v-1)*Math.pow(2,T),D=D+M):(c=m*Math.pow(2,M-1)*Math.pow(2,T),D=0));T>=8;A[P+l]=c&255,l+=d,c/=256,T-=8);for(D=D<0;A[P+l]=D&255,l+=d,D/=256,O-=8);A[P+l-d]|=C*128}},"./node_modules/sync-fetch/browser.js":function(ft,U,A){const{Buffer:m}=A("./node_modules/buffer/index.js");function P(..._){const l=new P.Request(..._),d=new XMLHttpRequest;d.withCredentials=l.credentials==="include",d.timeout=l[g].timeout,d.open(l.method,l.url,!1);let C=!1;try{d.responseType="arraybuffer"}catch{d.overrideMimeType("text/plain; charset=x-user-defined"),C=!0}for(const H of l.headers)d.setRequestHeader(...H);d.send(l.body||null);let k=d.getAllResponseHeaders();k=k&&k.split(`\r +`).filter(Boolean).map(H=>H.split(": ",2));let x=d.response;if(C){const H=m.alloc(x.length);for(let N=0;N=200&&l<300}get redirected(){return this[g].redirected}get status(){return this[g].status}get statusText(){return this[g].statusText}get url(){return this[g].url}clone(){return this.redirect(this[g].url,this[g].status)}redirect(l,d){O(this);const C=new c(this[g].body,{headers:this[g].headers,status:d||this[g].status,statusText:S[d]||this[g].statusText});return C[g].url=l||this[g].url,C[g].redirected=this[g].redirected,C}}class v{constructor(l){this[g]={body:m.from(l),bodyUsed:!1}}get bodyUsed(){return this[g].bodyUsed}static mixin(l){for(const d of Object.getOwnPropertyNames(v.prototype)){if(d==="constructor")continue;const C=Object.getOwnPropertyDescriptor(v.prototype,d);Object.defineProperty(l,d,{...C,enumerable:!0})}}arrayBuffer(){const l=F(this);return l.buffer.slice(l.byteOffset,l.byteOffset+l.byteLength)}blob(){const l=this.headers&&this.headers.get("content-type");return new Blob([F(this)],l&&{type:l})}text(){return F(this).toString()}json(){try{return JSON.parse(F(this).toString())}catch(l){throw new TypeError(`invalid json response body at ${this.url} reason: ${l.message}`,"invalid-json")}}buffer(){return F(this).clone()}}function O(_){if(_.bodyUsed)throw new TypeError(`body used already for: ${_.url}`)}function F(_){return O(_),_[g].bodyUsed=!0,_[g].body||m.alloc(0)}v.mixin(D.prototype),v.mixin(c.prototype);class M{constructor(l){if(l instanceof P.Headers)this[g]={...l[g]};else if(this[g]={},Array.isArray(l))for(const[d,C]of l)this.append(d,C);else if(typeof l=="object")for(const d in l)this.set(d,l[d])}append(l,d){l=l.toLowerCase(),this[g][l]||(this[g][l]=[]),this[g][l].push(d)}delete(l){delete this[g][l.toLowerCase()]}set(l,d){this[g][l.toLowerCase()]=[d]}entries(){const l=[];for(const d in this[g])for(const C of this[g][d])l.push([d,C]);return l}get(l){return l=l.toLowerCase(),l in this[g]?this[g][l].join(", "):null}keys(){return Object.keys(this[g])}has(l){return l.toLowerCase()in this[g]}values(){const l=[];for(const d in this[g])for(const C of this[g][d])l.push(C);return l}*[Symbol.iterator](){for(const l in this[g])for(const d of this[g][l])yield[l,d]}}P.Headers=M,P.Request=D,P.Response=c,ft.exports=P}}]); diff --git a/data/gitea/public/assets/js/citation-js-csl.fb93f9bb.js b/data/gitea/public/assets/js/citation-js-csl.fb93f9bb.js new file mode 100644 index 0000000..ef9424b --- /dev/null +++ b/data/gitea/public/assets/js/citation-js-csl.fb93f9bb.js @@ -0,0 +1,50 @@ +"use strict";(self.webpackChunk=self.webpackChunk||[]).push([["citation-js-csl"],{"./node_modules/@citation-js/plugin-csl/lib-mjs/index.js":function(Te,s,e){var t=e("./node_modules/@citation-js/core/lib-mjs/index.js"),i=JSON.parse(`{"en-US":"\\nAndrew DunningSebastian KarcherRintze M. ZelleDenis MeierBrenton M. WiernikThis work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License2015-10-10T23:31:02+00:00advance online publicationalbumaudio recordingfilmhenceforthloc. cit. no placen.p.no publisher n.p.onop. cit. original work publishedpersonal communicationpodcastpodcast episodepreprintradio broadcastradio seriesradio series episodespecial issuespecial sectiontelevision broadcasttelevision seriestelevision series episodevideoworking paperaccessedandand othersanonymousanon.atavailable atbycircac.citededitioneditionsed.et al.forthcomingfromibid.inin pressinternetinterviewletterno daten.d.onlinepresented at thereferencereferencesref.refs.retrievedscaleversion\\npreprintjournal articlemagazine articlenewspaper articlebillbookbroadcastbook chapterclassiccollectiondatasetdocumententrydictionary entryencyclopedia entryeventgraphichearinginterviewlegal caselegislationmanuscriptmapvideo recordingmusical scorepamphletconference paperpatentperformanceperiodicalpersonal communicationpostblog postregulationreportreviewbook reviewsoftwareaudio recordingpresentationstandardthesistreatywebpage\\njournal art.mag. art.newspaper art.bk.bk. chap.doc.graph.interv.MSvideo rec.rep.rev.bk. rev.audio rec.\\nADBCBCECE\\n\u201C\u201D\u2018\u2019\u2013:,;\\nthstndrdththth\\nfirstsecondthirdfourthfifthsixthseventheighthninthtenth\\n\\t\\t\\t actacts\\t\\t\\t\\t\\t\\t \\t\\t\\t appendixappendices\\t\\t\\t\\t\\t\\t \\t\\t\\t articlearticles\\t\\t\\t\\t\\t\\t \\t\\t\\t canoncanons\\t\\t\\t\\t\\t\\t \\t\\t\\t locationlocations\\t\\t\\t\\t\\t\\t \\t\\t\\t equationequations\\t\\t\\t\\t\\t\\t \\t\\t\\t rulerules\\t\\t\\t\\t\\t\\t \\t\\t\\t scenescenes\\t\\t\\t\\t\\t\\t \\t\\t\\t tabletables\\t\\t\\t\\t\\t\\t \\t\\t\\t\\t\\t\\t \\t\\t\\t titletitles\\t\\t\\t\\t\\t\\t bookbookschapterchapterscolumncolumnsfigurefiguresfoliofoliosnumbernumberslinelinesnotenotesopusoperapagepagespagepagesparagraphparagraphspartpartssectionsectionssub verbosub verbisverseversesvolumevolumes\\n\\t\\t\\t app.apps.\\t\\t\\t\\t\\t\\t \\t\\t\\t art.arts.\\t\\t\\t loc.locs.\\t\\t\\t eq.eqs.\\t\\t\\t r.rr.\\t\\t\\t\\t\\t\\t \\t\\t\\t sc.scs.\\t\\t\\t\\t\\t\\t \\t\\t\\t tbl.tbls.\\t\\t\\t\\t\\t\\t \\t\\t\\t\\t\\t\\t \\t\\t\\t tit.tits.bk.bks.chap.chaps.col.cols.fig.figs.fol.fols.no.nos.l.ll.n.nn.op.opp.p.pp.p.pp.para.paras.pt.pts.sec.secs.s.v.s.vv.v.vv.vol.vols.\\n\xB6\xB6\xB6\xA7\xA7\xA7\\nchairchairscompilercompilerscontributorcontributorscuratorcuratorsexecutive producerexecutive producersguestguestshosthostsnarratornarratorsorganizerorganizersperformerperformersproducerproducerswriterwritersseries creatorseries creatorsdirectordirectorseditoreditorseditoreditorsillustratorillustratorstranslatortranslatorseditor & translatoreditors & translators\\ncomp.comps.contrib.contribs.cur.curs.exec. prod.exec. prods.narr.narrs.org.orgs.perf.perfs.prod.prods.writ.writs.cre.cres.dir.dirs.ed.eds.ed.eds.ill.ills.tran.trans.ed. & tran.eds. & trans.\\nchaired bycompiled bywithcurated byexecutive produced bywith guesthosted bynarrated byorganized byperformed byproduced bywritten bycreated bybydirected byedited byedited byillustrated byinterview bytobytranslated byedited & translated by\\ncomp. byw.cur. byexec. prod. byw. guesthosted bynarr. byorg. byperf. byprod. bywrit. bycre. bydir. byed. byed. byillus. bytrans. byed. & trans. by\\nJanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNovemberDecember\\nJan.Feb.Mar.Apr.MayJun.Jul.Aug.Sep.Oct.Nov.Dec.\\nSpringSummerAutumnWinter\\n\\n","nl-NL":"\\nRintze M. Zellehttp://twitter.com/rintzezelleThis work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License2017-04-01T12:00:00+00:00advance online publicationalbumaudio recordingfilmhenceforthloc. cit. no placen.p.no publisher n.p.onop. cit. original work publishedpersoonlijke communicatiepodcastpodcast episodepreprintradio broadcastradio seriesradio series episodespecial issuespecial sectiontelevision broadcasttelevision seriestelevision series episodevideoworking papergeraadpleegdenen anderenanoniemanon.bijbeschikbaar opdoorcircac.geciteerddrukdrukkendr.e.a.in voorbereidingvanibid.inin drukinternetinterviewbriefzonder datumz.d.onlinegepresenteerd bijreferentiereferentiesref.refs.geraadpleegdschaalversie\\npreprintjournal articlemagazine articlenewspaper articlebillbookbroadcastbook chapterclassiccollectiondatasetdocumententrydictionary entryencyclopedia entryeventgraphichearinginterviewlegal caselegislationmanuscriptmapvideo recordingmusical scorepamphletconference paperpatentperformanceperiodicalpersoonlijke communicatiepostblog postregulationreportreviewbook reviewsoftwareaudio recordingpresentationstandardthesistreatywebpage\\njournal art.mag. art.newspaper art.bk.bk. chap.doc.graph.interv.MSvideo rec.rep.rev.bk. rev.audio rec.\\nADBCBCECE\\n\u2018\u2019\u201C\u201D\u2013:,;\\nstedededededededededededededededededede\\neerstetweedederdevierdevijfdezesdezevendeachtstenegendetiende\\n\\t\\t\\t actacts\\t\\t\\t\\t\\t\\t \\t\\t\\t appendixappendices\\t\\t\\t\\t\\t\\t \\t\\t\\t articlearticles\\t\\t\\t\\t\\t\\t \\t\\t\\t canoncanons\\t\\t\\t\\t\\t\\t \\t\\t\\t locationlocations\\t\\t\\t\\t\\t\\t \\t\\t\\t equationequations\\t\\t\\t\\t\\t\\t \\t\\t\\t rulerules\\t\\t\\t\\t\\t\\t \\t\\t\\t scenescenes\\t\\t\\t\\t\\t\\t \\t\\t\\t tabletables\\t\\t\\t\\t\\t\\t \\t\\t\\t\\t\\t\\t \\t\\t\\t titletitles\\t\\t\\t\\t\\t\\t boekboekenhoofdstukhoofdstukkencolumncolumnsfiguurfigurenfoliofolio'snummernummersregelregelsaantekeningaantekeningenopusoperapaginapagina'spaginapagina'sparagraafparagrafendeeldelensectiesectiessub verbosub verbisversversenvolumevolumes\\n\\t\\t\\t app.apps.\\t\\t\\t\\t\\t\\t \\t\\t\\t art.arts.\\t\\t\\t loc.locs.\\t\\t\\t eq.eqs.\\t\\t\\t r.rr.\\t\\t\\t\\t\\t\\t \\t\\t\\t sc.scs.\\t\\t\\t\\t\\t\\t \\t\\t\\t tbl.tbls.\\t\\t\\t\\t\\t\\t \\t\\t\\t\\t\\t\\t \\t\\t\\t tit.tits.bk.hfdst.col.fig.f.nr.l.n.op.p.pp.p.pp.par.deelsec.s.v.s.vv.v.vv.vol.vols.\\n\xB6\xB6\xB6\xA7\xA7\xA7\\nchairchairscompilercompilerscontributorcontributorscuratorcuratorsexecutive producerexecutive producersguestguestshosthostsnarratornarratorsorganizerorganizersperformerperformersproducerproducerswriterwritersseries creatorseries creatorsregisseurregisseursredacteurredacteurenredacteurredacteurenillustratorillustratorsvertalervertalersredacteur & vertalerredacteuren & vertalers\\ncomp.comps.contrib.contribs.cur.curs.exec. prod.exec. prods.narr.narrs.org.orgs.perf.perfs.prod.prods.writ.writs.cre.cres.reg.reg.red.red.red.red.ill.ill.vert.vert.red. & vert.red. & vert.\\nchaired bycompiled bywithcurated byexecutive produced bywith guesthosted bynarrated byorganized byperformed byproduced bywritten bycreated bydoorgeregisseerd dooronder redactie vanonder redactie vange\xEFllustreerd doorge\xEFnterviewd doorontvangen doordoorvertaald doorbewerkt & vertaald door\\ncomp. byw.cur. byexec. prod. byw. guesthosted bynarr. byorg. byperf. byprod. bywrit. bycre. bygeregisseerd dooronder redactie vanbewerkt doorge\xEFllustreerd doorvertaald doorbewerkt & vertaald door\\njanuarifebruarimaartaprilmeijunijuliaugustusseptemberoktobernovemberdecember\\njan.feb.mrt.apr.meijun.jul.aug.sep.okt.nov.dec.\\nlentezomerherstwinter\\n\\n","fr-FR":"\\nGr\xE9goire CollyCollectif Zotero francophoneThis work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License2012-07-04T23:31:02+00:00publication en ligne anticip\xE9ealbumenregistrement audiofilmd\xE9sormaisloc. cit. sans lieus. l.sans nom s. n.surop. cit. \xE9dition originalecommunication personnellepodcast\xE9pisode de podcastpr\xE9publication\xE9mission de radios\xE9rie radiophonique\xE9pisode de s\xE9rie radiophoniquenum\xE9ro sp\xE9cialsection sp\xE9ciale\xE9mission de t\xE9l\xE9visions\xE9rie t\xE9l\xE9vis\xE9e\xE9pisode de s\xE9rie t\xE9l\xE9vis\xE9evid\xE9odocument de travailconsult\xE9 leetet autresanonymeanon.surdisponible surparversv.cit\xE9\xE9dition\xE9ditions\xE9d.et al.\xE0 para\xEEtre\xE0 l'adresseibid.insous presseInternetentretienlettresans dates. d.en lignepr\xE9sent\xE9 \xE0r\xE9f\xE9rencer\xE9f\xE9rencesr\xE9f.r\xE9f.consult\xE9\xE9chelleversion\\narticlearticle de revuearticle de magazinearticle de presseprojet de loilivre\xE9missionchapitre de livreclassiquecollectionjeu de donn\xE9esdocumententr\xE9eentr\xE9e de dictionnaireentr\xE9e d'encyclop\xE9die\xE9v\xE9nementimageaudienceinterviewaffaireacte juridiquemanuscritcarteenregistrement vid\xE9opartitionpamphletarticle de colloquebrevetinterpr\xE9tationp\xE9riodiquecommunication personnellebilletbillet de blogr\xE8glementrapportrecensionrecension de livrelogicielchansonpr\xE9sentationnormeth\xE8setrait\xE9page web\\nart. de revueart. de mag.art. de presseliv.chap. de liv.doc.graph.interv.msenr. vid\xE9orap.recens.recens. de liv.enr. audio\\napr. J.-C.av. J.-C.av. n. \xE8.n. \xE8.\\n\xAB  \xBB\u201C\u201D  :, ;\\n\u1D49\u02B3\u1D49\u1D49\u02B3\\npremierdeuxi\xE8metroisi\xE8mequatri\xE8mecinqui\xE8mesixi\xE8mesepti\xE8mehuiti\xE8meneuvi\xE8medixi\xE8me\\nacteactesappendiceappendicesarticlearticlescanoncanonsemplacementemplacements\xE9quation\xE9quationsr\xE8gler\xE8glessc\xE8nesc\xE8nestableautableaux titretitreslivrelivreschapitrechapitrescolonnecolonnesfigurefiguresfoliofoliosnum\xE9ronum\xE9roslignelignesnotenotesopusopuspagepagespagepagesparagrapheparagraphespartiepartiessectionsectionssub verbosub verbisversetversetsvolumevolumes\\nappend.append.art.art.emplactemplacteq.eq.r\xE8gler\xE8glessc.sc.tab.tab. tit.tit.liv.chap.col.fig.f\u1D52f\u1D52\u02E2n\u1D52n\u1D52\u02E2l.n.op.p.p.p.p.paragr.part.sect.s. v.s. vv.v.v.vol.vol.\\n\xA7\xA7\xA7\xA7\\npr\xE9sidentpr\xE9sidentscompilateurcompilateurscontributeurcontributeurscommissairecommissairesproducteur ex\xE9cutifproducteurs ex\xE9cutifsinvit\xE9invit\xE9sh\xF4teh\xF4tesnarrateurnarrateursorganisateurorganisateursinterpr\xE8teinterpr\xE8tesproducteurproducteurssc\xE9naristesc\xE9naristescr\xE9ateur de s\xE9riecr\xE9ateurs de s\xE9rier\xE9alisateurr\xE9alisateurs\xE9diteur\xE9diteursdirecteurdirecteursillustrateurillustrateurstraducteurtraducteurs\xE9diteur et traducteur\xE9diteurs et traducteurs\\ncompil.compil.contrib.contrib.commiss.commiss.prod. ex\xE9.prod. ex\xE9.narr.narr.org.org.interpr.interpr.prod.prod.sc\xE9nar.sc\xE9nar.cr\xE9at.cr\xE9at.r\xE9al.r\xE9al.\xE9d.\xE9d.dir.dir.ill.ill.trad.trad.\xE9d. et trad.\xE9d. et trad.\\npr\xE9sid\xE9 parcompil\xE9 paravecorganis\xE9 parproduction ex\xE9cutive paravec pour invit\xE9anim\xE9 parlu parorganis\xE9 parinterpr\xE9t\xE9 parproduit parsc\xE9nario decr\xE9\xE9 parparr\xE9alis\xE9 par\xE9dit\xE9 parsous la direction deillustr\xE9 parentretien r\xE9alis\xE9 par\xE0partraduit par\xE9dit\xE9 et traduit par\\ncompil. paracorg. parprod. ex\xE9. parac pr inv.anim. parlu parorg. parinterpr. parprod. parsc\xE9nar. decr\xE9\xE9 parr\xE9al. par\xE9d. parss la dir. deill. partrad. par\xE9d. et trad. par\\njanvierf\xE9vriermarsavrilmaijuinjuilletao\xFBtseptembreoctobrenovembred\xE9cembre\\njanv.f\xE9vr.marsavr.maijuinjuill.ao\xFBtsept.oct.nov.d\xE9c.\\nprintemps\xE9t\xE9automnehiver\\n\\n","de-DE":"\\nTill A. HeilmannUlrichRintze M. ZelleSebastian KarcherjakovThis work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License2012-07-04T23:31:02+00:00advance online publicationalbumaudio recordingfilmhenceforthloc. cit. no placen.p.no publisher n.p.onop. cit. original work publishedpers\xF6nliche Kommunikationpodcastpodcast episodepreprintradio broadcastradio seriesradio series episodespecial issuespecial sectiontelevision broadcasttelevision seriestelevision series episodevideoworking paperzugegriffenundund andereohne Autoro. A.aufverf\xFCgbar untervoncircaca.zitiertAuflageAuflagenAufl.u. a.i. E.vonebd.inim DruckInternetInterviewBriefohne Datumo. J.onlinegehalten auf derReferenzReferenzenRef.Ref.abgerufenMa\xDFstabVersion\\npreprintjournal articlemagazine articlenewspaper articlebillbookbroadcastbook chapterclassiccollectiondatasetdocumententrydictionary entryencyclopedia entryeventgraphichearinginterviewlegal caselegislationmanuscriptmapvideo recordingmusical scorepamphletconference paperpatentperformanceperiodicalpers\xF6nliche Kommunikationpostblog postregulationreportreviewbook reviewsoftwareaudio recordingpresentationstandardthesistreatywebpage\\njournal art.mag. art.newspaper art.bk.bk. chap.doc.graph.interv.MSvideo rec.rep.rev.bk. rev.audio rec.\\n n. Chr. v. Chr.BCECE\\n\u201E\u201C\u201A\u2018\u2013:,;\\n.\\nersterzweiterdrittervierterf\xFCnftersechstersiebterachterneunterzehnter\\n\\t\\t\\t actacts\\t\\t\\t\\t\\t\\t \\t\\t\\t appendixappendices\\t\\t\\t\\t\\t\\t \\t\\t\\t articlearticles\\t\\t\\t\\t\\t\\t \\t\\t\\t canoncanons\\t\\t\\t\\t\\t\\t \\t\\t\\t locationlocations\\t\\t\\t\\t\\t\\t \\t\\t\\t equationequations\\t\\t\\t\\t\\t\\t \\t\\t\\t rulerules\\t\\t\\t\\t\\t\\t \\t\\t\\t scenescenes\\t\\t\\t\\t\\t\\t \\t\\t\\t tabletables\\t\\t\\t\\t\\t\\t \\t\\t\\t\\t\\t\\t \\t\\t\\t titletitles\\t\\t\\t\\t\\t\\t BuchB\xFCcherKapitelKapitelSpalteSpaltenAbbildungAbbildungenBlattBl\xE4tterNummerNummernZeileZeilenNoteNotenOpusOperaSeiteSeitenSeiteSeitenAbsatzAbs\xE4tzeTeilTeileAbschnittAbschnittesub verbosub verbisVersVerseBandB\xE4nde\\n\\t\\t\\t app.apps.\\t\\t\\t\\t\\t\\t \\t\\t\\t art.arts.\\t\\t\\t loc.locs.\\t\\t\\t eq.eqs.\\t\\t\\t r.rr.\\t\\t\\t\\t\\t\\t \\t\\t\\t sc.scs.\\t\\t\\t\\t\\t\\t \\t\\t\\t tbl.tbls.\\t\\t\\t\\t\\t\\t \\t\\t\\t\\t\\t\\t \\t\\t\\t tit.tits.B.Kap.Sp.Abb.Fol.Nr.Z.N.op.S.S.S.S.Abs.TeilAbschn.s. v.s. vv.V.V.Bd.Bde.\\n\xB6\xB6\xB6\xA7\xA7\xA7\\nchairchairscompilercompilerscontributorcontributorscuratorcuratorsexecutive producerexecutive producersguestguestshosthostsnarratornarratorsorganizerorganizersperformerperformersproducerproducerswriterwritersseries creatorseries creatorsRegisseurRegisseureHerausgeberHerausgeberReihenherausgeberReihenherausgeberHerausgeberHerausgeberIllustratorIllustratoren\xDCbersetzer\xDCbersetzerHerausgeber & \xDCbersetzerHerausgeber & \xDCbersetzer\\ncomp.comps.contrib.contribs.cur.curs.exec. prod.exec. prods.narr.narrs.org.orgs.perf.perfs.prod.prods.writ.writs.cre.cres.Reg.Reg.Hrsg.Hrsg.Hrsg.Hrsg.Hrsg.Hrsg.Ill.Ill.\xDCbers.\xDCbers.Hrsg. & \xDCbers.Hrsg. & \xDCbers.\\nchaired bycompiled bywithcurated byexecutive produced bywith guesthosted bynarrated byorganized byperformed byproduced bywritten bycreated byvonRegie vonherausgegeben vonherausgegeben vonherausgegeben vonillustriert voninterviewt vonanvon\xFCbersetzt vonherausgegeben und \xFCbersetzt von\\ncomp. byw.cur. byexec. prod. byw. guesthosted bynarr. byorg. byperf. byprod. bywrit. bycre. byReg.hg. vonhg. vonhg. vonillus. von\xFCbers. vonhg. & \xFCbers. von\\nJanuarFebruarM\xE4rzAprilMaiJuniJuliAugustSeptemberOktoberNovemberDezember\\nJan.Feb.M\xE4rzApr.MaiJuniJuliAug.Sep.Okt.Nov.Dez.\\nFr\xFChjahrSommerHerbstWinter\\n\\n","es-ES":"\\njavimatThis work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License2012-07-04T23:31:02+00:00advance online publicationalbumaudio recordingfilmhenceforthloc. cit. no placen.p.no publisher n.p.onop. cit. original work publishedcomunicaci\xF3n personalpodcastpodcast episodepreprintradio broadcastradio seriesradio series episodespecial issuespecial sectiontelevision broadcasttelevision seriestelevision series episodevideoworking paperaccedidoyy otrosan\xF3nimoan\xF3n.endisponible endecircac.citadoedici\xF3nedicionesed.et al.previstoa partir deibid.enen imprentainternetentrevistacartasin fechas. f.en l\xEDneapresentado enreferenciareferenciasref.refs.recuperadoescalaversi\xF3n\\npreprintjournal articlemagazine articlenewspaper articlebillbookbroadcastbook chapterclassiccollectiondatasetdocumententrydictionary entryencyclopedia entryeventgraphichearinginterviewlegal caselegislationmanuscriptmapvideo recordingmusical scorepamphletconference paperpatentperformanceperiodicalcomunicaci\xF3n personalpostblog postregulationreportreviewbook reviewsoftwareaudio recordingpresentationstandardthesistreatywebpage\\njournal art.mag. art.newspaper art.bk.bk. chap.doc.graph.interv.MSvideo rec.rep.rev.bk. rev.audio rec.\\nd. C.a. C.BCECE\\n\xAB\xBB\u201C\u201D-:,;\\n.\xAA\\nprimerasegundaterceracuartaquintasextas\xE9ptimaoctavanovenad\xE9cima\\n\\t\\t\\t actacts\\t\\t\\t\\t\\t\\t \\t\\t\\t appendixappendices\\t\\t\\t\\t\\t\\t \\t\\t\\t articlearticles\\t\\t\\t\\t\\t\\t \\t\\t\\t canoncanons\\t\\t\\t\\t\\t\\t \\t\\t\\t locationlocations\\t\\t\\t\\t\\t\\t \\t\\t\\t equationequations\\t\\t\\t\\t\\t\\t \\t\\t\\t rulerules\\t\\t\\t\\t\\t\\t \\t\\t\\t scenescenes\\t\\t\\t\\t\\t\\t \\t\\t\\t tabletables\\t\\t\\t\\t\\t\\t \\t\\t\\t\\t\\t\\t \\t\\t\\t titletitles\\t\\t\\t\\t\\t\\t librolibroscap\xEDtulocap\xEDtuloscolumnacolumnasfigurafigurasfoliofoliosn\xFAmeron\xFAmerosl\xEDneal\xEDneasnotanotasopusoperap\xE1ginap\xE1ginasp\xE1ginap\xE1ginasp\xE1rrafop\xE1rrafospartepartessecci\xF3nseccionessub vocesub vocibusversoversosvolumenvol\xFAmenes\\n\\t\\t\\t app.apps.\\t\\t\\t\\t\\t\\t \\t\\t\\t art.arts.\\t\\t\\t loc.locs.\\t\\t\\t eq.eqs.\\t\\t\\t r.rr.\\t\\t\\t\\t\\t\\t \\t\\t\\t sc.scs.\\t\\t\\t\\t\\t\\t \\t\\t\\t tbl.tbls.\\t\\t\\t\\t\\t\\t \\t\\t\\t\\t\\t\\t \\t\\t\\t tit.tits.lib.cap.col.fig.f.n.\xBAl.n.op.p.pp.p.pp.p\xE1rr.pt.sec.s. v.s. vv.v.vv.vol.vols.\\n\xA7\xA7\xA7\xA7\\nchairchairscompilercompilerscontributorcontributorscuratorcuratorsexecutive producerexecutive producersguestguestshosthostsnarratornarratorsorganizerorganizersperformerperformersproducerproducerswriterwritersseries creatorseries creatorsdirectordirectoreseditoreditoreseditoreditoresilustradorilustradorestraductortraductoreseditor y traductoreditores y traductores\\ncomp.comps.contrib.contribs.cur.curs.exec. prod.exec. prods.narr.narrs.org.orgs.perf.perfs.prod.prods.writ.writs.cre.cres.dir.dirs.ed.eds.ed.eds.ilust.ilusts.trad.trads.ed. y trad.eds. y trads.\\nchaired bycompiled bywithcurated byexecutive produced bywith guesthosted bynarrated byorganized byperformed byproduced bywritten bycreated bydedirigido poreditado poreditado porilustrado porentrevistado poraportraducido poreditado y traducido por\\ncomp. byw.cur. byexec. prod. byw. guesthosted bynarr. byorg. byperf. byprod. bywrit. bycre. bydir.ed.ed.ilust.trad.ed. y trad.\\nenerofebreromarzoabrilmayojuniojulioagostoseptiembreoctubrenoviembrediciembre\\nene.feb.mar.abr.mayjun.jul.ago.sep.oct.nov.dic.\\nprimaveraveranooto\xF1oinvierno\\n\\n"}`);const r=new t.util.Register(i),a=_=>r.has(_)?r.get(_):r.get("en-US");var n=null,o=JSON.parse(`{"apa":"\\n\\n","vancouver":"\\n\\n","harvard1":"\\n\\n"}`);const l=new t.util.Register(o),m=_=>l.has(_)?l.get(_):l.get("apa");var p=null,f=e("./node_modules/citeproc/citeproc_commonjs.js"),h=e.n(f);const u=Symbol.for("proxied"),d=function(_){const w=function(D,E){if(D.sys.wrapBibliographyEntry){const[C,U]=D.sys.wrapBibliographyEntry(this.system_id);E=[C,E,U].join("")}return _.call(this,D,E)};return w[u]=!0,w};for(const _ in h().Output.Formats){const w=h().Output.Formats[_]["@bibliography/entry"];!w||w[u]||(h().Output.Formats[_]["@bibliography/entry"]=d(w))}function v(_){if(r.has(_))return r.get(_);const w=_.replace("-","_");return r.has(w)?r.get(w):{}}const c={},S=function(_,w,D,E,C){const U=`${_}|${w}`;let q;return c[U]instanceof h().Engine?(q=c[U],q.sys.retrieveItem=E,q.sys.wrapBibliographyEntry=void 0,q.updateItems([])):q=c[U]=new(h()).Engine({retrieveLocale:C,retrieveItem:E},D,w,!0),q};var y=function(_,w,D,E){if(!h().Output.Formats[E]||!h().Output.Formats[E]["@bibliography/entry"])throw new TypeError(`Cannot find format '${E}'`);const C=_.reduce((j,M)=>(j[M.id]=M,j),{}),U=l.get(l.has(w)?w:"apa");D=r.has(D)?D:void 0;const P=S(w,D,U,function(j){if(Object.prototype.hasOwnProperty.call(C,j))return C[j];throw new Error(`Cannot find entry with id '${j}'`)},v);return P.setOutputFormat(E),P.opt.development_extensions.wrap_url_and_doi=!1,P};const x=(_,w,D)=>_.replace(/^\s*<[a-z]+/i,`$& data-${w}="${D}"`),b=(_,w)=>x(_,"csl-entry-id",w),A=(_,w)=>typeof w=="function"?w(_):w||"";function O(_,w={}){const{template:D="apa",lang:E,format:C="text",nosort:U=!1}=w,q=w.entry?[].concat(w.entry):_.map(({id:B})=>B);_=t.util.downgradeCsl(_);const P=y(_,D,E,C),j=P.updateItems(q,U);if(w.append||w.prepend){const B=_.reduce((F,G)=>(F[G.id]=G,F),{});P.sys.wrapBibliographyEntry=function(F){const G=B[F];return[A(G,w.prepend),A(G,w.append)]}}w.hyperlinks&&(P.opt.development_extensions.wrap_url_and_doi=!0);const M=P.makeBibliography(),[{bibstart:R,bibend:L},z]=M,X=z.map((B,F)=>b(B,j[F]));return w.asEntryArray?X.map((B,F)=>[j[F],B]):R+X.join("")+L}function I(_){return typeof _=="object"?_:{id:_}}function T(_){return _.citationItems?_:{citationItems:[].concat(_).map(I),properties:{noteIndex:0}}}function k(_){return _?_.map(T):[]}function N(_,w={}){const{template:D="apa",lang:E,format:C="text"}=w,U=_.map(({id:z})=>z),q=w.entry?w.entry:U;_=t.util.downgradeCsl(_);const P=y(_,D,E,C),j=k(w.citationsPre),M=T(q),R=k(w.citationsPost);return P.rebuildProcessorState([...j,M,...R],C,[])[j.length][2]}t.plugins.add("@csl",{output:{bibliography:O,citation:N},config:{engine:y,locales:r,templates:l}})},"./node_modules/citeproc/citeproc_commonjs.js":function(Te){var s={PROCESSOR_VERSION:"1.4.61",error:function(e){throw typeof Error>"u"?new Error("citeproc-js error: "+e):"citeproc-js error: "+e},debug:function(e){typeof console>"u"?dump("CSL: "+e+` +`):console.log("citeproc-js warning: "+e)},toLocaleUpperCase(e){var t=this.tmp.lang_array;try{e=e.toLocaleUpperCase(t)}catch{e=e.toUpperCase()}return e},toLocaleLowerCase(e){var t=this.tmp.lang_array;try{e=e.toLocaleLowerCase(t)}catch{e=e.toLowerCase()}return e},LOCATOR_LABELS_REGEXP:new RegExp("^((vrs|sv|subpara|op|subch|add|amend|annot|app|art|bibliog|bk|ch|cl|col|cmt|dec|dept|div|ex|fig|fld|fol|n|hypo|illus|intro|l|no|p|pp|para|pt|pmbl|princ|pub|r|rn|sched|sec|ser|subdiv|subsec|supp|tbl|tit|vol)\\.)\\s+(.*)"),STATUTE_SUBDIV_PLAIN_REGEX:/(?:(?:^| )(?:vrs|sv|subpara|op|subch|add|amend|annot|app|art|bibliog|bk|ch|cl|col|cmt|dec|dept|div|ex|fig|fld|fol|n|hypo|illus|intro|l|no|p|pp|para|pt|pmbl|princ|pub|r|rn|sched|sec|ser|subdiv|subsec|supp|tbl|tit|vol)\. *)/,STATUTE_SUBDIV_PLAIN_REGEX_FRONT:/(?:^\s*[.,;]*\s*(?:vrs|sv|subpara|op|subch|add|amend|annot|app|art|bibliog|bk|ch|cl|col|cmt|dec|dept|div|ex|fig|fld|fol|n|hypo|illus|intro|l|no|p|pp|para|pt|pmbl|princ|pub|r|rn|sched|sec|ser|subdiv|subsec|supp|tbl|tit|vol)\. *)/,STATUTE_SUBDIV_STRINGS:{"vrs.":"verse","sv.":"sub-verbo","subpara.":"subparagraph","op.":"opus","subch.":"subchapter","add.":"addendum","amend.":"amendment","annot.":"annotation","app.":"appendix","art.":"article","bibliog.":"bibliography","bk.":"book","ch.":"chapter","cl.":"clause","col.":"column","cmt.":"comment","dec.":"decision","dept.":"department","ex.":"example","fig.":"figure","fld.":"field","fol.":"folio","n.":"note","hypo.":"hypothetical","illus.":"illustration","intro.":"introduction","l.":"line","no.":"issue","p.":"page","pp.":"page","para.":"paragraph","pt.":"part","pmbl.":"preamble","princ.":"principle","pub.":"publication","r.":"rule","rn.":"randnummer","sched.":"schedule","sec.":"section","ser.":"series,","subdiv.":"subdivision","subsec.":"subsection","supp.":"supplement","tbl.":"table","tit.":"title","vol.":"volume"},STATUTE_SUBDIV_STRINGS_REVERSE:{verse:"vrs.","sub-verbo":"sv.","sub verbo":"sv.",subparagraph:"subpara.",opus:"op.",subchapter:"subch.",addendum:"add.",amendment:"amend.",annotation:"annot.",appendix:"app.",article:"art.",bibliography:"bibliog.",book:"bk.",chapter:"ch.",clause:"cl.",column:"col.",comment:"cmt.",decision:"dec.",department:"dept.",example:"ex.",figure:"fig.",field:"fld.",folio:"fol.",note:"n.",hypothetical:"hypo.",illustration:"illus.",introduction:"intro.",line:"l.",issue:"no.",page:"p.",paragraph:"para.",part:"pt.",preamble:"pmbl.",principle:"princ.",publication:"pub.",rule:"r.",randnummer:"rn.",schedule:"sched.",section:"sec.","series,":"ser.",subdivision:"subdiv.",subsection:"subsec.",supplement:"supp.",table:"tbl.",title:"tit.",volume:"vol."},LOCATOR_LABELS_MAP:{vrs:"verse",sv:"sub-verbo",subpara:"subparagraph",op:"opus",subch:"subchapter",add:"addendum",amend:"amendment",annot:"annotation",app:"appendix",art:"article",bibliog:"bibliography",bk:"book",ch:"chapter",cl:"clause",col:"column",cmt:"comment",dec:"decision",dept:"department",ex:"example",fig:"figure",fld:"field",fol:"folio",n:"note",hypo:"hypothetical",illus:"illustration",intro:"introduction",l:"line",no:"issue",p:"page",pp:"page",para:"paragraph",pt:"part",pmbl:"preamble",princ:"principle",pub:"publication",r:"rule",rn:"randnummer",sched:"schedule",sec:"section",ser:"series,",subdiv:"subdivision",subsec:"subsection",supp:"supplement",tbl:"table",tit:"title",vol:"volume"},MODULE_MACROS:{"juris-pretitle":!0,"juris-title":!0,"juris-pretitle-short":!0,"juris-title-short":!0,"juris-main":!0,"juris-main-short":!0,"juris-tail":!0,"juris-tail-short":!0,"juris-locator":!0},MODULE_TYPES:{legal_case:!0,legislation:!0,bill:!0,hearing:!0,gazette:!0,report:!0,regulation:!0,standard:!0,patent:!0,locator:!0},checkNestedBrace:function(e){e.opt.xclass==="note"?(this.depth=0,this.update=function(i){for(var i=i||"",r=i.split(/([\(\)])/),a=1,n=r.length;a-1;o--)if(e.opt.availableAbbrevDomains[t].indexOf(n[o])>-1){r=n[o];break}}if(!r&&a){for(var o=a.length-1;o>-1;o--)if(e.opt.availableAbbrevDomains[t].indexOf(a[o])>-1){r=a[o];break}}}return r},FIELD_CATEGORY_REMAP:{title:"title","container-title":"container-title","collection-title":"collection-title",country:"place",number:"number",place:"place",archive:"container-title","title-short":"title",genre:"title",event:"title",medium:"title","archive-place":"place","publisher-place":"place","event-place":"place",jurisdiction:"place","language-name":"place","language-name-original":"place","call-number":"number","chapter-number":"number","collection-number":"number",edition:"number",page:"number",issue:"number",locator:"number","locator-extra":"number","number-of-pages":"number","number-of-volumes":"number",volume:"number","citation-number":"number",publisher:"institution-part"},parseLocator:function(e){if(this.opt.development_extensions.locator_date_and_revision&&e.locator){e.locator=""+e.locator;var t=e.locator.indexOf("|");if(t>-1){var i=e.locator;e.locator=i.slice(0,t),i=i.slice(t+1);var r=i.match(/^([0-9]{4}-[0-9]{2}-[0-9]{2}).*/);r&&(e["locator-date"]=this.fun.dateparser.parseDateToObject(r[1]),i=i.slice(r[1].length)),e["locator-extra"]=i.replace(/^\s+/,"").replace(/\s+$/,"")}}return e.locator&&(e.locator=(""+e.locator).replace(/\s+$/,"")),e},normalizeLocaleStr:function(e){if(e){var t=e.split("-");return t[0]=t[0].toLowerCase(),t[1]&&(t[1]=t[1].toUpperCase()),t.join("-")}},parseNoteFieldHacks:function(e,t,i){if(typeof e.note=="string"){for(var r=[],a=e.note.split(` +`),n=0,o=a.length;n0||f>1)&&!r[f-1].match(s.NOTE_FIELD_REGEXP));f+=2)r[f]=` +`+r[f].slice(2,-1).trim()+` +`;a[n]=r.join("")}}a=a.join(` +`).split(` +`);for(var u=0,d={},n=0,o=a.length;n-1)(!e[c]||i)&&(e[c]=s.DateParser.parseDateToArray(S),(!t||t[c]&&this.isDateString(S))&&(a[n]=""));else if(!e[c]){if(s.NAME_VARIABLES.indexOf(c.replace(/^alt-/,""))>-1){d[c]||(d[c]=[]);var g=S.split(/\s*\|\|\s*/);if(g.length===1)d[c].push({literal:g[0]});else if(g.length===2){var y={family:g[0],given:g[1]};s.parseParticles(y),d[c].push(y)}}else e[c]=S;(!t||t[c])&&(a[n]="")}}for(var c in d)e[c]=d[c];if(t){a[u].trim()&&(a[u]=` +`+a[u]);for(var n=u-1;n>-1;n--)a[n].trim()||(a=a.slice(0,n).concat(a.slice(n+1)))}e.note=a.join(` +`).trim()}},checkPrefixSpaceAppend:function(e,n){n||(n="");var i="",r=n.replace(/<[^>]+>/g,"").replace(/["'\u201d\u2019\u00bb\u202f\u00a0 ]+$/g,""),a=r.slice(-1);(r.match(s.ENDSWITH_ROMANESQUE_REGEXP)||s.TERMINAL_PUNCTUATION.slice(0,-1).indexOf(a)>-1||a.match(/[\)\],0-9]/))&&(i=" ");var n=(n+i).replace(/\s+/g," ");return n},checkIgnorePredecessor:function(e,t){var i=!1,r=t.replace(/<[^>]+>/g,"").replace(/["'\u201d\u2019\u00bb\u202f\u00a0 ]+$/g,""),a=r.slice(-1);return s.TERMINAL_PUNCTUATION.slice(0,-1).indexOf(a)>-1&&t.trim().indexOf(" ")>-1?(e.tmp.term_predecessor=!1,!0):!1},checkSuffixSpacePrepend:function(e,t){return t?((t.match(s.STARTSWITH_ROMANESQUE_REGEXP)||["[","("].indexOf(t.slice(0,1))>-1)&&(t=" "+t),t):""},GENDERS:["masculine","feminine"],ERROR_NO_RENDERED_FORM:1,PREVIEW:"Just for laughs.",ASSUME_ALL_ITEMS_REGISTERED:2,START:0,END:1,SINGLETON:2,SEEN:6,SUCCESSOR:3,SUCCESSOR_OF_SUCCESSOR:4,SUPPRESS:5,SINGULAR:0,PLURAL:1,LITERAL:!0,BEFORE:1,AFTER:2,DESCENDING:1,ASCENDING:2,PRIMARY:1,SECONDARY:2,POSITION_FIRST:0,POSITION_SUBSEQUENT:1,POSITION_IBID:2,POSITION_IBID_WITH_LOCATOR:3,POSITION_CONTAINER_SUBSEQUENT:4,POSITION_MAP:{0:0,4:1,1:2,2:3,3:4},POSITION_TEST_VARS:["position","first-reference-note-number","near-note"],AREAS:["citation","citation_sort","bibliography","bibliography_sort","intext"],CITE_FIELDS:["first-reference-note-number","first-container-reference-note-number","locator","locator-extra"],SWAPPING_PUNCTUATION:[".","!","?",":",","],TERMINAL_PUNCTUATION:[":",".",";","!","?"," "],NONE:0,NUMERIC:1,POSITION:2,TRIGRAPH:3,DATE_PARTS:["year","month","day"],DATE_PARTS_ALL:["year","month","day","season"],DATE_PARTS_INTERNAL:["year","month","day","year_end","month_end","day_end"],NAME_PARTS:["non-dropping-particle","family","given","dropping-particle","suffix","literal"],DISAMBIGUATE_OPTIONS:["disambiguate-add-names","disambiguate-add-givenname","disambiguate-add-year-suffix"],GIVENNAME_DISAMBIGUATION_RULES:["all-names","all-names-with-initials","primary-name","primary-name-with-initials","by-cite"],NAME_ATTRIBUTES:["and","delimiter-precedes-last","delimiter-precedes-et-al","initialize-with","initialize","name-as-sort-order","sort-separator","et-al-min","et-al-use-first","et-al-subsequent-min","et-al-subsequent-use-first","form","prefix","suffix","delimiter"],LOOSE:0,STRICT:1,TOLERANT:2,PREFIX_PUNCTUATION:/[.;:]\s*$/,SUFFIX_PUNCTUATION:/^\s*[.;:,\(\)]/,NUMBER_REGEXP:/(?:^\d+|\d+$)/,NAME_INITIAL_REGEXP:/^([A-Z\u0e01-\u0e5b\u00c0-\u017f\u0400-\u042f\u0590-\u05d4\u05d6-\u05ff\u0600-\u06ff\u0370\u0372\u0376\u0386\u0388-\u03ab\u03e2\u03e4\u03e6\u03e8\u03ea\u03ec\u03ee\u03f4\u03f7\u03fd-\u03ff])([a-zA-Z\u0e01-\u0e5b\u00c0-\u017f\u0400-\u052f\u0600-\u06ff\u0370-\u03ff\u1f00-\u1fff]*|)(\.)*/,ROMANESQUE_REGEXP:/[-0-9a-zA-Z\u0e01-\u0e5b\u00c0-\u017f\u0370-\u03ff\u0400-\u052f\u0590-\u05d4\u05d6-\u05ff\u1f00-\u1fff\u0600-\u06ff\u200c\u200d\u200e\u0218\u0219\u021a\u021b\u202a-\u202e]/,ROMANESQUE_NOT_REGEXP:/[^a-zA-Z\u0e01-\u0e5b\u00c0-\u017f\u0370-\u03ff\u0400-\u052f\u0590-\u05d4\u05d6-\u05ff\u1f00-\u1fff\u0600-\u06ff\u200c\u200d\u200e\u0218\u0219\u021a\u021b\u202a-\u202e]/g,STARTSWITH_ROMANESQUE_REGEXP:/^[&a-zA-Z\u0e01-\u0e5b\u00c0-\u017f\u0370-\u03ff\u0400-\u052f\u0590-\u05d4\u05d6-\u05ff\u1f00-\u1fff\u0600-\u06ff\u200c\u200d\u200e\u0218\u0219\u021a\u021b\u202a-\u202e]/,ENDSWITH_ROMANESQUE_REGEXP:/[.;:&a-zA-Z\u0e01-\u0e5b\u00c0-\u017f\u0370-\u03ff\u0400-\u052f\u0590-\u05d4\u05d6-\u05ff\u1f00-\u1fff\u0600-\u06ff\u200c\u200d\u200e\u0218\u0219\u021a\u021b\u202a-\u202e]$/,ALL_ROMANESQUE_REGEXP:/^[a-zA-Z\u0e01-\u0e5b\u00c0-\u017f\u0370-\u03ff\u0400-\u052f\u0590-\u05d4\u05d6-\u05ff\u1f00-\u1fff\u0600-\u06ff\u200c\u200d\u200e\u0218\u0219\u021a\u021b\u202a-\u202e]+$/,VIETNAMESE_SPECIALS:/[\u00c0-\u00c3\u00c8-\u00ca\u00cc\u00cd\u00d2-\u00d5\u00d9\u00da\u00dd\u00e0-\u00e3\u00e8-\u00ea\u00ec\u00ed\u00f2-\u00f5\u00f9\u00fa\u00fd\u0101\u0103\u0110\u0111\u0128\u0129\u0168\u0169\u01a0\u01a1\u01af\u01b0\u1ea0-\u1ef9]/,VIETNAMESE_NAMES:/^(?:(?:[.AaBbCcDdEeGgHhIiKkLlMmNnOoPpQqRrSsTtUuVvXxYy \u00c0-\u00c3\u00c8-\u00ca\u00cc\u00cd\u00d2-\u00d5\u00d9\u00da\u00dd\u00e0-\u00e3\u00e8-\u00ea\u00ec\u00ed\u00f2-\u00f5\u00f9\u00fa\u00fd\u0101\u0103\u0110\u0111\u0128\u0129\u0168\u0169\u01a0\u01a1\u01af\u01b0\u1ea0-\u1ef9]{2,6})(\s+|$))+$/,NOTE_FIELDS_REGEXP:/\{:(?:[\-_a-z]+|[A-Z]+):[^\}]+\}/g,NOTE_FIELD_REGEXP:/^([\-_a-z]+|[A-Z]+):\s*([^\}]+)$/,PARTICLE_GIVEN_REGEXP:/^([^ ]+(?:\u02bb |\u2019 | |\' ) *)(.+)$/,PARTICLE_FAMILY_REGEXP:/^([^ ]+(?:\-|\u02bb|\u2019| |\') *)(.+)$/,DISPLAY_CLASSES:["block","left-margin","right-inline","indent"],NAME_VARIABLES:["author","chair","collection-editor","compiler","composer","container-author","contributor","curator","director","editor","editor-translator","editorial-director","executive-producer","guest","host","illustrator","interviewer","narrator","organizer","original-author","performer","producer","recipient","reviewed-author","script-writer","series-creator","translator","commenter"],CREATORS:["author","chair","collection-editor","compiler","composer","container-author","contributor","curator","director","editor","editor-translator","editorial-director","executive-producer","guest","host","illustrator","interviewer","narrator","organizer","original-author","performer","producer","recipient","reviewed-author","script-writer","series-creator","translator","commenter"],NUMERIC_VARIABLES:["call-number","chapter-number","collection-number","division","edition","page","issue","locator","locator-extra","number","number-of-pages","number-of-volumes","part-number","printing-number","section","supplement-number","version","volume","supplement","citation-number"],DATE_VARIABLES:["locator-date","issued","event-date","accessed","original-date","publication-date","available-date","submitted","alt-issued","alt-event"],VARIABLES_WITH_SHORT_FORM:["title","container-title"],TITLE_FIELD_SPLITS:function(e){for(var t=["title","short","main","sub","subjoin"],i={},r=0,a=t.length;r-1&&r.indexOf(t[n].toLowerCase())>-1;n+=-1)a.push(t.pop());t.reverse();var o=t.join(" "),l=a.join(" ");i==="drop"||!l?t=o:i==="demote"&&(t=[o,l].join(", "))}return t},extractTitleAndSubtitle:function(e,t){var i=t?"\u202F":"",r=[""];this.opt.development_extensions.split_container_title&&r.push("container-");for(var a=0,n=r.length;a-1&&(u[l.subjoin]=i+": "),(u[l.subjoin].indexOf("-")>-1||u[l.subjoin].indexOf("\u2014")>-1)&&(u[l.subjoin]="\u2014")),p)for(var x in u)e.multi._keys[x]||(e.multi._keys[x]={}),e.multi._keys[x][p]=u[x];else for(var x in u)e[x]=u[x]}}},titlecaseSentenceOrNormal:function(e,t,i,r,a){var n=s.TITLE_FIELD_SPLITS(i),o={};if(r&&t.multi?(t.multi._keys[n.title]&&(o[n.title]=t.multi._keys[n.title][r]),t.multi._keys[n.main]&&(o[n.main]=t.multi._keys[n.main][r]),t.multi._keys[n.sub]&&(o[n.sub]=t.multi._keys[n.sub][r]),t.multi._keys[n.subjoin]&&(o[n.subjoin]=t.multi._keys[n.subjoin][r])):(o[n.title]=t[n.title],o[n.main]=t[n.main],o[n.sub]=t[n.sub],o[n.subjoin]=t[n.subjoin]),o[n.main]&&o[n.sub]){var l=o[n.main],m=o[n.subjoin],p=o[n.sub];return a?(l=s.Output.Formatters.sentence(e,l),p=s.Output.Formatters.sentence(e,p)):e.opt.development_extensions.uppercase_subtitles&&(p=s.Output.Formatters["capitalize-first"](e,p)),[l,m,p].join("")}else if(o[n.title]){if(a)return s.Output.Formatters.sentence(e,o[n.title]);if(e.opt.development_extensions.uppercase_subtitles){for(var f=s.TITLE_SPLIT(o[n.title]),h=0,u=f.length;h-1||f[h].indexOf("\u2014")>-1)&&(f[h]="\u2014")}return o[n.title]=f.join(""),o[n.title]}else return o[n.title]}else return""},getSafeEscape:function(e){if(["bibliography","citation"].indexOf(e.tmp.area)>-1){var t=[];return e.opt.development_extensions.thin_non_breaking_space_html_hack&&e.opt.mode==="html"&&t.push(function(i){return i.replace(/\u202f/g,'')}),t.length?function(i){for(var r=0,a=t.length;ro[0]==="@vertical-align").length>0||r&&r.strings.suffix?e.tmp.just_did_number=!1:t&&(t.match(/[0-9]$/)?e.tmp.just_did_number=!0:e.tmp.just_did_number=!1)}},EVALUATE_GROUP_CONDITION:function(e,t){if(e.opt.use_context_condition){var i,r=t.condition.test==="comma-safe-numbers-only";if(t.condition.test==="empty-label")i=!t.condition.termtxt;else if(t.condition.test==="empty-label-no-decor")i=!t.condition.termtxt||t.condition.termtxt.indexOf("%s")>-1;else if(["comma-safe","comma-safe-numbers-only"].indexOf(t.condition.test)>-1){var a=t.condition.termtxt,n=!1;t.condition.termtxt&&(n=t.condition.termtxt.slice(0,1).match(s.ALL_ROMANESQUE_REGEXP));var o=e.tmp.just_did_number;o?t.condition.valueTerm?i=!r:a?n?i=!r:["always","after-number"].indexOf(e.opt.require_comma_on_symbol)>-1?i=!0:i=!1:i=!0:t.condition.valueTerm?i=!1:a?n?i=!r:e.opt.require_comma_on_symbol==="always"?i=!0:i=!1:i=!1}if(i)var l=!1;else var l=!0;return t.condition.not&&(l=!l),l}},SYS_OPTIONS:["prioritize_disambiguate_condition","csl_reverse_lookup_support","main_title_from_short_title","uppercase_subtitles","force_short_title_casing_alignment","implicit_short_title","split_container_title"],TITLE_SPLIT_REGEXP:function(){var e=["\\.\\s+","\\!\\s+","\\?\\s+","\\s*::*\\s+","\\s*\u2014\\s*","\\s+\\-\\s+","\\s*\\-\\-\\-*\\s*"];return{match:new RegExp("("+e.join("|")+")","g"),matchfirst:new RegExp("^("+e.join("|")+")"),split:new RegExp("(?:"+e.join("|")+")")}}(),TITLE_SPLIT:function(e){if(!e)return e;for(var t=e.match(s.TITLE_SPLIT_REGEXP.match),i=e.split(s.TITLE_SPLIT_REGEXP.split),r=i.length-2;r>-1;r--)i[r]=i[r].trim(),i[r]&&i[r].slice(-1).toLowerCase()!==i[r].slice(-1)?(i[r]=i[r]+t[r]+i[r+1],i=i.slice(0,r+1).concat(i.slice(r+2))):i=i.slice(0,r+1).concat([t[r]]).concat(i.slice(r+1));return i},GET_COURT_CLASS:function(e,t,i){var r="",a=null,n=t.jurisdiction?t.jurisdiction.split(":")[0]:null,o="court_condition_classes";return i&&(o="court_key_classes"),n&&t.authority&&(typeof t.authority=="string"?a=t.authority:t.authority[0]&&t.authority[0].literal&&(a=t.authority[0].literal)),a&&(this.lang&&e.locale[this.lang].opts[o]&&e.locale[this.lang].opts[o][n]&&e.locale[this.lang].opts[o][n][a]?r=e.locale[this.lang].opts[o][n][a]:e.locale[e.opt["default-locale"][0]].opts[o]&&e.locale[e.opt["default-locale"][0]].opts[o][n]&&e.locale[e.opt["default-locale"][0]].opts[o][n][a]&&(r=e.locale[e.opt["default-locale"][0]].opts[o][n][a])),r},SET_COURT_CLASSES:function(e,t,i,r){for(var a=i.getNodesByName(r,"court-class"),n=0,o=i.numberofnodes(a);n"u")for(var i in e)typeof e[i]=="string"?t[i]=e[i]:typeof e[i]=="object"&&(typeof e[i].length>"u"?t[i]=this.nodeCopy(e[i],{}):t[i]=this.nodeCopy(e[i],[]));else for(var r=0,a=e.length;r"u"?!1:t==e.name},s.XmlJSON.prototype.makeXml=function(e){return typeof e=="string"&&(e.slice(0,1)==="<"?e=this.jsonStringWalker.walkToObject(e):e=JSON.parse(e)),e},s.XmlJSON.prototype.insertChildNodeAfter=function(e,t,i,r){for(var a=0,n=e.children.length;a-1&&!e.children[r].attrs.prefix&&!e.children[r].attrs.suffix)i=i.slice(0,n).concat(i.slice(n+1));else{t=!1;break}}t&&!i.length&&(e.attrs["has-publisher-and-publisher-place"]=!0)}for(var r=0,a=e.children.length;r0){var t=e.slice(),i=t.pop();return i==="substitute"?!0:this.isChildOfSubstitute(t)}return!1},s.XmlJSON.prototype.addMissingNameNodes=function(e,t){if(t||(t=[]),e.name==="names"&&!this.isChildOfSubstitute(t)){for(var i=!0,r=0,a=e.children.length;r-1){for(var r=this.nodeCopy(this.institution),u=0,d=s.INSTITUTION_KEYS.length;u/,""),e=e.replace(//g,""),e=e.replace(/^\s+/g,""),e=e.replace(/\s+$/g,""),e)},s.parseXml=function(e){var t=0,i={children:[]},r=[i.children];function a(y){y=y.split(/(?:\r\n|\n|\r)/).join(" ").replace(/>[ ]+<").replace(/<\!--.*?-->/g,"");for(var x=y.split("><"),b=null,A=0,O=x.length;A0&&(x[A]="<"+x[A]),A"),typeof b!="number"&&(x[A].slice(0,7)==="`),e=this.attachShadow({mode:"open"});e.appendChild(t.content.cloneNode(!0)),e.addEventListener("move",this),this[_]=this[R].map(o=>new o(e))}connectedCallback(){if(this.hasOwnProperty("color")){const t=this.color;delete this.color,this.color=t}else this.color||(this.color=this.colorModel.defaultColor)}attributeChangedCallback(t,e,o){const s=this.colorModel.fromAttr(o);this[g](s)||(this.color=s)}handleEvent(t){const e=this[I],o={...e,...t.detail};this[H](o);let s;!C(o,e)&&!this[g](s=this.colorModel.fromHsva(o))&&(this[x]=s,m(this,"color-changed",{value:s}))}[g](t){return this.color&&this.colorModel.equal(t,this.color)}[H](t){this[I]=t,this[_].forEach(e=>e.update(t))}}const W={defaultColor:"#000",toHsva:O,fromHsva:({h:r,s:t,v:e})=>B({h:r,s:t,v:e,a:1}),equal:V,fromAttr:r=>r};class Z extends Q{get colorModel(){return W}}class q extends Z{}customElements.define("hex-color-picker",q)}}]); diff --git a/data/gitea/public/assets/js/contributors-graph-code-frequency-graph-recent-commits-graph.eb309961.js b/data/gitea/public/assets/js/contributors-graph-code-frequency-graph-recent-commits-graph.eb309961.js new file mode 100644 index 0000000..6a281e6 --- /dev/null +++ b/data/gitea/public/assets/js/contributors-graph-code-frequency-graph-recent-commits-graph.eb309961.js @@ -0,0 +1,3 @@ +var ar=Object.defineProperty;var lr=(vt,nt,G)=>nt in vt?ar(vt,nt,{enumerable:!0,configurable:!0,writable:!0,value:G}):vt[nt]=G;var R=(vt,nt,G)=>(lr(vt,typeof nt!="symbol"?nt+"":nt,G),G);(self.webpackChunk=self.webpackChunk||[]).push([["contributors-graph-code-frequency-graph-recent-commits-graph"],{"./node_modules/dayjs/plugin/advancedFormat.js":function(vt){(function(nt,G){vt.exports=G()})(this,function(){"use strict";return function(nt,G){var d=G.prototype,W=d.format;d.format=function(X){var Q=this,ut=this.$locale();if(!this.isValid())return W.bind(this)(X);var j=this.$utils(),at=(X||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(K){switch(K){case"Q":return Math.ceil((Q.$M+1)/3);case"Do":return ut.ordinal(Q.$D);case"gggg":return Q.weekYear();case"GGGG":return Q.isoWeekYear();case"wo":return ut.ordinal(Q.week(),"W");case"w":case"ww":return j.s(Q.week(),K==="w"?1:2,"0");case"W":case"WW":return j.s(Q.isoWeek(),K==="W"?1:2,"0");case"k":case"kk":return j.s(String(Q.$H===0?24:Q.$H),K==="k"?1:2,"0");case"X":return Math.floor(Q.$d.getTime()/1e3);case"x":return Q.$d.getTime();case"z":return"["+Q.offsetName()+"]";case"zzz":return"["+Q.offsetName("long")+"]";default:return K}});return W.bind(this)(at)}}})},"./node_modules/dayjs/plugin/customParseFormat.js":function(vt){(function(nt,G){vt.exports=G()})(this,function(){"use strict";var nt={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},G=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,d=/\d\d/,W=/\d\d?/,X=/\d*[^-_:/,()\s\d]+/,Q={},ut=function(z){return(z=+z)+(z>68?1900:2e3)},j=function(z){return function(q){this[z]=+q}},at=[/[+-]\d\d:?(\d\d)?|Z/,function(z){(this.zone||(this.zone={})).offset=function(q){if(!q||q==="Z")return 0;var ct=q.match(/([+-]|\d\d)/g),ht=60*ct[1]+(+ct[2]||0);return ht===0?0:ct[0]==="+"?-ht:ht}(z)}],K=function(z){var q=Q[z];return q&&(q.indexOf?q:q.s.concat(q.f))},lt=function(z,q){var ct,ht=Q.meridiem;if(ht){for(var Pt=1;Pt<=24;Pt+=1)if(z.indexOf(ht(Pt,0,q))>-1){ct=Pt>12;break}}else ct=z===(q?"pm":"PM");return ct},et={A:[X,function(z){this.afternoon=lt(z,!1)}],a:[X,function(z){this.afternoon=lt(z,!0)}],S:[/\d/,function(z){this.milliseconds=100*+z}],SS:[d,function(z){this.milliseconds=10*+z}],SSS:[/\d{3}/,function(z){this.milliseconds=+z}],s:[W,j("seconds")],ss:[W,j("seconds")],m:[W,j("minutes")],mm:[W,j("minutes")],H:[W,j("hours")],h:[W,j("hours")],HH:[W,j("hours")],hh:[W,j("hours")],D:[W,j("day")],DD:[d,j("day")],Do:[X,function(z){var q=Q.ordinal,ct=z.match(/\d+/);if(this.day=ct[0],q)for(var ht=1;ht<=31;ht+=1)q(ht).replace(/\[|\]/g,"")===z&&(this.day=ht)}],M:[W,j("month")],MM:[d,j("month")],MMM:[X,function(z){var q=K("months"),ct=(K("monthsShort")||q.map(function(ht){return ht.slice(0,3)})).indexOf(z)+1;if(ct<1)throw new Error;this.month=ct%12||ct}],MMMM:[X,function(z){var q=K("months").indexOf(z)+1;if(q<1)throw new Error;this.month=q%12||q}],Y:[/[+-]?\d+/,j("year")],YY:[d,function(z){this.year=ut(z)}],YYYY:[/\d{4}/,j("year")],Z:at,ZZ:at};function ft(z){var q,ct;q=z,ct=Q&&Q.formats;for(var ht=(z=q.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(Tt,jt,Dt){var xt=Dt&&Dt.toUpperCase();return jt||ct[Dt]||nt[Dt]||ct[xt].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(Vt,N,tt){return N||tt.slice(1)})})).match(G),Pt=ht.length,Bt=0;Bt-1)return new Date((wt==="X"?1e3:1)*st);var ot=ft(wt)(st),Lt=ot.year,Ht=ot.month,we=ot.day,Et=ot.hours,ne=ot.minutes,he=ot.seconds,Qt=ot.milliseconds,Nt=ot.zone,qt=new Date,St=we||(Lt||Ht?1:qt.getDate()),$t=Lt||qt.getFullYear(),Rt=0;Lt&&!Ht||(Rt=Ht>0?Ht-1:qt.getMonth());var Yt=Et||0,Mt=ne||0,Se=he||0,Zt=Qt||0;return Nt?new Date(Date.UTC($t,Rt,St,Yt,Mt,Se,Zt+60*Nt.offset*1e3)):bt?new Date(Date.UTC($t,Rt,St,Yt,Mt,Se,Zt)):new Date($t,Rt,St,Yt,Mt,Se,Zt)}catch{return new Date("")}}(Kt,At,Gt),this.init(),xt&&xt!==!0&&(this.$L=this.locale(xt).$L),Dt&&Kt!=this.format(At)&&(this.$d=new Date("")),Q={}}else if(At instanceof Array)for(var Vt=At.length,N=1;N<=Vt;N+=1){Wt[1]=At[N-1];var tt=ct.apply(this,Wt);if(tt.isValid()){this.$d=tt.$d,this.$L=tt.$L,this.init();break}N===Vt&&(this.$d=new Date(""))}else Pt.call(this,Bt)}}})},"./node_modules/dayjs/plugin/isoWeek.js":function(vt){(function(nt,G){vt.exports=G()})(this,function(){"use strict";var nt="day";return function(G,d,W){var X=function(j){return j.add(4-j.isoWeekday(),nt)},Q=d.prototype;Q.isoWeekYear=function(){return X(this).year()},Q.isoWeek=function(j){if(!this.$utils().u(j))return this.add(7*(j-this.isoWeek()),nt);var at,K,lt,et,ft=X(this),z=(at=this.isoWeekYear(),K=this.$u,lt=(K?W.utc:W)().year(at).startOf("year"),et=4-lt.isoWeekday(),lt.isoWeekday()>4&&(et+=7),lt.add(et,nt));return ft.diff(z,"week")+1},Q.isoWeekday=function(j){return this.$utils().u(j)?this.day()||7:this.day(this.day()%7?j:j-7)};var ut=Q.startOf;Q.startOf=function(j,at){var K=this.$utils(),lt=!!K.u(at)||at;return K.p(j)==="isoweek"?lt?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):ut.bind(this)(j,at)}}})},"./node_modules/dayjs/plugin/localizedFormat.js":function(vt){(function(nt,G){vt.exports=G()})(this,function(){"use strict";var nt={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(G,d,W){var X=d.prototype,Q=X.format;W.en.formats=nt,X.format=function(ut){ut===void 0&&(ut="YYYY-MM-DDTHH:mm:ssZ");var j=this.$locale().formats,at=function(K,lt){return K.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(et,ft,z){var q=z&&z.toUpperCase();return ft||lt[z]||nt[z]||lt[q].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(ct,ht,Pt){return ht||Pt.slice(1)})})}(ut,j===void 0?{}:j);return Q.call(this,at)}}})},"./node_modules/dayjs/plugin/quarterOfYear.js":function(vt){(function(nt,G){vt.exports=G()})(this,function(){"use strict";var nt="month",G="quarter";return function(d,W){var X=W.prototype;X.quarter=function(j){return this.$utils().u(j)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(j-1))};var Q=X.add;X.add=function(j,at){return j=Number(j),this.$utils().p(at)===G?this.add(3*j,nt):Q.bind(this)(j,at)};var ut=X.startOf;X.startOf=function(j,at){var K=this.$utils(),lt=!!K.u(at)||at;if(K.p(j)===G){var et=this.quarter()-1;return lt?this.month(3*et).startOf(nt).startOf("day"):this.month(3*et+2).endOf(nt).endOf("day")}return ut.bind(this)(j,at)}}})},"./node_modules/chart.js/dist/chart.js":function(vt,nt,G){"use strict";G.d(nt,{A6:function(){return Yt},E8:function(){return pe},FN:function(){return Re},No:function(){return le},UA:function(){return fi},ZT:function(){return Pe},dN:function(){return pt},hE:function(){return co},ij:function(){return bi},kc:function(){return jn},m_:function(){return bo},s$:function(){return Fn},t1:function(){return fe}});var d=G("./node_modules/chart.js/dist/chunks/helpers.segment.js");class W{constructor(){this._request=null,this._charts=new Map,this._running=!1,this._lastDate=void 0}_notify(t,e,i,n){const o=e.listeners[n],a=e.duration;o.forEach(l=>l({chart:t,initial:e.initial,numSteps:a,currentStep:Math.min(i-e.start,a)}))}_refresh(){this._request||(this._running=!0,this._request=d.r.call(window,()=>{this._update(),this._request=null,this._running&&this._refresh()}))}_update(t=Date.now()){let e=0;this._charts.forEach((i,n)=>{if(!i.running||!i.items.length)return;const o=i.items;let a=o.length-1,l=!1,h;for(;a>=0;--a)h=o[a],h._active?(h._total>i.duration&&(i.duration=h._total),h.tick(t),l=!0):(o[a]=o[o.length-1],o.pop());l&&(n.draw(),this._notify(n,i,t,"progress")),o.length||(i.running=!1,this._notify(n,i,t,"complete"),i.initial=!1),e+=o.length}),this._lastDate=t,e===0&&(this._running=!1)}_getAnims(t){const e=this._charts;let i=e.get(t);return i||(i={running:!1,initial:!0,items:[],listeners:{complete:[],progress:[]}},e.set(t,i)),i}listen(t,e,i){this._getAnims(t).listeners[e].push(i)}add(t,e){!e||!e.length||this._getAnims(t).items.push(...e)}has(t){return this._getAnims(t).items.length>0}start(t){const e=this._charts.get(t);e&&(e.running=!0,e.start=Date.now(),e.duration=e.items.reduce((i,n)=>Math.max(i,n._duration),0),this._refresh())}running(t){if(!this._running)return!1;const e=this._charts.get(t);return!(!e||!e.running||!e.items.length)}stop(t){const e=this._charts.get(t);if(!e||!e.items.length)return;const i=e.items;let n=i.length-1;for(;n>=0;--n)i[n].cancel();e.items=[],this._notify(t,e,Date.now(),"complete")}remove(t){return this._charts.delete(t)}}var X=new W;const Q="transparent",ut={boolean(s,t,e){return e>.5?t:s},color(s,t,e){const i=(0,d.c)(s||Q),n=i.valid&&(0,d.c)(t||Q);return n&&n.valid?n.mix(i,e).hexString():t},number(s,t,e){return s+(t-s)*e}};class j{constructor(t,e,i,n){const o=e[i];n=(0,d.a)([t.to,n,o,t.from]);const a=(0,d.a)([t.from,o,n]);this._active=!0,this._fn=t.fn||ut[t.type||typeof a],this._easing=d.e[t.easing]||d.e.linear,this._start=Math.floor(Date.now()+(t.delay||0)),this._duration=this._total=Math.floor(t.duration),this._loop=!!t.loop,this._target=e,this._prop=i,this._from=a,this._to=n,this._promises=void 0}active(){return this._active}update(t,e,i){if(this._active){this._notify(!1);const n=this._target[this._prop],o=i-this._start,a=this._duration-o;this._start=i,this._duration=Math.floor(Math.max(a,t.duration)),this._total+=o,this._loop=!!t.loop,this._to=(0,d.a)([t.to,e,n,t.from]),this._from=(0,d.a)([t.from,n,e])}}cancel(){this._active&&(this.tick(Date.now()),this._active=!1,this._notify(!1))}tick(t){const e=t-this._start,i=this._duration,n=this._prop,o=this._from,a=this._loop,l=this._to;let h;if(this._active=o!==l&&(a||e1?2-h:h,h=this._easing(Math.min(1,Math.max(0,h))),this._target[n]=this._fn(o,l,h)}wait(){const t=this._promises||(this._promises=[]);return new Promise((e,i)=>{t.push({res:e,rej:i})})}_notify(t){const e=t?"res":"rej",i=this._promises||[];for(let n=0;n{const o=t[n];if(!(0,d.i)(o))return;const a={};for(const l of e)a[l]=o[l];((0,d.b)(o.properties)&&o.properties||[n]).forEach(l=>{(l===n||!i.has(l))&&i.set(l,a)})})}_animateOptions(t,e){const i=e.options,n=lt(t,i);if(!n)return[];const o=this._createAnimations(n,i);return i.$shared&&K(t.options.$animations,i).then(()=>{t.options=i},()=>{}),o}_createAnimations(t,e){const i=this._properties,n=[],o=t.$animations||(t.$animations={}),a=Object.keys(e),l=Date.now();let h;for(h=a.length-1;h>=0;--h){const u=a[h];if(u.charAt(0)==="$")continue;if(u==="options"){n.push(...this._animateOptions(t,e));continue}const p=e[u];let b=o[u];const _=i.get(u);if(b)if(_&&b.active()){b.update(_,p,l);continue}else b.cancel();if(!_||!_.duration){t[u]=p;continue}o[u]=b=new j(_,t,u,p),n.push(b)}return n}update(t,e){if(this._properties.size===0){Object.assign(t,e);return}const i=this._createAnimations(t,e);if(i.length)return X.add(this._chart,i),!0}}function K(s,t){const e=[],i=Object.keys(t);for(let n=0;n0||!e&&o<0)return n.index}return null}function At(s,t){const{chart:e,_cachedMeta:i}=s,n=e._stacks||(e._stacks={}),{iScale:o,vScale:a,index:l}=i,h=o.axis,u=a.axis,p=Bt(o,a,i),b=t.length;let _;for(let y=0;ye[i].axis===t).shift()}function jt(s,t){return(0,d.j)(s,{active:!1,dataset:void 0,datasetIndex:t,index:t,mode:"default",type:"dataset"})}function Dt(s,t,e){return(0,d.j)(s,{active:!1,dataIndex:t,parsed:void 0,raw:void 0,element:e,index:t,mode:"default",type:"data"})}function xt(s,t){const e=s.controller.index,i=s.vScale&&s.vScale.axis;if(i){t=t||s._parsed;for(const n of t){const o=n._stacks;if(!o||o[i]===void 0||o[i][e]===void 0)return;delete o[i][e],o[i]._visualValues!==void 0&&o[i]._visualValues[e]!==void 0&&delete o[i]._visualValues[e]}}}const Vt=s=>s==="reset"||s==="none",N=(s,t)=>t?s:Object.assign({},s),tt=(s,t,e)=>s&&!t.hidden&&t._stacked&&{keys:q(e,!0),values:null};class st{constructor(t,e){this.chart=t,this._ctx=t.ctx,this.index=e,this._cachedDataOpts={},this._cachedMeta=this.getMeta(),this._type=this._cachedMeta.type,this.options=void 0,this._parsing=!1,this._data=void 0,this._objectData=void 0,this._sharedOptions=void 0,this._drawStart=void 0,this._drawCount=void 0,this.enableOptionSharing=!1,this.supportsDecimation=!1,this.$context=void 0,this._syncList=[],this.datasetElementType=new.target.datasetElementType,this.dataElementType=new.target.dataElementType,this.initialize()}initialize(){const t=this._cachedMeta;this.configure(),this.linkScales(),t._stacked=Pt(t.vScale,t),this.addElements(),this.options.fill&&!this.chart.isPluginEnabled("filler")&&console.warn("Tried to use the 'fill' option without the 'Filler' plugin enabled. Please import and register the 'Filler' plugin and make sure it is not disabled in the options")}updateIndex(t){this.index!==t&&xt(this._cachedMeta),this.index=t}linkScales(){const t=this.chart,e=this._cachedMeta,i=this.getDataset(),n=(b,_,y,M)=>b==="x"?_:b==="r"?M:y,o=e.xAxisID=(0,d.v)(i.xAxisID,Tt(t,"x")),a=e.yAxisID=(0,d.v)(i.yAxisID,Tt(t,"y")),l=e.rAxisID=(0,d.v)(i.rAxisID,Tt(t,"r")),h=e.indexAxis,u=e.iAxisID=n(h,o,a,l),p=e.vAxisID=n(h,a,o,l);e.xScale=this.getScaleForId(o),e.yScale=this.getScaleForId(a),e.rScale=this.getScaleForId(l),e.iScale=this.getScaleForId(u),e.vScale=this.getScaleForId(p)}getDataset(){return this.chart.data.datasets[this.index]}getMeta(){return this.chart.getDatasetMeta(this.index)}getScaleForId(t){return this.chart.scales[t]}_getOtherScale(t){const e=this._cachedMeta;return t===e.iScale?e.vScale:e.iScale}reset(){this._update("reset")}_destroy(){const t=this._cachedMeta;this._data&&(0,d.u)(this._data,this),t._stacked&&xt(t)}_dataCheck(){const t=this.getDataset(),e=t.data||(t.data=[]),i=this._data;if((0,d.i)(e))this._data=ht(e);else if(i!==e){if(i){(0,d.u)(i,this);const n=this._cachedMeta;xt(n),n._parsed=[]}e&&Object.isExtensible(e)&&(0,d.l)(e,this),this._syncList=[],this._data=e}}addElements(){const t=this._cachedMeta;this._dataCheck(),this.datasetElementType&&(t.dataset=new this.datasetElementType)}buildOrUpdateElements(t){const e=this._cachedMeta,i=this.getDataset();let n=!1;this._dataCheck();const o=e._stacked;e._stacked=Pt(e.vScale,e),e.stack!==i.stack&&(n=!0,xt(e),e.stack=i.stack),this._resyncElements(t),(n||o!==e._stacked)&&At(this,e._parsed)}configure(){const t=this.chart.config,e=t.datasetScopeKeys(this._type),i=t.getOptionScopes(this.getDataset(),e,!0);this.options=t.createResolver(i,this.getContext()),this._parsing=this.options.parsing,this._cachedDataOpts={}}parse(t,e){const{_cachedMeta:i,_data:n}=this,{iScale:o,_stacked:a}=i,l=o.axis;let h=t===0&&e===n.length?!0:i._sorted,u=t>0&&i._parsed[t-1],p,b,_;if(this._parsing===!1)i._parsed=n,i._sorted=!0,_=n;else{(0,d.b)(n[t])?_=this.parseArrayData(i,n,t,e):(0,d.i)(n[t])?_=this.parseObjectData(i,n,t,e):_=this.parsePrimitiveData(i,n,t,e);const y=()=>b[l]===null||u&&b[l]S||b=0;--_)if(!M()){this.updateRangeFromParsed(u,t,y,h);break}}return u}getAllParsedValues(t){const e=this._cachedMeta._parsed,i=[];let n,o,a;for(n=0,o=e.length;n=0&&tthis.getContext(i,n,e),S=u.resolveNamedOptions(_,y,M,b);return S.$shared&&(S.$shared=h,o[a]=Object.freeze(N(S,h))),S}_resolveAnimations(t,e,i){const n=this.chart,o=this._cachedDataOpts,a=`animation-${e}`,l=o[a];if(l)return l;let h;if(n.options.animation!==!1){const p=this.chart.config,b=p.datasetAnimationScopeKeys(this._type,e),_=p.getOptionScopes(this.getDataset(),b);h=p.createResolver(_,this.getContext(t,i,e))}const u=new at(n,h&&h.animations);return h&&h._cacheable&&(o[a]=Object.freeze(u)),u}getSharedOptions(t){if(t.$shared)return this._sharedOptions||(this._sharedOptions=Object.assign({},t))}includeOptions(t,e){return!e||Vt(t)||this.chart._animationsDisabled}_getSharedOptions(t,e){const i=this.resolveDataElementOptions(t,e),n=this._sharedOptions,o=this.getSharedOptions(i),a=this.includeOptions(e,o)||o!==n;return this.updateSharedOptions(o,e,i),{sharedOptions:o,includeOptions:a}}updateElement(t,e,i,n){Vt(n)?Object.assign(t,i):this._resolveAnimations(e,n).update(t,i)}updateSharedOptions(t,e,i){t&&!Vt(e)&&this._resolveAnimations(void 0,e).update(t,i)}_setStyle(t,e,i,n){t.active=n;const o=this.getStyle(e,n);this._resolveAnimations(e,i,n).update(t,{options:!n&&this.getSharedOptions(o)||o})}removeHoverStyle(t,e,i){this._setStyle(t,i,"active",!1)}setHoverStyle(t,e,i){this._setStyle(t,i,"active",!0)}_removeDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!1)}_setDatasetHoverStyle(){const t=this._cachedMeta.dataset;t&&this._setStyle(t,void 0,"active",!0)}_resyncElements(t){const e=this._data,i=this._cachedMeta.data;for(const[l,h,u]of this._syncList)this[l](h,u);this._syncList=[];const n=i.length,o=e.length,a=Math.min(o,n);a&&this.parse(0,a),o>n?this._insertElements(n,o-n,t):o{for(u.length+=e,l=u.length-1;l>=a;l--)u[l]=u[l-e]};for(h(o),l=t;ln-o))}return s._cache.$bar}function bt(s){const t=s.iScale,e=wt(t,s.type);let i=t._length,n,o,a,l;const h=()=>{a===32767||a===-32768||((0,d.h)(l)&&(i=Math.min(i,Math.abs(a-l)||i)),l=a)};for(n=0,o=e.length;n0?n[s-1]:null,l=sMath.abs(l)&&(h=l,u=a),t[e.axis]=u,t._custom={barStart:h,barEnd:u,start:n,end:o,min:a,max:l}}function we(s,t,e,i){return(0,d.b)(s)?Ht(s,t,e,i):t[e.axis]=e.parse(s,i),t}function Et(s,t,e,i){const n=s.iScale,o=s.vScale,a=n.getLabels(),l=n===o,h=[];let u,p,b,_;for(u=e,p=e+i;u=e?1:-1)}function Qt(s){let t,e,i,n,o;return s.horizontal?(t=s.base>s.x,e="left",i="right"):(t=s.baseh.controller.options.grouped),o=i.options.stacked,a=[],l=h=>{const u=h.controller.getParsed(e),p=u&&u[h.vScale.axis];if((0,d.k)(p)||isNaN(p))return!0};for(const h of n)if(!(e!==void 0&&l(h))&&((o===!1||a.indexOf(h.stack)===-1||o===void 0&&h.stack===void 0)&&a.push(h.stack),h.index===t))break;return a.length||a.push(void 0),a}_getStackCount(t){return this._getStacks(void 0,t).length}_getStackIndex(t,e,i){const n=this._getStacks(t,i),o=e!==void 0?n.indexOf(e):-1;return o===-1?n.length-1:o}_getRuler(){const t=this.options,e=this._cachedMeta,i=e.iScale,n=[];let o,a;for(o=0,a=e.data.length;o=0;--i)e=Math.max(e,t[i].size(this.resolveDataElementOptions(i))/2);return e>0&&e}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart.data.labels||[],{xScale:n,yScale:o}=e,a=this.getParsed(t),l=n.getLabelForValue(a.x),h=o.getLabelForValue(a.y),u=a._custom;return{label:i[t]||"",value:"("+l+", "+h+(u?", "+u:"")+")"}}update(t){const e=this._cachedMeta.data;this.updateElements(e,0,e.length,t)}updateElements(t,e,i,n){const o=n==="reset",{iScale:a,vScale:l}=this._cachedMeta,{sharedOptions:h,includeOptions:u}=this._getSharedOptions(e,n),p=a.axis,b=l.axis;for(let _=e;_(0,d.p)(E,l,h,!0)?1:Math.max(L,L*e,A,A*e),M=(E,L,A)=>(0,d.p)(E,l,h,!0)?-1:Math.min(L,L*e,A,A*e),S=y(0,u,b),D=y(d.H,p,_),P=M(d.P,u,b),O=M(d.P+d.H,p,_);i=(S-P)/2,n=(D-O)/2,o=-(S+P)/2,a=-(D+O)/2}return{ratioX:i,ratioY:n,offsetX:o,offsetY:a}}class Zt extends st{constructor(t,e){super(t,e),this.enableOptionSharing=!0,this.innerRadius=void 0,this.outerRadius=void 0,this.offsetX=void 0,this.offsetY=void 0}linkScales(){}parse(t,e){const i=this.getDataset().data,n=this._cachedMeta;if(this._parsing===!1)n._parsed=i;else{let o=h=>+i[h];if((0,d.i)(i[t])){const{key:h="value"}=this._parsing;o=u=>+(0,d.f)(i[u],h)}let a,l;for(a=t,l=t+e;a0&&!isNaN(t)?d.T*(Math.abs(t)/e):0}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart,n=i.data.labels||[],o=(0,d.o)(e._parsed[t],i.options.locale);return{label:n[t]||"",value:o}}getMaxBorderWidth(t){let e=0;const i=this.chart;let n,o,a,l,h;if(!t){for(n=0,o=i.data.datasets.length;nt!=="spacing",_indexable:t=>t!=="spacing"&&!t.startsWith("borderDash")&&!t.startsWith("hoverBorderDash")}),R(Zt,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:i,color:n}}=t.legend.options;return e.labels.map((o,a)=>{const h=t.getDatasetMeta(0).controller.getStyle(a);return{text:o,fillStyle:h.backgroundColor,strokeStyle:h.borderColor,fontColor:n,lineWidth:h.borderWidth,pointStyle:i,hidden:!t.getDataVisibility(a),index:a}})}return[]}},onClick(t,e,i){i.chart.toggleDataVisibility(e.index),i.chart.update()}}}});class Pe extends st{initialize(){this.enableOptionSharing=!0,this.supportsDecimation=!0,super.initialize()}update(t){const e=this._cachedMeta,{dataset:i,data:n=[],_dataset:o}=e,a=this.chart._animationsDisabled;let{start:l,count:h}=(0,d.q)(e,n,a);this._drawStart=l,this._drawCount=h,(0,d.w)(e)&&(l=0,h=n.length),i._chart=this.chart,i._datasetIndex=this.index,i._decimated=!!o._decimated,i.points=n;const u=this.resolveDatasetElementOptions(t);this.options.showLine||(u.borderWidth=0),u.segment=this.options.segment,this.updateElement(i,void 0,{animated:!a,options:u},t),this.updateElements(n,l,h,t)}updateElements(t,e,i,n){const o=n==="reset",{iScale:a,vScale:l,_stacked:h,_dataset:u}=this._cachedMeta,{sharedOptions:p,includeOptions:b}=this._getSharedOptions(e,n),_=a.axis,y=l.axis,{spanGaps:M,segment:S}=this.options,D=(0,d.x)(M)?M:Number.POSITIVE_INFINITY,P=this.chart._animationsDisabled||o||n==="none",O=e+i,E=t.length;let L=e>0&&this.getParsed(e-1);for(let A=0;A=O){I.skip=!0;continue}const B=this.getParsed(A),$=(0,d.k)(B[y]),Z=I[_]=a.getPixelForValue(B[_],A),J=I[y]=o||$?l.getBasePixel():l.getPixelForValue(h?this.applyStack(l,B,h):B[y],A);I.skip=isNaN(Z)||isNaN(J)||$,I.stop=A>0&&Math.abs(B[_]-L[_])>D,S&&(I.parsed=B,I.raw=u.data[A]),b&&(I.options=p||this.resolveDataElementOptions(A,F.active?"active":n)),P||this.updateElement(F,A,I,n),L=B}}getMaxOverflow(){const t=this._cachedMeta,e=t.dataset,i=e.options&&e.options.borderWidth||0,n=t.data||[];if(!n.length)return i;const o=n[0].size(this.resolveDataElementOptions(0)),a=n[n.length-1].size(this.resolveDataElementOptions(n.length-1));return Math.max(i,o,a)/2}draw(){const t=this._cachedMeta;t.dataset.updateControlPoints(this.chart.chartArea,t.iScale.axis),super.draw()}}R(Pe,"id","line"),R(Pe,"defaults",{datasetElementType:"line",dataElementType:"point",showLine:!0,spanGaps:!1}),R(Pe,"overrides",{scales:{_index_:{type:"category"},_value_:{type:"linear"}}});class re extends st{constructor(t,e){super(t,e),this.innerRadius=void 0,this.outerRadius=void 0}getLabelAndValue(t){const e=this._cachedMeta,i=this.chart,n=i.data.labels||[],o=(0,d.o)(e._parsed[t].r,i.options.locale);return{label:n[t]||"",value:o}}parseObjectData(t,e,i,n){return d.y.bind(this)(t,e,i,n)}update(t){const e=this._cachedMeta.data;this._updateRadius(),this.updateElements(e,0,e.length,t)}getMinMax(){const t=this._cachedMeta,e={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY};return t.data.forEach((i,n)=>{const o=this.getParsed(n).r;!isNaN(o)&&this.chart.getDataVisibility(n)&&(oe.max&&(e.max=o))}),e}_updateRadius(){const t=this.chart,e=t.chartArea,i=t.options,n=Math.min(e.right-e.left,e.bottom-e.top),o=Math.max(n/2,0),a=Math.max(i.cutoutPercentage?o/100*i.cutoutPercentage:1,0),l=(o-a)/t.getVisibleDatasetCount();this.outerRadius=o-l*this.index,this.innerRadius=this.outerRadius-l}updateElements(t,e,i,n){const o=n==="reset",a=this.chart,h=a.options.animation,u=this._cachedMeta.rScale,p=u.xCenter,b=u.yCenter,_=u.getIndexAngle(0)-.5*d.P;let y=_,M;const S=360/this.countVisibleElements();for(M=0;M{!isNaN(this.getParsed(n).r)&&this.chart.getDataVisibility(n)&&e++}),e}_computeAngle(t,e,i){return this.chart.getDataVisibility(t)?(0,d.t)(this.resolveDataElementOptions(t,e).angle||i):0}}R(re,"id","polarArea"),R(re,"defaults",{dataElementType:"arc",animation:{animateRotate:!0,animateScale:!0},animations:{numbers:{type:"number",properties:["x","y","startAngle","endAngle","innerRadius","outerRadius"]}},indexAxis:"r",startAngle:0}),R(re,"overrides",{aspectRatio:1,plugins:{legend:{labels:{generateLabels(t){const e=t.data;if(e.labels.length&&e.datasets.length){const{labels:{pointStyle:i,color:n}}=t.legend.options;return e.labels.map((o,a)=>{const h=t.getDatasetMeta(0).controller.getStyle(a);return{text:o,fillStyle:h.backgroundColor,strokeStyle:h.borderColor,fontColor:n,lineWidth:h.borderWidth,pointStyle:i,hidden:!t.getDataVisibility(a),index:a}})}return[]}},onClick(t,e,i){i.chart.toggleDataVisibility(e.index),i.chart.update()}}},scales:{r:{type:"radialLinear",angleLines:{display:!1},beginAtZero:!0,grid:{circular:!0},pointLabels:{display:!1},startAngle:0}}});class Ft extends Zt{}R(Ft,"id","pie"),R(Ft,"defaults",{cutout:0,rotation:0,circumference:360,radius:"100%"});class yt extends st{getLabelAndValue(t){const e=this._cachedMeta.vScale,i=this.getParsed(t);return{label:e.getLabels()[t],value:""+e.getLabelForValue(i[e.axis])}}parseObjectData(t,e,i,n){return d.y.bind(this)(t,e,i,n)}update(t){const e=this._cachedMeta,i=e.dataset,n=e.data||[],o=e.iScale.getLabels();if(i.points=n,t!=="resize"){const a=this.resolveDatasetElementOptions(t);this.options.showLine||(a.borderWidth=0);const l={_loop:!0,_fullLoop:o.length===n.length,options:a};this.updateElement(i,void 0,l,t)}this.updateElements(n,0,n.length,t)}updateElements(t,e,i,n){const o=this._cachedMeta.rScale,a=n==="reset";for(let l=e;l0&&this.getParsed(e-1);for(let L=e;L0&&Math.abs(F[y]-E[y])>P,D&&(I.parsed=F,I.raw=u.data[L]),_&&(I.options=b||this.resolveDataElementOptions(L,A.active?"active":n)),O||this.updateElement(A,L,I,n),E=F}this.updateSharedOptions(b,n,p)}getMaxOverflow(){const t=this._cachedMeta,e=t.data||[];if(!this.options.showLine){let l=0;for(let h=e.length-1;h>=0;--h)l=Math.max(l,e[h].size(this.resolveDataElementOptions(h))/2);return l>0&&l}const i=t.dataset,n=i.options&&i.options.borderWidth||0;if(!e.length)return n;const o=e[0].size(this.resolveDataElementOptions(0)),a=e[e.length-1].size(this.resolveDataElementOptions(e.length-1));return Math.max(n,o,a)/2}}R(De,"id","scatter"),R(De,"defaults",{datasetElementType:!1,dataElementType:"point",showLine:!1,fill:!1}),R(De,"overrides",{interaction:{mode:"point"},scales:{x:{type:"linear"},y:{type:"linear"}}});var Yn=Object.freeze({__proto__:null,BarController:Yt,BubbleController:Mt,DoughnutController:Zt,LineController:Pe,PieController:Ft,PolarAreaController:re,RadarController:yt,ScatterController:De});function It(){throw new Error("This method is not implemented: Check that a complete date adapter is provided.")}class mi{constructor(t){R(this,"options");this.options=t||{}}static override(t){Object.assign(mi.prototype,t)}init(){}formats(){return It()}parse(){return It()}format(){return It()}add(){return It()}diff(){return It()}startOf(){return It()}endOf(){return It()}}var bi={_date:mi};function $n(s,t,e,i){const{controller:n,data:o,_sorted:a}=s,l=n._cachedMeta.iScale;if(l&&t===l.axis&&t!=="r"&&a&&o.length){const h=l._reversePixels?d.A:d.B;if(i){if(n._sharedOptions){const u=o[0],p=typeof u.getRange=="function"&&u.getRange(t);if(p){const b=h(o,t,e-p),_=h(o,t,e+p);return{lo:b.lo,hi:_.hi}}}}else return h(o,t,e)}return{lo:0,hi:o.length-1}}function Ie(s,t,e,i,n){const o=s.getSortedVisibleDatasetMetas(),a=e[t];for(let l=0,h=o.length;l{h[a](t[e],n)&&(o.push({element:h,datasetIndex:u,index:p}),l=l||h.inRange(t.x,t.y,n))}),i&&!l?[]:o}var Kn={evaluateInteractionItems:Ie,modes:{index(s,t,e,i){const n=(0,d.z)(t,s),o=e.axis||"x",a=e.includeInvisible||!1,l=e.intersect?Oe(s,n,o,i,a):xe(s,n,o,!1,i,a),h=[];return l.length?(s.getSortedVisibleDatasetMetas().forEach(u=>{const p=l[0].index,b=u.data[p];b&&!b.skip&&h.push({element:b,datasetIndex:u.index,index:p})}),h):[]},dataset(s,t,e,i){const n=(0,d.z)(t,s),o=e.axis||"xy",a=e.includeInvisible||!1;let l=e.intersect?Oe(s,n,o,i,a):xe(s,n,o,!1,i,a);if(l.length>0){const h=l[0].datasetIndex,u=s.getDatasetMeta(h).data;l=[];for(let p=0;pe.pos===t)}function Yi(s,t){return s.filter(e=>Gn.indexOf(e.pos)===-1&&e.box.axis===t)}function ze(s,t){return s.sort((e,i)=>{const n=t?i:e,o=t?e:i;return n.weight===o.weight?n.index-o.index:n.weight-o.weight})}function xi(s){const t=[];let e,i,n,o,a,l;for(e=0,i=(s||[]).length;eu.box.fullSize),!0),i=ze(Ce(t,"left"),!0),n=ze(Ce(t,"right")),o=ze(Ce(t,"top"),!0),a=ze(Ce(t,"bottom")),l=Yi(t,"x"),h=Yi(t,"y");return{fullSize:e,leftAndTop:i.concat(o),rightAndBottom:n.concat(h).concat(a).concat(l),chartArea:Ce(t,"chartArea"),vertical:i.concat(n).concat(h),horizontal:o.concat(a).concat(l)}}function $i(s,t,e,i){return Math.max(s[e],t[e])+Math.max(s[i],t[i])}function Ui(s,t){s.top=Math.max(s.top,t.top),s.left=Math.max(s.left,t.left),s.bottom=Math.max(s.bottom,t.bottom),s.right=Math.max(s.right,t.right)}function kt(s,t,e,i){const{pos:n,box:o}=e,a=s.maxPadding;if(!(0,d.i)(n)){e.size&&(s[n]-=e.size);const b=i[e.stack]||{size:0,count:1};b.size=Math.max(b.size,e.horizontal?o.height:o.width),e.size=b.size/b.count,s[n]+=e.size}o.getPadding&&Ui(a,o.getPadding());const l=Math.max(0,t.outerWidth-$i(a,s,"left","right")),h=Math.max(0,t.outerHeight-$i(a,s,"top","bottom")),u=l!==s.w,p=h!==s.h;return s.w=l,s.h=h,e.horizontal?{same:u,other:p}:{same:p,other:u}}function Jt(s){const t=s.maxPadding;function e(i){const n=Math.max(t[i]-s[i],0);return s[i]+=n,n}s.y+=e("top"),s.x+=e("left"),e("right"),e("bottom")}function qn(s,t){const e=t.maxPadding;function i(n){const o={left:0,top:0,right:0,bottom:0};return n.forEach(a=>{o[a]=Math.max(t[a],e[a])}),o}return i(s?["left","right"]:["top","bottom"])}function de(s,t,e,i){const n=[];let o,a,l,h,u,p;for(o=0,a=s.length,u=0;o{typeof S.beforeLayout=="function"&&S.beforeLayout()});const p=h.reduce((S,D)=>D.box.options&&D.box.options.display===!1?S:S+1,0)||1,b=Object.freeze({outerWidth:t,outerHeight:e,padding:n,availableWidth:o,availableHeight:a,vBoxMaxWidth:o/2/p,hBoxMaxHeight:a/2}),_=Object.assign({},n);Ui(_,(0,d.E)(i));const y=Object.assign({maxPadding:_,w:o,h:a,x:n.left,y:n.top},n),M=Qn(h.concat(u),b);de(l.fullSize,y,b,M),de(h,y,b,M),de(u,y,b,M)&&de(h,y,b,M),Jt(y),te(l.leftAndTop,y,b,M),y.x+=y.w,y.y+=y.h,te(l.rightAndBottom,y,b,M),s.chartArea={left:y.left,top:y.top,right:y.left+y.w,bottom:y.top+y.h,height:y.h,width:y.w},(0,d.F)(l.chartArea,S=>{const D=S.box;Object.assign(D,s.chartArea),D.update(y.w,y.h,{left:0,top:0,right:0,bottom:0})})}};class vi{acquireContext(t,e){}releaseContext(t){return!1}addEventListener(t,e,i){}removeEventListener(t,e,i){}getDevicePixelRatio(){return 1}getMaximumSize(t,e,i,n){return e=Math.max(0,e||t.width),i=i||t.height,{width:e,height:Math.max(0,n?Math.floor(e/n):i)}}isAttached(t){return!0}updateConfig(t){}}class Qe extends vi{acquireContext(t){return t&&t.getContext&&t.getContext("2d")||null}updateConfig(t){t.options.animation=!1}}const Ae="$chartjs",Mi={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup",pointerenter:"mouseenter",pointerdown:"mousedown",pointermove:"mousemove",pointerup:"mouseup",pointerleave:"mouseout",pointerout:"mouseout"},Xi=s=>s===null||s==="";function Zn(s,t){const e=s.style,i=s.getAttribute("height"),n=s.getAttribute("width");if(s[Ae]={initial:{height:i,width:n,style:{display:e.display,height:e.height,width:e.width}}},e.display=e.display||"block",e.boxSizing=e.boxSizing||"border-box",Xi(n)){const o=(0,d.J)(s,"width");o!==void 0&&(s.width=o)}if(Xi(i))if(s.style.height==="")s.height=s.width/(t||2);else{const o=(0,d.J)(s,"height");o!==void 0&&(s.height=o)}return s}const Ki=d.K?{passive:!0}:!1;function Jn(s,t,e){s&&s.addEventListener(t,e,Ki)}function ts(s,t,e){s&&s.canvas&&s.canvas.removeEventListener(t,e,Ki)}function es(s,t){const e=Mi[s.type]||s.type,{x:i,y:n}=(0,d.z)(s,t);return{type:e,chart:t,native:s,x:i!==void 0?i:null,y:n!==void 0?n:null}}function qe(s,t){for(const e of s)if(e===t||e.contains(t))return!0}function is(s,t,e){const i=s.canvas,n=new MutationObserver(o=>{let a=!1;for(const l of o)a=a||qe(l.addedNodes,i),a=a&&!qe(l.removedNodes,i);a&&e()});return n.observe(document,{childList:!0,subtree:!0}),n}function ns(s,t,e){const i=s.canvas,n=new MutationObserver(o=>{let a=!1;for(const l of o)a=a||qe(l.removedNodes,i),a=a&&!qe(l.addedNodes,i);a&&e()});return n.observe(document,{childList:!0,subtree:!0}),n}const ye=new Map;let Gi=0;function se(){const s=window.devicePixelRatio;s!==Gi&&(Gi=s,ye.forEach((t,e)=>{e.currentDevicePixelRatio!==s&&t()}))}function Qi(s,t){ye.size||window.addEventListener("resize",se),ye.set(s,t)}function Ze(s){ye.delete(s),ye.size||window.removeEventListener("resize",se)}function ss(s,t,e){const i=s.canvas,n=i&&(0,d.I)(i);if(!n)return;const o=(0,d.L)((l,h)=>{const u=n.clientWidth;e(l,h),u{const h=l[0],u=h.contentRect.width,p=h.contentRect.height;u===0&&p===0||o(u,p)});return a.observe(n),Qi(s,o),a}function Je(s,t,e){e&&e.disconnect(),t==="resize"&&Ze(s)}function ki(s,t,e){const i=s.canvas,n=(0,d.L)(o=>{s.ctx!==null&&e(es(o,s))},s);return Jn(i,t,n),n}class We extends vi{acquireContext(t,e){const i=t&&t.getContext&&t.getContext("2d");return i&&i.canvas===t?(Zn(t,e),i):null}releaseContext(t){const e=t.canvas;if(!e[Ae])return!1;const i=e[Ae].initial;["height","width"].forEach(o=>{const a=i[o];(0,d.k)(a)?e.removeAttribute(o):e.setAttribute(o,a)});const n=i.style||{};return Object.keys(n).forEach(o=>{e.style[o]=n[o]}),e.width=e.width,delete e[Ae],!0}addEventListener(t,e,i){this.removeEventListener(t,e);const n=t.$proxies||(t.$proxies={}),a={attach:is,detach:ns,resize:ss}[e]||ki;n[e]=a(t,e,i)}removeEventListener(t,e){const i=t.$proxies||(t.$proxies={}),n=i[e];if(!n)return;({attach:Je,detach:Je,resize:Je}[e]||ts)(t,e,n),i[e]=void 0}getDevicePixelRatio(){return window.devicePixelRatio}getMaximumSize(t,e,i,n){return(0,d.G)(t,e,i,n)}isAttached(t){const e=(0,d.I)(t);return!!(e&&e.isConnected)}}function os(s){return!(0,d.M)()||typeof OffscreenCanvas<"u"&&s instanceof OffscreenCanvas?Qe:We}class ee{constructor(){R(this,"x");R(this,"y");R(this,"active",!1);R(this,"options");R(this,"$animations")}tooltipPosition(t){const{x:e,y:i}=this.getProps(["x","y"],t);return{x:e,y:i}}hasValue(){return(0,d.x)(this.x)&&(0,d.x)(this.y)}getProps(t,e){const i=this.$animations;if(!e||!i)return this;const n={};return t.forEach(o=>{n[o]=i[o]&&i[o].active()?i[o]._to:this[o]}),n}}R(ee,"defaults",{}),R(ee,"defaultRoutes");function qi(s,t){const e=s.options.ticks,i=rs(s),n=Math.min(e.maxTicksLimit||i,i),o=e.major.enabled?ls(t):[],a=o.length,l=o[0],h=o[a-1],u=[];if(a>n)return lo(t,u,o,a/n),u;const p=as(o,t,n);if(a>0){let b,_;const y=a>1?Math.round((h-l)/(a-1)):null;for(je(t,u,p,(0,d.k)(y)?0:l-y,l),b=0,_=a-1;b<_;b++)je(t,u,p,o[b],o[b+1]);return je(t,u,p,h,(0,d.k)(y)?t.length:h+y),u}return je(t,u,p),u}function rs(s){const t=s.options.offset,e=s._tickSize(),i=s._length/e+(t?0:1),n=s._maxLength/e;return Math.floor(Math.min(i,n))}function as(s,t,e){const i=cs(s),n=t.length/e;if(!i)return Math.max(n,1);const o=(0,d.N)(i);for(let a=0,l=o.length-1;an)return h}return Math.max(n,1)}function ls(s){const t=[];let e,i;for(e=0,i=s.length;es==="left"?"right":s==="right"?"left":s,Zi=(s,t,e)=>t==="top"||t==="left"?s[t]+e:s[t]-e,Ji=(s,t)=>Math.min(t||s,s);function tn(s,t){const e=[],i=s.length/t,n=s.length;let o=0;for(;oa+l)))return h}function us(s,t){(0,d.F)(s,e=>{const i=e.gc,n=i.length/2;let o;if(n>t){for(o=0;oi?i:e,i=n&&e>i?e:i,{min:(0,d.O)(e,(0,d.O)(i,e)),max:(0,d.O)(i,(0,d.O)(e,i))}}getPadding(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}getTicks(){return this.ticks}getLabels(){const t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels||[]}getLabelItems(t=this.chart.chartArea){return this._labelItems||(this._labelItems=this._computeLabelItems(t))}beforeLayout(){this._cache={},this._dataLimitsCached=!1}beforeUpdate(){(0,d.Q)(this.options.beforeUpdate,[this])}update(t,e,i){const{beginAtZero:n,grace:o,ticks:a}=this.options,l=a.sampleSize;this.beforeUpdate(),this.maxWidth=t,this.maxHeight=e,this._margins=i=Object.assign({left:0,right:0,top:0,bottom:0},i),this.ticks=null,this._labelSizes=null,this._gridLineItems=null,this._labelItems=null,this.beforeSetDimensions(),this.setDimensions(),this.afterSetDimensions(),this._maxLength=this.isHorizontal()?this.width+i.left+i.right:this.height+i.top+i.bottom,this._dataLimitsCached||(this.beforeDataLimits(),this.determineDataLimits(),this.afterDataLimits(),this._range=(0,d.R)(this,o,n),this._dataLimitsCached=!0),this.beforeBuildTicks(),this.ticks=this.buildTicks()||[],this.afterBuildTicks();const h=l=o||i<=1||!this.isHorizontal()){this.labelRotation=n;return}const p=this._getLabelSizes(),b=p.widest.width,_=p.highest.height,y=(0,d.S)(this.chart.width-b,0,this.maxWidth);l=t.offset?this.maxWidth/i:y/(i-1),b+6>l&&(l=y/(i-(t.offset?.5:1)),h=this.maxHeight-ue(t.grid)-e.padding-wi(t.title,this.chart.options.font),u=Math.sqrt(b*b+_*_),a=(0,d.U)(Math.min(Math.asin((0,d.S)((p.highest.height+6)/l,-1,1)),Math.asin((0,d.S)(h/u,-1,1))-Math.asin((0,d.S)(_/u,-1,1)))),a=Math.max(n,Math.min(o,a))),this.labelRotation=a}afterCalculateLabelRotation(){(0,d.Q)(this.options.afterCalculateLabelRotation,[this])}afterAutoSkip(){}beforeFit(){(0,d.Q)(this.options.beforeFit,[this])}fit(){const t={width:0,height:0},{chart:e,options:{ticks:i,title:n,grid:o}}=this,a=this._isVisible(),l=this.isHorizontal();if(a){const h=wi(n,e.options.font);if(l?(t.width=this.maxWidth,t.height=ue(o)+h):(t.height=this.maxHeight,t.width=ue(o)+h),i.display&&this.ticks.length){const{first:u,last:p,widest:b,highest:_}=this._getLabelSizes(),y=i.padding*2,M=(0,d.t)(this.labelRotation),S=Math.cos(M),D=Math.sin(M);if(l){const P=i.mirror?0:D*b.width+S*_.height;t.height=Math.min(this.maxHeight,t.height+P+y)}else{const P=i.mirror?0:S*b.width+D*_.height;t.width=Math.min(this.maxWidth,t.width+P+y)}this._calculatePadding(u,p,D,S)}}this._handleMargins(),l?(this.width=this._length=e.width-this._margins.left-this._margins.right,this.height=t.height):(this.width=t.width,this.height=this._length=e.height-this._margins.top-this._margins.bottom)}_calculatePadding(t,e,i,n){const{ticks:{align:o,padding:a},position:l}=this.options,h=this.labelRotation!==0,u=l!=="top"&&this.axis==="x";if(this.isHorizontal()){const p=this.getPixelForTick(0)-this.left,b=this.right-this.getPixelForTick(this.ticks.length-1);let _=0,y=0;h?u?(_=n*t.width,y=i*e.height):(_=i*t.height,y=n*e.width):o==="start"?y=e.width:o==="end"?_=t.width:o!=="inner"&&(_=t.width/2,y=e.width/2),this.paddingLeft=Math.max((_-p+a)*this.width/(this.width-p),0),this.paddingRight=Math.max((y-b+a)*this.width/(this.width-b),0)}else{let p=e.height/2,b=t.height/2;o==="start"?(p=0,b=t.height):o==="end"&&(p=e.height,b=0),this.paddingTop=p+a,this.paddingBottom=b+a}}_handleMargins(){this._margins&&(this._margins.left=Math.max(this.paddingLeft,this._margins.left),this._margins.top=Math.max(this.paddingTop,this._margins.top),this._margins.right=Math.max(this.paddingRight,this._margins.right),this._margins.bottom=Math.max(this.paddingBottom,this._margins.bottom))}afterFit(){(0,d.Q)(this.options.afterFit,[this])}isHorizontal(){const{axis:t,position:e}=this.options;return e==="top"||e==="bottom"||t==="x"}isFullSize(){return this.options.fullSize}_convertTicksToLabels(t){this.beforeTickToLabelConversion(),this.generateTickLabels(t);let e,i;for(e=0,i=t.length;e({width:a[$]||0,height:l[$]||0});return{first:B(0),last:B(e-1),widest:B(F),highest:B(I),widths:a,heights:l}}getLabelForValue(t){return t}getPixelForValue(t,e){return NaN}getValueForPixel(t){}getPixelForTick(t){const e=this.ticks;return t<0||t>e.length-1?null:this.getPixelForValue(e[t].value)}getPixelForDecimal(t){this._reversePixels&&(t=1-t);const e=this._startPixel+t*this._length;return(0,d.W)(this._alignToPixels?(0,d.X)(this.chart,e,0):e)}getDecimalForPixel(t){const e=(t-this._startPixel)/this._length;return this._reversePixels?1-e:e}getBasePixel(){return this.getPixelForValue(this.getBaseValue())}getBaseValue(){const{min:t,max:e}=this;return t<0&&e<0?e:t>0&&e>0?t:0}getContext(t){const e=this.ticks||[];if(t>=0&&tl*n?l/i:h/n:h*n0}_computeGridLineItems(t){const e=this.axis,i=this.chart,n=this.options,{grid:o,position:a,border:l}=n,h=o.offset,u=this.isHorizontal(),b=this.ticks.length+(h?1:0),_=ue(o),y=[],M=l.setContext(this.getContext()),S=M.display?M.width:0,D=S/2,P=function(mt){return(0,d.X)(i,mt,S)};let O,E,L,A,F,I,B,$,Z,J,it,Ct;if(a==="top")O=P(this.bottom),I=this.bottom-_,$=O-D,J=P(t.top)+D,Ct=t.bottom;else if(a==="bottom")O=P(this.top),J=t.top,Ct=P(t.bottom)-D,I=O+D,$=this.top+_;else if(a==="left")O=P(this.right),F=this.right-_,B=O-D,Z=P(t.left)+D,it=t.right;else if(a==="right")O=P(this.left),Z=t.left,it=P(t.right)-D,F=O+D,B=this.left+_;else if(e==="x"){if(a==="center")O=P((t.top+t.bottom)/2+.5);else if((0,d.i)(a)){const mt=Object.keys(a)[0],_t=a[mt];O=P(this.chart.scales[mt].getPixelForValue(_t))}J=t.top,Ct=t.bottom,I=O+D,$=I+_}else if(e==="y"){if(a==="center")O=P((t.left+t.right)/2);else if((0,d.i)(a)){const mt=Object.keys(a)[0],_t=a[mt];O=P(this.chart.scales[mt].getPixelForValue(_t))}F=O-D,B=F-_,Z=t.left,it=t.right}const ie=(0,d.v)(n.ticks.maxTicksLimit,b),dt=Math.max(1,Math.ceil(b/ie));for(E=0;E0&&(Ke-=Xe/2);break}Nn={left:Ke,top:Hi,width:Xe+pi.width,height:Vi+pi.height,color:dt.backdropColor}}D.push({label:L,font:$,textOffset:it,options:{rotation:S,color:_t,strokeColor:ce,strokeWidth:zt,textAlign:gi,textBaseline:Ct,translation:[A,F],backdrop:Nn}})}return D}_getXAxisLabelAlignment(){const{position:t,ticks:e}=this.options;if(-(0,d.t)(this.labelRotation))return t==="top"?"left":"right";let n="center";return e.align==="start"?n="left":e.align==="end"?n="right":e.align==="inner"&&(n="inner"),n}_getYAxisLabelAlignment(t){const{position:e,ticks:{crossAlign:i,mirror:n,padding:o}}=this.options,a=this._getLabelSizes(),l=t+o,h=a.widest.width;let u,p;return e==="left"?n?(p=this.right+o,i==="near"?u="left":i==="center"?(u="center",p+=h/2):(u="right",p+=h)):(p=this.right-l,i==="near"?u="right":i==="center"?(u="center",p-=h/2):(u="left",p=this.left)):e==="right"?n?(p=this.left+o,i==="near"?u="right":i==="center"?(u="center",p-=h/2):(u="left",p-=h)):(p=this.left+l,i==="near"?u="left":i==="center"?(u="center",p+=h/2):(u="right",p=this.right)):u="right",{textAlign:u,x:p}}_computeLabelArea(){if(this.options.ticks.mirror)return;const t=this.chart,e=this.options.position;if(e==="left"||e==="right")return{top:0,left:this.left,bottom:t.height,right:this.right};if(e==="top"||e==="bottom")return{top:this.top,left:0,bottom:this.bottom,right:t.width}}drawBackground(){const{ctx:t,options:{backgroundColor:e},left:i,top:n,width:o,height:a}=this;e&&(t.save(),t.fillStyle=e,t.fillRect(i,n,o,a),t.restore())}getLineWidthForValue(t){const e=this.options.grid;if(!this._isVisible()||!e.display)return 0;const n=this.ticks.findIndex(o=>o.value===t);return n>=0?e.setContext(this.getContext(n)).lineWidth:0}drawGrid(t){const e=this.options.grid,i=this.ctx,n=this._gridLineItems||(this._gridLineItems=this._computeGridLineItems(t));let o,a;const l=(h,u,p)=>{!p.width||!p.color||(i.save(),i.lineWidth=p.width,i.strokeStyle=p.color,i.setLineDash(p.borderDash||[]),i.lineDashOffset=p.borderDashOffset,i.beginPath(),i.moveTo(h.x,h.y),i.lineTo(u.x,u.y),i.stroke(),i.restore())};if(e.display)for(o=0,a=n.length;o{this.draw(o)}}]:[{z:i,draw:o=>{this.drawBackground(),this.drawGrid(o),this.drawTitle()}},{z:n,draw:()=>{this.drawBorder()}},{z:e,draw:o=>{this.drawLabels(o)}}]}getMatchingVisibleMetas(t){const e=this.chart.getSortedVisibleDatasetMetas(),i=this.axis+"AxisID",n=[];let o,a;for(o=0,a=e.length;o{const i=e.split("."),n=i.pop(),o=[s].concat(i).join("."),a=t[e].split("."),l=a.pop(),h=a.join(".");d.d.route(o,n,h,l)})}function ms(s){return"id"in s&&"defaults"in s}class nn{constructor(){this.controllers=new ei(st,"datasets",!0),this.elements=new ei(ee,"elements"),this.plugins=new ei(Object,"plugins"),this.scales=new ei(ae,"scales"),this._typedRegistries=[this.controllers,this.scales,this.elements]}add(...t){this._each("register",t)}remove(...t){this._each("unregister",t)}addControllers(...t){this._each("register",t,this.controllers)}addElements(...t){this._each("register",t,this.elements)}addPlugins(...t){this._each("register",t,this.plugins)}addScales(...t){this._each("register",t,this.scales)}getController(t){return this._get(t,this.controllers,"controller")}getElement(t){return this._get(t,this.elements,"element")}getPlugin(t){return this._get(t,this.plugins,"plugin")}getScale(t){return this._get(t,this.scales,"scale")}removeControllers(...t){this._each("unregister",t,this.controllers)}removeElements(...t){this._each("unregister",t,this.elements)}removePlugins(...t){this._each("unregister",t,this.plugins)}removeScales(...t){this._each("unregister",t,this.scales)}_each(t,e,i){[...e].forEach(n=>{const o=i||this._getRegistryForType(n);i||o.isForType(n)||o===this.plugins&&n.id?this._exec(t,o,n):(0,d.F)(n,a=>{const l=i||this._getRegistryForType(a);this._exec(t,l,a)})})}_exec(t,e,i){const n=(0,d.a5)(t);(0,d.Q)(i["before"+n],[],i),e[t](i),(0,d.Q)(i["after"+n],[],i)}_getRegistryForType(t){for(let e=0;eo.filter(l=>!a.some(h=>l.plugin.id===h.plugin.id));this._notify(n(e,i),t,"stop"),this._notify(n(i,e),t,"start")}}function on(s){const t={},e=[],i=Object.keys(oe.plugins.items);for(let o=0;o1&&ni(s[0].toLowerCase());if(i)return i}throw new Error(`Cannot determine type of '${s}' axis. Please provide 'axis' or 'position' option.`)}function ln(s,t,e){if(e[t+"AxisID"]===s)return{axis:t}}function Pi(s,t){if(t.data&&t.data.datasets){const e=t.data.datasets.filter(i=>i.xAxisID===s||i.yAxisID===s);if(e.length)return ln(s,"x",e[0])||ln(s,"y",e[0])}return{}}function ys(s,t){const e=d.a3[s.type]||{scales:{}},i=t.scales||{},n=ii(s.type,t),o=Object.create(null);return Object.keys(i).forEach(a=>{const l=i[a];if(!(0,d.i)(l))return console.error(`Invalid scale configuration for scale: ${a}`);if(l._proxy)return console.warn(`Ignoring resolver passed as options for scale: ${a}`);const h=si(a,l,Pi(a,s),d.d.scales[l.type]),u=Ve(h,n),p=e.scales||{};o[a]=(0,d.ab)(Object.create(null),[{axis:h},l,p[h],p[u]])}),s.data.datasets.forEach(a=>{const l=a.type||s.type,h=a.indexAxis||ii(l,t),p=(d.a3[l]||{}).scales||{};Object.keys(p).forEach(b=>{const _=an(b,h),y=a[_+"AxisID"]||_;o[y]=o[y]||Object.create(null),(0,d.ab)(o[y],[{axis:_},i[y],p[b]])})}),Object.keys(o).forEach(a=>{const l=o[a];(0,d.ab)(l,[d.d.scales[l.type],d.d.scale])}),o}function cn(s){const t=s.options||(s.options={});t.plugins=(0,d.v)(t.plugins,{}),t.scales=ys(s,t)}function hn(s){return s=s||{},s.datasets=s.datasets||[],s.labels=s.labels||[],s}function vs(s){return s=s||{},s.data=hn(s.data),cn(s),s}const Di=new Map,oi=new Set;function ri(s,t){let e=Di.get(s);return e||(e=t(),Di.set(s,e),oi.add(e)),e}const He=(s,t,e)=>{const i=(0,d.f)(t,e);i!==void 0&&s.add(i)};class Ms{constructor(t){this._config=vs(t),this._scopeCache=new Map,this._resolverCache=new Map}get platform(){return this._config.platform}get type(){return this._config.type}set type(t){this._config.type=t}get data(){return this._config.data}set data(t){this._config.data=hn(t)}get options(){return this._config.options}set options(t){this._config.options=t}get plugins(){return this._config.plugins}update(){const t=this._config;this.clearCache(),cn(t)}clearCache(){this._scopeCache.clear(),this._resolverCache.clear()}datasetScopeKeys(t){return ri(t,()=>[[`datasets.${t}`,""]])}datasetAnimationScopeKeys(t,e){return ri(`${t}.transition.${e}`,()=>[[`datasets.${t}.transitions.${e}`,`transitions.${e}`],[`datasets.${t}`,""]])}datasetElementScopeKeys(t,e){return ri(`${t}-${e}`,()=>[[`datasets.${t}.elements.${e}`,`datasets.${t}`,`elements.${e}`,""]])}pluginScopeKeys(t){const e=t.id,i=this.type;return ri(`${i}-plugin-${e}`,()=>[[`plugins.${e}`,...t.additionalOptionScopes||[]]])}_cachedScopes(t,e){const i=this._scopeCache;let n=i.get(t);return(!n||e)&&(n=new Map,i.set(t,n)),n}getOptionScopes(t,e,i){const{options:n,type:o}=this,a=this._cachedScopes(t,i),l=a.get(e);if(l)return l;const h=new Set;e.forEach(p=>{t&&(h.add(t),p.forEach(b=>He(h,t,b))),p.forEach(b=>He(h,n,b)),p.forEach(b=>He(h,d.a3[o]||{},b)),p.forEach(b=>He(h,d.d,b)),p.forEach(b=>He(h,d.a6,b))});const u=Array.from(h);return u.length===0&&u.push(Object.create(null)),oi.has(e)&&a.set(e,u),u}chartOptionScopes(){const{options:t,type:e}=this;return[t,d.a3[e]||{},d.d.datasets[e]||{},{type:e},d.d,d.a6]}resolveNamedOptions(t,e,i,n=[""]){const o={$shared:!0},{resolver:a,subPrefixes:l}=dn(this._resolverCache,t,n);let h=a;if(ws(a,e)){o.$shared=!1,i=(0,d.a7)(i)?i():i;const u=this.createResolver(t,i,l);h=(0,d.a8)(a,i,u)}for(const u of e)o[u]=h[u];return o}createResolver(t,e,i=[""],n){const{resolver:o}=dn(this._resolverCache,t,i);return(0,d.i)(e)?(0,d.a8)(o,e,void 0,n):o}}function dn(s,t,e){let i=s.get(t);i||(i=new Map,s.set(t,i));const n=e.join();let o=i.get(n);return o||(o={resolver:(0,d.a9)(t,e),subPrefixes:e.filter(l=>!l.toLowerCase().includes("hover"))},i.set(n,o)),o}const ks=s=>(0,d.i)(s)&&Object.getOwnPropertyNames(s).some(t=>(0,d.a7)(s[t]));function ws(s,t){const{isScriptable:e,isIndexable:i}=(0,d.aa)(s);for(const n of t){const o=e(n),a=i(n),l=(a||o)&&s[n];if(o&&((0,d.a7)(l)||ks(l))||a&&(0,d.b)(l))return!0}return!1}var Ss="4.4.2";const Ps=["top","bottom","left","right","chartArea"];function un(s,t){return s==="top"||s==="bottom"||Ps.indexOf(s)===-1&&t==="x"}function fn(s,t){return function(e,i){return e[s]===i[s]?e[t]-i[t]:e[s]-i[s]}}function gn(s){const t=s.chart,e=t.options.animation;t.notifyPlugins("afterRender"),(0,d.Q)(e&&e.onComplete,[s],t)}function Ds(s){const t=s.chart,e=t.options.animation;(0,d.Q)(e&&e.onProgress,[s],t)}function pn(s){return(0,d.M)()&&typeof s=="string"?s=document.getElementById(s):s&&s.length&&(s=s[0]),s&&s.canvas&&(s=s.canvas),s}const Te={},Oi=s=>{const t=pn(s);return Object.values(Te).filter(e=>e.canvas===t).pop()};function Os(s,t,e){const i=Object.keys(s);for(const n of i){const o=+n;if(o>=t){const a=s[n];delete s[n],(e>0||o>t)&&(s[o+e]=a)}}}function Cs(s,t,e,i){return!e||s.type==="mouseout"?null:i?t:s}function ai(s,t,e){return s.options.clip?s[e]:t[e]}function As(s,t){const{xScale:e,yScale:i}=s;return e&&i?{left:ai(e,t,"left"),right:ai(e,t,"right"),top:ai(i,t,"top"),bottom:ai(i,t,"bottom")}:t}class fe{static register(...t){oe.add(...t),Ci()}static unregister(...t){oe.remove(...t),Ci()}constructor(t,e){const i=this.config=new Ms(e),n=pn(t),o=Oi(n);if(o)throw new Error("Canvas is already in use. Chart with ID '"+o.id+"' must be destroyed before the canvas with ID '"+o.canvas.id+"' can be reused.");const a=i.createResolver(i.chartOptionScopes(),this.getContext());this.platform=new(i.platform||os(n)),this.platform.updateConfig(i);const l=this.platform.acquireContext(n,a.aspectRatio),h=l&&l.canvas,u=h&&h.height,p=h&&h.width;if(this.id=(0,d.ac)(),this.ctx=l,this.canvas=h,this.width=p,this.height=u,this._options=a,this._aspectRatio=this.aspectRatio,this._layers=[],this._metasets=[],this._stacks=void 0,this.boxes=[],this.currentDevicePixelRatio=void 0,this.chartArea=void 0,this._active=[],this._lastEvent=void 0,this._listeners={},this._responsiveListeners=void 0,this._sortedMetasets=[],this.scales={},this._plugins=new sn,this.$proxies={},this._hiddenIndices={},this.attached=!1,this._animationsDisabled=void 0,this.$context=void 0,this._doResize=(0,d.ad)(b=>this.update(b),a.resizeDelay||0),this._dataChanges=[],Te[this.id]=this,!l||!h){console.error("Failed to create chart: can't acquire context from the given item");return}X.listen(this,"complete",gn),X.listen(this,"progress",Ds),this._initialize(),this.attached&&this.update()}get aspectRatio(){const{options:{aspectRatio:t,maintainAspectRatio:e},width:i,height:n,_aspectRatio:o}=this;return(0,d.k)(t)?e&&o?o:n?i/n:null:t}get data(){return this.config.data}set data(t){this.config.data=t}get options(){return this._options}set options(t){this.config.options=t}get registry(){return oe}_initialize(){return this.notifyPlugins("beforeInit"),this.options.responsive?this.resize():(0,d.ae)(this,this.options.devicePixelRatio),this.bindEvents(),this.notifyPlugins("afterInit"),this}clear(){return(0,d.af)(this.canvas,this.ctx),this}stop(){return X.stop(this),this}resize(t,e){X.running(this)?this._resizeBeforeDraw={width:t,height:e}:this._resize(t,e)}_resize(t,e){const i=this.options,n=this.canvas,o=i.maintainAspectRatio&&this.aspectRatio,a=this.platform.getMaximumSize(n,t,e,o),l=i.devicePixelRatio||this.platform.getDevicePixelRatio(),h=this.width?"resize":"attach";this.width=a.width,this.height=a.height,this._aspectRatio=this.aspectRatio,(0,d.ae)(this,l,!0)&&(this.notifyPlugins("resize",{size:a}),(0,d.Q)(i.onResize,[this,a],this),this.attached&&this._doResize(h)&&this.render())}ensureScalesHaveIDs(){const e=this.options.scales||{};(0,d.F)(e,(i,n)=>{i.id=n})}buildOrUpdateScales(){const t=this.options,e=t.scales,i=this.scales,n=Object.keys(i).reduce((a,l)=>(a[l]=!1,a),{});let o=[];e&&(o=o.concat(Object.keys(e).map(a=>{const l=e[a],h=si(a,l),u=h==="r",p=h==="x";return{options:l,dposition:u?"chartArea":p?"bottom":"left",dtype:u?"radialLinear":p?"category":"linear"}}))),(0,d.F)(o,a=>{const l=a.options,h=l.id,u=si(h,l),p=(0,d.v)(l.type,a.dtype);(l.position===void 0||un(l.position,u)!==un(a.dposition))&&(l.position=a.dposition),n[h]=!0;let b=null;if(h in i&&i[h].type===p)b=i[h];else{const _=oe.getScale(p);b=new _({id:h,type:p,ctx:this.ctx,chart:this}),i[b.id]=b}b.init(l,t)}),(0,d.F)(n,(a,l)=>{a||delete i[l]}),(0,d.F)(i,a=>{gt.configure(this,a,a.options),gt.addBox(this,a)})}_updateMetasets(){const t=this._metasets,e=this.data.datasets.length,i=t.length;if(t.sort((n,o)=>n.index-o.index),i>e){for(let n=e;ne.length&&delete this._stacks,t.forEach((i,n)=>{e.filter(o=>o===i._dataset).length===0&&this._destroyDatasetMeta(n)})}buildOrUpdateControllers(){const t=[],e=this.data.datasets;let i,n;for(this._removeUnreferencedMetasets(),i=0,n=e.length;i{this.getDatasetMeta(e).controller.reset()},this)}reset(){this._resetElements(),this.notifyPlugins("reset")}update(t){const e=this.config;e.update();const i=this._options=e.createResolver(e.chartOptionScopes(),this.getContext()),n=this._animationsDisabled=!i.animation;if(this._updateScales(),this._checkEventBindings(),this._updateHiddenIndices(),this._plugins.invalidate(),this.notifyPlugins("beforeUpdate",{mode:t,cancelable:!0})===!1)return;const o=this.buildOrUpdateControllers();this.notifyPlugins("beforeElementsUpdate");let a=0;for(let u=0,p=this.data.datasets.length;u{u.reset()}),this._updateDatasets(t),this.notifyPlugins("afterUpdate",{mode:t}),this._layers.sort(fn("z","_idx"));const{_active:l,_lastEvent:h}=this;h?this._eventHandler(h,!0):l.length&&this._updateHoverStyles(l,l,!0),this.render()}_updateScales(){(0,d.F)(this.scales,t=>{gt.removeBox(this,t)}),this.ensureScalesHaveIDs(),this.buildOrUpdateScales()}_checkEventBindings(){const t=this.options,e=new Set(Object.keys(this._listeners)),i=new Set(t.events);(!(0,d.ag)(e,i)||!!this._responsiveListeners!==t.responsive)&&(this.unbindEvents(),this.bindEvents())}_updateHiddenIndices(){const{_hiddenIndices:t}=this,e=this._getUniformDataChanges()||[];for(const{method:i,start:n,count:o}of e){const a=i==="_removeElements"?-o:o;Os(t,n,a)}}_getUniformDataChanges(){const t=this._dataChanges;if(!t||!t.length)return;this._dataChanges=[];const e=this.data.datasets.length,i=o=>new Set(t.filter(a=>a[0]===o).map((a,l)=>l+","+a.splice(1).join(","))),n=i(0);for(let o=1;oo.split(",")).map(o=>({method:o[1],start:+o[2],count:+o[3]}))}_updateLayout(t){if(this.notifyPlugins("beforeLayout",{cancelable:!0})===!1)return;gt.update(this,this.width,this.height,t);const e=this.chartArea,i=e.width<=0||e.height<=0;this._layers=[],(0,d.F)(this.boxes,n=>{i&&n.position==="chartArea"||(n.configure&&n.configure(),this._layers.push(...n._layers()))},this),this._layers.forEach((n,o)=>{n._idx=o}),this.notifyPlugins("afterLayout")}_updateDatasets(t){if(this.notifyPlugins("beforeDatasetsUpdate",{mode:t,cancelable:!0})!==!1){for(let e=0,i=this.data.datasets.length;e=0;--e)this._drawDataset(t[e]);this.notifyPlugins("afterDatasetsDraw")}_drawDataset(t){const e=this.ctx,i=t._clip,n=!i.disabled,o=As(t,this.chartArea),a={meta:t,index:t.index,cancelable:!0};this.notifyPlugins("beforeDatasetDraw",a)!==!1&&(n&&(0,d.Y)(e,{left:i.left===!1?0:o.left-i.left,right:i.right===!1?this.width:o.right+i.right,top:i.top===!1?0:o.top-i.top,bottom:i.bottom===!1?this.height:o.bottom+i.bottom}),t.controller.draw(),n&&(0,d.$)(e),a.cancelable=!1,this.notifyPlugins("afterDatasetDraw",a))}isPointInArea(t){return(0,d.C)(t,this.chartArea,this._minPadding)}getElementsAtEventForMode(t,e,i,n){const o=Kn.modes[e];return typeof o=="function"?o(this,t,i,n):[]}getDatasetMeta(t){const e=this.data.datasets[t],i=this._metasets;let n=i.filter(o=>o&&o._dataset===e).pop();return n||(n={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null,order:e&&e.order||0,index:t,_dataset:e,_parsed:[],_sorted:!1},i.push(n)),n}getContext(){return this.$context||(this.$context=(0,d.j)(null,{chart:this,type:"chart"}))}getVisibleDatasetCount(){return this.getSortedVisibleDatasetMetas().length}isDatasetVisible(t){const e=this.data.datasets[t];if(!e)return!1;const i=this.getDatasetMeta(t);return typeof i.hidden=="boolean"?!i.hidden:!e.hidden}setDatasetVisibility(t,e){const i=this.getDatasetMeta(t);i.hidden=!e}toggleDataVisibility(t){this._hiddenIndices[t]=!this._hiddenIndices[t]}getDataVisibility(t){return!this._hiddenIndices[t]}_updateVisibility(t,e,i){const n=i?"show":"hide",o=this.getDatasetMeta(t),a=o.controller._resolveAnimations(void 0,n);(0,d.h)(e)?(o.data[e].hidden=!i,this.update()):(this.setDatasetVisibility(t,i),a.update(o,{visible:i}),this.update(l=>l.datasetIndex===t?n:void 0))}hide(t,e){this._updateVisibility(t,e,!1)}show(t,e){this._updateVisibility(t,e,!0)}_destroyDatasetMeta(t){const e=this._metasets[t];e&&e.controller&&e.controller._destroy(),delete this._metasets[t]}_stop(){let t,e;for(this.stop(),X.remove(this),t=0,e=this.data.datasets.length;t{e.addEventListener(this,o,a),t[o]=a},n=(o,a,l)=>{o.offsetX=a,o.offsetY=l,this._eventHandler(o)};(0,d.F)(this.options.events,o=>i(o,n))}bindResponsiveEvents(){this._responsiveListeners||(this._responsiveListeners={});const t=this._responsiveListeners,e=this.platform,i=(h,u)=>{e.addEventListener(this,h,u),t[h]=u},n=(h,u)=>{t[h]&&(e.removeEventListener(this,h,u),delete t[h])},o=(h,u)=>{this.canvas&&this.resize(h,u)};let a;const l=()=>{n("attach",l),this.attached=!0,this.resize(),i("resize",o),i("detach",a)};a=()=>{this.attached=!1,n("resize",o),this._stop(),this._resize(0,0),i("attach",l)},e.isAttached(this.canvas)?l():a()}unbindEvents(){(0,d.F)(this._listeners,(t,e)=>{this.platform.removeEventListener(this,e,t)}),this._listeners={},(0,d.F)(this._responsiveListeners,(t,e)=>{this.platform.removeEventListener(this,e,t)}),this._responsiveListeners=void 0}updateHoverStyle(t,e,i){const n=i?"set":"remove";let o,a,l,h;for(e==="dataset"&&(o=this.getDatasetMeta(t[0].datasetIndex),o.controller["_"+n+"DatasetHoverStyle"]()),l=0,h=t.length;l{const l=this.getDatasetMeta(o);if(!l)throw new Error("No dataset found at index "+o);return{datasetIndex:o,element:l.data[a],index:a}});!(0,d.ah)(i,e)&&(this._active=i,this._lastEvent=null,this._updateHoverStyles(i,e))}notifyPlugins(t,e,i){return this._plugins.notify(this,t,e,i)}isPluginEnabled(t){return this._plugins._cache.filter(e=>e.plugin.id===t).length===1}_updateHoverStyles(t,e,i){const n=this.options.hover,o=(h,u)=>h.filter(p=>!u.some(b=>p.datasetIndex===b.datasetIndex&&p.index===b.index)),a=o(e,t),l=i?t:o(t,e);a.length&&this.updateHoverStyle(a,n.mode,!1),l.length&&n.mode&&this.updateHoverStyle(l,n.mode,!0)}_eventHandler(t,e){const i={event:t,replay:e,cancelable:!0,inChartArea:this.isPointInArea(t)},n=a=>(a.options.events||this.options.events).includes(t.native.type);if(this.notifyPlugins("beforeEvent",i,n)===!1)return;const o=this._handleEvent(t,e,i.inChartArea);return i.cancelable=!1,this.notifyPlugins("afterEvent",i,n),(o||i.changed)&&this.render(),this}_handleEvent(t,e,i){const{_active:n=[],options:o}=this,a=e,l=this._getActiveElements(t,n,i,a),h=(0,d.ai)(t),u=Cs(t,this._lastEvent,i,h);i&&(this._lastEvent=null,(0,d.Q)(o.onHover,[t,l,this],this),h&&(0,d.Q)(o.onClick,[t,l,this],this));const p=!(0,d.ah)(l,n);return(p||e)&&(this._active=l,this._updateHoverStyles(l,n,e)),this._lastEvent=u,p}_getActiveElements(t,e,i,n){if(t.type==="mouseout")return[];if(!i)return e;const o=this.options.hover;return this.getElementsAtEventForMode(t,o.mode,o,n)}}R(fe,"defaults",d.d),R(fe,"instances",Te),R(fe,"overrides",d.a3),R(fe,"registry",oe),R(fe,"version",Ss),R(fe,"getChart",Oi);function Ci(){return(0,d.F)(fe.instances,s=>s._plugins.invalidate())}function Ai(s,t,e){const{startAngle:i,pixelMargin:n,x:o,y:a,outerRadius:l,innerRadius:h}=t;let u=n/l;s.beginPath(),s.arc(o,a,l,i-u,e+u),h>n?(u=n/h,s.arc(o,a,h,e+u,i-u,!0)):s.arc(o,a,n,e+d.H,i-d.H),s.closePath(),s.clip()}function Ne(s){return(0,d.ak)(s,["outerStart","outerEnd","innerStart","innerEnd"])}function mn(s,t,e,i){const n=Ne(s.options.borderRadius),o=(e-t)/2,a=Math.min(o,i*t/2),l=h=>{const u=(e-Math.min(o,h))*i/2;return(0,d.S)(h,0,Math.min(o,u))};return{outerStart:l(n.outerStart),outerEnd:l(n.outerEnd),innerStart:(0,d.S)(n.innerStart,0,a),innerEnd:(0,d.S)(n.innerEnd,0,a)}}function Le(s,t,e,i){return{x:e+s*Math.cos(t),y:i+s*Math.sin(t)}}function Ee(s,t,e,i,n,o){const{x:a,y:l,startAngle:h,pixelMargin:u,innerRadius:p}=t,b=Math.max(t.outerRadius+i+e-u,0),_=p>0?p+i+e+u:0;let y=0;const M=n-h;if(i){const dt=p>0?p-i:0,mt=b>0?b-i:0,_t=(dt+mt)/2,ce=_t!==0?M*_t/(_t+i):M;y=(M-ce)/2}const S=Math.max(.001,M*b-e/d.P)/b,D=(M-S)/2,P=h+D+y,O=n-D-y,{outerStart:E,outerEnd:L,innerStart:A,innerEnd:F}=mn(t,_,b,O-P),I=b-E,B=b-L,$=P+E/I,Z=O-L/B,J=_+A,it=_+F,Ct=P+A/J,ie=O-F/it;if(s.beginPath(),o){const dt=($+Z)/2;if(s.arc(a,l,b,$,dt),s.arc(a,l,b,dt,Z),L>0){const zt=Le(B,Z,a,l);s.arc(zt.x,zt.y,L,Z,O+d.H)}const mt=Le(it,O,a,l);if(s.lineTo(mt.x,mt.y),F>0){const zt=Le(it,ie,a,l);s.arc(zt.x,zt.y,F,O+d.H,ie+Math.PI)}const _t=(O-F/_+(P+A/_))/2;if(s.arc(a,l,_,O-F/_,_t,!0),s.arc(a,l,_,_t,P+A/_,!0),A>0){const zt=Le(J,Ct,a,l);s.arc(zt.x,zt.y,A,Ct+Math.PI,P-d.H)}const ce=Le(I,P,a,l);if(s.lineTo(ce.x,ce.y),E>0){const zt=Le(I,$,a,l);s.arc(zt.x,zt.y,E,P-d.H,$)}}else{s.moveTo(a,l);const dt=Math.cos($)*b+a,mt=Math.sin($)*b+l;s.lineTo(dt,mt);const _t=Math.cos(Z)*b+a,ce=Math.sin(Z)*b+l;s.lineTo(_t,ce)}s.closePath()}function bn(s,t,e,i,n){const{fullCircles:o,startAngle:a,circumference:l}=t;let h=t.endAngle;if(o){Ee(s,t,e,i,h,n);for(let u=0;u=d.T||(0,d.p)(a,h,u),D=(0,d.aj)(l,p+y,b+y);return S&&D}getCenterPoint(e){const{x:i,y:n,startAngle:o,endAngle:a,innerRadius:l,outerRadius:h}=this.getProps(["x","y","startAngle","endAngle","innerRadius","outerRadius"],e),{offset:u,spacing:p}=this.options,b=(o+a)/2,_=(l+h+p+u)/2;return{x:i+Math.cos(b)*_,y:n+Math.sin(b)*_}}tooltipPosition(e){return this.getCenterPoint(e)}draw(e){const{options:i,circumference:n}=this,o=(i.offset||0)/4,a=(i.spacing||0)/2,l=i.circular;if(this.pixelMargin=i.borderAlign==="inner"?.33:0,this.fullCircles=n>d.T?Math.floor(n/d.T):0,n===0||this.innerRadius<0||this.outerRadius<0)return;e.save();const h=(this.startAngle+this.endAngle)/2;e.translate(Math.cos(h)*o,Math.sin(h)*o);const u=1-Math.sin(Math.min(d.P,n||0)),p=o*u;e.fillStyle=i.backgroundColor,e.strokeStyle=i.borderColor,bn(e,this,p,a,l),Ts(e,this,p,a,l),e.restore()}}R(Ye,"id","arc"),R(Ye,"defaults",{borderAlign:"center",borderColor:"#fff",borderDash:[],borderDashOffset:0,borderJoinStyle:void 0,borderRadius:0,borderWidth:2,offset:0,spacing:0,angle:void 0,circular:!0}),R(Ye,"defaultRoutes",{backgroundColor:"backgroundColor"}),R(Ye,"descriptors",{_scriptable:!0,_indexable:e=>e!=="borderDash"});function _n(s,t,e=t){s.lineCap=(0,d.v)(e.borderCapStyle,t.borderCapStyle),s.setLineDash((0,d.v)(e.borderDash,t.borderDash)),s.lineDashOffset=(0,d.v)(e.borderDashOffset,t.borderDashOffset),s.lineJoin=(0,d.v)(e.borderJoinStyle,t.borderJoinStyle),s.lineWidth=(0,d.v)(e.borderWidth,t.borderWidth),s.strokeStyle=(0,d.v)(e.borderColor,t.borderColor)}function xn(s,t,e){s.lineTo(e.x,e.y)}function Ls(s){return s.stepped?d.ar:s.tension||s.cubicInterpolationMode==="monotone"?d.as:xn}function yn(s,t,e={}){const i=s.length,{start:n=0,end:o=i-1}=e,{start:a,end:l}=t,h=Math.max(n,a),u=Math.min(o,l),p=nl&&o>l;return{count:i,start:h,loop:t.loop,ilen:u(a+(u?l-L:L))%o,E=()=>{S!==D&&(s.lineTo(p,D),s.lineTo(p,S),s.lineTo(p,P))};for(h&&(y=n[O(0)],s.moveTo(y.x,y.y)),_=0;_<=l;++_){if(y=n[O(_)],y.skip)continue;const L=y.x,A=y.y,F=L|0;F===M?(AD&&(D=A),p=(b*p+L)/++b):(E(),s.lineTo(L,A),M=F,b=0,S=D=A),P=A}E()}function Li(s){const t=s.options,e=t.borderDash&&t.borderDash.length;return!s._decimated&&!s._loop&&!t.tension&&t.cubicInterpolationMode!=="monotone"&&!t.stepped&&!e?vn:Ti}function Es(s){return s.stepped?d.ao:s.tension||s.cubicInterpolationMode==="monotone"?d.ap:d.aq}function Mn(s,t,e,i){let n=t._path;n||(n=t._path=new Path2D,t.path(n,e,i)&&n.closePath()),_n(s,t.options),s.stroke(n)}function kn(s,t,e,i){const{segments:n,options:o}=t,a=Li(t);for(const l of n)_n(s,o,l.style),s.beginPath(),a(s,t,l,{start:e,end:e+i-1})&&s.closePath(),s.stroke()}const Rs=typeof Path2D=="function";function Fs(s,t,e,i){Rs&&!t.options.segment?Mn(s,t,e,i):kn(s,t,e,i)}class le extends ee{constructor(t){super(),this.animated=!0,this.options=void 0,this._chart=void 0,this._loop=void 0,this._fullLoop=void 0,this._path=void 0,this._points=void 0,this._segments=void 0,this._decimated=!1,this._pointsUpdated=!1,this._datasetIndex=void 0,t&&Object.assign(this,t)}updateControlPoints(t,e){const i=this.options;if((i.tension||i.cubicInterpolationMode==="monotone")&&!i.stepped&&!this._pointsUpdated){const n=i.spanGaps?this._loop:this._fullLoop;(0,d.al)(this._points,i,t,n,e),this._pointsUpdated=!0}}set points(t){this._points=t,delete this._segments,delete this._path,this._pointsUpdated=!1}get points(){return this._points}get segments(){return this._segments||(this._segments=(0,d.am)(this,this.options.segment))}first(){const t=this.segments,e=this.points;return t.length&&e[t[0].start]}last(){const t=this.segments,e=this.points,i=t.length;return i&&e[t[i-1].end]}interpolate(t,e){const i=this.options,n=t[e],o=this.points,a=(0,d.an)(this,{property:e,start:n,end:n});if(!a.length)return;const l=[],h=Es(i);let u,p;for(u=0,p=a.length;ut!=="borderDash"&&t!=="fill"});function ve(s,t,e,i){const n=s.options,{[e]:o}=s.getProps([e],i);return Math.abs(t-o)s.replace("rgb(","rgba(").replace(")",", 0.5)"));function me(s){return Ri[s%Ri.length]}function Dn(s){return Pn[s%Pn.length]}function Ws(s,t){return s.borderColor=me(t),s.backgroundColor=Dn(t),++t}function js(s,t){return s.backgroundColor=s.data.map(()=>me(t++)),t}function Vs(s,t){return s.backgroundColor=s.data.map(()=>Dn(t++)),t}function di(s){let t=0;return(e,i)=>{const n=s.getDatasetMeta(i).controller;n instanceof Zt?t=js(e,t):n instanceof re?t=Vs(e,t):n&&(t=Ws(e,t))}}function On(s){let t;for(t in s)if(s[t].borderColor||s[t].backgroundColor)return!0;return!1}function Hs(s){return s&&(s.borderColor||s.backgroundColor)}var Ns={id:"colors",defaults:{enabled:!0,forceOverride:!1},beforeLayout(s,t,e){if(!e.enabled)return;const{data:{datasets:i},options:n}=s.config,{elements:o}=n;if(!e.forceOverride&&(On(i)||Hs(n)||o&&On(o)))return;const a=di(s);i.forEach(a)}};function Ys(s,t,e,i,n){const o=n.samples||i;if(o>=e)return s.slice(t,t+e);const a=[],l=(e-2)/(o-2);let h=0;const u=t+e-1;let p=t,b,_,y,M,S;for(a[h++]=s[p],b=0;by&&(y=M,_=s[O],S=O);a[h++]=_,p=S}return a[h++]=s[u],a}function Me(s,t,e,i){let n=0,o=0,a,l,h,u,p,b,_,y,M,S;const D=[],P=t+e-1,O=s[t].x,L=s[P].x-O;for(a=t;aS&&(S=u,_=a),n=(o*n+l.x)/++o;else{const F=a-1;if(!(0,d.k)(b)&&!(0,d.k)(_)){const I=Math.min(b,_),B=Math.max(b,_);I!==y&&I!==F&&D.push({...s[I],x:n}),B!==y&&B!==F&&D.push({...s[B],x:n})}a>0&&F!==y&&D.push(s[F]),D.push(l),p=A,o=0,M=S=u,b=_=y=a}}return D}function Cn(s){if(s._decimated){const t=s._data;delete s._decimated,delete s._data,Object.defineProperty(s,"data",{configurable:!0,enumerable:!0,writable:!0,value:t})}}function An(s){s.data.datasets.forEach(t=>{Cn(t)})}function $s(s,t){const e=t.length;let i=0,n;const{iScale:o}=s,{min:a,max:l,minDefined:h,maxDefined:u}=o.getUserBounds();return h&&(i=(0,d.S)((0,d.B)(t,o.axis,a).lo,0,e-1)),u?n=(0,d.S)((0,d.B)(t,o.axis,l).hi+1,i,e)-i:n=e-i,{start:i,count:n}}var Us={id:"decimation",defaults:{algorithm:"min-max",enabled:!1},beforeElementsUpdate:(s,t,e)=>{if(!e.enabled){An(s);return}const i=s.width;s.data.datasets.forEach((n,o)=>{const{_data:a,indexAxis:l}=n,h=s.getDatasetMeta(o),u=a||n.data;if((0,d.a)([l,s.options.indexAxis])==="y"||!h.controller.supportsDecimation)return;const p=s.scales[h.xAxisID];if(p.type!=="linear"&&p.type!=="time"||s.options.parsing)return;let{start:b,count:_}=$s(h,u);const y=e.threshold||4*i;if(_<=y){Cn(n);return}(0,d.k)(a)&&(n._data=u,delete n.data,Object.defineProperty(n,"data",{configurable:!0,enumerable:!0,get:function(){return this._decimated},set:function(S){this._data=S}}));let M;switch(e.algorithm){case"lttb":M=Ys(u,b,_,i,e);break;case"min-max":M=Me(u,b,_,i);break;default:throw new Error(`Unsupported decimation algorithm '${e.algorithm}'`)}n._decimated=M})},destroy(s){An(s)}};function Xs(s,t,e){const i=s.segments,n=s.points,o=t.points,a=[];for(const l of i){let{start:h,end:u}=l;u=ui(h,u,n);const p=Fi(e,n[h],n[u],l.loop);if(!t.segments){a.push({source:l,target:p,start:n[h],end:n[u]});continue}const b=(0,d.an)(t,p);for(const _ of b){const y=Fi(e,o[_.start],o[_.end],_.loop),M=(0,d.ax)(l,n,y);for(const S of M)a.push({source:S,target:_,start:{[e]:Ii(p,y,"start",Math.max)},end:{[e]:Ii(p,y,"end",Math.min)}})}}return a}function Fi(s,t,e,i){if(i)return;let n=t[s],o=e[s];return s==="angle"&&(n=(0,d.ay)(n),o=(0,d.ay)(o)),{property:s,start:n,end:o}}function Ks(s,t){const{x:e=null,y:i=null}=s||{},n=t.points,o=[];return t.segments.forEach(({start:a,end:l})=>{l=ui(a,l,n);const h=n[a],u=n[l];i!==null?(o.push({x:h.x,y:i}),o.push({x:u.x,y:i})):e!==null&&(o.push({x:e,y:h.y}),o.push({x:e,y:u.y}))}),o}function ui(s,t,e){for(;t>s;t--){const i=e[t];if(!isNaN(i.x)&&!isNaN(i.y))break}return t}function Ii(s,t,e,i){return s&&t?i(s[e],t[e]):s?s[e]:t?t[e]:0}function Tn(s,t){let e=[],i=!1;return(0,d.b)(s)?(i=!0,e=s):e=Ks(s,t),e.length?new le({points:e,options:{tension:0},_loop:i,_fullLoop:i}):null}function zi(s){return s&&s.fill!==!1}function Gs(s,t,e){let n=s[t].fill;const o=[t];let a;if(!e)return n;for(;n!==!1&&o.indexOf(n)===-1;){if(!(0,d.g)(n))return n;if(a=s[n],!a)return!1;if(a.visible)return n;o.push(n),n=a.fill}return!1}function Qs(s,t,e){const i=Js(s);if((0,d.i)(i))return isNaN(i.value)?!1:i;let n=parseFloat(i);return(0,d.g)(n)&&Math.floor(n)===n?qs(i[0],t,n,e):["origin","start","end","stack","shape"].indexOf(i)>=0&&i}function qs(s,t,e,i){return(s==="-"||s==="+")&&(e=t+e),e===t||e<0||e>=i?!1:e}function Zs(s,t){let e=null;return s==="start"?e=t.bottom:s==="end"?e=t.top:(0,d.i)(s)?e=t.getPixelForValue(s.value):t.getBasePixel&&(e=t.getBasePixel()),e}function Ln(s,t,e){let i;return s==="start"?i=e:s==="end"?i=t.options.reverse?t.min:t.max:(0,d.i)(s)?i=s.value:i=t.getBaseValue(),i}function Js(s){const t=s.options,e=t.fill;let i=(0,d.v)(e&&e.target,e);return i===void 0&&(i=!!t.backgroundColor),i===!1||i===null?!1:i===!0?"origin":i}function En(s){const{scale:t,index:e,line:i}=s,n=[],o=i.segments,a=i.points,l=to(t,e);l.push(Tn({x:null,y:t.bottom},i));for(let h=0;h=0;--a){const l=n[a].$filler;l&&(l.line.updateControlPoints(o,l.axis),i&&l.fill&&w(s.ctx,l,o))}},beforeDatasetsDraw(s,t,e){if(e.drawTime!=="beforeDatasetsDraw")return;const i=s.getSortedVisibleDatasetMetas();for(let n=i.length-1;n>=0;--n){const o=i[n].$filler;zi(o)&&w(s.ctx,o,s.chartArea)}},beforeDatasetDraw(s,t,e){const i=t.meta.$filler;!zi(i)||e.drawTime!=="beforeDatasetDraw"||w(s.ctx,i,s.chartArea)},defaults:{propagate:!0,drawTime:"beforeDatasetDraw"}};const U=(s,t)=>{let{boxHeight:e=t,boxWidth:i=t}=s;return s.usePointStyle&&(e=Math.min(e,t),i=s.pointStyleWidth||Math.min(i,t)),{boxWidth:i,boxHeight:e,itemHeight:Math.max(t,e)}},V=(s,t)=>s!==null&&t!==null&&s.datasetIndex===t.datasetIndex&&s.index===t.index;class Ot extends ee{constructor(t){super(),this._added=!1,this.legendHitBoxes=[],this._hoveredItem=null,this.doughnutMode=!1,this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this.legendItems=void 0,this.columnSizes=void 0,this.lineWidths=void 0,this.maxHeight=void 0,this.maxWidth=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.height=void 0,this.width=void 0,this._margins=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e,i){this.maxWidth=t,this.maxHeight=e,this._margins=i,this.setDimensions(),this.buildLabels(),this.fit()}setDimensions(){this.isHorizontal()?(this.width=this.maxWidth,this.left=this._margins.left,this.right=this.width):(this.height=this.maxHeight,this.top=this._margins.top,this.bottom=this.height)}buildLabels(){const t=this.options.labels||{};let e=(0,d.Q)(t.generateLabels,[this.chart],this)||[];t.filter&&(e=e.filter(i=>t.filter(i,this.chart.data))),t.sort&&(e=e.sort((i,n)=>t.sort(i,n,this.chart.data))),this.options.reverse&&e.reverse(),this.legendItems=e}fit(){const{options:t,ctx:e}=this;if(!t.display){this.width=this.height=0;return}const i=t.labels,n=(0,d.a0)(i.font),o=n.size,a=this._computeTitleHeight(),{boxWidth:l,itemHeight:h}=U(i,o);let u,p;e.font=n.string,this.isHorizontal()?(u=this.maxWidth,p=this._fitRows(a,o,l,h)+10):(p=this.maxHeight,u=this._fitCols(a,n,l,h)+10),this.width=Math.min(u,t.maxWidth||this.maxWidth),this.height=Math.min(p,t.maxHeight||this.maxHeight)}_fitRows(t,e,i,n){const{ctx:o,maxWidth:a,options:{labels:{padding:l}}}=this,h=this.legendHitBoxes=[],u=this.lineWidths=[0],p=n+l;let b=t;o.textAlign="left",o.textBaseline="middle";let _=-1,y=-p;return this.legendItems.forEach((M,S)=>{const D=i+e/2+o.measureText(M.text).width;(S===0||u[u.length-1]+D+2*l>a)&&(b+=p,u[u.length-(S>0?0:1)]=0,y+=p,_++),h[S]={left:0,top:y,row:_,width:D,height:n},u[u.length-1]+=D+l}),b}_fitCols(t,e,i,n){const{ctx:o,maxHeight:a,options:{labels:{padding:l}}}=this,h=this.legendHitBoxes=[],u=this.columnSizes=[],p=a-t;let b=l,_=0,y=0,M=0,S=0;return this.legendItems.forEach((D,P)=>{const{itemWidth:O,itemHeight:E}=Fe(i,e,o,D,n);P>0&&y+E+2*l>p&&(b+=_+l,u.push({width:_,height:y}),M+=_+l,S++,_=y=0),h[P]={left:M,top:y,col:S,width:O,height:E},_=Math.max(_,O),y+=E+l}),b+=_,u.push({width:_,height:y}),b}adjustHitBoxes(){if(!this.options.display)return;const t=this._computeTitleHeight(),{legendHitBoxes:e,options:{align:i,labels:{padding:n},rtl:o}}=this,a=(0,d.az)(o,this.left,this.width);if(this.isHorizontal()){let l=0,h=(0,d.a2)(i,this.left+n,this.right-this.lineWidths[l]);for(const u of e)l!==u.row&&(l=u.row,h=(0,d.a2)(i,this.left+n,this.right-this.lineWidths[l])),u.top+=this.top+t+n,u.left=a.leftForLtr(a.x(h),u.width),h+=u.width+n}else{let l=0,h=(0,d.a2)(i,this.top+t+n,this.bottom-this.columnSizes[l].height);for(const u of e)u.col!==l&&(l=u.col,h=(0,d.a2)(i,this.top+t+n,this.bottom-this.columnSizes[l].height)),u.top=h,u.left+=this.left+n,u.left=a.leftForLtr(a.x(u.left),u.width),h+=u.height+n}}isHorizontal(){return this.options.position==="top"||this.options.position==="bottom"}draw(){if(this.options.display){const t=this.ctx;(0,d.Y)(t,this),this._draw(),(0,d.$)(t)}}_draw(){const{options:t,columnSizes:e,lineWidths:i,ctx:n}=this,{align:o,labels:a}=t,l=d.d.color,h=(0,d.az)(t.rtl,this.left,this.width),u=(0,d.a0)(a.font),{padding:p}=a,b=u.size,_=b/2;let y;this.drawTitle(),n.textAlign=h.textAlign("left"),n.textBaseline="middle",n.lineWidth=.5,n.font=u.string;const{boxWidth:M,boxHeight:S,itemHeight:D}=U(a,b),P=function(F,I,B){if(isNaN(M)||M<=0||isNaN(S)||S<0)return;n.save();const $=(0,d.v)(B.lineWidth,1);if(n.fillStyle=(0,d.v)(B.fillStyle,l),n.lineCap=(0,d.v)(B.lineCap,"butt"),n.lineDashOffset=(0,d.v)(B.lineDashOffset,0),n.lineJoin=(0,d.v)(B.lineJoin,"miter"),n.lineWidth=$,n.strokeStyle=(0,d.v)(B.strokeStyle,l),n.setLineDash((0,d.v)(B.lineDash,[])),a.usePointStyle){const Z={radius:S*Math.SQRT2/2,pointStyle:B.pointStyle,rotation:B.rotation,borderWidth:$},J=h.xPlus(F,M/2),it=I+_;(0,d.aD)(n,Z,J,it,a.pointStyleWidth&&M)}else{const Z=I+Math.max((b-S)/2,0),J=h.leftForLtr(F,M),it=(0,d.aw)(B.borderRadius);n.beginPath(),Object.values(it).some(Ct=>Ct!==0)?(0,d.au)(n,{x:J,y:Z,w:M,h:S,radius:it}):n.rect(J,Z,M,S),n.fill(),$!==0&&n.stroke()}n.restore()},O=function(F,I,B){(0,d.Z)(n,B.text,F,I+D/2,u,{strikethrough:B.hidden,textAlign:h.textAlign(B.textAlign)})},E=this.isHorizontal(),L=this._computeTitleHeight();E?y={x:(0,d.a2)(o,this.left+p,this.right-i[0]),y:this.top+p+L,line:0}:y={x:this.left+p,y:(0,d.a2)(o,this.top+L+p,this.bottom-e[0].height),line:0},(0,d.aA)(this.ctx,t.textDirection);const A=D+p;this.legendItems.forEach((F,I)=>{n.strokeStyle=F.fontColor,n.fillStyle=F.fontColor;const B=n.measureText(F.text).width,$=h.textAlign(F.textAlign||(F.textAlign=a.textAlign)),Z=M+_+B;let J=y.x,it=y.y;h.setWidth(this.width),E?I>0&&J+Z+p>this.right&&(it=y.y+=A,y.line++,J=y.x=(0,d.a2)(o,this.left+p,this.right-i[y.line])):I>0&&it+A>this.bottom&&(J=y.x=J+e[y.line].width+p,y.line++,it=y.y=(0,d.a2)(o,this.top+L+p,this.bottom-e[y.line].height));const Ct=h.x(J);if(P(Ct,it,F),J=(0,d.aB)($,J+M+_,E?J+Z:this.right,t.rtl),O(h.x(J),it,F),E)y.x+=Z+p;else if(typeof F.text!="string"){const ie=u.lineHeight;y.y+=Rn(F,ie)+p}else y.y+=A}),(0,d.aC)(this.ctx,t.textDirection)}drawTitle(){const t=this.options,e=t.title,i=(0,d.a0)(e.font),n=(0,d.E)(e.padding);if(!e.display)return;const o=(0,d.az)(t.rtl,this.left,this.width),a=this.ctx,l=e.position,h=i.size/2,u=n.top+h;let p,b=this.left,_=this.width;if(this.isHorizontal())_=Math.max(...this.lineWidths),p=this.top+u,b=(0,d.a2)(t.align,b,this.right-_);else{const M=this.columnSizes.reduce((S,D)=>Math.max(S,D.height),0);p=u+(0,d.a2)(t.align,this.top,this.bottom-M-t.labels.padding-this._computeTitleHeight())}const y=(0,d.a2)(l,b,b+_);a.textAlign=o.textAlign((0,d.a1)(l)),a.textBaseline="middle",a.strokeStyle=e.color,a.fillStyle=e.color,a.font=i.string,(0,d.Z)(a,e.text,y,p,i)}_computeTitleHeight(){const t=this.options.title,e=(0,d.a0)(t.font),i=(0,d.E)(t.padding);return t.display?e.lineHeight+i.height:0}_getLegendItemAt(t,e){let i,n,o;if((0,d.aj)(t,this.left,this.right)&&(0,d.aj)(e,this.top,this.bottom)){for(o=this.legendHitBoxes,i=0;io.length>a.length?o:a)),t+e.size/2+i.measureText(n).width}function eo(s,t,e){let i=s;return typeof t.text!="string"&&(i=Rn(t,e)),i}function Rn(s,t){const e=s.text?s.text.length:0;return t*e}function io(s,t){return!!((s==="mousemove"||s==="mouseout")&&(t.onHover||t.onLeave)||t.onClick&&(s==="click"||s==="mouseup"))}var Fn={id:"legend",_element:Ot,start(s,t,e){const i=s.legend=new Ot({ctx:s.ctx,options:e,chart:s});gt.configure(s,i,e),gt.addBox(s,i)},stop(s){gt.removeBox(s,s.legend),delete s.legend},beforeUpdate(s,t,e){const i=s.legend;gt.configure(s,i,e),i.options=e},afterUpdate(s){const t=s.legend;t.buildLabels(),t.adjustHitBoxes()},afterEvent(s,t){t.replay||s.legend.handleEvent(t.event)},defaults:{display:!0,position:"top",align:"center",fullSize:!0,reverse:!1,weight:1e3,onClick(s,t,e){const i=t.datasetIndex,n=e.chart;n.isDatasetVisible(i)?(n.hide(i),t.hidden=!0):(n.show(i),t.hidden=!1)},onHover:null,onLeave:null,labels:{color:s=>s.chart.options.color,boxWidth:40,padding:10,generateLabels(s){const t=s.data.datasets,{labels:{usePointStyle:e,pointStyle:i,textAlign:n,color:o,useBorderRadius:a,borderRadius:l}}=s.legend.options;return s._getSortedDatasetMetas().map(h=>{const u=h.controller.getStyle(e?0:void 0),p=(0,d.E)(u.borderWidth);return{text:t[h.index].label,fillStyle:u.backgroundColor,fontColor:o,hidden:!h.visible,lineCap:u.borderCapStyle,lineDash:u.borderDash,lineDashOffset:u.borderDashOffset,lineJoin:u.borderJoinStyle,lineWidth:(p.width+p.height)/4,strokeStyle:u.borderColor,pointStyle:i||u.pointStyle,rotation:u.rotation,textAlign:n||u.textAlign,borderRadius:a&&(l||u.borderRadius),datasetIndex:h.index}},this)}},title:{color:s=>s.chart.options.color,display:!1,position:"center",text:""}},descriptors:{_scriptable:s=>!s.startsWith("on"),labels:{_scriptable:s=>!["generateLabels","filter","sort"].includes(s)}}};class be extends ee{constructor(t){super(),this.chart=t.chart,this.options=t.options,this.ctx=t.ctx,this._padding=void 0,this.top=void 0,this.bottom=void 0,this.left=void 0,this.right=void 0,this.width=void 0,this.height=void 0,this.position=void 0,this.weight=void 0,this.fullSize=void 0}update(t,e){const i=this.options;if(this.left=0,this.top=0,!i.display){this.width=this.height=this.right=this.bottom=0;return}this.width=this.right=t,this.height=this.bottom=e;const n=(0,d.b)(i.text)?i.text.length:1;this._padding=(0,d.E)(i.padding);const o=n*(0,d.a0)(i.font).lineHeight+this._padding.height;this.isHorizontal()?this.height=o:this.width=o}isHorizontal(){const t=this.options.position;return t==="top"||t==="bottom"}_drawArgs(t){const{top:e,left:i,bottom:n,right:o,options:a}=this,l=a.align;let h=0,u,p,b;return this.isHorizontal()?(p=(0,d.a2)(l,i,o),b=e+t,u=o-i):(a.position==="left"?(p=i+t,b=(0,d.a2)(l,n,e),h=d.P*-.5):(p=o-t,b=(0,d.a2)(l,e,n),h=d.P*.5),u=n-e),{titleX:p,titleY:b,maxWidth:u,rotation:h}}draw(){const t=this.ctx,e=this.options;if(!e.display)return;const i=(0,d.a0)(e.font),o=i.lineHeight/2+this._padding.top,{titleX:a,titleY:l,maxWidth:h,rotation:u}=this._drawArgs(o);(0,d.Z)(t,e.text,0,0,i,{color:e.color,maxWidth:h,rotation:u,textAlign:(0,d.a1)(e.align),textBaseline:"middle",translation:[a,l]})}}function In(s,t){const e=new be({ctx:s.ctx,options:t,chart:s});gt.configure(s,e,t),gt.addBox(s,e),s.titleBlock=e}var co={id:"title",_element:be,start(s,t,e){In(s,e)},stop(s){const t=s.titleBlock;gt.removeBox(s,t),delete s.titleBlock},beforeUpdate(s,t,e){const i=s.titleBlock;gt.configure(s,i,e),i.options=e},defaults:{align:"center",display:!1,font:{weight:"bold"},fullSize:!0,padding:10,position:"top",text:"",weight:2e3},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const zn=new WeakMap;var Co={id:"subtitle",start(s,t,e){const i=new be({ctx:s.ctx,options:e,chart:s});gt.configure(s,i,e),gt.addBox(s,i),zn.set(s,i)},stop(s){gt.removeBox(s,zn.get(s)),zn.delete(s)},beforeUpdate(s,t,e){const i=zn.get(s);gt.configure(s,i,e),i.options=e},defaults:{align:"center",display:!1,font:{weight:"normal"},fullSize:!0,padding:0,position:"top",text:"",weight:1500},defaultRoutes:{color:"color"},descriptors:{_scriptable:!0,_indexable:!1}};const Bi={average(s){if(!s.length)return!1;let t,e,i=new Set,n=0,o=0;for(t=0,e=s.length;tl+h)/i.size,y:n/o}},nearest(s,t){if(!s.length)return!1;let e=t.x,i=t.y,n=Number.POSITIVE_INFINITY,o,a,l;for(o=0,a=s.length;o-1?s.split(` +`):s}function Ao(s,t){const{element:e,datasetIndex:i,index:n}=t,o=s.getDatasetMeta(i).controller,{label:a,value:l}=o.getLabelAndValue(n);return{chart:s,label:a,parsed:o.getParsed(n),raw:s.data.datasets[i].data[n],formattedValue:l,dataset:o.getDataset(),dataIndex:n,datasetIndex:i,element:e}}function ho(s,t){const e=s.chart.ctx,{body:i,footer:n,title:o}=s,{boxWidth:a,boxHeight:l}=t,h=(0,d.a0)(t.bodyFont),u=(0,d.a0)(t.titleFont),p=(0,d.a0)(t.footerFont),b=o.length,_=n.length,y=i.length,M=(0,d.E)(t.padding);let S=M.height,D=0,P=i.reduce((L,A)=>L+A.before.length+A.lines.length+A.after.length,0);if(P+=s.beforeBody.length+s.afterBody.length,b&&(S+=b*u.lineHeight+(b-1)*t.titleSpacing+t.titleMarginBottom),P){const L=t.displayColors?Math.max(l,h.lineHeight):h.lineHeight;S+=y*L+(P-y)*h.lineHeight+(P-1)*t.bodySpacing}_&&(S+=t.footerMarginTop+_*p.lineHeight+(_-1)*t.footerSpacing);let O=0;const E=function(L){D=Math.max(D,e.measureText(L).width+O)};return e.save(),e.font=u.string,(0,d.F)(s.title,E),e.font=h.string,(0,d.F)(s.beforeBody.concat(s.afterBody),E),O=t.displayColors?a+2+t.boxPadding:0,(0,d.F)(i,L=>{(0,d.F)(L.before,E),(0,d.F)(L.lines,E),(0,d.F)(L.after,E)}),O=0,e.font=p.string,(0,d.F)(s.footer,E),e.restore(),D+=M.width,{width:D,height:S}}function To(s,t){const{y:e,height:i}=t;return es.height-i/2?"bottom":"center"}function Lo(s,t,e,i){const{x:n,width:o}=i,a=e.caretSize+e.caretPadding;if(s==="left"&&n+o+a>t.width||s==="right"&&n-o-a<0)return!0}function Eo(s,t,e,i){const{x:n,width:o}=e,{width:a,chartArea:{left:l,right:h}}=s;let u="center";return i==="center"?u=n<=(l+h)/2?"left":"right":n<=o/2?u="left":n>=a-o/2&&(u="right"),Lo(u,s,t,e)&&(u="center"),u}function uo(s,t,e){const i=e.yAlign||t.yAlign||To(s,e);return{xAlign:e.xAlign||t.xAlign||Eo(s,t,e,i),yAlign:i}}function Ro(s,t){let{x:e,width:i}=s;return t==="right"?e-=i:t==="center"&&(e-=i/2),e}function Fo(s,t,e){let{y:i,height:n}=s;return t==="top"?i+=e:t==="bottom"?i-=n+e:i-=n/2,i}function fo(s,t,e,i){const{caretSize:n,caretPadding:o,cornerRadius:a}=s,{xAlign:l,yAlign:h}=e,u=n+o,{topLeft:p,topRight:b,bottomLeft:_,bottomRight:y}=(0,d.aw)(a);let M=Ro(t,l);const S=Fo(t,h,u);return h==="center"?l==="left"?M+=u:l==="right"&&(M-=u):l==="left"?M-=Math.max(p,_)+n:l==="right"&&(M+=Math.max(b,y)+n),{x:(0,d.S)(M,0,i.width-t.width),y:(0,d.S)(S,0,i.height-t.height)}}function Bn(s,t,e){const i=(0,d.E)(e.padding);return t==="center"?s.x+s.width/2:t==="right"?s.x+s.width-i.right:s.x+i.left}function go(s){return _e([],ke(s))}function Io(s,t,e){return(0,d.j)(s,{tooltip:t,tooltipItems:e,type:"tooltip"})}function po(s,t){const e=t&&t.dataset&&t.dataset.tooltip&&t.dataset.tooltip.callbacks;return e?s.override(e):s}const mo={beforeTitle:d.aF,title(s){if(s.length>0){const t=s[0],e=t.chart.data.labels,i=e?e.length:0;if(this&&this.options&&this.options.mode==="dataset")return t.dataset.label||"";if(t.label)return t.label;if(i>0&&t.dataIndex"u"?mo[t].call(e,i):n}class no extends ee{constructor(t){super(),this.opacity=0,this._active=[],this._eventPosition=void 0,this._size=void 0,this._cachedAnimations=void 0,this._tooltipItems=[],this.$animations=void 0,this.$context=void 0,this.chart=t.chart,this.options=t.options,this.dataPoints=void 0,this.title=void 0,this.beforeBody=void 0,this.body=void 0,this.afterBody=void 0,this.footer=void 0,this.xAlign=void 0,this.yAlign=void 0,this.x=void 0,this.y=void 0,this.height=void 0,this.width=void 0,this.caretX=void 0,this.caretY=void 0,this.labelColors=void 0,this.labelPointStyles=void 0,this.labelTextColors=void 0}initialize(t){this.options=t,this._cachedAnimations=void 0,this.$context=void 0}_resolveAnimations(){const t=this._cachedAnimations;if(t)return t;const e=this.chart,i=this.options.setContext(this.getContext()),n=i.enabled&&e.options.animation&&i.animations,o=new at(this.chart,n);return n._cacheable&&(this._cachedAnimations=Object.freeze(o)),o}getContext(){return this.$context||(this.$context=Io(this.chart.getContext(),this,this._tooltipItems))}getTitle(t,e){const{callbacks:i}=e,n=Ut(i,"beforeTitle",this,t),o=Ut(i,"title",this,t),a=Ut(i,"afterTitle",this,t);let l=[];return l=_e(l,ke(n)),l=_e(l,ke(o)),l=_e(l,ke(a)),l}getBeforeBody(t,e){return go(Ut(e.callbacks,"beforeBody",this,t))}getBody(t,e){const{callbacks:i}=e,n=[];return(0,d.F)(t,o=>{const a={before:[],lines:[],after:[]},l=po(i,o);_e(a.before,ke(Ut(l,"beforeLabel",this,o))),_e(a.lines,Ut(l,"label",this,o)),_e(a.after,ke(Ut(l,"afterLabel",this,o))),n.push(a)}),n}getAfterBody(t,e){return go(Ut(e.callbacks,"afterBody",this,t))}getFooter(t,e){const{callbacks:i}=e,n=Ut(i,"beforeFooter",this,t),o=Ut(i,"footer",this,t),a=Ut(i,"afterFooter",this,t);let l=[];return l=_e(l,ke(n)),l=_e(l,ke(o)),l=_e(l,ke(a)),l}_createItems(t){const e=this._active,i=this.chart.data,n=[],o=[],a=[];let l=[],h,u;for(h=0,u=e.length;ht.filter(p,b,_,i))),t.itemSort&&(l=l.sort((p,b)=>t.itemSort(p,b,i))),(0,d.F)(l,p=>{const b=po(t.callbacks,p);n.push(Ut(b,"labelColor",this,p)),o.push(Ut(b,"labelPointStyle",this,p)),a.push(Ut(b,"labelTextColor",this,p))}),this.labelColors=n,this.labelPointStyles=o,this.labelTextColors=a,this.dataPoints=l,l}update(t,e){const i=this.options.setContext(this.getContext()),n=this._active;let o,a=[];if(!n.length)this.opacity!==0&&(o={opacity:0});else{const l=Bi[i.position].call(this,n,this._eventPosition);a=this._createItems(i),this.title=this.getTitle(a,i),this.beforeBody=this.getBeforeBody(a,i),this.body=this.getBody(a,i),this.afterBody=this.getAfterBody(a,i),this.footer=this.getFooter(a,i);const h=this._size=ho(this,i),u=Object.assign({},l,h),p=uo(this.chart,i,u),b=fo(i,u,p,this.chart);this.xAlign=p.xAlign,this.yAlign=p.yAlign,o={opacity:1,x:b.x,y:b.y,width:h.width,height:h.height,caretX:l.x,caretY:l.y}}this._tooltipItems=a,this.$context=void 0,o&&this._resolveAnimations().update(this,o),t&&i.external&&i.external.call(this,{chart:this.chart,tooltip:this,replay:e})}drawCaret(t,e,i,n){const o=this.getCaretPosition(t,i,n);e.lineTo(o.x1,o.y1),e.lineTo(o.x2,o.y2),e.lineTo(o.x3,o.y3)}getCaretPosition(t,e,i){const{xAlign:n,yAlign:o}=this,{caretSize:a,cornerRadius:l}=i,{topLeft:h,topRight:u,bottomLeft:p,bottomRight:b}=(0,d.aw)(l),{x:_,y}=t,{width:M,height:S}=e;let D,P,O,E,L,A;return o==="center"?(L=y+S/2,n==="left"?(D=_,P=D-a,E=L+a,A=L-a):(D=_+M,P=D+a,E=L-a,A=L+a),O=D):(n==="left"?P=_+Math.max(h,p)+a:n==="right"?P=_+M-Math.max(u,b)-a:P=this.caretX,o==="top"?(E=y,L=E-a,D=P-a,O=P+a):(E=y+S,L=E+a,D=P+a,O=P-a),A=E),{x1:D,x2:P,x3:O,y1:E,y2:L,y3:A}}drawTitle(t,e,i){const n=this.title,o=n.length;let a,l,h;if(o){const u=(0,d.az)(i.rtl,this.x,this.width);for(t.x=Bn(this,i.titleAlign,i),e.textAlign=u.textAlign(i.titleAlign),e.textBaseline="middle",a=(0,d.a0)(i.titleFont),l=i.titleSpacing,e.fillStyle=i.titleColor,e.font=a.string,h=0;hO!==0)?(t.beginPath(),t.fillStyle=o.multiKeyBackground,(0,d.au)(t,{x:S,y:M,w:u,h,radius:P}),t.fill(),t.stroke(),t.fillStyle=a.backgroundColor,t.beginPath(),(0,d.au)(t,{x:D,y:M+1,w:u-2,h:h-2,radius:P}),t.fill()):(t.fillStyle=o.multiKeyBackground,t.fillRect(S,M,u,h),t.strokeRect(S,M,u,h),t.fillStyle=a.backgroundColor,t.fillRect(D,M+1,u-2,h-2))}t.fillStyle=this.labelTextColors[i]}drawBody(t,e,i){const{body:n}=this,{bodySpacing:o,bodyAlign:a,displayColors:l,boxHeight:h,boxWidth:u,boxPadding:p}=i,b=(0,d.a0)(i.bodyFont);let _=b.lineHeight,y=0;const M=(0,d.az)(i.rtl,this.x,this.width),S=function(B){e.fillText(B,M.x(t.x+y),t.y+_/2),t.y+=_+o},D=M.textAlign(a);let P,O,E,L,A,F,I;for(e.textAlign=a,e.textBaseline="middle",e.font=b.string,t.x=Bn(this,D,i),e.fillStyle=i.bodyColor,(0,d.F)(this.beforeBody,S),y=l&&D!=="right"?a==="center"?u/2+p:u+2+p:0,L=0,F=n.length;L0&&e.stroke()}_updateAnimationTarget(t){const e=this.chart,i=this.$animations,n=i&&i.x,o=i&&i.y;if(n||o){const a=Bi[t.position].call(this,this._active,this._eventPosition);if(!a)return;const l=this._size=ho(this,t),h=Object.assign({},a,this._size),u=uo(e,t,h),p=fo(t,h,u,e);(n._to!==p.x||o._to!==p.y)&&(this.xAlign=u.xAlign,this.yAlign=u.yAlign,this.width=l.width,this.height=l.height,this.caretX=a.x,this.caretY=a.y,this._resolveAnimations().update(this,p))}}_willRender(){return!!this.opacity}draw(t){const e=this.options.setContext(this.getContext());let i=this.opacity;if(!i)return;this._updateAnimationTarget(e);const n={width:this.width,height:this.height},o={x:this.x,y:this.y};i=Math.abs(i)<.001?0:i;const a=(0,d.E)(e.padding),l=this.title.length||this.beforeBody.length||this.body.length||this.afterBody.length||this.footer.length;e.enabled&&l&&(t.save(),t.globalAlpha=i,this.drawBackground(o,t,n,e),(0,d.aA)(t,e.textDirection),o.y+=a.top,this.drawTitle(o,t,e),this.drawBody(o,t,e),this.drawFooter(o,t,e),(0,d.aC)(t,e.textDirection),t.restore())}getActiveElements(){return this._active||[]}setActiveElements(t,e){const i=this._active,n=t.map(({datasetIndex:l,index:h})=>{const u=this.chart.getDatasetMeta(l);if(!u)throw new Error("Cannot find a dataset at index "+l);return{datasetIndex:l,element:u.data[h],index:h}}),o=!(0,d.ah)(i,n),a=this._positionChanged(n,e);(o||a)&&(this._active=n,this._eventPosition=e,this._ignoreReplayEvents=!0,this.update(!0))}handleEvent(t,e,i=!0){if(e&&this._ignoreReplayEvents)return!1;this._ignoreReplayEvents=!1;const n=this.options,o=this._active||[],a=this._getActiveElements(t,o,e,i),l=this._positionChanged(a,t),h=e||!(0,d.ah)(a,o)||l;return h&&(this._active=a,(n.enabled||n.external)&&(this._eventPosition={x:t.x,y:t.y},this.update(!0,e))),h}_getActiveElements(t,e,i,n){const o=this.options;if(t.type==="mouseout")return[];if(!n)return e.filter(l=>this.chart.data.datasets[l.datasetIndex]&&this.chart.getDatasetMeta(l.datasetIndex).controller.getParsed(l.index)!==void 0);const a=this.chart.getElementsAtEventForMode(t,o.mode,o,i);return o.reverse&&a.reverse(),a}_positionChanged(t,e){const{caretX:i,caretY:n,options:o}=this,a=Bi[o.position].call(this,t,e);return a!==!1&&(i!==a.x||n!==a.y)}}R(no,"positioners",Bi);var bo={id:"tooltip",_element:no,positioners:Bi,afterInit(s,t,e){e&&(s.tooltip=new no({chart:s,options:e}))},beforeUpdate(s,t,e){s.tooltip&&s.tooltip.initialize(e)},reset(s,t,e){s.tooltip&&s.tooltip.initialize(e)},afterDraw(s){const t=s.tooltip;if(t&&t._willRender()){const e={tooltip:t};if(s.notifyPlugins("beforeTooltipDraw",{...e,cancelable:!0})===!1)return;t.draw(s.ctx),s.notifyPlugins("afterTooltipDraw",e)}},afterEvent(s,t){if(s.tooltip){const e=t.replay;s.tooltip.handleEvent(t.event,e,t.inChartArea)&&(t.changed=!0)}},defaults:{enabled:!0,external:null,position:"average",backgroundColor:"rgba(0,0,0,0.8)",titleColor:"#fff",titleFont:{weight:"bold"},titleSpacing:2,titleMarginBottom:6,titleAlign:"left",bodyColor:"#fff",bodySpacing:2,bodyFont:{},bodyAlign:"left",footerColor:"#fff",footerSpacing:2,footerMarginTop:6,footerFont:{weight:"bold"},footerAlign:"left",padding:6,caretPadding:2,caretSize:5,cornerRadius:6,boxHeight:(s,t)=>t.bodyFont.size,boxWidth:(s,t)=>t.bodyFont.size,multiKeyBackground:"#fff",displayColors:!0,boxPadding:0,borderColor:"rgba(0,0,0,0)",borderWidth:0,animation:{duration:400,easing:"easeOutQuart"},animations:{numbers:{type:"number",properties:["x","y","width","height","caretX","caretY"]},opacity:{easing:"linear",duration:200}},callbacks:mo},defaultRoutes:{bodyFont:"font",footerFont:"font",titleFont:"font"},descriptors:{_scriptable:s=>s!=="filter"&&s!=="itemSort"&&s!=="external",_indexable:!1,callbacks:{_scriptable:!1,_indexable:!1},animation:{_fallback:!1},animations:{_fallback:"animation"}},additionalOptionScopes:["interaction"]},zo=Object.freeze({__proto__:null,Colors:Ns,Decimation:Us,Filler:pt,Legend:Fn,SubTitle:Co,Title:co,Tooltip:bo});const Bo=(s,t,e,i)=>(typeof t=="string"?(e=s.push(t)-1,i.unshift({index:e,label:t})):isNaN(t)&&(e=null),e);function Wo(s,t,e,i){const n=s.indexOf(t);if(n===-1)return Bo(s,t,e,i);const o=s.lastIndexOf(t);return n!==o?e:n}const jo=(s,t)=>s===null?null:(0,d.S)(Math.round(s),0,t);function _o(s){const t=this.getLabels();return s>=0&&se.length-1?null:this.getPixelForValue(e[t].value)}getValueForPixel(t){return Math.round(this._startValue+this.getDecimalForPixel(t)*this._valueRange)}getBasePixel(){return this.bottom}}R(so,"id","category"),R(so,"defaults",{ticks:{callback:_o}});function Vo(s,t){const e=[],{bounds:n,step:o,min:a,max:l,precision:h,count:u,maxTicks:p,maxDigits:b,includeBounds:_}=s,y=o||1,M=p-1,{min:S,max:D}=t,P=!(0,d.k)(a),O=!(0,d.k)(l),E=!(0,d.k)(u),L=(D-S)/(b+1);let A=(0,d.aH)((D-S)/M/y)*y,F,I,B,$;if(A<1e-14&&!P&&!O)return[{value:S},{value:D}];$=Math.ceil(D/A)-Math.floor(S/A),$>M&&(A=(0,d.aH)($*A/M/y)*y),(0,d.k)(h)||(F=Math.pow(10,h),A=Math.ceil(A*F)/F),n==="ticks"?(I=Math.floor(S/A)*A,B=Math.ceil(D/A)*A):(I=S,B=D),P&&O&&o&&(0,d.aI)((l-a)/o,A/1e3)?($=Math.round(Math.min((l-a)/A,p)),A=(l-a)/$,I=a,B=l):E?(I=P?a:I,B=O?l:B,$=u-1,A=(B-I)/$):($=(B-I)/A,(0,d.aJ)($,Math.round($),A/1e3)?$=Math.round($):$=Math.ceil($));const Z=Math.max((0,d.aK)(A),(0,d.aK)(I));F=Math.pow(10,(0,d.k)(h)?Z:h),I=Math.round(I*F)/F,B=Math.round(B*F)/F;let J=0;for(P&&(_&&I!==a?(e.push({value:a}),Il)break;e.push({value:it})}return O&&_&&B!==l?e.length&&(0,d.aJ)(e[e.length-1].value,l,xo(l,L,s))?e[e.length-1].value=l:e.push({value:l}):(!O||B===l)&&e.push({value:B}),e}function xo(s,t,{horizontal:e,minRotation:i}){const n=(0,d.t)(i),o=(e?Math.sin(n):Math.cos(n))||.001,a=.75*t*(""+s).length;return Math.min(t/o,a)}class Wn extends ae{constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._endValue=void 0,this._valueRange=0}parse(t,e){return(0,d.k)(t)||(typeof t=="number"||t instanceof Number)&&!isFinite(+t)?null:+t}handleTickRangeOptions(){const{beginAtZero:t}=this.options,{minDefined:e,maxDefined:i}=this.getUserBounds();let{min:n,max:o}=this;const a=h=>n=e?n:h,l=h=>o=i?o:h;if(t){const h=(0,d.s)(n),u=(0,d.s)(o);h<0&&u<0?l(0):h>0&&u>0&&a(0)}if(n===o){let h=o===0?1:Math.abs(o*.05);l(o+h),t||a(n-h)}this.min=n,this.max=o}getTickLimit(){const t=this.options.ticks;let{maxTicksLimit:e,stepSize:i}=t,n;return i?(n=Math.ceil(this.max/i)-Math.floor(this.min/i)+1,n>1e3&&(console.warn(`scales.${this.id}.ticks.stepSize: ${i} would result generating up to ${n} ticks. Limiting to 1000.`),n=1e3)):(n=this.computeTickLimit(),e=e||11),e&&(n=Math.min(e,n)),n}computeTickLimit(){return Number.POSITIVE_INFINITY}buildTicks(){const t=this.options,e=t.ticks;let i=this.getTickLimit();i=Math.max(2,i);const n={maxTicks:i,bounds:t.bounds,min:t.min,max:t.max,precision:e.precision,step:e.stepSize,count:e.count,maxDigits:this._maxDigits(),horizontal:this.isHorizontal(),minRotation:e.minRotation||0,includeBounds:e.includeBounds!==!1},o=this._range||this,a=Vo(n,o);return t.bounds==="ticks"&&(0,d.aG)(a,this,"value"),t.reverse?(a.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),a}configure(){const t=this.ticks;let e=this.min,i=this.max;if(super.configure(),this.options.offset&&t.length){const n=(i-e)/Math.max(t.length-1,1)/2;e-=n,i+=n}this._startValue=e,this._endValue=i,this._valueRange=i-e}getLabelForValue(t){return(0,d.o)(t,this.chart.options.locale,this.options.ticks.format)}}class jn extends Wn{determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=(0,d.g)(t)?t:0,this.max=(0,d.g)(e)?e:1,this.handleTickRangeOptions()}computeTickLimit(){const t=this.isHorizontal(),e=t?this.width:this.height,i=(0,d.t)(this.options.ticks.minRotation),n=(t?Math.sin(i):Math.cos(i))||.001,o=this._resolveTickFontOptions(0);return Math.ceil(e/Math.min(40,o.lineHeight/n))}getPixelForValue(t){return t===null?NaN:this.getPixelForDecimal((t-this._startValue)/this._valueRange)}getValueForPixel(t){return this._startValue+this.getDecimalForPixel(t)*this._valueRange}}R(jn,"id","linear"),R(jn,"defaults",{ticks:{callback:d.aL.formatters.numeric}});const Wi=s=>Math.floor((0,d.aM)(s)),Ue=(s,t)=>Math.pow(10,Wi(s)+t);function yo(s){return s/Math.pow(10,Wi(s))===1}function vo(s,t,e){const i=Math.pow(10,e),n=Math.floor(s/i);return Math.ceil(t/i)-n}function Ho(s,t){const e=t-s;let i=Wi(e);for(;vo(s,t,i)>10;)i++;for(;vo(s,t,i)<10;)i--;return Math.min(i,Wi(s))}function No(s,{min:t,max:e}){t=(0,d.O)(s.min,t);const i=[],n=Wi(t);let o=Ho(t,e),a=o<0?Math.pow(10,Math.abs(o)):1;const l=Math.pow(10,o),h=n>o?Math.pow(10,n):0,u=Math.round((t-h)*a)/a,p=Math.floor((t-h)/l/10)*l*10;let b=Math.floor((u-p)/Math.pow(10,o)),_=(0,d.O)(s.min,Math.round((h+p+b*Math.pow(10,o))*a)/a);for(;_=10?b=b<15?15:20:b++,b>=20&&(o++,b=2,a=o>=0?1:a),_=Math.round((h+p+b*Math.pow(10,o))*a)/a;const y=(0,d.O)(s.max,_);return i.push({value:y,major:yo(y),significand:b}),i}class oo extends ae{constructor(t){super(t),this.start=void 0,this.end=void 0,this._startValue=void 0,this._valueRange=0}parse(t,e){const i=Wn.prototype.parse.apply(this,[t,e]);if(i===0){this._zero=!0;return}return(0,d.g)(i)&&i>0?i:null}determineDataLimits(){const{min:t,max:e}=this.getMinMax(!0);this.min=(0,d.g)(t)?Math.max(0,t):null,this.max=(0,d.g)(e)?Math.max(0,e):null,this.options.beginAtZero&&(this._zero=!0),this._zero&&this.min!==this._suggestedMin&&!(0,d.g)(this._userMin)&&(this.min=t===Ue(this.min,0)?Ue(this.min,-1):Ue(this.min,0)),this.handleTickRangeOptions()}handleTickRangeOptions(){const{minDefined:t,maxDefined:e}=this.getUserBounds();let i=this.min,n=this.max;const o=l=>i=t?i:l,a=l=>n=e?n:l;i===n&&(i<=0?(o(1),a(10)):(o(Ue(i,-1)),a(Ue(n,1)))),i<=0&&o(Ue(n,-1)),n<=0&&a(Ue(i,1)),this.min=i,this.max=n}buildTicks(){const t=this.options,e={min:this._userMin,max:this._userMax},i=No(e,this);return t.bounds==="ticks"&&(0,d.aG)(i,this,"value"),t.reverse?(i.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max),i}getLabelForValue(t){return t===void 0?"0":(0,d.o)(t,this.chart.options.locale,this.options.ticks.format)}configure(){const t=this.min;super.configure(),this._startValue=(0,d.aM)(t),this._valueRange=(0,d.aM)(this.max)-(0,d.aM)(t)}getPixelForValue(t){return(t===void 0||t===0)&&(t=this.min),t===null||isNaN(t)?NaN:this.getPixelForDecimal(t===this.min?0:((0,d.aM)(t)-this._startValue)/this._valueRange)}getValueForPixel(t){const e=this.getDecimalForPixel(t);return Math.pow(10,this._startValue+e*this._valueRange)}}R(oo,"id","logarithmic"),R(oo,"defaults",{ticks:{callback:d.aL.formatters.logarithmic,major:{enabled:!0}}});function ro(s){const t=s.ticks;if(t.display&&s.display){const e=(0,d.E)(t.backdropPadding);return(0,d.v)(t.font&&t.font.size,d.d.font.size)+e.height}return 0}function Yo(s,t,e){return e=(0,d.b)(e)?e:[e],{w:(0,d.aN)(s,t.string,e),h:e.length*t.lineHeight}}function Mo(s,t,e,i,n){return s===i||s===n?{start:t-e/2,end:t+e/2}:sn?{start:t-e,end:t}:{start:t,end:t+e}}function $o(s){const t={l:s.left+s._padding.left,r:s.right-s._padding.right,t:s.top+s._padding.top,b:s.bottom-s._padding.bottom},e=Object.assign({},t),i=[],n=[],o=s._pointLabels.length,a=s.options.pointLabels,l=a.centerPointLabels?d.P/o:0;for(let h=0;ht.r&&(l=(i.end-t.r)/o,s.r=Math.max(s.r,t.r+l)),n.startt.b&&(h=(n.end-t.b)/a,s.b=Math.max(s.b,t.b+h))}function Xo(s,t,e){const i=s.drawingArea,{extra:n,additionalAngle:o,padding:a,size:l}=e,h=s.getPointPosition(t,i+n+a,o),u=Math.round((0,d.U)((0,d.ay)(h.angle+d.H))),p=Zo(h.y,l.h,u),b=Qo(u),_=qo(h.x,l.w,b);return{visible:!0,x:h.x,y:p,textAlign:b,left:_,top:p,right:_+l.w,bottom:p+l.h}}function Ko(s,t){if(!t)return!0;const{left:e,top:i,right:n,bottom:o}=s;return!((0,d.C)({x:e,y:i},t)||(0,d.C)({x:e,y:o},t)||(0,d.C)({x:n,y:i},t)||(0,d.C)({x:n,y:o},t))}function Go(s,t,e){const i=[],n=s._pointLabels.length,o=s.options,{centerPointLabels:a,display:l}=o.pointLabels,h={extra:ro(o)/2,additionalAngle:a?d.P/n:0};let u;for(let p=0;p270||e<90)&&(s-=t),s}function Jo(s,t,e){const{left:i,top:n,right:o,bottom:a}=e,{backdropColor:l}=t;if(!(0,d.k)(l)){const h=(0,d.aw)(t.borderRadius),u=(0,d.E)(t.backdropPadding);s.fillStyle=l;const p=i-u.left,b=n-u.top,_=o-i+u.width,y=a-n+u.height;Object.values(h).some(M=>M!==0)?(s.beginPath(),(0,d.au)(s,{x:p,y:b,w:_,h:y,radius:h}),s.fill()):s.fillRect(p,b,_,y)}}function tr(s,t){const{ctx:e,options:{pointLabels:i}}=s;for(let n=t-1;n>=0;n--){const o=s._pointLabelItems[n];if(!o.visible)continue;const a=i.setContext(s.getPointLabelContext(n));Jo(e,a,o);const l=(0,d.a0)(a.font),{x:h,y:u,textAlign:p}=o;(0,d.Z)(e,s._pointLabels[n],h,u+l.lineHeight/2,l,{color:a.color,textAlign:p,textBaseline:"middle"})}}function ko(s,t,e,i){const{ctx:n}=s;if(e)n.arc(s.xCenter,s.yCenter,t,0,d.T);else{let o=s.getPointPosition(0,t);n.moveTo(o.x,o.y);for(let a=1;a{const n=(0,d.Q)(this.options.pointLabels.callback,[e,i],this);return n||n===0?n:""}).filter((e,i)=>this.chart.getDataVisibility(i))}fit(){const t=this.options;t.display&&t.pointLabels.display?$o(this):this.setCenterPoint(0,0,0,0)}setCenterPoint(t,e,i,n){this.xCenter+=Math.floor((t-e)/2),this.yCenter+=Math.floor((i-n)/2),this.drawingArea-=Math.min(this.drawingArea/2,Math.max(t,e,i,n))}getIndexAngle(t){const e=d.T/(this._pointLabels.length||1),i=this.options.startAngle||0;return(0,d.ay)(t*e+(0,d.t)(i))}getDistanceFromCenterForValue(t){if((0,d.k)(t))return NaN;const e=this.drawingArea/(this.max-this.min);return this.options.reverse?(this.max-t)*e:(t-this.min)*e}getValueForDistanceFromCenter(t){if((0,d.k)(t))return NaN;const e=t/(this.drawingArea/(this.max-this.min));return this.options.reverse?this.max-e:this.min+e}getPointLabelContext(t){const e=this._pointLabels||[];if(t>=0&&t{if(b!==0||b===0&&this.min<0){h=this.getDistanceFromCenterForValue(p.value);const _=this.getContext(b),y=n.setContext(_),M=o.setContext(_);er(this,y,h,a,M)}}),i.display){for(t.save(),l=a-1;l>=0;l--){const p=i.setContext(this.getPointLabelContext(l)),{color:b,lineWidth:_}=p;!_||!b||(t.lineWidth=_,t.strokeStyle=b,t.setLineDash(p.borderDash),t.lineDashOffset=p.borderDashOffset,h=this.getDistanceFromCenterForValue(e.ticks.reverse?this.min:this.max),u=this.getPointPosition(l,h),t.beginPath(),t.moveTo(this.xCenter,this.yCenter),t.lineTo(u.x,u.y),t.stroke())}t.restore()}}drawBorder(){}drawLabels(){const t=this.ctx,e=this.options,i=e.ticks;if(!i.display)return;const n=this.getIndexAngle(0);let o,a;t.save(),t.translate(this.xCenter,this.yCenter),t.rotate(n),t.textAlign="center",t.textBaseline="middle",this.ticks.forEach((l,h)=>{if(h===0&&this.min>=0&&!e.reverse)return;const u=i.setContext(this.getContext(h)),p=(0,d.a0)(u.font);if(o=this.getDistanceFromCenterForValue(this.ticks[h].value),u.showLabelBackdrop){t.font=p.string,a=t.measureText(l.label).width,t.fillStyle=u.backdropColor;const b=(0,d.E)(u.backdropPadding);t.fillRect(-a/2-b.left,-o-p.size/2-b.top,a+b.width,p.size+b.height)}(0,d.Z)(t,l.label,0,-o,p,{color:u.color,strokeColor:u.textStrokeColor,strokeWidth:u.textStrokeWidth})}),t.restore()}drawTitle(){}}R(ji,"id","radialLinear"),R(ji,"defaults",{display:!0,animate:!0,position:"chartArea",angleLines:{display:!0,lineWidth:1,borderDash:[],borderDashOffset:0},grid:{circular:!1},startAngle:0,ticks:{showLabelBackdrop:!0,callback:d.aL.formatters.numeric},pointLabels:{backdropColor:void 0,backdropPadding:2,display:!0,font:{size:10},callback(t){return t},padding:5,centerPointLabels:!1}}),R(ji,"defaultRoutes",{"angleLines.color":"borderColor","pointLabels.color":"color","ticks.color":"color"}),R(ji,"descriptors",{angleLines:{_fallback:"grid"}});const Vn={millisecond:{common:!0,size:1,steps:1e3},second:{common:!0,size:1e3,steps:60},minute:{common:!0,size:6e4,steps:60},hour:{common:!0,size:36e5,steps:24},day:{common:!0,size:864e5,steps:30},week:{common:!1,size:6048e5,steps:4},month:{common:!0,size:2628e6,steps:12},quarter:{common:!1,size:7884e6,steps:4},year:{common:!0,size:3154e7}},Xt=Object.keys(Vn);function wo(s,t){return s-t}function So(s,t){if((0,d.k)(t))return null;const e=s._adapter,{parser:i,round:n,isoWeekday:o}=s._parseOpts;let a=t;return typeof i=="function"&&(a=i(a)),(0,d.g)(a)||(a=typeof i=="string"?e.parse(a,i):e.parse(a)),a===null?null:(n&&(a=n==="week"&&((0,d.x)(o)||o===!0)?e.startOf(a,"isoWeek",o):e.startOf(a,n)),+a)}function Po(s,t,e,i){const n=Xt.length;for(let o=Xt.indexOf(s);o=Xt.indexOf(e);o--){const a=Xt[o];if(Vn[a].common&&s._adapter.diff(n,i,a)>=t-1)return a}return Xt[e?Xt.indexOf(e):0]}function sr(s){for(let t=Xt.indexOf(s)+1,e=Xt.length;t=t?e[i]:e[n];s[o]=!0}}function or(s,t,e,i){const n=s._adapter,o=+n.startOf(t[0].value,i),a=t[t.length-1].value;let l,h;for(l=o;l<=a;l=+n.add(l,1,i))h=e[l],h>=0&&(t[h].major=!0);return t}function Oo(s,t,e){const i=[],n={},o=t.length;let a,l;for(a=0;a+t.value))}initOffsets(t=[]){let e=0,i=0,n,o;this.options.offset&&t.length&&(n=this.getDecimalForValue(t[0]),t.length===1?e=1-n:e=(this.getDecimalForValue(t[1])-n)/2,o=this.getDecimalForValue(t[t.length-1]),t.length===1?i=o:i=(o-this.getDecimalForValue(t[t.length-2]))/2);const a=t.length<3?.5:.25;e=(0,d.S)(e,0,a),i=(0,d.S)(i,0,a),this._offsets={start:e,end:i,factor:1/(e+1+i)}}_generate(){const t=this._adapter,e=this.min,i=this.max,n=this.options,o=n.time,a=o.unit||Po(o.minUnit,e,i,this._getLabelCapacity(e)),l=(0,d.v)(n.ticks.stepSize,1),h=a==="week"?o.isoWeekday:!1,u=(0,d.x)(h)||h===!0,p={};let b=e,_,y;if(u&&(b=+t.startOf(b,"isoWeek",h)),b=+t.startOf(b,u?"day":a),t.diff(i,e,a)>1e5*l)throw new Error(e+" and "+i+" are too far apart with stepSize of "+l+" "+a);const M=n.ticks.source==="data"&&this.getDataTimestamps();for(_=b,y=0;_+S)}getLabelForValue(t){const e=this._adapter,i=this.options.time;return i.tooltipFormat?e.format(t,i.tooltipFormat):e.format(t,i.displayFormats.datetime)}format(t,e){const n=this.options.time.displayFormats,o=this._unit,a=e||n[o];return this._adapter.format(t,a)}_tickFormatFunction(t,e,i,n){const o=this.options,a=o.ticks.callback;if(a)return(0,d.Q)(a,[t,e,i],this);const l=o.time.displayFormats,h=this._unit,u=this._majorUnit,p=h&&l[h],b=u&&l[u],_=i[e],y=u&&b&&_&&_.major;return this._adapter.format(t,n||(y?b:p))}generateTickLabels(t){let e,i,n;for(e=0,i=t.length;e0?l:1}getDataTimestamps(){let t=this._cache.data||[],e,i;if(t.length)return t;const n=this.getMatchingVisibleMetas();if(this._normalized&&n.length)return this._cache.data=n[0].controller.getAllParsedValues(this);for(e=0,i=n.length;e=s[i].pos&&t<=s[n].pos&&({lo:i,hi:n}=(0,d.B)(s,"pos",t)),{pos:o,time:l}=s[i],{pos:a,time:h}=s[n]):(t>=s[i].time&&t<=s[n].time&&({lo:i,hi:n}=(0,d.B)(s,"time",t)),{time:o,pos:l}=s[i],{time:a,pos:h}=s[n]);const u=a-o;return u?l+(h-l)*(t-o)/u:l}class ao extends fi{constructor(t){super(t),this._table=[],this._minPos=void 0,this._tableRange=void 0}initOffsets(){const t=this._getTimestampsForTable(),e=this._table=this.buildLookupTable(t);this._minPos=Hn(e,this.min),this._tableRange=Hn(e,this.max)-this._minPos,super.initOffsets(t)}buildLookupTable(t){const{min:e,max:i}=this,n=[],o=[];let a,l,h,u,p;for(a=0,l=t.length;a=e&&u<=i&&n.push(u);if(n.length<2)return[{time:e,pos:0},{time:i,pos:1}];for(a=0,l=n.length;an-o)}_getTimestampsForTable(){let t=this._cache.all||[];if(t.length)return t;const e=this.getDataTimestamps(),i=this.getLabelTimestamps();return e.length&&i.length?t=this.normalize(e.concat(i)):t=e.length?e:i,t=this._cache.all=t,t}getDecimalForValue(t){return(Hn(this._table,t)-this._minPos)/this._tableRange}getValueForPixel(t){const e=this._offsets,i=this.getDecimalForPixel(t)/e.factor-e.end;return Hn(this._table,i*this._tableRange+this._minPos,!0)}}R(ao,"id","timeseries"),R(ao,"defaults",fi.defaults);var rr=Object.freeze({__proto__:null,CategoryScale:so,LinearScale:jn,LogarithmicScale:oo,RadialLinearScale:ji,TimeScale:fi,TimeSeriesScale:ao});const cr=[Yn,hi,zo,rr]},"./node_modules/chart.js/dist/chunks/helpers.segment.js":function(vt,nt,G){"use strict";G.d(nt,{$:function(){return He},A:function(){return os},B:function(){return We},C:function(){return oi},D:function(){return ns},E:function(){return Cs},F:function(){return Ie},G:function(){return On},H:function(){return te},I:function(){return ci},J:function(){return Ys},K:function(){return Ns},L:function(){return cs},M:function(){return Sn},N:function(){return Zn},O:function(){return Yn},P:function(){return kt},Q:function(){return $n},R:function(){return fe},S:function(){return Ze},T:function(){return Jt},U:function(){return qe},V:function(){return Pi},W:function(){return ss},X:function(){return cn},Y:function(){return ri},Z:function(){return Ps},_:function(){return ls},a:function(){return As},a0:function(){return ai},a1:function(){return Zi},a2:function(){return Ji},a3:function(){return ii},a4:function(){return xe},a5:function(){return yi},a6:function(){return an},a7:function(){return Be},a8:function(){return Ne},a9:function(){return Ai},aA:function(){return Fi},aB:function(){return tn},aC:function(){return Ks},aD:function(){return Di},aE:function(){return ye},aF:function(){return Zt},aG:function(){return ts},aH:function(){return Xi},aI:function(){return Jn},aJ:function(){return Mi},aK:function(){return is},aL:function(){return rn},aM:function(){return Qe},aN:function(){return ys},aO:function(){return ee},aP:function(){return ki},aa:function(){return mn},ab:function(){return _i},ac:function(){return Pe},ad:function(){return hs},ae:function(){return Hs},af:function(){return hn},ag:function(){return $i},ah:function(){return Un},ai:function(){return Ui},aj:function(){return Je},ak:function(){return Te},al:function(){return Bs},am:function(){return Zs},an:function(){return Gs},ao:function(){return Cn},ap:function(){return An},aq:function(){return Me},ar:function(){return Ms},as:function(){return dn},at:function(){return vs},au:function(){return un},av:function(){return Oi},aw:function(){return Os},ax:function(){return zi},ay:function(){return se},az:function(){return Xs},b:function(){return Ft},c:function(){return fs},d:function(){return si},e:function(){return ti},f:function(){return xi},g:function(){return De},h:function(){return Qn},i:function(){return yt},j:function(){return Ci},k:function(){return re},l:function(){return rs},m:function(){return mi},n:function(){return bi},o:function(){return sn},p:function(){return Qi},q:function(){return ds},r:function(){return je},s:function(){return Ae},t:function(){return es},u:function(){return as},v:function(){return It},w:function(){return us},x:function(){return Ki},y:function(){return Fs},z:function(){return js}});function d(r){return r+.5|0}const W=(r,c,f)=>Math.max(Math.min(r,f),c);function X(r){return W(d(r*2.55),0,255)}function Q(r){return W(d(r/2.55),0,100)}function ut(r){return W(d(r*255),0,255)}function j(r){return W(d(r/2.55)/100,0,1)}function at(r){return W(d(r*100),0,100)}const K={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},lt=[..."0123456789ABCDEF"],et=r=>lt[r&15],ft=r=>lt[(r&240)>>4]+lt[r&15],z=r=>(r&240)>>4===(r&15),q=r=>z(r.r)&&z(r.g)&&z(r.b)&&z(r.a);function ct(r){var c=r.length,f;return r[0]==="#"&&(c===4||c===5?f={r:255&K[r[1]]*17,g:255&K[r[2]]*17,b:255&K[r[3]]*17,a:c===5?K[r[4]]*17:255}:(c===7||c===9)&&(f={r:K[r[1]]<<4|K[r[2]],g:K[r[3]]<<4|K[r[4]],b:K[r[5]]<<4|K[r[6]],a:c===9?K[r[7]]<<4|K[r[8]]:255})),f}const ht=(r,c)=>r<255?c(r):"";function Pt(r){var c=q(r)?et:ft;return r?"#"+c(r.r)+c(r.g)+c(r.b)+ht(r.a,c):void 0}const Bt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Kt(r,c,f){const g=c*Math.min(f,1-f),m=(x,v=(x+r/30)%12)=>f-g*Math.max(Math.min(v-3,9-v,1),-1);return[m(0),m(8),m(4)]}function Gt(r,c,f){const g=(m,x=(m+r/60)%6)=>f-f*c*Math.max(Math.min(x,4-x,1),0);return[g(5),g(3),g(1)]}function Wt(r,c,f){const g=Kt(r,1,.5);let m;for(c+f>1&&(m=1/(c+f),c*=m,f*=m),m=0;m<3;m++)g[m]*=1-c-f,g[m]+=c;return g}function At(r,c,f,g,m){return r===m?(c-f)/g+(c.5?T/(2-x-v):T/(x+v),w=At(f,g,m,T,x),w=w*60+.5),[w|0,C||0,k]}function jt(r,c,f,g){return(Array.isArray(c)?r(c[0],c[1],c[2]):r(c,f,g)).map(ut)}function Dt(r,c,f){return jt(Kt,r,c,f)}function xt(r,c,f){return jt(Wt,r,c,f)}function Vt(r,c,f){return jt(Gt,r,c,f)}function N(r){return(r%360+360)%360}function tt(r){const c=Bt.exec(r);let f=255,g;if(!c)return;c[5]!==g&&(f=c[6]?X(+c[5]):ut(+c[5]));const m=N(+c[2]),x=+c[3]/100,v=+c[4]/100;return c[1]==="hwb"?g=xt(m,x,v):c[1]==="hsv"?g=Vt(m,x,v):g=Dt(m,x,v),{r:g[0],g:g[1],b:g[2],a:f}}function st(r,c){var f=Tt(r);f[0]=N(f[0]+c),f=Dt(f),r.r=f[0],r.g=f[1],r.b=f[2]}function wt(r){if(!r)return;const c=Tt(r),f=c[0],g=at(c[1]),m=at(c[2]);return r.a<255?`hsla(${f}, ${g}%, ${m}%, ${j(r.a)})`:`hsl(${f}, ${g}%, ${m}%)`}const bt={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},ot={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};function Lt(){const r={},c=Object.keys(ot),f=Object.keys(bt);let g,m,x,v,k;for(g=0;g>16&255,x>>8&255,x&255]}return r}let Ht;function we(r){Ht||(Ht=Lt(),Ht.transparent=[0,0,0,0]);const c=Ht[r.toLowerCase()];return c&&{r:c[0],g:c[1],b:c[2],a:c.length===4?c[3]:255}}const Et=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;function ne(r){const c=Et.exec(r);let f=255,g,m,x;if(c){if(c[7]!==g){const v=+c[7];f=c[8]?X(v):W(v*255,0,255)}return g=+c[1],m=+c[3],x=+c[5],g=255&(c[2]?X(g):W(g,0,255)),m=255&(c[4]?X(m):W(m,0,255)),x=255&(c[6]?X(x):W(x,0,255)),{r:g,g:m,b:x,a:f}}}function he(r){return r&&(r.a<255?`rgba(${r.r}, ${r.g}, ${r.b}, ${j(r.a)})`:`rgb(${r.r}, ${r.g}, ${r.b})`)}const Qt=r=>r<=.0031308?r*12.92:Math.pow(r,1/2.4)*1.055-.055,Nt=r=>r<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4);function qt(r,c,f){const g=Nt(j(r.r)),m=Nt(j(r.g)),x=Nt(j(r.b));return{r:ut(Qt(g+f*(Nt(j(c.r))-g))),g:ut(Qt(m+f*(Nt(j(c.g))-m))),b:ut(Qt(x+f*(Nt(j(c.b))-x))),a:r.a+f*(c.a-r.a)}}function St(r,c,f){if(r){let g=Tt(r);g[c]=Math.max(0,Math.min(g[c]+g[c]*f,c===0?360:1)),g=Dt(g),r.r=g[0],r.g=g[1],r.b=g[2]}}function $t(r,c){return r&&Object.assign(c||{},r)}function Rt(r){var c={r:0,g:0,b:0,a:255};return Array.isArray(r)?r.length>=3&&(c={r:r[0],g:r[1],b:r[2],a:255},r.length>3&&(c.a=ut(r[3]))):(c=$t(r,{r:0,g:0,b:0,a:1}),c.a=ut(c.a)),c}function Yt(r){return r.charAt(0)==="r"?ne(r):tt(r)}class Mt{constructor(c){if(c instanceof Mt)return c;const f=typeof c;let g;f==="object"?g=Rt(c):f==="string"&&(g=ct(c)||we(c)||Yt(c)),this._rgb=g,this._valid=!!g}get valid(){return this._valid}get rgb(){var c=$t(this._rgb);return c&&(c.a=j(c.a)),c}set rgb(c){this._rgb=Rt(c)}rgbString(){return this._valid?he(this._rgb):void 0}hexString(){return this._valid?Pt(this._rgb):void 0}hslString(){return this._valid?wt(this._rgb):void 0}mix(c,f){if(c){const g=this.rgb,m=c.rgb;let x;const v=f===x?.5:f,k=2*v-1,w=g.a-m.a,C=((k*w===-1?k:(k+w)/(1+k*w))+1)/2;x=1-C,g.r=255&C*g.r+x*m.r+.5,g.g=255&C*g.g+x*m.g+.5,g.b=255&C*g.b+x*m.b+.5,g.a=v*g.a+(1-v)*m.a,this.rgb=g}return this}interpolate(c,f){return c&&(this._rgb=qt(this._rgb,c._rgb,f)),this}clone(){return new Mt(this.rgb)}alpha(c){return this._rgb.a=ut(c),this}clearer(c){const f=this._rgb;return f.a*=1-c,this}greyscale(){const c=this._rgb,f=d(c.r*.3+c.g*.59+c.b*.11);return c.r=c.g=c.b=f,this}opaquer(c){const f=this._rgb;return f.a*=1+c,this}negate(){const c=this._rgb;return c.r=255-c.r,c.g=255-c.g,c.b=255-c.b,this}lighten(c){return St(this._rgb,2,c),this}darken(c){return St(this._rgb,2,-c),this}saturate(c){return St(this._rgb,1,c),this}desaturate(c){return St(this._rgb,1,-c),this}rotate(c){return st(this._rgb,c),this}}function Se(r){return new Mt(r)}function Zt(){}const Pe=(()=>{let r=0;return()=>r++})();function re(r){return r===null||typeof r>"u"}function Ft(r){if(Array.isArray&&Array.isArray(r))return!0;const c=Object.prototype.toString.call(r);return c.slice(0,7)==="[object"&&c.slice(-6)==="Array]"}function yt(r){return r!==null&&Object.prototype.toString.call(r)==="[object Object]"}function De(r){return(typeof r=="number"||r instanceof Number)&&isFinite(+r)}function Yn(r,c){return De(r)?r:c}function It(r,c){return typeof r>"u"?c:r}const mi=(r,c)=>typeof r=="string"&&r.endsWith("%")?parseFloat(r)/100:+r/c,bi=(r,c)=>typeof r=="string"&&r.endsWith("%")?parseFloat(r)/100*c:+r;function $n(r,c,f){if(r&&typeof r.call=="function")return r.apply(f,c)}function Ie(r,c,f,g){let m,x,v;if(Ft(r))if(x=r.length,g)for(m=x-1;m>=0;m--)c.call(f,r[m],m);else for(m=0;mr,x:r=>r.x,y:r=>r.y};function Yi(r){const c=r.split("."),f=[];let g="";for(const m of c)g+=m,g.endsWith("\\")?g=g.slice(0,-1)+".":(f.push(g),g="");return f}function ze(r){const c=Yi(r);return f=>{for(const g of c){if(g==="")break;f=f&&f[g]}return f}}function xi(r,c){return(Ce[c]||(Ce[c]=ze(c)))(r)}function yi(r){return r.charAt(0).toUpperCase()+r.slice(1)}const Qn=r=>typeof r<"u",Be=r=>typeof r=="function",$i=(r,c)=>{if(r.size!==c.size)return!1;for(const f of r)if(!c.has(f))return!1;return!0};function Ui(r){return r.type==="mouseup"||r.type==="click"||r.type==="contextmenu"}const kt=Math.PI,Jt=2*kt,qn=Jt+kt,de=Number.POSITIVE_INFINITY,Ge=kt/180,te=kt/2,gt=kt/4,vi=kt*2/3,Qe=Math.log10,Ae=Math.sign;function Mi(r,c,f){return Math.abs(r-c)m-x).pop(),c}function Ki(r){return!isNaN(parseFloat(r))&&isFinite(r)}function Jn(r,c){const f=Math.round(r);return f-c<=r&&f+c>=r}function ts(r,c,f){let g,m,x;for(g=0,m=r.length;gw&&C=Math.min(c,f)-g&&r<=Math.max(c,f)+g}function ki(r,c,f){f=f||(v=>r[v]1;)x=m+g>>1,f(x)?m=x:g=x;return{lo:m,hi:g}}const We=(r,c,f,g)=>ki(r,f,g?m=>{const x=r[m][c];return xr[m][c]ki(r,f,g=>r[g][c]>=f);function ee(r,c,f){let g=0,m=r.length;for(;gg&&r[m-1]>f;)m--;return g>0||m{const g="_onData"+yi(f),m=r[f];Object.defineProperty(r,f,{configurable:!0,enumerable:!1,value(...x){const v=m.apply(this,x);return r._chartjs.listeners.forEach(k=>{typeof k[g]=="function"&&k[g](...x)}),v}})})}function as(r,c){const f=r._chartjs;if(!f)return;const g=f.listeners,m=g.indexOf(c);m!==-1&&g.splice(m,1),!(g.length>0)&&(qi.forEach(x=>{delete r[x]}),delete r._chartjs)}function ls(r){const c=new Set(r);return c.size===r.length?r:Array.from(c)}function lo(r,c,f){return c+" "+r+"px "+f}const je=function(){return typeof window>"u"?function(r){return r()}:window.requestAnimationFrame}();function cs(r,c){let f=[],g=!1;return function(...m){f=m,g||(g=!0,je.call(window,()=>{g=!1,r.apply(c,f)}))}}function hs(r,c){let f;return function(...g){return c?(clearTimeout(f),f=setTimeout(r,c,g)):r.apply(this,g),c}}const Zi=r=>r==="start"?"left":r==="end"?"right":"center",Ji=(r,c,f)=>r==="start"?c:r==="end"?f:(c+f)/2,tn=(r,c,f,g)=>r===(g?"left":"right")?f:r==="center"?(c+f)/2:c;function ds(r,c,f){const g=c.length;let m=0,x=g;if(r._sorted){const{iScale:v,_parsed:k}=r,w=v.axis,{min:C,max:T,minDefined:H,maxDefined:Y}=v.getUserBounds();H&&(m=Ze(Math.min(We(k,w,C).lo,f?g:We(c,w,v.getPixelForValue(C)).lo),0,g-1)),Y?x=Ze(Math.max(We(k,v.axis,T,!0).hi+1,f?0:We(c,w,v.getPixelForValue(T),!0).hi+1),m,g)-m:x=g-m}return{start:m,count:x}}function us(r){const{xScale:c,yScale:f,_scaleRanges:g}=r,m={xmin:c.min,xmax:c.max,ymin:f.min,ymax:f.max};if(!g)return r._scaleRanges=m,!0;const x=g.xmin!==c.min||g.xmax!==c.max||g.ymin!==f.min||g.ymax!==f.max;return Object.assign(g,m),x}const ue=r=>r===0||r===1,wi=(r,c,f)=>-(Math.pow(2,10*(r-=1))*Math.sin((r-c)*Jt/f)),en=(r,c,f)=>Math.pow(2,-10*r)*Math.sin((r-c)*Jt/f)+1,ti={linear:r=>r,easeInQuad:r=>r*r,easeOutQuad:r=>-r*(r-2),easeInOutQuad:r=>(r/=.5)<1?.5*r*r:-.5*(--r*(r-2)-1),easeInCubic:r=>r*r*r,easeOutCubic:r=>(r-=1)*r*r+1,easeInOutCubic:r=>(r/=.5)<1?.5*r*r*r:.5*((r-=2)*r*r+2),easeInQuart:r=>r*r*r*r,easeOutQuart:r=>-((r-=1)*r*r*r-1),easeInOutQuart:r=>(r/=.5)<1?.5*r*r*r*r:-.5*((r-=2)*r*r*r-2),easeInQuint:r=>r*r*r*r*r,easeOutQuint:r=>(r-=1)*r*r*r*r+1,easeInOutQuint:r=>(r/=.5)<1?.5*r*r*r*r*r:.5*((r-=2)*r*r*r*r+2),easeInSine:r=>-Math.cos(r*te)+1,easeOutSine:r=>Math.sin(r*te),easeInOutSine:r=>-.5*(Math.cos(kt*r)-1),easeInExpo:r=>r===0?0:Math.pow(2,10*(r-1)),easeOutExpo:r=>r===1?1:-Math.pow(2,-10*r)+1,easeInOutExpo:r=>ue(r)?r:r<.5?.5*Math.pow(2,10*(r*2-1)):.5*(-Math.pow(2,-10*(r*2-1))+2),easeInCirc:r=>r>=1?r:-(Math.sqrt(1-r*r)-1),easeOutCirc:r=>Math.sqrt(1-(r-=1)*r),easeInOutCirc:r=>(r/=.5)<1?-.5*(Math.sqrt(1-r*r)-1):.5*(Math.sqrt(1-(r-=2)*r)+1),easeInElastic:r=>ue(r)?r:wi(r,.075,.3),easeOutElastic:r=>ue(r)?r:en(r,.075,.3),easeInOutElastic(r){return ue(r)?r:r<.5?.5*wi(r*2,.1125,.45):.5+.5*en(r*2-1,.1125,.45)},easeInBack(r){return r*r*((1.70158+1)*r-1.70158)},easeOutBack(r){return(r-=1)*r*((1.70158+1)*r+1.70158)+1},easeInOutBack(r){let c=1.70158;return(r/=.5)<1?.5*(r*r*(((c*=1.525)+1)*r-c)):.5*((r-=2)*r*(((c*=1.525)+1)*r+c)+2)},easeInBounce:r=>1-ti.easeOutBounce(1-r),easeOutBounce(r){return r<1/2.75?7.5625*r*r:r<2/2.75?7.5625*(r-=1.5/2.75)*r+.75:r<2.5/2.75?7.5625*(r-=2.25/2.75)*r+.9375:7.5625*(r-=2.625/2.75)*r+.984375},easeInOutBounce:r=>r<.5?ti.easeInBounce(r*2)*.5:ti.easeOutBounce(r*2-1)*.5+.5};function Si(r){if(r&&typeof r=="object"){const c=r.toString();return c==="[object CanvasPattern]"||c==="[object CanvasGradient]"}return!1}function fs(r){return Si(r)?r:new Mt(r)}function ae(r){return Si(r)?r:new Mt(r).saturate(.5).darken(.1).hexString()}const ei=["x","y","borderWidth","radius","tension"],gs=["color","borderColor","backgroundColor"];function ps(r){r.set("animation",{delay:void 0,duration:1e3,easing:"easeOutQuart",fn:void 0,from:void 0,loop:void 0,to:void 0,type:void 0}),r.describe("animation",{_fallback:!1,_indexable:!1,_scriptable:c=>c!=="onProgress"&&c!=="onComplete"&&c!=="fn"}),r.set("animations",{colors:{type:"color",properties:gs},numbers:{type:"number",properties:ei}}),r.describe("animations",{_fallback:"animation"}),r.set("transitions",{active:{animation:{duration:400}},resize:{animation:{duration:0}},show:{animations:{colors:{from:"transparent"},visible:{type:"boolean",duration:0}}},hide:{animations:{colors:{to:"transparent"},visible:{type:"boolean",easing:"linear",fn:c=>c|0}}}})}function ms(r){r.set("layout",{autoPadding:!0,padding:{top:0,right:0,bottom:0,left:0}})}const nn=new Map;function oe(r,c){c=c||{};const f=r+JSON.stringify(c);let g=nn.get(f);return g||(g=new Intl.NumberFormat(r,c),nn.set(f,g)),g}function sn(r,c,f){return oe(c,f).format(r)}const on={values(r){return Ft(r)?r:""+r},numeric(r,c,f){if(r===0)return"0";const g=this.chart.options.locale;let m,x=r;if(f.length>1){const C=Math.max(Math.abs(f[0].value),Math.abs(f[f.length-1].value));(C<1e-4||C>1e15)&&(m="scientific"),x=bs(r,f)}const v=Qe(Math.abs(x)),k=isNaN(v)?1:Math.max(Math.min(-1*Math.floor(v),20),0),w={notation:m,minimumFractionDigits:k,maximumFractionDigits:k};return Object.assign(w,this.options.ticks.format),sn(r,g,w)},logarithmic(r,c,f){if(r===0)return"0";const g=f[c].significand||r/Math.pow(10,Math.floor(Qe(r)));return[1,2,3,5,10,15].includes(g)||c>.8*f.length?on.numeric.call(this,r,c,f):""}};function bs(r,c){let f=c.length>3?c[2].value-c[1].value:c[1].value-c[0].value;return Math.abs(f)>=1&&r!==Math.floor(r)&&(f=r-Math.floor(r)),f}var rn={formatters:on};function _s(r){r.set("scale",{display:!0,offset:!1,reverse:!1,beginAtZero:!1,bounds:"ticks",clip:!0,grace:0,grid:{display:!0,lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickLength:8,tickWidth:(c,f)=>f.lineWidth,tickColor:(c,f)=>f.color,offset:!1},border:{display:!0,dash:[],dashOffset:0,width:1},title:{display:!1,text:"",padding:{top:4,bottom:4}},ticks:{minRotation:0,maxRotation:50,mirror:!1,textStrokeWidth:0,textStrokeColor:"",padding:3,display:!0,autoSkip:!0,autoSkipPadding:3,labelOffset:0,callback:rn.formatters.values,minor:{},major:{},align:"center",crossAlign:"near",showLabelBackdrop:!1,backdropColor:"rgba(255, 255, 255, 0.75)",backdropPadding:2}}),r.route("scale.ticks","color","","color"),r.route("scale.grid","color","","borderColor"),r.route("scale.border","color","","borderColor"),r.route("scale.title","color","","color"),r.describe("scale",{_fallback:!1,_scriptable:c=>!c.startsWith("before")&&!c.startsWith("after")&&c!=="callback"&&c!=="parser",_indexable:c=>c!=="borderDash"&&c!=="tickBorderDash"&&c!=="dash"}),r.describe("scales",{_fallback:"scale"}),r.describe("scale.ticks",{_scriptable:c=>c!=="backdropPadding"&&c!=="callback",_indexable:c=>c!=="backdropPadding"})}const ii=Object.create(null),an=Object.create(null);function Ve(r,c){if(!c)return r;const f=c.split(".");for(let g=0,m=f.length;gg.chart.platform.getDevicePixelRatio(),this.elements={},this.events=["mousemove","mouseout","click","touchstart","touchmove"],this.font={family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",size:12,style:"normal",lineHeight:1.2,weight:null},this.hover={},this.hoverBackgroundColor=(g,m)=>ae(m.backgroundColor),this.hoverBorderColor=(g,m)=>ae(m.borderColor),this.hoverColor=(g,m)=>ae(m.color),this.indexAxis="x",this.interaction={mode:"nearest",intersect:!0,includeInvisible:!1},this.maintainAspectRatio=!0,this.onHover=null,this.onClick=null,this.parsing=!0,this.plugins={},this.responsive=!0,this.scale=void 0,this.scales={},this.showLine=!0,this.drawActiveElementsOnTop=!0,this.describe(c),this.apply(f)}set(c,f){return ni(this,c,f)}get(c){return Ve(this,c)}describe(c,f){return ni(an,c,f)}override(c,f){return ni(ii,c,f)}route(c,f,g,m){const x=Ve(this,c),v=Ve(this,g),k="_"+f;Object.defineProperties(x,{[k]:{value:x[f],writable:!0},[f]:{enumerable:!0,get(){const w=this[k],C=v[m];return yt(w)?Object.assign({},C,w):It(w,C)},set(w){this[k]=w}}})}apply(c){c.forEach(f=>f(this))}}var si=new xs({_scriptable:r=>!r.startsWith("on"),_indexable:r=>r!=="events",hover:{_fallback:"interaction"},interaction:{_scriptable:!1,_indexable:!1}},[ps,ms,_s]);function ln(r){return!r||re(r.size)||re(r.family)?null:(r.style?r.style+" ":"")+(r.weight?r.weight+" ":"")+r.size+"px "+r.family}function Pi(r,c,f,g,m){let x=c[m];return x||(x=c[m]=r.measureText(m).width,f.push(m)),x>g&&(g=x),g}function ys(r,c,f,g){g=g||{};let m=g.data=g.data||{},x=g.garbageCollect=g.garbageCollect||[];g.font!==c&&(m=g.data={},x=g.garbageCollect=[],g.font=c),r.save(),r.font=c;let v=0;const k=f.length;let w,C,T,H,Y;for(w=0;wf.length){for(w=0;w0&&r.stroke()}}function oi(r,c,f){return f=f||.5,!c||r&&r.x>c.left-f&&r.xc.top-f&&r.y0&&x.strokeColor!=="";let w,C;for(r.save(),r.font=m.string,ks(r,x),w=0;w+r||0;function Te(r,c){const f={},g=yt(c),m=g?Object.keys(c):c,x=yt(r)?g?v=>It(r[v],r[c[v]]):v=>r[v]:()=>r;for(const v of m)f[v]=pn(x(v));return f}function Oi(r){return Te(r,{top:"y",right:"x",bottom:"y",left:"x"})}function Os(r){return Te(r,["topLeft","topRight","bottomLeft","bottomRight"])}function Cs(r){const c=Oi(r);return c.width=c.left+c.right,c.height=c.top+c.bottom,c}function ai(r,c){r=r||{},c=c||si.font;let f=It(r.size,c.size);typeof f=="string"&&(f=parseInt(f,10));let g=It(r.style,c.style);g&&!(""+g).match(gn)&&(console.warn('Invalid font style specified: "'+g+'"'),g=void 0);const m={family:It(r.family,c.family),lineHeight:Ds(It(r.lineHeight,c.lineHeight),f),size:f,style:g,weight:It(r.weight,c.weight),string:""};return m.string=ln(m),m}function As(r,c,f,g){let m=!0,x,v,k;for(x=0,v=r.length;xf&&k===0?0:k+w;return{min:v(g,-Math.abs(x)),max:v(m,x)}}function Ci(r,c){return Object.assign(Object.create(r),c)}function Ai(r,c=[""],f,g,m=()=>r[0]){const x=f||r;typeof g>"u"&&(g=Mn("_fallback",r));const v={[Symbol.toStringTag]:"Object",_cacheable:!0,_scopes:r,_rootScopes:x,_fallback:g,_getTarget:m,override:k=>Ai([k,...r],c,x,g)};return new Proxy(v,{deleteProperty(k,w){return delete k[w],delete k._keys,delete r[0][w],!0},get(k,w){return bn(k,w,()=>Es(w,c,r,k))},getOwnPropertyDescriptor(k,w){return Reflect.getOwnPropertyDescriptor(k._scopes[0],w)},getPrototypeOf(){return Reflect.getPrototypeOf(r[0])},has(k,w){return kn(k).includes(w)},ownKeys(k){return kn(k)},set(k,w,C){const T=k._storage||(k._storage=m());return k[w]=T[w]=C,delete k._keys,!0}})}function Ne(r,c,f,g){const m={_cacheable:!1,_proxy:r,_context:c,_subProxy:f,_stack:new Set,_descriptors:mn(r,g),setContext:x=>Ne(r,x,f,g),override:x=>Ne(r.override(x),c,f,g)};return new Proxy(m,{deleteProperty(x,v){return delete x[v],delete r[v],!0},get(x,v,k){return bn(x,v,()=>Ts(x,v,k))},getOwnPropertyDescriptor(x,v){return x._descriptors.allKeys?Reflect.has(r,v)?{enumerable:!0,configurable:!0}:void 0:Reflect.getOwnPropertyDescriptor(r,v)},getPrototypeOf(){return Reflect.getPrototypeOf(r)},has(x,v){return Reflect.has(r,v)},ownKeys(){return Reflect.ownKeys(r)},set(x,v,k){return r[v]=k,delete x[v],!0}})}function mn(r,c={scriptable:!0,indexable:!0}){const{_scriptable:f=c.scriptable,_indexable:g=c.indexable,_allKeys:m=c.allKeys}=r;return{allKeys:m,scriptable:f,indexable:g,isScriptable:Be(f)?f:()=>f,isIndexable:Be(g)?g:()=>g}}const Le=(r,c)=>r?r+yi(c):c,Ee=(r,c)=>yt(c)&&r!=="adapters"&&(Object.getPrototypeOf(c)===null||c.constructor===Object);function bn(r,c,f){if(Object.prototype.hasOwnProperty.call(r,c))return r[c];const g=f();return r[c]=g,g}function Ts(r,c,f){const{_proxy:g,_context:m,_subProxy:x,_descriptors:v}=r;let k=g[c];return Be(k)&&v.isScriptable(c)&&(k=Ye(c,k,r,f)),Ft(k)&&k.length&&(k=_n(c,k,r,v.isIndexable)),Ee(c,k)&&(k=Ne(k,m,x&&x[c],v)),k}function Ye(r,c,f,g){const{_proxy:m,_context:x,_subProxy:v,_stack:k}=f;if(k.has(r))throw new Error("Recursion detected: "+Array.from(k).join("->")+"->"+r);k.add(r);let w=c(x,v||g);return k.delete(r),Ee(r,w)&&(w=Ti(m._scopes,m,r,w)),w}function _n(r,c,f,g){const{_proxy:m,_context:x,_subProxy:v,_descriptors:k}=f;if(typeof x.index<"u"&&g(r))return c[x.index%c.length];if(yt(c[0])){const w=c,C=m._scopes.filter(T=>T!==w);c=[];for(const T of w){const H=Ti(C,m,r,T);c.push(Ne(H,x,v&&v[r],k))}}return c}function xn(r,c,f){return Be(r)?r(c,f):r}const Ls=(r,c)=>r===!0?c:typeof r=="string"?xi(c,r):void 0;function yn(r,c,f,g,m){for(const x of c){const v=Ls(f,x);if(v){r.add(v);const k=xn(v._fallback,f,m);if(typeof k<"u"&&k!==f&&k!==g)return k}else if(v===!1&&typeof g<"u"&&f!==g)return null}return!1}function Ti(r,c,f,g){const m=c._rootScopes,x=xn(c._fallback,f,g),v=[...r,...m],k=new Set;k.add(g);let w=vn(k,v,f,x||f,g);return w===null||typeof x<"u"&&x!==f&&(w=vn(k,v,x,w,g),w===null)?!1:Ai(Array.from(k),[""],m,x,()=>Li(c,f,g))}function vn(r,c,f,g,m){for(;f;)f=yn(r,c,f,g,m);return f}function Li(r,c,f){const g=r._getTarget();c in g||(g[c]={});const m=g[c];return Ft(m)&&yt(f)?f:m||{}}function Es(r,c,f,g){let m;for(const x of c)if(m=Mn(Le(x,r),f),typeof m<"u")return Ee(r,m)?Ti(f,g,r,m):m}function Mn(r,c){for(const f of c){if(!f)continue;const g=f[r];if(typeof g<"u")return g}}function kn(r){let c=r._keys;return c||(c=r._keys=Rs(r._scopes)),c}function Rs(r){const c=new Set;for(const f of r)for(const g of Object.keys(f).filter(m=>!m.startsWith("_")))c.add(g);return Array.from(c)}function Fs(r,c,f,g){const{iScale:m}=r,{key:x="r"}=this._parsing,v=new Array(g);let k,w,C,T;for(k=0,w=g;kcr==="x"?"y":"x";function wn(r,c,f,g){const m=r.skip?c:r,x=c,v=f.skip?c:f,k=ye(x,m),w=ye(v,x);let C=k/(k+w),T=w/(k+w);C=isNaN(C)?0:C,T=isNaN(T)?0:T;const H=g*C,Y=g*T;return{previous:{x:x.x-H*(v.x-m.x),y:x.y-H*(v.y-m.y)},next:{x:x.x+Y*(v.x-m.x),y:x.y+Y*(v.y-m.y)}}}function ge(r,c,f){const g=r.length;let m,x,v,k,w,C=ve(r,0);for(let T=0;T!C.skip)),c.cubicInterpolationMode==="monotone")zs(r,m);else{let C=g?r[r.length-1]:r[0];for(x=0,v=r.length;xr.ownerDocument.defaultView.getComputedStyle(r,null);function Ri(r,c){return hi(r).getPropertyValue(c)}const Pn=["top","right","bottom","left"];function me(r,c,f){const g={};f=f?"-"+f:"";for(let m=0;m<4;m++){const x=Pn[m];g[x]=parseFloat(r[c+"-"+x+f])||0}return g.width=g.left+g.right,g.height=g.top+g.bottom,g}const Dn=(r,c,f)=>(r>0||c>0)&&(!f||!f.shadowRoot);function Ws(r,c){const f=r.touches,g=f&&f.length?f[0]:r,{offsetX:m,offsetY:x}=g;let v=!1,k,w;if(Dn(m,x,r.target))k=m,w=x;else{const C=c.getBoundingClientRect();k=g.clientX-C.left,w=g.clientY-C.top,v=!0}return{x:k,y:w,box:v}}function js(r,c){if("native"in r)return r;const{canvas:f,currentDevicePixelRatio:g}=c,m=hi(f),x=m.boxSizing==="border-box",v=me(m,"padding"),k=me(m,"border","width"),{x:w,y:C,box:T}=Ws(r,f),H=v.left+(T&&k.left),Y=v.top+(T&&k.top);let{width:rt,height:pt}=c;return x&&(rt-=v.width+k.width,pt-=v.height+k.height),{x:Math.round((w-H)/rt*f.width/g),y:Math.round((C-Y)/pt*f.height/g)}}function Vs(r,c,f){let g,m;if(c===void 0||f===void 0){const x=ci(r);if(!x)c=r.clientWidth,f=r.clientHeight;else{const v=x.getBoundingClientRect(),k=hi(x),w=me(k,"border","width"),C=me(k,"padding");c=v.width-C.width-w.width,f=v.height-C.height-w.height,g=pe(k.maxWidth,x,"clientWidth"),m=pe(k.maxHeight,x,"clientHeight")}}return{width:c,height:f,maxWidth:g||de,maxHeight:m||de}}const di=r=>Math.round(r*10)/10;function On(r,c,f,g){const m=hi(r),x=me(m,"margin"),v=pe(m.maxWidth,r,"clientWidth")||de,k=pe(m.maxHeight,r,"clientHeight")||de,w=Vs(r,c,f);let{width:C,height:T}=w;if(m.boxSizing==="content-box"){const Y=me(m,"border","width"),rt=me(m,"padding");C-=rt.width+Y.width,T-=rt.height+Y.height}return C=Math.max(0,C-x.width),T=Math.max(0,g?C/g:T-x.height),C=di(Math.min(C,v,w.maxWidth)),T=di(Math.min(T,k,w.maxHeight)),C&&!T&&(T=di(C/2)),(c!==void 0||f!==void 0)&&g&&w.height&&T>w.height&&(T=w.height,C=di(Math.floor(T*g))),{width:C,height:T}}function Hs(r,c,f){const g=c||1,m=Math.floor(r.height*g),x=Math.floor(r.width*g);r.height=Math.floor(r.height),r.width=Math.floor(r.width);const v=r.canvas;return v.style&&(f||!v.style.height&&!v.style.width)&&(v.style.height=`${r.height}px`,v.style.width=`${r.width}px`),r.currentDevicePixelRatio!==g||v.height!==m||v.width!==x?(r.currentDevicePixelRatio=g,v.height=m,v.width=x,r.ctx.setTransform(g,0,0,g,0,0),!0):!1}const Ns=function(){let r=!1;try{const c={get passive(){return r=!0,!1}};Sn()&&(window.addEventListener("test",null,c),window.removeEventListener("test",null,c))}catch{}return r}();function Ys(r,c){const f=Ri(r,c),g=f&&f.match(/^(\d+)(\.\d+)?px$/);return g?+g[1]:void 0}function Me(r,c,f,g){return{x:r.x+f*(c.x-r.x),y:r.y+f*(c.y-r.y)}}function Cn(r,c,f,g){return{x:r.x+f*(c.x-r.x),y:g==="middle"?f<.5?r.y:c.y:g==="after"?f<1?r.y:c.y:f>0?c.y:r.y}}function An(r,c,f,g){const m={x:r.cp2x,y:r.cp2y},x={x:c.cp1x,y:c.cp1y},v=Me(r,m,f),k=Me(m,x,f),w=Me(x,c,f),C=Me(v,k,f),T=Me(k,w,f);return Me(C,T,f)}const $s=function(r,c){return{x(f){return r+r+c-f},setWidth(f){c=f},textAlign(f){return f==="center"?f:f==="right"?"left":"right"},xPlus(f,g){return f-g},leftForLtr(f,g){return f-g}}},Us=function(){return{x(r){return r},setWidth(r){},textAlign(r){return r},xPlus(r,c){return r+c},leftForLtr(r,c){return r}}};function Xs(r,c,f){return r?$s(c,f):Us()}function Fi(r,c){let f,g;(c==="ltr"||c==="rtl")&&(f=r.canvas.style,g=[f.getPropertyValue("direction"),f.getPropertyPriority("direction")],f.setProperty("direction",c,"important"),r.prevTextDirection=g)}function Ks(r,c){c!==void 0&&(delete r.prevTextDirection,r.canvas.style.setProperty("direction",c[0],c[1]))}function ui(r){return r==="angle"?{between:Qi,compare:Gi,normalize:se}:{between:Je,compare:(c,f)=>c-f,normalize:c=>c}}function Ii({start:r,end:c,count:f,loop:g,style:m}){return{start:r%f,end:c%f,loop:g&&(c-r+1)%f===0,style:m}}function Tn(r,c,f){const{property:g,start:m,end:x}=f,{between:v,normalize:k}=ui(g),w=c.length;let{start:C,end:T,loop:H}=r,Y,rt;if(H){for(C+=w,T+=w,Y=0,rt=w;Yw(m,$e,Ot)&&k(m,$e)!==0,Rn=()=>k(x,Ot)===0||w(x,$e,Ot),io=()=>U||eo(),Fn=()=>!U||Rn();for(let be=T,In=T;be<=H;++be)Fe=c[be%v],!Fe.skip&&(Ot=C(Fe[g]),Ot!==$e&&(U=w(Ot,m,x),V===null&&io()&&(V=k(Ot,m)===0?be:In),V!==null&&Fn()&&(pt.push(Ii({start:V,end:be,loop:Y,count:v,style:rt})),V=null),In=be,$e=Ot));return V!==null&&pt.push(Ii({start:V,end:H,loop:Y,count:v,style:rt})),pt}function Gs(r,c){const f=[],g=r.segments;for(let m=0;mm&&r[x%c].skip;)x--;return x%=c,{start:m,end:x}}function qs(r,c,f,g){const m=r.length,x=[];let v=c,k=r[c],w;for(w=c+1;w<=f;++w){const C=r[w%m];C.skip||C.stop?k.skip||(g=!1,x.push({start:c%m,end:(w-1)%m,loop:g}),c=v=C.stop?w:null):(v=w,k.skip&&(c=w)),k=C}return v!==null&&x.push({start:c%m,end:v%m,loop:g}),x}function Zs(r,c){const f=r.points,g=r.options.spanGaps,m=f.length;if(!m)return[];const x=!!r._loop,{start:v,end:k}=Qs(f,m,x,g);if(g===!0)return Ln(r,[{start:v,end:k,loop:x}],f,c);const w=k0&&z<7?z:1;return W(et).isoWeekday(q).startOf("day").valueOf()}return W(et).startOf(ft).valueOf()},endOf:function(et,ft){return W(et).endOf(ft).valueOf()}})},"./node_modules/vue-chartjs/dist/index.js":function(vt,nt,G){"use strict";G.d(nt,{N1:function(){return At},yP:function(){return Gt}});var d=G("./node_modules/chart.js/dist/chart.js"),W=G("./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js"),X=G("./node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js");const Q={data:{type:Object,required:!0},options:{type:Object,default:()=>({})},plugins:{type:Array,default:()=>[]},datasetIdKey:{type:String,default:"label"},updateMode:{type:String,default:void 0}},j={type:{type:String,required:!0},destroyDelay:{type:Number,default:0},...Q,...{ariaLabel:{type:String},ariaDescribedby:{type:String}}},at=W.rE[0]==="2"?(N,tt)=>Object.assign(N,{attrs:tt}):(N,tt)=>Object.assign(N,tt);function K(N){return(0,X.ju)(N)?(0,X.ux)(N):N}function lt(N){let tt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:N;return(0,X.ju)(tt)?new Proxy(N,{}):N}function et(N,tt){const st=N.options;st&&tt&&Object.assign(st,tt)}function ft(N,tt){N.labels=tt}function z(N,tt,st){const wt=[];N.datasets=tt.map(bt=>{const ot=N.datasets.find(Lt=>Lt[st]===bt[st]);return!ot||!bt.data||wt.includes(ot)?{...bt}:(wt.push(ot),Object.assign(ot,bt),ot)})}function q(N,tt){const st={labels:[],datasets:[]};return ft(st,N.labels),z(st,N.datasets,tt),st}function ct(N,tt){return N.getElementsAtEventForMode(tt,"dataset",{intersect:!0},!1)}function ht(N,tt){return N.getElementsAtEventForMode(tt,"nearest",{intersect:!0},!1)}function Pt(N,tt){return N.getElementsAtEventForMode(tt,"index",{intersect:!0},!1)}const Bt=(0,W.pM)({props:j,setup(N,tt){let{expose:st,slots:wt}=tt;const bt=(0,X.KR)(null),ot=(0,X.IJ)(null);st({chart:ot});const Lt=()=>{if(!bt.value)return;const{type:Et,data:ne,options:he,plugins:Qt,datasetIdKey:Nt}=N,qt=q(ne,Nt),St=lt(qt,ne);ot.value=new d.t1(bt.value,{type:Et,data:St,options:{...he},plugins:Qt})},Ht=()=>{const Et=(0,X.ux)(ot.value);Et&&(N.destroyDelay>0?setTimeout(()=>{Et.destroy(),ot.value=null},N.destroyDelay):(Et.destroy(),ot.value=null))},we=Et=>{Et.update(N.updateMode)};return(0,W.sV)(Lt),(0,W.hi)(Ht),(0,W.wB)([()=>N.options,()=>N.data],(Et,ne)=>{let[he,Qt]=Et,[Nt,qt]=ne;const St=(0,X.ux)(ot.value);if(!St)return;let $t=!1;if(he){const Rt=K(he),Yt=K(Nt);Rt&&Rt!==Yt&&(et(St,Rt),$t=!0)}if(Qt){const Rt=K(Qt.labels),Yt=K(qt.labels),Mt=K(Qt.datasets),Se=K(qt.datasets);Rt!==Yt&&(ft(St.config.data,Rt),$t=!0),Mt&&Mt!==Se&&(z(St.config.data,Mt,N.datasetIdKey),$t=!0)}$t&&(0,W.dY)(()=>{we(St)})},{deep:!0}),()=>(0,W.h)("canvas",{role:"img",ariaLabel:N.ariaLabel,ariaDescribedby:N.ariaDescribedby,ref:bt},[(0,W.h)("p",{},[wt.default?wt.default():""])])}});function Kt(N,tt){return d.t1.register(tt),(0,W.pM)({props:Q,setup(st,wt){let{expose:bt}=wt;const ot=(0,X.IJ)(null),Lt=Ht=>{ot.value=Ht?.chart};return bt({chart:ot}),()=>(0,W.h)(Bt,at({ref:Lt},{type:N,...st}))}})}const Gt=Kt("bar",d.A6),Wt=null,At=Kt("line",d.ZT),Tt=null,jt=null,Dt=null,xt=null,Vt=null}}]); diff --git a/data/gitea/public/assets/js/contributors-graph.f652150c.js b/data/gitea/public/assets/js/contributors-graph.f652150c.js new file mode 100644 index 0000000..d1961a4 --- /dev/null +++ b/data/gitea/public/assets/js/contributors-graph.f652150c.js @@ -0,0 +1,3 @@ +(self.webpackChunk=self.webpackChunk||[]).push([["contributors-graph"],{"./node_modules/hammerjs/hammer.js":function(pe,Qt,C){var f;(function(x,ve,ze,P){"use strict";var Gt=["","webkit","Moz","MS","ms","o"],ge=ve.createElement("div"),Te="function",it=Math.round,G=Math.abs,At=Date.now;function Mt(e,n,s){return setTimeout(Nt(e,s),n)}function ot(e,n,s){return Array.isArray(e)?(X(e,s[n],s),!0):!1}function X(e,n,s){var a;if(e)if(e.forEach)e.forEach(n,s);else if(e.length!==P)for(a=0;a\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",E=x.console&&(x.console.warn||x.console.log);return E&&E.call(x.console,a,d),e.apply(this,arguments)}}var z;typeof Object.assign!="function"?z=function(n){if(n===P||n===null)throw new TypeError("Cannot convert undefined or null to object");for(var s=Object(n),a=1;a-1}function xt(e){return e.trim().split(/\s+/g)}function st(e,n,s){if(e.indexOf&&!s)return e.indexOf(n);for(var a=0;aL[n]}):a=a.sort()),a}function bt(e,n){for(var s,a,h=n[0].toUpperCase()+n.slice(1),d=0;d1&&!s.firstMultiple?s.firstMultiple=jt(n):h===1&&(s.firstMultiple=!1);var d=s.firstInput,E=s.firstMultiple,I=E?E.center:d.center,M=n.center=$(a);n.timeStamp=At(),n.deltaTime=n.timeStamp-d.timeStamp,n.angle=ft(I,M),n.distance=It(I,M),Ft(s,n),n.offsetDirection=Ht(n.deltaX,n.deltaY);var L=Xt(n.deltaTime,n.deltaX,n.deltaY);n.overallVelocityX=L.x,n.overallVelocityY=L.y,n.overallVelocity=G(L.x)>G(L.y)?L.x:L.y,n.scale=E?be(E.pointers,a):1,n.rotation=E?ie(E.pointers,a):0,n.maxPointers=s.prevInput?n.pointers.length>s.prevInput.maxPointers?n.pointers.length:s.prevInput.maxPointers:n.pointers.length,_e(s,n);var Q=e.element;Jt(n.srcEvent.target,Q)&&(Q=n.srcEvent.target),n.target=Q}function Ft(e,n){var s=n.center,a=e.offsetDelta||{},h=e.prevDelta||{},d=e.prevInput||{};(n.eventType===y||d.eventType===b)&&(h=e.prevDelta={x:d.deltaX||0,y:d.deltaY||0},a=e.offsetDelta={x:s.x,y:s.y}),n.deltaX=h.x+(s.x-a.x),n.deltaY=h.y+(s.y-a.y)}function _e(e,n){var s=e.lastInterval||n,a=n.timeStamp-s.timeStamp,h,d,E,I;if(n.eventType!=O&&(a>Rt||s.velocity===P)){var M=n.deltaX-s.deltaX,L=n.deltaY-s.deltaY,Q=Xt(a,M,L);d=Q.x,E=Q.y,h=G(Q.x)>G(Q.y)?Q.x:Q.y,I=Ht(M,L),e.lastInterval=n}else h=s.velocity,d=s.velocityX,E=s.velocityY,I=s.direction;n.velocity=h,n.velocityX=d,n.velocityY=E,n.direction=I}function jt(e){for(var n=[],s=0;s=G(n)?e<0?U:ct:n<0?ht:rt}function It(e,n,s){s||(s=ee);var a=n[s[0]]-e[s[0]],h=n[s[1]]-e[s[1]];return Math.sqrt(a*a+h*h)}function ft(e,n,s){s||(s=ee);var a=n[s[0]]-e[s[0]],h=n[s[1]]-e[s[1]];return Math.atan2(h,a)*180/Math.PI}function ie(e,n){return ft(n[1],n[0],Ct)+ft(e[1],e[0],Ct)}function be(e,n){return It(n[0],n[1],Ct)/It(e[0],e[1],Ct)}var Se={mousedown:y,mousemove:K,mouseup:b},Ce="mousedown",Ie="mousemove mouseup";function dt(){this.evEl=Ce,this.evWin=Ie,this.pressed=!1,w.apply(this,arguments)}N(dt,w,{handler:function(n){var s=Se[n.type];s&y&&n.button===0&&(this.pressed=!0),s&K&&n.which!==1&&(s=b),this.pressed&&(s&b&&(this.pressed=!1),this.callback(this.manager,s,{pointers:[n],changedPointers:[n],pointerType:kt,srcEvent:n}))}});var oe={pointerdown:y,pointermove:K,pointerup:b,pointercancel:O,pointerout:O},se={2:q,3:xe,4:kt,5:$t},re="pointerdown",A="pointermove pointerup pointercancel";x.MSPointerEvent&&!x.PointerEvent&&(re="MSPointerDown",A="MSPointerMove MSPointerUp MSPointerCancel");function tt(){this.evEl=re,this.evWin=A,w.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}N(tt,w,{handler:function(n){var s=this.store,a=!1,h=n.type.toLowerCase().replace("ms",""),d=oe[h],E=se[n.pointerType]||n.pointerType,I=E==q,M=st(s,n.pointerId,"pointerId");d&y&&(n.button===0||I)?M<0&&(s.push(n),M=s.length-1):d&(b|O)&&(a=!0),!(M<0)&&(s[M]=n,this.callback(this.manager,d,{pointers:s,changedPointers:[n],pointerType:E,srcEvent:n}),a&&s.splice(M,1))}});var Pe={touchstart:y,touchmove:K,touchend:b,touchcancel:O},Oe="touchstart",ae="touchstart touchmove touchend touchcancel";function le(){this.evTarget=Oe,this.evWin=ae,this.started=!1,w.apply(this,arguments)}N(le,w,{handler:function(n){var s=Pe[n.type];if(s===y&&(this.started=!0),!!this.started){var a=ue.call(this,n,s);s&(b|O)&&a[0].length-a[1].length===0&&(this.started=!1),this.callback(this.manager,s,{pointers:a[0],changedPointers:a[1],pointerType:q,srcEvent:n})}}});function ue(e,n){var s=_t(e.touches),a=_t(e.changedTouches);return n&(b|O)&&(s=k(s.concat(a),"identifier",!0)),[s,a]}var Ae={touchstart:y,touchmove:K,touchend:b,touchcancel:O},Me="touchstart touchmove touchend touchcancel";function Pt(){this.evTarget=Me,this.targetIds={},w.apply(this,arguments)}N(Pt,w,{handler:function(n){var s=Ae[n.type],a=Ne.call(this,n,s);a&&this.callback(this.manager,s,{pointers:a[0],changedPointers:a[1],pointerType:q,srcEvent:n})}});function Ne(e,n){var s=_t(e.touches),a=this.targetIds;if(n&(y|K)&&s.length===1)return a[s[0].identifier]=!0,[s,s];var h,d,E=_t(e.changedTouches),I=[],M=this.target;if(d=s.filter(function(L){return Jt(L.target,M)}),n===y)for(h=0;h-1&&a.splice(d,1)};setTimeout(h,we)}}function De(e){for(var n=e.srcEvent.clientX,s=e.srcEvent.clientY,a=0;a-1&&this.requireFail.splice(n,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(e){return!!this.simultaneous[e.id]},emit:function(e){var n=this,s=this.state;function a(h){n.manager.emit(h,e)}s=Z&&a(n.options.event+Re(s))},tryEmit:function(e){if(this.canEmit())return this.emit(e);this.state=j},canEmit:function(){for(var e=0;en.threshold&&h&n.direction},attrTest:function(e){return i.prototype.attrTest.call(this,e)&&(this.state&D||!(this.state&D)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var n=me(e.direction);n&&(e.additionalEvent=this.options.event+n),this._super.emit.call(this,e)}});function r(){i.apply(this,arguments)}N(r,i,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[et]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||this.state&D)},emit:function(e){if(e.scale!==1){var n=e.scale<1?"in":"out";e.additionalEvent=this.options.event+n}this._super.emit.call(this,e)}});function l(){Y.apply(this,arguments),this._timer=null,this._input=null}N(l,Y,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[de]},process:function(e){var n=this.options,s=e.pointers.length===n.pointers,a=e.distancen.time;if(this._input=e,!a||!s||e.eventType&(b|O)&&!h)this.reset();else if(e.eventType&y)this.reset(),this._timer=Mt(function(){this.state=H,this.tryEmit()},n.time,this);else if(e.eventType&b)return H;return j},reset:function(){clearTimeout(this._timer)},emit:function(e){this.state===H&&(e&&e.eventType&b?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=At(),this.manager.emit(this.options.event,this._input)))}});function u(){i.apply(this,arguments)}N(u,i,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[et]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||this.state&D)}});function c(){i.apply(this,arguments)}N(c,i,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:F|J,pointers:1},getTouchAction:function(){return o.prototype.getTouchAction.call(this)},attrTest:function(e){var n=this.options.direction,s;return n&(F|J)?s=e.overallVelocity:n&F?s=e.overallVelocityX:n&J&&(s=e.overallVelocityY),this._super.attrTest.call(this,e)&&n&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&G(s)>this.options.velocity&&e.eventType&b},emit:function(e){var n=me(e.offsetDirection);n&&this.manager.emit(this.options.event+n,e),this.manager.emit(this.options.event,e)}});function m(){Y.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}N(m,Y,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[mt]},process:function(e){var n=this.options,s=e.pointers.length===n.pointers,a=e.distance(_pushScopeId("data-v-47958124"),t=t(),_popScopeId(),t),ze={class:"ui header tw-flex tw-items-center tw-justify-between"},P=["datetime"],Gt=["datetime"],ge={class:"ui dropdown jump",id:"repo-contributors"},Te={class:"ui basic compact button"},it={class:"not-mobile"},G={class:"menu"},At={class:"tw-flex ui segment main-graph"},Mt={key:0,class:"gt-tc tw-m-auto"},ot={key:0},X={key:1,class:"text red"},Bt={class:"contributor-grid"},z={class:"ui top attached header tw-flex tw-flex-1"},qt={class:"ui right"},ye=["href"],N=["src"],Nt={class:"tw-ml-2"},wt=["href"],Kt={key:1,class:"contributor-name"},yt={class:"tw-text-12 tw-flex tw-gap-1"},Et={key:0},Jt={key:1,class:"text green"},B={key:2,class:"text red"},xt={class:"ui attached segment"};function st(t,i,o,r,l,u){const c=(0,f.g2)("svg-icon"),m=(0,f.g2)("SvgIcon"),v=(0,f.g2)("ChartLine");return(0,f.uX)(),(0,f.CE)("div",null,[(0,f.Lk)("div",ze,[(0,f.Lk)("div",null,[t.xAxisMin>0?((0,f.uX)(),(0,f.CE)("relative-time",{key:0,format:"datetime",year:"numeric",month:"short",day:"numeric",weekday:"",datetime:new Date(t.xAxisMin)},(0,x.v_)(new Date(t.xAxisMin)),9,P)):(0,f.Q3)("v-if",!0),(0,f.eW)(" "+(0,x.v_)(t.isLoading?o.locale.loadingTitle:t.errorText?o.locale.loadingTitleFailed:"-")+" ",1),t.xAxisMax>0?((0,f.uX)(),(0,f.CE)("relative-time",{key:1,format:"datetime",year:"numeric",month:"short",day:"numeric",weekday:"",datetime:new Date(t.xAxisMax)},(0,x.v_)(new Date(t.xAxisMax)),9,Gt)):(0,f.Q3)("v-if",!0)]),(0,f.Lk)("div",null,[(0,f.Q3)(" Contribution type "),(0,f.Lk)("div",ge,[(0,f.Lk)("div",Te,[(0,f.Lk)("span",it,(0,x.v_)(o.locale.filterLabel),1),(0,f.eW)(),(0,f.Lk)("strong",null,(0,x.v_)(o.locale.contributionType[t.type]),1),(0,f.bF)(c,{name:"octicon-triangle-down",size:14})]),(0,f.Lk)("div",G,[(0,f.Lk)("div",{class:(0,x.C4)(["item",{selected:t.type==="commits"}]),"data-value":"commits"},(0,x.v_)(o.locale.contributionType.commits),3),(0,f.Lk)("div",{class:(0,x.C4)(["item",{selected:t.type==="additions"}]),"data-value":"additions"},(0,x.v_)(o.locale.contributionType.additions),3),(0,f.Lk)("div",{class:(0,x.C4)(["item",{selected:t.type==="deletions"}]),"data-value":"deletions"},(0,x.v_)(o.locale.contributionType.deletions),3)])])])]),(0,f.Lk)("div",At,[t.isLoading||t.errorText!==""?((0,f.uX)(),(0,f.CE)("div",Mt,[t.isLoading?((0,f.uX)(),(0,f.CE)("div",ot,[(0,f.bF)(m,{name:"octicon-sync",class:"tw-mr-2 job-status-rotate"}),(0,f.eW)(" "+(0,x.v_)(o.locale.loadingInfo),1)])):((0,f.uX)(),(0,f.CE)("div",X,[(0,f.bF)(m,{name:"octicon-x-circle-fill"}),(0,f.eW)(" "+(0,x.v_)(t.errorText),1)]))])):(0,f.Q3)("v-if",!0),Object.keys(t.totalStats).length!==0?(0,f.bU)([t.totalStats.weeks,t.type],()=>((0,f.uX)(),(0,f.Wv)(v,{key:1,data:u.toGraphData(t.totalStats.weeks),options:u.getOptions("main")},null,8,["data","options"])),i,0):(0,f.Q3)("v-if",!0)]),(0,f.Lk)("div",Bt,[((0,f.uX)(!0),(0,f.CE)(f.FK,null,(0,f.pI)(t.sortedContributors,(p,g,S,_)=>{const R=[t.sortedContributors,t.type];if(_&&_.key===g&&(0,f.Bs)(_,R))return _;const W=((0,f.uX)(),(0,f.CE)("div",{key:g},[(0,f.Lk)("div",z,[(0,f.Lk)("b",qt,"#"+(0,x.v_)(g+1),1),(0,f.Lk)("a",{href:p.home_link},[(0,f.Lk)("img",{class:"ui avatar tw-align-middle",height:"40",width:"40",src:p.avatar_link},null,8,N)],8,ye),(0,f.Lk)("div",Nt,[p.home_link!==""?((0,f.uX)(),(0,f.CE)("a",{key:0,href:p.home_link},[(0,f.Lk)("h4",null,(0,x.v_)(p.name),1)],8,wt)):((0,f.uX)(),(0,f.CE)("h4",Kt,(0,x.v_)(p.name),1)),(0,f.Lk)("p",yt,[p.total_commits?((0,f.uX)(),(0,f.CE)("strong",Et,(0,x.v_)(p.total_commits.toLocaleString())+" "+(0,x.v_)(o.locale.contributionType.commits),1)):(0,f.Q3)("v-if",!0),p.total_additions?((0,f.uX)(),(0,f.CE)("strong",Jt,(0,x.v_)(p.total_additions.toLocaleString())+"++ ",1)):(0,f.Q3)("v-if",!0),p.total_deletions?((0,f.uX)(),(0,f.CE)("strong",B,(0,x.v_)(p.total_deletions.toLocaleString())+"--",1)):(0,f.Q3)("v-if",!0)])])]),(0,f.Lk)("div",xt,[(0,f.Lk)("div",null,[(0,f.bF)(v,{data:u.toGraphData(p.weeks),options:u.getOptions("contributor")},null,8,["data","options"])])])]));return W.memo=R,W},i,1),128))])])}var _t=C("./web_src/js/svg.js"),k=C("./node_modules/chart.js/dist/chart.js"),bt=C("./web_src/js/modules/fetch.js"),Ee=C("./node_modules/hammerjs/hammer.js"),lt=C.n(Ee),T=C("./node_modules/chart.js/dist/chunks/helpers.segment.js");const ut=t=>t&&t.enabled&&t.modifierKey,Lt=(t,i)=>t&&i[t+"Key"],Dt=(t,i)=>t&&!i[t+"Key"];function V(t,i,o){return t===void 0?!0:typeof t=="string"?t.indexOf(i)!==-1:typeof t=="function"?t({chart:o}).indexOf(i)!==-1:!1}function q(t,i){return typeof t=="function"&&(t=t({chart:i})),typeof t=="string"?{x:t.indexOf("x")!==-1,y:t.indexOf("y")!==-1}:{x:!1,y:!1}}function xe(t,i){let o;return function(){return clearTimeout(o),o=setTimeout(t,i),i}}function kt({x:t,y:i},o){const r=o.scales,l=Object.keys(r);for(let u=0;u=c.top&&i<=c.bottom&&t>=c.left&&t<=c.right)return c}return null}function $t(t,i,o){const{mode:r="xy",scaleMode:l,overScaleMode:u}=t||{},c=kt(i,o),m=q(r,o),v=q(l,o);if(u){const g=q(u,o);for(const S of["x","y"])g[S]&&(v[S]=m[S],m[S]=!1)}if(c&&v[c.axis])return[c];const p=[];return(0,T.F)(o.scales,function(g){m[g.axis]&&p.push(g)}),p}const Rt=new WeakMap;function y(t){let i=Rt.get(t);return i||(i={originalScaleLimits:{},updatedScaleLimits:{},handlers:{},panDelta:{}},Rt.set(t,i)),i}function K(t){Rt.delete(t)}function b(t,i,o){const r=t.max-t.min,l=r*(i-1),u=t.isHorizontal()?o.x:o.y,c=Math.max(0,Math.min(1,(t.getValueForPixel(u)-t.min)/r||0)),m=1-c;return{min:l*c,max:l*m}}function O(t,i,o,r,l){let u=o[r];if(u==="original"){const c=t.originalScaleLimits[i.id][r];u=(0,T.v)(c.options,c.scale)}return(0,T.v)(u,l)}function St(t,i,o){const r=t.getValueForPixel(i),l=t.getValueForPixel(o);return{min:Math.min(r,l),max:Math.max(r,l)}}function U(t,{min:i,max:o},r,l=!1){const u=y(t.chart),{id:c,axis:m,options:v}=t,p=r&&(r[c]||r[m])||{},{minRange:g=0}=p,S=O(u,t,p,"min",-1/0),_=O(u,t,p,"max",1/0),R=l?Math.max(o-i,g):t.max-t.min,W=(R-o+i)/2;return i-=W,o+=W,i_&&(o=_,i=Math.max(_-R,S)),v.min=i,v.max=o,u.updatedScaleLimits[t.id]={min:i,max:o},t.parse(i)!==t.min||t.parse(o)!==t.max}function ct(t,i,o,r){const l=b(t,i,o),u={min:t.min+l.min,max:t.max-l.max};return U(t,u,r,!0)}function ht(t,i,o,r){U(t,St(t,i,o),r,!0)}const rt=t=>t===0||isNaN(t)?0:t<0?Math.min(Math.round(t),-1):Math.max(Math.round(t),1);function F(t){const o=t.getLabels().length-1;t.min>0&&(t.min-=1),t.maxv&&(u=Math.max(0,u-p),c=m===1?u:u+m,g=u===0),U(t,{min:u,max:c},o)||g}const Ct={second:500,minute:30*1e3,hour:30*60*1e3,day:12*60*60*1e3,week:3.5*24*60*60*1e3,month:15*24*60*60*1e3,quarter:60*24*60*60*1e3,year:182*24*60*60*1e3};function w(t,i,o,r=!1){const{min:l,max:u,options:c}=t,m=c.time&&c.time.round,v=Ct[m]||0,p=t.getValueForPixel(t.getPixelForValue(l+v)-i),g=t.getValueForPixel(t.getPixelForValue(u+v)-i),{min:S=-1/0,max:_=1/0}=r&&o&&o[t.axis]||{};return isNaN(p)||isNaN(g)||p_?!0:U(t,{min:p,max:g},o,r)}function ne(t,i,o){return w(t,i,o,!0)}const zt={category:J,default:ct},Ut={default:ht},Ft={category:ee,default:w,logarithmic:ne,timeseries:ne};function _e(t,i,o){const{id:r,options:{min:l,max:u}}=t;if(!i[r]||!o[r])return!0;const c=o[r];return c.min!==l||c.max!==u}function jt(t,i){(0,T.F)(t,(o,r)=>{i[r]||delete t[r]})}function $(t,i){const{scales:o}=t,{originalScaleLimits:r,updatedScaleLimits:l}=i;return(0,T.F)(o,function(u){_e(u,r,l)&&(r[u.id]={min:{scale:u.min,options:u.options.min},max:{scale:u.max,options:u.options.max}})}),jt(r,o),jt(l,o),r}function Xt(t,i,o,r){const l=zt[t.type]||zt.default;(0,T.Q)(l,[t,i,o,r])}function Ht(t,i,o,r,l){const u=Ut[t.type]||Ut.default;(0,T.Q)(u,[t,i,o,r,l])}function It(t){const i=t.chartArea;return{x:(i.left+i.right)/2,y:(i.top+i.bottom)/2}}function ft(t,i,o="none"){const{x:r=1,y:l=1,focalPoint:u=It(t)}=typeof i=="number"?{x:i,y:i}:i,c=y(t),{options:{limits:m,zoom:v}}=c;$(t,c);const p=r!==1,g=l!==1,S=$t(v,u,t);(0,T.F)(S||t.scales,function(_){_.isHorizontal()&&p?Xt(_,r,u,m):!_.isHorizontal()&&g&&Xt(_,l,u,m)}),t.update(o),(0,T.Q)(v.onZoom,[{chart:t}])}function ie(t,i,o,r="none"){const l=y(t),{options:{limits:u,zoom:c}}=l,{mode:m="xy"}=c;$(t,l);const v=V(m,"x",t),p=V(m,"y",t);(0,T.F)(t.scales,function(g){g.isHorizontal()&&v?Ht(g,i.x,o.x,u):!g.isHorizontal()&&p&&Ht(g,i.y,o.y,u)}),t.update(r),(0,T.Q)(c.onZoom,[{chart:t}])}function be(t,i,o,r="none"){$(t,y(t));const l=t.scales[i];U(l,o,void 0,!0),t.update(r)}function Se(t,i="default"){const o=y(t),r=$(t,o);(0,T.F)(t.scales,function(l){const u=l.options;r[l.id]?(u.min=r[l.id].min.options,u.max=r[l.id].max.options):(delete u.min,delete u.max)}),t.update(i),(0,T.Q)(o.options.zoom.onZoomComplete,[{chart:t}])}function Ce(t,i){const o=t.originalScaleLimits[i];if(!o)return;const{min:r,max:l}=o;return(0,T.v)(l.options,l.scale)-(0,T.v)(r.options,r.scale)}function Ie(t){const i=y(t);let o=1,r=1;return(0,T.F)(t.scales,function(l){const u=Ce(i,l.id);if(u){const c=Math.round(u/(l.max-l.min)*100)/100;o=Math.min(o,c),r=Math.max(r,c)}}),o<1?o:r}function dt(t,i,o,r){const{panDelta:l}=r,u=l[t.id]||0;(0,T.s)(u)===(0,T.s)(i)&&(i+=u);const c=Ft[t.type]||Ft.default;(0,T.Q)(c,[t,i,o])?l[t.id]=0:l[t.id]=i}function oe(t,i,o,r="none"){const{x:l=0,y:u=0}=typeof i=="number"?{x:i,y:i}:i,c=y(t),{options:{pan:m,limits:v}}=c,{onPan:p}=m||{};$(t,c);const g=l!==0,S=u!==0;(0,T.F)(o||t.scales,function(_){_.isHorizontal()&&g?dt(_,l,v,c):!_.isHorizontal()&&S&&dt(_,u,v,c)}),t.update(r),(0,T.Q)(p,[{chart:t}])}function se(t){const i=y(t);$(t,i);const o={};for(const r of Object.keys(t.scales)){const{min:l,max:u}=i.originalScaleLimits[r]||{min:{},max:{}};o[r]={min:l.scale,max:u.scale}}return o}function re(t){const i=se(t);for(const o of Object.keys(t.scales)){const{min:r,max:l}=i[o];if(r!==void 0&&t.scales[o].min!==r||l!==void 0&&t.scales[o].max!==l)return!0}return!1}function A(t,i){const{handlers:o}=y(t),r=o[i];r&&r.target&&(r.target.removeEventListener(i,r),delete o[i])}function tt(t,i,o,r){const{handlers:l,options:u}=y(t),c=l[o];c&&c.target===i||(A(t,o),l[o]=m=>r(t,m,u),l[o].target=i,i.addEventListener(o,l[o]))}function Pe(t,i){const o=y(t);o.dragStart&&(o.dragging=!0,o.dragEnd=i,t.update("none"))}function Oe(t,i){const o=y(t);!o.dragStart||i.key!=="Escape"||(A(t,"keydown"),o.dragging=!1,o.dragStart=o.dragEnd=null,t.update("none"))}function ae(t,i,o){const{onZoomStart:r,onZoomRejected:l}=o;if(r){const u=(0,T.z)(i,t);if((0,T.Q)(r,[{chart:t,event:i,point:u}])===!1)return(0,T.Q)(l,[{chart:t,event:i}]),!1}}function le(t,i){const o=y(t),{pan:r,zoom:l={}}=o.options;if(i.button!==0||Lt(ut(r),i)||Dt(ut(l.drag),i))return(0,T.Q)(l.onZoomRejected,[{chart:t,event:i}]);ae(t,i,l)!==!1&&(o.dragStart=i,tt(t,t.canvas,"mousemove",Pe),tt(t,window.document,"keydown",Oe))}function ue(t,i,o,r){const l=V(i,"x",t),u=V(i,"y",t);let{top:c,left:m,right:v,bottom:p,width:g,height:S}=t.chartArea;const _=(0,T.z)(o,t),R=(0,T.z)(r,t);l&&(m=Math.min(_.x,R.x),v=Math.max(_.x,R.x)),u&&(c=Math.min(_.y,R.y),p=Math.max(_.y,R.y));const W=v-m,e=p-c;return{left:m,top:c,right:v,bottom:p,width:W,height:e,zoomX:l&&W?1+(g-W)/g:1,zoomY:u&&e?1+(S-e)/S:1}}function Ae(t,i){const o=y(t);if(!o.dragStart)return;A(t,"mousemove");const{mode:r,onZoomComplete:l,drag:{threshold:u=0}}=o.options.zoom,c=ue(t,r,o.dragStart,i),m=V(r,"x",t)?c.width:0,v=V(r,"y",t)?c.height:0,p=Math.sqrt(m*m+v*v);if(o.dragStart=o.dragEnd=null,p<=u){o.dragging=!1,t.update("none");return}ie(t,{x:c.left,y:c.top},{x:c.right,y:c.bottom},"zoom"),setTimeout(()=>o.dragging=!1,500),(0,T.Q)(l,[{chart:t}])}function Me(t,i,o){if(Dt(ut(o.wheel),i)){(0,T.Q)(o.onZoomRejected,[{chart:t,event:i}]);return}if(ae(t,i,o)!==!1&&(i.cancelable&&i.preventDefault(),i.deltaY!==void 0))return!0}function Pt(t,i){const{handlers:{onZoomComplete:o},options:{zoom:r}}=y(t);if(!Me(t,i,r))return;const l=i.target.getBoundingClientRect(),u=1+(i.deltaY>=0?-r.wheel.speed:r.wheel.speed),c={x:u,y:u,focalPoint:{x:i.clientX-l.left,y:i.clientY-l.top}};ft(t,c),o&&o()}function Ne(t,i,o,r){o&&(y(t).handlers[i]=xe(()=>(0,T.Q)(o,[{chart:t}]),r))}function we(t,i){const o=t.canvas,{wheel:r,drag:l,onZoomComplete:u}=i.zoom;r.enabled?(tt(t,o,"wheel",Pt),Ne(t,"onZoomComplete",u,250)):A(t,"wheel"),l.enabled?(tt(t,o,"mousedown",le),tt(t,o.ownerDocument,"mouseup",Ae)):(A(t,"mousedown"),A(t,"mousemove"),A(t,"mouseup"),A(t,"keydown"))}function ce(t){A(t,"mousedown"),A(t,"mousemove"),A(t,"mouseup"),A(t,"wheel"),A(t,"click"),A(t,"keydown")}function Yt(t,i){return function(o,r){const{pan:l,zoom:u={}}=i.options;if(!l||!l.enabled)return!1;const c=r&&r.srcEvent;return c&&!i.panning&&r.pointerType==="mouse"&&(Dt(ut(l),c)||Lt(ut(u.drag),c))?((0,T.Q)(l.onPanRejected,[{chart:t,event:r}]),!1):!0}}function Le(t,i){const o=Math.abs(t.clientX-i.clientX),r=Math.abs(t.clientY-i.clientY),l=o/r;let u,c;return l>.3&&l<1.7?u=c=!0:o>r?u=!0:c=!0,{x:u,y:c}}function Wt(t,i,o){if(i.scale){const{center:r,pointers:l}=o,u=1/i.scale*o.scale,c=o.target.getBoundingClientRect(),m=Le(l[0],l[1]),v=i.options.zoom.mode,p={x:m.x&&V(v,"x",t)?u:1,y:m.y&&V(v,"y",t)?u:1,focalPoint:{x:r.x-c.left,y:r.y-c.top}};ft(t,p),i.scale=o.scale}}function De(t,i){i.options.zoom.pinch.enabled&&(i.scale=1)}function he(t,i,o){i.scale&&(Wt(t,i,o),i.scale=null,(0,T.Q)(i.options.zoom.onZoomComplete,[{chart:t}]))}function Vt(t,i,o){const r=i.delta;r&&(i.panning=!0,oe(t,{x:o.deltaX-r.x,y:o.deltaY-r.y},i.panScales),i.delta={x:o.deltaX,y:o.deltaY})}function fe(t,i,o){const{enabled:r,onPanStart:l,onPanRejected:u}=i.options.pan;if(!r)return;const c=o.target.getBoundingClientRect(),m={x:o.center.x-c.left,y:o.center.y-c.top};if((0,T.Q)(l,[{chart:t,event:o,point:m}])===!1)return(0,T.Q)(u,[{chart:t,event:o}]);i.panScales=$t(i.options.pan,m,t),i.delta={x:0,y:0},clearTimeout(i.panEndTimeout),Vt(t,i,o)}function de(t,i){i.delta=null,i.panning&&(i.panEndTimeout=setTimeout(()=>i.panning=!1,500),(0,T.Q)(i.options.pan.onPanComplete,[{chart:t}]))}const mt=new WeakMap;function et(t,i){const o=y(t),r=t.canvas,{pan:l,zoom:u}=i,c=new(lt()).Manager(r);u&&u.pinch.enabled&&(c.add(new(lt()).Pinch),c.on("pinchstart",()=>De(t,o)),c.on("pinch",m=>Wt(t,o,m)),c.on("pinchend",m=>he(t,o,m))),l&&l.enabled&&(c.add(new(lt()).Pan({threshold:l.threshold,enable:Yt(t,o)})),c.on("panstart",m=>fe(t,o,m)),c.on("panmove",m=>Vt(t,o,m)),c.on("panend",()=>de(t,o))),mt.set(t,c)}function pt(t){const i=mt.get(t);i&&(i.remove("pinchstart"),i.remove("pinch"),i.remove("pinchend"),i.remove("panstart"),i.remove("pan"),i.remove("panend"),i.destroy(),mt.delete(t))}var vt="2.0.1";function nt(t,i,o){const r=o.zoom.drag,{dragStart:l,dragEnd:u}=y(t);if(r.drawTime!==i||!u)return;const{left:c,top:m,width:v,height:p}=ue(t,o.zoom.mode,l,u),g=t.ctx;g.save(),g.beginPath(),g.fillStyle=r.backgroundColor||"rgba(225,225,225,0.3)",g.fillRect(c,m,v,p),r.borderWidth>0&&(g.lineWidth=r.borderWidth,g.strokeStyle=r.borderColor||"rgba(225,225,225)",g.strokeRect(c,m,v,p)),g.restore()}var Zt={id:"zoom",version:vt,defaults:{pan:{enabled:!1,mode:"xy",threshold:10,modifierKey:null},zoom:{wheel:{enabled:!1,speed:.1,modifierKey:null},drag:{enabled:!1,drawTime:"beforeDatasetsDraw",modifierKey:null},pinch:{enabled:!1},mode:"xy"}},start:function(t,i,o){const r=y(t);r.options=o,Object.prototype.hasOwnProperty.call(o.zoom,"enabled")&&console.warn("The option `zoom.enabled` is no longer supported. Please use `zoom.wheel.enabled`, `zoom.drag.enabled`, or `zoom.pinch.enabled`."),(Object.prototype.hasOwnProperty.call(o.zoom,"overScaleMode")||Object.prototype.hasOwnProperty.call(o.pan,"overScaleMode"))&&console.warn("The option `overScaleMode` is deprecated. Please use `scaleMode` instead (and update `mode` as desired)."),lt()&&et(t,o),t.pan=(l,u,c)=>oe(t,l,u,c),t.zoom=(l,u)=>ft(t,l,u),t.zoomRect=(l,u,c)=>ie(t,l,u,c),t.zoomScale=(l,u,c)=>be(t,l,u,c),t.resetZoom=l=>Se(t,l),t.getZoomLevel=()=>Ie(t),t.getInitialScaleBounds=()=>se(t),t.isZoomedOrPanned=()=>re(t)},beforeEvent(t){const i=y(t);if(i.panning||i.dragging)return!1},beforeUpdate:function(t,i,o){const r=y(t);r.options=o,we(t,o)},beforeDatasetsDraw(t,i,o){nt(t,"beforeDatasetsDraw",o)},afterDatasetsDraw(t,i,o){nt(t,"afterDatasetsDraw",o)},beforeDraw(t,i,o){nt(t,"beforeDraw",o)},afterDraw(t,i,o){nt(t,"afterDraw",o)},stop:function(t){ce(t),lt()&&pt(t),K(t)},panFunctions:Ft,zoomFunctions:zt,zoomRectFunctions:Ut},ke=C("./node_modules/vue-chartjs/dist/index.js"),Ot=C("./web_src/js/utils/time.js"),at=C("./web_src/js/utils/color.js"),D=C("./web_src/js/utils.js"),gt=C("./node_modules/chartjs-adapter-dayjs-4/dist/chartjs-adapter-dayjs-4.esm.js"),Z=C("./node_modules/jquery/dist/jquery.js"),H=C.n(Z);const Tt={id:"customEventListener",afterEvent:(t,i,o)=>{i.event.type==="dblclick"&&o.chartType==="main"&&!i.replay&&(t.resetZoom(),o.instance.updateOtherCharts(i.event,!0))}};k.t1.defaults.color=at.K.text,k.t1.defaults.borderColor=at.K.border,k.t1.register(k.UA,k.kc,k.E8,k.hE,k.FN,k.No,k.dN,Zt,Tt);var j={components:{ChartLine:ke.N1,SvgIcon:_t.Ah},props:{locale:{type:Object,required:!0},repoLink:{type:String,required:!0}},data:()=>({isLoading:!1,errorText:"",totalStats:{},sortedContributors:{},type:"commits",contributorsStats:[],xAxisStart:null,xAxisEnd:null,xAxisMin:null,xAxisMax:null}),mounted(){this.fetchGraphData(),H()("#repo-contributors").dropdown({onChange:t=>{this.xAxisMin=this.xAxisStart,this.xAxisMax=this.xAxisEnd,this.type=t,this.sortContributors()}})},methods:{sortContributors(){const t=this.filterContributorWeeksByDateRange(),i=`total_${this.type}`;this.sortedContributors=Object.values(t).filter(o=>o[i]!==0).sort((o,r)=>o[i]>r[i]?-1:o[i]===r[i]?0:1).slice(0,100)},async fetchGraphData(){this.isLoading=!0;try{let t;do t=await(0,bt.fG)(`${this.repoLink}/activity/contributors/data`),t.status===202&&await(0,D.yy)(1e3);while(t.status===202);if(t.ok){const i=await t.json(),{total:o,...r}=i;o.weeks=Object.fromEntries(Object.entries(o.weeks).sort());const l=Object.values(o.weeks);this.xAxisStart=l[0].week,this.xAxisEnd=(0,Ot.Z1)(new Date);const u=(0,Ot.Ex)(this.xAxisStart,this.xAxisEnd);o.weeks=(0,Ot.a$)(u,o.weeks),this.xAxisMin=this.xAxisStart,this.xAxisMax=this.xAxisEnd,this.contributorsStats={};for(const[c,m]of Object.entries(r))m.weeks=(0,Ot.a$)(u,m.weeks),this.contributorsStats[c]=m;this.sortContributors(),this.totalStats=o,this.errorText=""}else this.errorText=t.statusText}catch(t){this.errorText=t.message}finally{this.isLoading=!1}},filterContributorWeeksByDateRange(){const t={},i=this.contributorsStats;for(const o of Object.keys(i)){const r=i[o];r.total_commits=0,r.total_additions=0,r.total_deletions=0,r.max_contribution_type=0;const l=r.weeks.filter(u=>u.week>=this.xAxisMin-6048e5&&u.week<=this.xAxisMax+6048e5?(r.total_commits+=u.commits,r.total_additions+=u.additions,r.total_deletions+=u.deletions,u[this.type]>r.max_contribution_type&&(r.max_contribution_type=u[this.type]),!0):!1);r.max_contribution_type+=1,t[o]={...r,weeks:l}}return t},maxMainGraph(){const t=Math.max(...this.totalStats.weeks.map(r=>r[this.type])),[i,o]=t.toExponential().split("e").map(Number);return i%1===0?t:(1-i%1)*10**o+t},maxContributorGraph(){const t=Math.max(...this.sortedContributors.map(r=>r.max_contribution_type)),[i,o]=t.toExponential().split("e").map(Number);return i%1===0?t:(1-i%1)*10**o+t},toGraphData(t){return{datasets:[{data:t.map(i=>({x:i.week,y:i[this.type]})),pointRadius:0,pointHitRadius:0,fill:"start",backgroundColor:at.K[this.type],borderWidth:0,tension:.3}]}},updateOtherCharts(t,i){const o=t.chart.options.scales.x.min,r=t.chart.options.scales.x.max;i?(this.xAxisMin=this.xAxisStart,this.xAxisMax=this.xAxisEnd,this.sortContributors()):o&&(this.xAxisMin=o,this.xAxisMax=r,this.sortContributors())},getOptions(t){return{responsive:!0,maintainAspectRatio:!1,animation:!1,events:["mousemove","mouseout","click","touchstart","touchmove","dblclick"],plugins:{title:{display:t==="main",text:"drag: zoom, shift+drag: pan, double click: reset zoom",position:"top",align:"center"},customEventListener:{chartType:t,instance:this},zoom:{pan:{enabled:!0,modifierKey:"shift",mode:"x",threshold:20,onPanComplete:this.updateOtherCharts},limits:{x:{min:"original",max:"original",minRange:2*7*24*60*60*1e3}},zoom:{drag:{enabled:t==="main"},pinch:{enabled:t==="main"},mode:"x",onZoomComplete:this.updateOtherCharts}}},scales:{x:{min:this.xAxisMin,max:this.xAxisMax,type:"time",grid:{display:!1},time:{minUnit:"month"},ticks:{maxRotation:0,maxTicksLimit:t==="main"?12:6}},y:{min:0,max:t==="main"?this.maxMainGraph():this.maxContributorGraph(),ticks:{maxTicksLimit:t==="main"?6:4}}}}}}},Y=C("./node_modules/vue-loader/dist/exportHelper.js"),me=(0,Y.A)(j,[["render",st],["__scopeId","data-v-47958124"]])}}]); diff --git a/data/gitea/public/assets/js/dropzone.6ba4ca5d.js b/data/gitea/public/assets/js/dropzone.6ba4ca5d.js new file mode 100644 index 0000000..3aa82f1 --- /dev/null +++ b/data/gitea/public/assets/js/dropzone.6ba4ca5d.js @@ -0,0 +1,24 @@ +"use strict";(self.webpackChunk=self.webpackChunk||[]).push([["dropzone"],{"./node_modules/dropzone/dist/dropzone.css":function(C,f,g){g.r(f)},"./node_modules/dropzone/dist/dropzone.mjs":function(C,f,g){g.r(f),g.d(f,{Dropzone:function(){return r},default:function(){return r}});var v=F;function F(){var n=[].slice.call(arguments),e=!1;typeof n[0]=="boolean"&&(e=n.shift());var i=n[0];if(y(i))throw new Error("extendee must be an object");for(var t=n.slice(1),s=t.length,l=0;l +
    +
    +
    +
    +
    +
    + +
    +
    +
    + + + +
    +
    + + + +
    + +`;var L={url:null,method:"post",withCredentials:!1,timeout:null,parallelUploads:2,uploadMultiple:!1,chunking:!1,forceChunking:!1,chunkSize:2097152,parallelChunkUploads:!1,retryChunks:!1,retryChunksLimit:3,maxFilesize:256,paramName:"file",createImageThumbnails:!0,maxThumbnailFilesize:10,thumbnailWidth:120,thumbnailHeight:120,thumbnailMethod:"crop",resizeWidth:null,resizeHeight:null,resizeMimeType:null,resizeQuality:.8,resizeMethod:"contain",filesizeBase:1e3,maxFiles:null,headers:null,defaultHeaders:!0,clickable:!0,ignoreHiddenFiles:!0,acceptedFiles:null,acceptedMimeTypes:null,autoProcessQueue:!0,autoQueue:!0,addRemoveLinks:!1,previewsContainer:null,disablePreviews:!1,hiddenInputContainer:"body",capture:null,renameFilename:null,renameFile:null,forceFallback:!1,dictDefaultMessage:"Drop files here to upload",dictFallbackMessage:"Your browser does not support drag'n'drop file uploads.",dictFallbackText:"Please use the fallback form below to upload your files like in the olden days.",dictFileTooBig:"File is too big ({{filesize}}MiB). Max filesize: {{maxFilesize}}MiB.",dictInvalidFileType:"You can't upload files of this type.",dictResponseError:"Server responded with {{statusCode}} code.",dictCancelUpload:"Cancel upload",dictUploadCanceled:"Upload canceled.",dictCancelUploadConfirmation:"Are you sure you want to cancel this upload?",dictRemoveFile:"Remove file",dictRemoveFileConfirmation:null,dictMaxFilesExceeded:"You can not upload any more files.",dictFileSizeUnits:{tb:"TB",gb:"GB",mb:"MB",kb:"KB",b:"b"},init(){},params(n,e,i){if(i)return{dzuuid:i.file.upload.uuid,dzchunkindex:i.index,dztotalfilesize:i.file.size,dzchunksize:this.options.chunkSize,dztotalchunkcount:i.file.upload.totalChunkCount,dzchunkbyteoffset:i.index*this.options.chunkSize}},accept(n,e){return e()},chunksUploaded:function(n,e){e()},binaryBody:!1,fallback(){let n;this.element.className=`${this.element.className} dz-browser-not-supported`;for(let i of this.element.getElementsByTagName("div"))if(/(^| )dz-message($| )/.test(i.className)){n=i,i.className="dz-message";break}n||(n=r.createElement('
    '),this.element.appendChild(n));let e=n.getElementsByTagName("span")[0];return e&&(e.textContent!=null?e.textContent=this.options.dictFallbackMessage:e.innerText!=null&&(e.innerText=this.options.dictFallbackMessage)),this.element.appendChild(this.getFallbackForm())},resize(n,e,i,t){let s={srcX:0,srcY:0,srcWidth:n.width,srcHeight:n.height},l=n.width/n.height;e==null&&i==null?(e=s.srcWidth,i=s.srcHeight):e==null?e=i*l:i==null&&(i=e/l),e=Math.min(e,s.srcWidth),i=Math.min(i,s.srcHeight);let o=e/i;if(s.srcWidth>e||s.srcHeight>i)if(t==="crop")l>o?(s.srcHeight=n.height,s.srcWidth=s.srcHeight*o):(s.srcWidth=n.width,s.srcHeight=s.srcWidth/o);else if(t==="contain")l>o?i=e/l:e=i*l;else throw new Error(`Unknown resizeMethod '${t}'`);return s.srcX=(n.width-s.srcWidth)/2,s.srcY=(n.height-s.srcHeight)/2,s.trgWidth=e,s.trgHeight=i,s},transformFile(n,e){return(this.options.resizeWidth||this.options.resizeHeight)&&n.type.match(/image.*/)?this.resizeImage(n,this.options.resizeWidth,this.options.resizeHeight,this.options.resizeMethod,e):e(n)},previewTemplate:z(w),drop(n){return this.element.classList.remove("dz-drag-hover")},dragstart(n){},dragend(n){return this.element.classList.remove("dz-drag-hover")},dragenter(n){return this.element.classList.add("dz-drag-hover")},dragover(n){return this.element.classList.add("dz-drag-hover")},dragleave(n){return this.element.classList.remove("dz-drag-hover")},paste(n){},reset(){return this.element.classList.remove("dz-started")},addedfile(n){if(this.element===this.previewsContainer&&this.element.classList.add("dz-started"),this.previewsContainer&&!this.options.disablePreviews){n.previewElement=r.createElement(this.options.previewTemplate.trim()),n.previewTemplate=n.previewElement,this.previewsContainer.appendChild(n.previewElement);for(var e of n.previewElement.querySelectorAll("[data-dz-name]"))e.textContent=n.name;for(e of n.previewElement.querySelectorAll("[data-dz-size]"))e.innerHTML=this.filesize(n.size);this.options.addRemoveLinks&&(n._removeLink=r.createElement(`${this.options.dictRemoveFile}`),n.previewElement.appendChild(n._removeLink));let i=t=>(t.preventDefault(),t.stopPropagation(),n.status===r.UPLOADING?r.confirm(this.options.dictCancelUploadConfirmation,()=>this.removeFile(n)):this.options.dictRemoveFileConfirmation?r.confirm(this.options.dictRemoveFileConfirmation,()=>this.removeFile(n)):this.removeFile(n));for(let t of n.previewElement.querySelectorAll("[data-dz-remove]"))t.addEventListener("click",i)}},removedfile(n){return n.previewElement!=null&&n.previewElement.parentNode!=null&&n.previewElement.parentNode.removeChild(n.previewElement),this._updateMaxFilesReachedClass()},thumbnail(n,e){if(n.previewElement){n.previewElement.classList.remove("dz-file-preview");for(let i of n.previewElement.querySelectorAll("[data-dz-thumbnail]"))i.alt=n.name,i.src=e;return setTimeout(()=>n.previewElement.classList.add("dz-image-preview"),1)}},error(n,e){if(n.previewElement){n.previewElement.classList.add("dz-error"),typeof e!="string"&&e.error&&(e=e.error);for(let i of n.previewElement.querySelectorAll("[data-dz-errormessage]"))i.textContent=e}},errormultiple(){},processing(n){if(n.previewElement&&(n.previewElement.classList.add("dz-processing"),n._removeLink))return n._removeLink.innerHTML=this.options.dictCancelUpload},processingmultiple(){},uploadprogress(n,e,i){if(n.previewElement)for(let t of n.previewElement.querySelectorAll("[data-dz-uploadprogress]"))t.nodeName==="PROGRESS"?t.value=e:t.style.width=`${e}%`},totaluploadprogress(){},sending(){},sendingmultiple(){},success(n){if(n.previewElement)return n.previewElement.classList.add("dz-success")},successmultiple(){},canceled(n){return this.emit("error",n,this.options.dictUploadCanceled)},canceledmultiple(){},complete(n){if(n._removeLink&&(n._removeLink.innerHTML=this.options.dictRemoveFile),n.previewElement)return n.previewElement.classList.add("dz-complete")},completemultiple(){},maxfilesexceeded(){},maxfilesreached(){},queuecomplete(){},addedfiles(){}};class r extends E{static initClass(){this.prototype.Emitter=E,this.prototype.events=["drop","dragstart","dragend","dragenter","dragover","dragleave","addedfile","addedfiles","removedfile","thumbnail","error","errormultiple","processing","processingmultiple","uploadprogress","totaluploadprogress","sending","sendingmultiple","success","successmultiple","canceled","canceledmultiple","complete","completemultiple","reset","maxfilesexceeded","maxfilesreached","queuecomplete"],this.prototype._thumbnailQueue=[],this.prototype._processingThumbnail=!1}getAcceptedFiles(){return this.files.filter(e=>e.accepted).map(e=>e)}getRejectedFiles(){return this.files.filter(e=>!e.accepted).map(e=>e)}getFilesWithStatus(e){return this.files.filter(i=>i.status===e).map(i=>i)}getQueuedFiles(){return this.getFilesWithStatus(r.QUEUED)}getUploadingFiles(){return this.getFilesWithStatus(r.UPLOADING)}getAddedFiles(){return this.getFilesWithStatus(r.ADDED)}getActiveFiles(){return this.files.filter(e=>e.status===r.UPLOADING||e.status===r.QUEUED).map(e=>e)}init(){if(this.element.tagName==="form"&&this.element.setAttribute("enctype","multipart/form-data"),this.element.classList.contains("dropzone")&&!this.element.querySelector(".dz-message")&&this.element.appendChild(r.createElement(`
    `)),this.clickableElements.length){let t=()=>{this.hiddenFileInput&&this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput),this.hiddenFileInput=document.createElement("input"),this.hiddenFileInput.setAttribute("type","file"),(this.options.maxFiles===null||this.options.maxFiles>1)&&this.hiddenFileInput.setAttribute("multiple","multiple"),this.hiddenFileInput.className="dz-hidden-input",this.options.acceptedFiles!==null&&this.hiddenFileInput.setAttribute("accept",this.options.acceptedFiles),this.options.capture!==null&&this.hiddenFileInput.setAttribute("capture",this.options.capture),this.hiddenFileInput.setAttribute("tabindex","-1"),this.hiddenFileInput.style.visibility="hidden",this.hiddenFileInput.style.position="absolute",this.hiddenFileInput.style.top="0",this.hiddenFileInput.style.left="0",this.hiddenFileInput.style.height="0",this.hiddenFileInput.style.width="0",r.getElement(this.options.hiddenInputContainer,"hiddenInputContainer").appendChild(this.hiddenFileInput),this.hiddenFileInput.addEventListener("change",()=>{let{files:s}=this.hiddenFileInput;if(s.length)for(let l of s)this.addFile(l);this.emit("addedfiles",s),t()})};t()}this.URL=window.URL!==null?window.URL:window.webkitURL;for(let t of this.events)this.on(t,this.options[t]);this.on("uploadprogress",()=>this.updateTotalUploadProgress()),this.on("removedfile",()=>this.updateTotalUploadProgress()),this.on("canceled",t=>this.emit("complete",t)),this.on("complete",t=>{if(this.getAddedFiles().length===0&&this.getUploadingFiles().length===0&&this.getQueuedFiles().length===0)return setTimeout(()=>this.emit("queuecomplete"),0)});const e=function(t){if(t.dataTransfer.types){for(var s=0;sthis.emit("dragstart",t),dragenter:t=>(i(t),this.emit("dragenter",t)),dragover:t=>{let s;try{s=t.dataTransfer.effectAllowed}catch{}return t.dataTransfer.dropEffect=s==="move"||s==="linkMove"?"move":"copy",i(t),this.emit("dragover",t)},dragleave:t=>this.emit("dragleave",t),drop:t=>(i(t),this.drop(t)),dragend:t=>this.emit("dragend",t)}}],this.clickableElements.forEach(t=>this.listeners.push({element:t,events:{click:s=>((t!==this.element||s.target===this.element||r.elementInside(s.target,this.element.querySelector(".dz-message")))&&this.hiddenFileInput.click(),!0)}})),this.enable(),this.options.init.call(this)}destroy(){return this.disable(),this.removeAllFiles(!0),this.hiddenFileInput!=null&&this.hiddenFileInput.parentNode&&(this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput),this.hiddenFileInput=null),delete this.element.dropzone,r.instances.splice(r.instances.indexOf(this),1)}updateTotalUploadProgress(){let e,i=0,t=0;if(this.getActiveFiles().length){for(let l of this.getActiveFiles())i+=l.upload.bytesSent,t+=l.upload.total;e=100*i/t}else e=100;return this.emit("totaluploadprogress",e,t,i)}_getParamName(e){return typeof this.options.paramName=="function"?this.options.paramName(e):`${this.options.paramName}${this.options.uploadMultiple?`[${e}]`:""}`}_renameFile(e){return typeof this.options.renameFile!="function"?e.name:this.options.renameFile(e)}getFallbackForm(){let e,i;if(e=this.getExistingFallback())return e;let t='
    ';this.options.dictFallbackText&&(t+=`

    ${this.options.dictFallbackText}

    `),t+=`
    `;let s=r.createElement(t);return this.element.tagName!=="FORM"?(i=r.createElement(`
    `),i.appendChild(s)):(this.element.setAttribute("enctype","multipart/form-data"),this.element.setAttribute("method",this.options.method)),i??s}getExistingFallback(){let e=function(t){for(let s of t)if(/(^| )fallback($| )/.test(s.className))return s};for(let t of["div","form"]){var i;if(i=e(this.element.getElementsByTagName(t)))return i}}setupEventListeners(){return this.listeners.map(e=>(()=>{let i=[];for(let t in e.events){let s=e.events[t];i.push(e.element.addEventListener(t,s,!1))}return i})())}removeEventListeners(){return this.listeners.map(e=>(()=>{let i=[];for(let t in e.events){let s=e.events[t];i.push(e.element.removeEventListener(t,s,!1))}return i})())}disable(){return this.clickableElements.forEach(e=>e.classList.remove("dz-clickable")),this.removeEventListeners(),this.disabled=!0,this.files.map(e=>this.cancelUpload(e))}enable(){return delete this.disabled,this.clickableElements.forEach(e=>e.classList.add("dz-clickable")),this.setupEventListeners()}filesize(e){let i=0,t="b";if(e>0){let s=["tb","gb","mb","kb","b"];for(let l=0;l=a){i=e/Math.pow(this.options.filesizeBase,4-l),t=o;break}}i=Math.round(10*i)/10}return`${i} ${this.options.dictFileSizeUnits[t]}`}_updateMaxFilesReachedClass(){return this.options.maxFiles!=null&&this.getAcceptedFiles().length>=this.options.maxFiles?(this.getAcceptedFiles().length===this.options.maxFiles&&this.emit("maxfilesreached",this.files),this.element.classList.add("dz-max-files-reached")):this.element.classList.remove("dz-max-files-reached")}drop(e){if(!e.dataTransfer)return;this.emit("drop",e);let i=[];for(let t=0;tt.items)==null)return;this.emit("paste",e);let{items:i}=e.clipboardData;if(i.length)return this._addFilesFromItems(i)}handleFiles(e){for(let i of e)this.addFile(i)}_addFilesFromItems(e){return(()=>{let i=[];for(let s of e){var t;s.webkitGetAsEntry!=null&&(t=s.webkitGetAsEntry())?t.isFile?i.push(this.addFile(s.getAsFile())):t.isDirectory?i.push(this._addFilesFromDirectory(t,t.name)):i.push(void 0):s.getAsFile!=null&&(s.kind==null||s.kind==="file")?i.push(this.addFile(s.getAsFile())):i.push(void 0)}return i})()}_addFilesFromDirectory(e,i){let t=e.createReader(),s=o=>M(console,"log",a=>a.log(o));var l=()=>t.readEntries(o=>{if(o.length>0){for(let a of o)a.isFile?a.file(u=>{if(!(this.options.ignoreHiddenFiles&&u.name.substring(0,1)==="."))return u.fullPath=`${i}/${u.name}`,this.addFile(u)}):a.isDirectory&&this._addFilesFromDirectory(a,`${i}/${a.name}`);l()}return null},s);return l()}accept(e,i){this.options.maxFilesize&&e.size>this.options.maxFilesize*1048576?i(this.options.dictFileTooBig.replace("{{filesize}}",Math.round(e.size/1024/10.24)/100).replace("{{maxFilesize}}",this.options.maxFilesize)):r.isValidFile(e,this.options.acceptedFiles)?this.options.maxFiles!=null&&this.getAcceptedFiles().length>=this.options.maxFiles?(i(this.options.dictMaxFilesExceeded.replace("{{maxFiles}}",this.options.maxFiles)),this.emit("maxfilesexceeded",e)):this.options.accept.call(this,e,i):i(this.options.dictInvalidFileType)}addFile(e){e.upload={uuid:r.uuidv4(),progress:0,total:e.size,bytesSent:0,filename:this._renameFile(e)},this.files.push(e),e.status=r.ADDED,this.emit("addedfile",e),this._enqueueThumbnail(e),this.accept(e,i=>{i?(e.accepted=!1,this._errorProcessing([e],i)):(e.accepted=!0,this.options.autoQueue&&this.enqueueFile(e)),this._updateMaxFilesReachedClass()})}enqueueFiles(e){for(let i of e)this.enqueueFile(i);return null}enqueueFile(e){if(e.status===r.ADDED&&e.accepted===!0){if(e.status=r.QUEUED,this.options.autoProcessQueue)return setTimeout(()=>this.processQueue(),0)}else throw new Error("This file can't be queued because it has already been processed or was rejected.")}_enqueueThumbnail(e){if(this.options.createImageThumbnails&&e.type.match(/image.*/)&&e.size<=this.options.maxThumbnailFilesize*1048576)return this._thumbnailQueue.push(e),setTimeout(()=>this._processThumbnailQueue(),0)}_processThumbnailQueue(){if(this._processingThumbnail||this._thumbnailQueue.length===0)return;this._processingThumbnail=!0;let e=this._thumbnailQueue.shift();return this.createThumbnail(e,this.options.thumbnailWidth,this.options.thumbnailHeight,this.options.thumbnailMethod,!0,i=>(this.emit("thumbnail",e,i),this._processingThumbnail=!1,this._processThumbnailQueue()))}removeFile(e){if(e.status===r.UPLOADING&&this.cancelUpload(e),this.files=S(this.files,e),this.emit("removedfile",e),this.files.length===0)return this.emit("reset")}removeAllFiles(e){e==null&&(e=!1);for(let i of this.files.slice())(i.status!==r.UPLOADING||e)&&this.removeFile(i);return null}resizeImage(e,i,t,s,l){return this.createThumbnail(e,i,t,s,!0,(o,a)=>{if(a==null)return l(e);{let{resizeMimeType:u}=this.options;u==null&&(u=e.type);let d=a.toDataURL(u,this.options.resizeQuality);return(u==="image/jpeg"||u==="image/jpg")&&(d=k.restore(e.dataURL,d)),l(r.dataURItoBlob(d))}})}createThumbnail(e,i,t,s,l,o){let a=new FileReader;a.onload=()=>{if(e.dataURL=a.result,e.type==="image/svg+xml"){o?.(a.result);return}this.createThumbnailFromUrl(e,i,t,s,l,o)},a.readAsDataURL(e)}displayExistingFile(e,i,t,s,l=!0){if(this.emit("addedfile",e),this.emit("complete",e),!l)this.emit("thumbnail",e,i),t&&t();else{let o=a=>{this.emit("thumbnail",e,a),t&&t()};e.dataURL=i,this.createThumbnailFromUrl(e,this.options.thumbnailWidth,this.options.thumbnailHeight,this.options.thumbnailMethod,this.options.fixOrientation,o,s)}}createThumbnailFromUrl(e,i,t,s,l,o,a){let u=document.createElement("img");return a&&(u.crossOrigin=a),l=getComputedStyle(document.body).imageOrientation=="from-image"?!1:l,u.onload=()=>{let d=h=>h(1);return typeof EXIF<"u"&&EXIF!==null&&l&&(d=h=>EXIF.getData(u,function(){return h(EXIF.getTag(this,"Orientation"))})),d(h=>{e.width=u.width,e.height=u.height;let p=this.options.resize.call(this,e,i,t,s),c=document.createElement("canvas"),m=c.getContext("2d");switch(c.width=p.trgWidth,c.height=p.trgHeight,h>4&&(c.width=p.trgHeight,c.height=p.trgWidth),h){case 2:m.translate(c.width,0),m.scale(-1,1);break;case 3:m.translate(c.width,c.height),m.rotate(Math.PI);break;case 4:m.translate(0,c.height),m.scale(1,-1);break;case 5:m.rotate(.5*Math.PI),m.scale(1,-1);break;case 6:m.rotate(.5*Math.PI),m.translate(0,-c.width);break;case 7:m.rotate(.5*Math.PI),m.translate(c.height,-c.width),m.scale(-1,1);break;case 8:m.rotate(-.5*Math.PI),m.translate(-c.height,0);break}A(m,u,p.srcX!=null?p.srcX:0,p.srcY!=null?p.srcY:0,p.srcWidth,p.srcHeight,p.trgX!=null?p.trgX:0,p.trgY!=null?p.trgY:0,p.trgWidth,p.trgHeight);let D=c.toDataURL("image/png");if(o!=null)return o(D,c)})},o!=null&&(u.onerror=o),u.src=e.dataURL}processQueue(){let{parallelUploads:e}=this.options,i=this.getUploadingFiles().length,t=i;if(i>=e)return;let s=this.getQueuedFiles();if(s.length>0){if(this.options.uploadMultiple)return this.processFiles(s.slice(0,e-i));for(;tt.xhr===e).map(t=>t)}cancelUpload(e){if(e.status===r.UPLOADING){let i=this._getFilesWithXhr(e.xhr);for(let t of i)t.status=r.CANCELED;typeof e.xhr<"u"&&e.xhr.abort();for(let t of i)this.emit("canceled",t);this.options.uploadMultiple&&this.emit("canceledmultiple",i)}else(e.status===r.ADDED||e.status===r.QUEUED)&&(e.status=r.CANCELED,this.emit("canceled",e),this.options.uploadMultiple&&this.emit("canceledmultiple",[e]));if(this.options.autoProcessQueue)return this.processQueue()}resolveOption(e,...i){return typeof e=="function"?e.apply(this,i):e}uploadFile(e){return this.uploadFiles([e])}uploadFiles(e){this._transformFiles(e,i=>{if(this.options.chunking){let t=i[0];e[0].upload.chunked=this.options.chunking&&(this.options.forceChunking||t.size>this.options.chunkSize),e[0].upload.totalChunkCount=Math.ceil(t.size/this.options.chunkSize)}if(e[0].upload.chunked){let t=e[0],s=i[0],l=0;t.upload.chunks=[];let o=()=>{let a=0;for(;t.upload.chunks[a]!==void 0;)a++;if(a>=t.upload.totalChunkCount)return;l++;let u=a*this.options.chunkSize,d=Math.min(u+this.options.chunkSize,s.size),h={name:this._getParamName(0),data:s.webkitSlice?s.webkitSlice(u,d):s.slice(u,d),filename:t.upload.filename,chunkIndex:a};t.upload.chunks[a]={file:t,index:a,dataBlock:h,status:r.UPLOADING,progress:0,retries:0},this._uploadData(e,[h])};if(t.upload.finishedChunkUpload=(a,u)=>{let d=!0;a.status=r.SUCCESS,a.dataBlock=null,a.response=a.xhr.responseText,a.responseHeaders=a.xhr.getAllResponseHeaders(),a.xhr=null;for(let h=0;h{this._finished(e,u,null)})},this.options.parallelChunkUploads)for(let a=0;a{this._finishedUploading(e,t,d)},t.ontimeout=()=>{this._handleUploadError(e,t,`Request timedout after ${this.options.timeout/1e3} seconds`)},t.onerror=()=>{this._handleUploadError(e,t)};let a=t.upload!=null?t.upload:t;a.onprogress=d=>this._updateFilesUploadProgress(e,t,d);let u=this.options.defaultHeaders?{Accept:"application/json","Cache-Control":"no-cache","X-Requested-With":"XMLHttpRequest"}:{};this.options.binaryBody&&(u["Content-Type"]=e[0].type),this.options.headers&&v(u,this.options.headers);for(let d in u){let h=u[d];h&&t.setRequestHeader(d,h)}if(this.options.binaryBody){for(let d of e)this.emit("sending",d,t);this.options.uploadMultiple&&this.emit("sendingmultiple",e,t),this.submitRequest(t,null,e)}else{let d=new FormData;if(this.options.params){let h=this.options.params;typeof h=="function"&&(h=h.call(this,e,t,e[0].upload.chunked?this._getChunk(e[0],t):null));for(let p in h){let c=h[p];if(Array.isArray(c))for(let m=0;m{t[l]=o,++s===e.length&&i(t)})}_addFormElementData(e){if(this.element.tagName==="FORM")for(let i of this.element.querySelectorAll("input, textarea, select, button")){let t=i.getAttribute("name"),s=i.getAttribute("type");if(s&&(s=s.toLowerCase()),!(typeof t>"u"||t===null))if(i.tagName==="SELECT"&&i.hasAttribute("multiple"))for(let l of i.options)l.selected&&e.append(t,l.value);else(!s||s!=="checkbox"&&s!=="radio"||i.checked)&&e.append(t,i.value)}}_updateFilesUploadProgress(e,i,t){if(e[0].upload.chunked){let s=e[0],l=this._getChunk(s,i);t?(l.progress=100*t.loaded/t.total,l.total=t.total,l.bytesSent=t.loaded):(l.progress=100,l.bytesSent=l.total),s.upload.progress=0,s.upload.total=0,s.upload.bytesSent=0;for(let o=0;othis.options.renameFilename.call(this,o.name,o)),typeof this.options.method=="string"&&(this.options.method=this.options.method.toUpperCase()),(t=this.getExistingFallback())&&t.parentNode&&t.parentNode.removeChild(t),this.options.previewsContainer!==!1&&(this.options.previewsContainer?this.previewsContainer=r.getElement(this.options.previewsContainer,"previewsContainer"):this.previewsContainer=this.element),this.options.clickable&&(this.options.clickable===!0?this.clickableElements=[this.element]:this.clickableElements=r.getElements(this.options.clickable,"clickable")),this.init()}}r.initClass(),r.options={},r.optionsForElement=function(n){if(n.getAttribute("id"))return r.options[T(n.getAttribute("id"))]},r.instances=[],r.forElement=function(n){if(typeof n=="string"&&(n=document.querySelector(n)),n?.dropzone==null)throw new Error("No Dropzone found for given element. This is probably because you're trying to access it before Dropzone had the time to initialize. Use the `init` option to setup any additional observers on your Dropzone.");return n.dropzone},r.discover=function(){let n;if(document.querySelectorAll)n=document.querySelectorAll(".dropzone");else{n=[];let e=i=>(()=>{let t=[];for(let s of i)/(^| )dropzone($| )/.test(s.className)?t.push(n.push(s)):t.push(void 0);return t})();e(document.getElementsByTagName("div")),e(document.getElementsByTagName("form"))}return(()=>{let e=[];for(let i of n)r.optionsForElement(i)!==!1?e.push(new r(i)):e.push(void 0);return e})()},r.blockedBrowsers=[/opera.*(Macintosh|Windows Phone).*version\/12/i],r.isBrowserSupported=function(){let n=!0;if(window.File&&window.FileReader&&window.FileList&&window.Blob&&window.FormData&&document.querySelector)if(!("classList"in document.createElement("a")))n=!1;else{r.blacklistedBrowsers!==void 0&&(r.blockedBrowsers=r.blacklistedBrowsers);for(let e of r.blockedBrowsers)if(e.test(navigator.userAgent)){n=!1;continue}}else n=!1;return n},r.dataURItoBlob=function(n){let e=atob(n.split(",")[1]),i=n.split(",")[0].split(":")[1].split(";")[0],t=new ArrayBuffer(e.length),s=new Uint8Array(t);for(let l=0,o=e.length,a=0<=o;a?l<=o:l>=o;a?l++:l--)s[l]=e.charCodeAt(l);return new Blob([t],{type:i})};const S=(n,e)=>n.filter(i=>i!==e).map(i=>i),T=n=>n.replace(/[\-_](\w)/g,e=>e.charAt(1).toUpperCase());r.createElement=function(n){let e=document.createElement("div");return e.innerHTML=n,e.childNodes[0]},r.elementInside=function(n,e){if(n===e)return!0;for(;n=n.parentNode;)if(n===e)return!0;return!1},r.getElement=function(n,e){let i;if(typeof n=="string"?i=document.querySelector(n):n.nodeType!=null&&(i=n),i==null)throw new Error(`Invalid \`${e}\` option provided. Please provide a CSS selector or a plain HTML element.`);return i},r.getElements=function(n,e){let i,t;if(n instanceof Array){t=[];try{for(i of n)t.push(this.getElement(i,e))}catch{t=null}}else if(typeof n=="string"){t=[];for(i of document.querySelectorAll(n))t.push(i)}else n.nodeType!=null&&(t=[n]);if(t==null||!t.length)throw new Error(`Invalid \`${e}\` option provided. Please provide a CSS selector, a plain HTML element or a list of those.`);return t},r.confirm=function(n,e,i){if(window.confirm(n))return e();if(i!=null)return i()},r.isValidFile=function(n,e){if(!e)return!0;e=e.split(",");let i=n.type,t=i.replace(/\/.*$/,"");for(let s of e)if(s=s.trim(),s.charAt(0)==="."){if(n.name.toLowerCase().indexOf(s.toLowerCase(),n.name.length-s.length)!==-1)return!0}else if(/\/\*$/.test(s)){if(t===s.replace(/\/.*$/,""))return!0}else if(i===s)return!0;return!1},typeof jQuery<"u"&&jQuery!==null&&(jQuery.fn.dropzone=function(n){return this.each(function(){return new r(this,n)})}),r.ADDED="added",r.QUEUED="queued",r.ACCEPTED=r.QUEUED,r.UPLOADING="uploading",r.PROCESSING=r.UPLOADING,r.CANCELED="canceled",r.ERROR="error",r.SUCCESS="success";let x=function(n){let e=n.naturalWidth,i=n.naturalHeight,t=document.createElement("canvas");t.width=1,t.height=i;let s=t.getContext("2d");s.drawImage(n,0,0);let{data:l}=s.getImageData(1,0,1,i),o=0,a=i,u=i;for(;u>o;)l[(u-1)*4+3]===0?a=u:o=u,u=a+o>>1;let d=u/i;return d===0?1:d};var A=function(n,e,i,t,s,l,o,a,u,d){let h=x(e);return n.drawImage(e,i,t,s,l,o,a,u,d/h)};class k{static initClass(){this.KEY_STR="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}static encode64(e){let i="",t,s,l="",o,a,u,d="",h=0;for(;t=e[h++],s=e[h++],l=e[h++],o=t>>2,a=(t&3)<<4|s>>4,u=(s&15)<<2|l>>6,d=l&63,isNaN(s)?u=d=64:isNaN(l)&&(d=64),i=i+this.KEY_STR.charAt(o)+this.KEY_STR.charAt(a)+this.KEY_STR.charAt(u)+this.KEY_STR.charAt(d),t=s=l="",o=a=u=d="",he.length)break}return t}static decode64(e){let i="",t,s,l="",o,a,u,d="",h=0,p=[];for(/[^A-Za-z0-9\+\/\=]/g.exec(e)&&console.warn(`There were invalid base64 characters in the input text. +Valid base64 characters are A-Z, a-z, 0-9, '+', '/',and '=' +Expect errors in decoding.`),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");o=this.KEY_STR.indexOf(e.charAt(h++)),a=this.KEY_STR.indexOf(e.charAt(h++)),u=this.KEY_STR.indexOf(e.charAt(h++)),d=this.KEY_STR.indexOf(e.charAt(h++)),t=o<<2|a>>4,s=(a&15)<<4|u>>2,l=(u&3)<<6|d,p.push(t),u!==64&&p.push(s),d!==64&&p.push(l),t=s=l="",o=a=u=d="",h[> ]*|[*+-] \[[x ]\]\s|[*+-]\s|(\d+)([.)]))(\s*)/,B=/^(\s*)(>[> ]*|[*+-] \[[x ]\]|[*+-]|(\d+)[.)])(\s*)$/,R=/[*+-]\s/;W.commands.newlineAndIndentContinueMarkdownList=function(A){if(A.getOption("disableInput"))return W.Pass;for(var N=A.listSelections(),Y=[],V=0;V\s*$/.test(me),j=!/>\s*$/.test(me);(U||j)&&A.replaceRange("",{line:G.line,ch:0},{line:G.line,ch:G.ch+1}),Y[V]=` +`}else{var te=be[1],X=be[5],ue=!(R.test(be[2])||be[2].indexOf(">")>=0),ie=ue?parseInt(be[3],10)+1+be[4]:be[2].replace("x"," ");Y[V]=` +`+te+ie+X,ue&&L(A,G)}}A.replaceSelections(Y)};function L(A,N){var Y=N.line,V=0,G=0,P=Q.exec(A.getLine(Y)),oe=P[1];do{V+=1;var pe=Y+V,Ee=A.getLine(pe),me=Q.exec(Ee);if(me){var be=me[1],H=parseInt(P[3],10)+V-G,U=parseInt(me[3],10),j=U;if(oe===be&&!isNaN(U))H===U&&(j=U+1),H>U&&(j=H+1),A.replaceRange(Ee.replace(Q,be+j+me[4]+me[5]),{line:pe,ch:0},{line:pe,ch:Ee.length});else{if(oe.length>be.length||oe.lengthie);ge++){var Te=H.getLine(ue++);te=te==null?Te:te+` +`+Te}X=X*2,U.lastIndex=j.ch;var Z=U.exec(te);if(Z){var Ae=te.slice(0,Z.index).split(` +`),J=Z[0].split(` +`),Re=j.line+Ae.length-1,_=Ae[Ae.length-1].length;return{from:Q(Re,_),to:Q(Re+J.length-1,J.length==1?_+J[0].length:J[J.length-1].length),match:Z}}}}function Y(H,U,j){for(var te,X=0;X<=H.length;){U.lastIndex=X;var ue=U.exec(H);if(!ue)break;var ie=ue.index+ue[0].length;if(ie>H.length-j)break;(!te||ie>te.index+te[0].length)&&(te=ue),X=ue.index+1}return te}function V(H,U,j){U=R(U,"g");for(var te=j.line,X=j.ch,ue=H.firstLine();te>=ue;te--,X=-1){var ie=H.getLine(te),ge=Y(ie,U,X<0?0:ie.length-X);if(ge)return{from:Q(te,ge.index),to:Q(te,ge.index+ge[0].length),match:ge}}}function G(H,U,j){if(!L(U))return V(H,U,j);U=R(U,"gm");for(var te,X=1,ue=H.getLine(j.line).length-j.ch,ie=j.line,ge=H.firstLine();ie>=ge;){for(var Te=0;Te=ge;Te++){var Z=H.getLine(ie--);te=te==null?Z:Z+` +`+te}X*=2;var Ae=Y(te,U,ue);if(Ae){var J=te.slice(0,Ae.index).split(` +`),Re=Ae[0].split(` +`),_=ie+J.length,le=J[J.length-1].length;return{from:Q(_,le),to:Q(_+Re.length-1,Re.length==1?le+Re[0].length:Re[Re.length-1].length),match:Ae}}}}var P,oe;String.prototype.normalize?(P=function(H){return H.normalize("NFD").toLowerCase()},oe=function(H){return H.normalize("NFD")}):(P=function(H){return H.toLowerCase()},oe=function(H){return H});function pe(H,U,j,te){if(H.length==U.length)return j;for(var X=0,ue=j+Math.max(0,H.length-U.length);;){if(X==ue)return X;var ie=X+ue>>1,ge=te(H.slice(0,ie)).length;if(ge==j)return ie;ge>j?ue=ie:X=ie+1}}function Ee(H,U,j,te){if(!U.length)return null;var X=te?P:oe,ue=X(U).split(/\r|\n\r?/);e:for(var ie=j.line,ge=j.ch,Te=H.lastLine()+1-ue.length;ie<=Te;ie++,ge=0){var Z=H.getLine(ie).slice(ge),Ae=X(Z);if(ue.length==1){var J=Ae.indexOf(ue[0]);if(J==-1)continue e;var j=pe(Z,Ae,J,X)+ge;return{from:Q(ie,pe(Z,Ae,J,X)+ge),to:Q(ie,pe(Z,Ae,J+ue[0].length,X)+ge)}}else{var Re=Ae.length-ue[0].length;if(Ae.slice(Re)!=ue[0])continue e;for(var _=1;_=Te;ie--,ge=-1){var Z=H.getLine(ie);ge>-1&&(Z=Z.slice(0,ge));var Ae=X(Z);if(ue.length==1){var J=Ae.lastIndexOf(ue[0]);if(J==-1)continue e;return{from:Q(ie,pe(Z,Ae,J,X)),to:Q(ie,pe(Z,Ae,J+ue[0].length,X))}}else{var Re=ue[ue.length-1];if(Ae.slice(0,Re.length)!=Re)continue e;for(var _=1,j=ie-ue.length+1;_(this.doc.getLine(U.line)||"").length&&(U.ch=0,U.line++)),W.cmpPos(U,this.doc.clipPos(U))!=0))return this.atOccurrence=!1;var j=this.matches(H,U);if(this.afterEmptyMatch=j&&W.cmpPos(j.from,j.to)==0,j)return this.pos=j,this.atOccurrence=!0,this.pos.match||!0;var te=Q(H?this.doc.firstLine():this.doc.lastLine()+1,0);return this.pos={from:te,to:te},this.atOccurrence=!1},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(H,U){if(this.atOccurrence){var j=W.splitLines(H);this.doc.replaceRange(j,this.pos.from,this.pos.to,U),this.pos.to=Q(this.pos.from.line+j.length-1,j[j.length-1].length+(j.length==1?this.pos.from.ch:0))}}},W.defineExtension("getSearchCursor",function(H,U,j){return new be(this.doc,H,U,j)}),W.defineDocExtension("getSearchCursor",function(H,U,j){return new be(this,H,U,j)}),W.defineExtension("selectMatches",function(H,U){for(var j=[],te=this.getSearchCursor(H,this.getCursor("from"),U);te.findNext()&&!(W.cmpPos(te.to(),this.getCursor("to"))>0);)j.push({anchor:te.from(),head:te.to()});j.length&&this.setSelections(j,0)})})},"./node_modules/codemirror/addon/selection/mark-selection.js":function(ct,_e,ye){(function(W){W(ye("./node_modules/codemirror/lib/codemirror.js"))})(function(W){"use strict";W.defineOption("styleSelectedText",!1,function(P,oe,pe){var Ee=pe&&pe!=W.Init;oe&&!Ee?(P.state.markedSelection=[],P.state.markedSelectionStyle=typeof oe=="string"?oe:"CodeMirror-selectedtext",V(P),P.on("cursorActivity",Q),P.on("change",B)):!oe&&Ee&&(P.off("cursorActivity",Q),P.off("change",B),Y(P),P.state.markedSelection=P.state.markedSelectionStyle=null)});function Q(P){P.state.markedSelection&&P.operation(function(){G(P)})}function B(P){P.state.markedSelection&&P.state.markedSelection.length&&P.operation(function(){Y(P)})}var R=8,L=W.Pos,A=W.cmpPos;function N(P,oe,pe,Ee){if(A(oe,pe)!=0)for(var me=P.state.markedSelection,be=P.state.markedSelectionStyle,H=oe.line;;){var U=H==oe.line?oe:L(H,0),j=H+R,te=j>=pe.line,X=te?pe:L(j,0),ue=P.markText(U,X,{className:be});if(Ee==null?me.push(ue):me.splice(Ee++,0,ue),te)break;H=j}}function Y(P){for(var oe=P.state.markedSelection,pe=0;pe1)return V(P);var oe=P.getCursor("start"),pe=P.getCursor("end"),Ee=P.state.markedSelection;if(!Ee.length)return N(P,oe,pe);var me=Ee[0].find(),be=Ee[Ee.length-1].find();if(!me||!be||pe.line-oe.line<=R||A(oe,be.to)>=0||A(pe,me.from)<=0)return V(P);for(;A(oe,me.from)>0;)Ee.shift().clear(),me=Ee[0].find();for(A(oe,me.from)<0&&(me.to.line-oe.line0&&(pe.line-be.from.line2),be=/Android/.test(_e),H=me||be||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(_e),U=me||/Mac/.test(ye),j=/\bCrOS\b/.test(_e),te=/win/i.test(ye),X=P&&_e.match(/Version\/(\d*\.\d*)/);X&&(X=Number(X[1])),X&&X>=15&&(P=!1,N=!0);var ue=U&&(Y||P&&(X==null||X<12.11)),ie=W||L&&A>=9;function ge(e){return new RegExp("(^|\\s)"+e+"(?:$|\\s)\\s*")}var Te=function(e,t){var i=e.className,r=ge(t).exec(i);if(r){var n=i.slice(r.index+r[0].length);e.className=i.slice(0,r.index)+(n?r[1]+n:"")}};function Z(e){for(var t=e.childNodes.length;t>0;--t)e.removeChild(e.firstChild);return e}function Ae(e,t){return Z(e).appendChild(t)}function J(e,t,i,r){var n=document.createElement(e);if(i&&(n.className=i),r&&(n.style.cssText=r),typeof t=="string")n.appendChild(document.createTextNode(t));else if(t)for(var a=0;a=t)return o+(t-a);o+=u-a,o+=i-o%i,a=u+1}}var Qe=function(){this.id=null,this.f=null,this.time=0,this.handler=ne(this.onTimeout,this)};Qe.prototype.onTimeout=function(e){e.id=0,e.time<=+new Date?e.f():setTimeout(e.handler,e.time-+new Date)},Qe.prototype.set=function(e,t){this.f=t;var i=+new Date+e;(!this.id||i=t)return r+Math.min(o,t-n);if(n+=a-r,n+=i-n%i,r=a+1,n>=t)return r}}var De=[""];function Nt(e){for(;De.length<=e;)De.push(Oe(De)+" ");return De[e]}function Oe(e){return e[e.length-1]}function It(e,t){for(var i=[],r=0;r"\x80"&&(e.toUpperCase()!=e.toLowerCase()||zt.test(e))}function I(e,t){return t?t.source.indexOf("\\w")>-1&&xr(e)?!0:t.test(e):xr(e)}function O(e){for(var t in e)if(e.hasOwnProperty(t)&&e[t])return!1;return!0}var T=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function c(e){return e.charCodeAt(0)>=768&&T.test(e)}function p(e,t,i){for(;(i<0?t>0:ti?-1:1;;){if(t==i)return t;var n=(t+i)/2,a=r<0?Math.ceil(n):Math.floor(n);if(a==t)return e(a)?t:i;e(a)?i=a:t=a+r}}function D(e,t,i,r){if(!e)return r(t,i,"ltr",0);for(var n=!1,a=0;at||t==i&&o.to==t)&&(r(Math.max(o.from,t),Math.min(o.to,i),o.level==1?"rtl":"ltr",a),n=!0)}n||r(t,i,"ltr")}var l=null;function d(e,t,i){var r;l=null;for(var n=0;nt)return n;a.to==t&&(a.from!=a.to&&i=="before"?r=n:l=n),a.from==t&&(a.from!=a.to&&i!="before"?r=n:l=n)}return r??l}var m=function(){var e="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",t="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function i(f){return f<=247?e.charAt(f):1424<=f&&f<=1524?"R":1536<=f&&f<=1785?t.charAt(f-1536):1774<=f&&f<=2220?"r":8192<=f&&f<=8203?"w":f==8204?"b":"L"}var r=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,n=/[stwN]/,a=/[LRr]/,o=/[Lb1n]/,u=/[1n]/;function s(f,v,x){this.level=f,this.from=v,this.to=x}return function(f,v){var x=v=="ltr"?"L":"R";if(f.length==0||v=="ltr"&&!r.test(f))return!1;for(var M=f.length,E=[],z=0;z-1&&(r[t]=n.slice(0,a).concat(n.slice(a+1)))}}}function C(e,t){var i=b(e,t);if(i.length)for(var r=Array.prototype.slice.call(arguments,2),n=0;n0}function xe(e){e.prototype.on=function(t,i){S(this,t,i)},e.prototype.off=function(t,i){w(this,t,i)}}function ce(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function We(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function Ue(e){return e.defaultPrevented!=null?e.defaultPrevented:e.returnValue==!1}function Be(e){ce(e),We(e)}function ze(e){return e.target||e.srcElement}function $e(e){var t=e.which;return t==null&&(e.button&1?t=1:e.button&2?t=3:e.button&4&&(t=2)),U&&e.ctrlKey&&t==1&&(t=3),t}var Ve=function(){if(L&&A<9)return!1;var e=J("div");return"draggable"in e||"dragDrop"in e}(),At;function yt(e){if(At==null){var t=J("span","\u200B");Ae(e,J("span",[t,document.createTextNode("x")])),e.firstChild.offsetHeight!=0&&(At=t.offsetWidth<=1&&t.offsetHeight>2&&!(L&&A<8))}var i=At?J("span","\u200B"):J("span","\xA0",null,"display: inline-block; width: 1px; margin-right: -1px");return i.setAttribute("cm-text",""),i}var Wt;function Mr(e){if(Wt!=null)return Wt;var t=Ae(e,document.createTextNode("A\u062EA")),i=_(t,0,1).getBoundingClientRect(),r=_(t,1,2).getBoundingClientRect();return Z(e),!i||i.left==i.right?!1:Wt=r.right-i.right<3}var Nr=` + +b`.split(/\n/).length!=3?function(e){for(var t=0,i=[],r=e.length;t<=r;){var n=e.indexOf(` +`,t);n==-1&&(n=e.length);var a=e.slice(t,e.charAt(n-1)=="\r"?n-1:n),o=a.indexOf("\r");o!=-1?(i.push(a.slice(0,o)),t+=o+1):(i.push(a),t=n+1)}return i}:function(e){return e.split(/\r\n?|\n/)},Li=window.getSelection?function(e){try{return e.selectionStart!=e.selectionEnd}catch{return!1}}:function(e){var t;try{t=e.ownerDocument.selection.createRange()}catch{}return!t||t.parentElement()!=e?!1:t.compareEndPoints("StartToEnd",t)!=0},fn=function(){var e=J("div");return"oncopy"in e?!0:(e.setAttribute("oncopy","return;"),typeof e.oncopy=="function")}(),yr=null;function cn(e){if(yr!=null)return yr;var t=Ae(e,J("span","x")),i=t.getBoundingClientRect(),r=_(t,0,1).getBoundingClientRect();return yr=Math.abs(i.left-r.left)>1}var ei={},rt={};function ur(e,t){arguments.length>2&&(t.dependencies=Array.prototype.slice.call(arguments,2)),ei[e]=t}function qt(e,t){rt[e]=t}function Ht(e){if(typeof e=="string"&&rt.hasOwnProperty(e))e=rt[e];else if(e&&typeof e.name=="string"&&rt.hasOwnProperty(e.name)){var t=rt[e.name];typeof t=="string"&&(t={name:t}),e=Pe(t,e),e.name=t.name}else{if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(e))return Ht("application/xml");if(typeof e=="string"&&/^[\w\-]+\/[\w\-]+\+json$/.test(e))return Ht("application/json")}return typeof e=="string"?{name:e}:e||{name:"null"}}function Gt(e,t){t=Ht(t);var i=ei[t.name];if(!i)return Gt(e,"text/plain");var r=i(e,t);if(Ut.hasOwnProperty(t.name)){var n=Ut[t.name];for(var a in n)n.hasOwnProperty(a)&&(r.hasOwnProperty(a)&&(r["_"+a]=r[a]),r[a]=n[a])}if(r.name=t.name,t.helperType&&(r.helperType=t.helperType),t.modeProps)for(var o in t.modeProps)r[o]=t.modeProps[o];return r}var Ut={};function Ti(e,t){var i=Ut.hasOwnProperty(e)?Ut[e]:Ut[e]={};Le(t,i)}function tr(e,t){if(t===!0)return t;if(e.copyState)return e.copyState(t);var i={};for(var r in t){var n=t[r];n instanceof Array&&(n=n.concat([])),i[r]=n}return i}function Ir(e,t){for(var i;e.innerMode&&(i=e.innerMode(t),!(!i||i.mode==e));)t=i.state,e=i.mode;return i||{mode:e,state:t}}function sa(e,t,i){return e.startState?e.startState(t,i):!0}var ut=function(e,t,i){this.pos=this.start=0,this.string=e,this.tabSize=t||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=i};ut.prototype.eol=function(){return this.pos>=this.string.length},ut.prototype.sol=function(){return this.pos==this.lineStart},ut.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},ut.prototype.next=function(){if(this.post},ut.prototype.eatSpace=function(){for(var e=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e},ut.prototype.skipToEnd=function(){this.pos=this.string.length},ut.prototype.skipTo=function(e){var t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0},ut.prototype.backUp=function(e){this.pos-=e},ut.prototype.column=function(){return this.lastColumnPos0?null:(a&&t!==!1&&(this.pos+=a[0].length),a)}},ut.prototype.current=function(){return this.string.slice(this.start,this.pos)},ut.prototype.hideFirstChars=function(e,t){this.lineStart+=e;try{return t()}finally{this.lineStart-=e}},ut.prototype.lookAhead=function(e){var t=this.lineOracle;return t&&t.lookAhead(e)},ut.prototype.baseToken=function(){var e=this.lineOracle;return e&&e.baseToken(this.pos)};function we(e,t){if(t-=e.first,t<0||t>=e.size)throw new Error("There is no line "+(t+e.first)+" in the document.");for(var i=e;!i.lines;)for(var r=0;;++r){var n=i.children[r],a=n.chunkSize();if(t=e.first&&ti?re(i,we(e,i).text.length):fl(t,we(e,t.line).text.length)}function fl(e,t){var i=e.ch;return i==null||i>t?re(e.line,t):i<0?re(e.line,0):e}function ca(e,t){for(var i=[],r=0;rthis.maxLookAhead&&(this.maxLookAhead=e),t},Jt.prototype.baseToken=function(e){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=e;)this.baseTokenPos+=2;var t=this.baseTokens[this.baseTokenPos+1];return{type:t&&t.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-e}},Jt.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},Jt.fromSaved=function(e,t,i){return t instanceof Ni?new Jt(e,tr(e.mode,t.state),i,t.lookAhead):new Jt(e,tr(e.mode,t),i)},Jt.prototype.save=function(e){var t=e!==!1?tr(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new Ni(t,this.maxLookAhead):t};function ha(e,t,i,r){var n=[e.state.modeGen],a={};xa(e,t.text,e.doc.mode,i,function(f,v){return n.push(f,v)},a,r);for(var o=i.state,u=function(f){i.baseTokens=n;var v=e.state.overlays[f],x=1,M=0;i.state=!0,xa(e,t.text,v.mode,i,function(E,z){for(var q=x;ME&&n.splice(x,1,E,n[x+1],ae),x+=2,M=Math.min(E,ae)}if(z)if(v.opaque)n.splice(q,x-q,E,"overlay "+z),x=q+2;else for(;qe.options.maxHighlightLength&&tr(e.doc.mode,r.state),a=ha(e,t,r);n&&(r.state=n),t.stateAfter=r.save(!n),t.styles=a.styles,a.classes?t.styleClasses=a.classes:t.styleClasses&&(t.styleClasses=null),i===e.doc.highlightFrontier&&(e.doc.modeFrontier=Math.max(e.doc.modeFrontier,++e.doc.highlightFrontier))}return t.styles}function ri(e,t,i){var r=e.doc,n=e.display;if(!r.mode.startState)return new Jt(r,!0,t);var a=cl(e,t,i),o=a>r.first&&we(r,a-1).stateAfter,u=o?Jt.fromSaved(r,o,a):new Jt(r,sa(r.mode),a);return r.iter(a,t,function(s){vn(e,s.text,u);var f=u.line;s.stateAfter=f==t-1||f%5==0||f>=n.viewFrom&&ft.start)return a}throw new Error("Mode "+e.name+" failed to advance stream.")}var ga=function(e,t,i){this.start=e.start,this.end=e.pos,this.string=e.current(),this.type=t||null,this.state=i};function va(e,t,i,r){var n=e.doc,a=n.mode,o;t=Ne(n,t);var u=we(n,t.line),s=ri(e,t.line,i),f=new ut(u.text,e.options.tabSize,s),v;for(r&&(v=[]);(r||f.pose.options.maxHighlightLength?(u=!1,o&&vn(e,t,r,v.pos),v.pos=t.length,x=null):x=ma(mn(i,v,r.state,M),a),M){var E=M[0].name;E&&(x="m-"+(x?E+" "+x:E))}if(!u||f!=x){for(;so;--u){if(u<=a.first)return a.first;var s=we(a,u-1),f=s.stateAfter;if(f&&(!i||u+(f instanceof Ni?f.lookAhead:0)<=a.modeFrontier))return u;var v=Ge(s.text,null,e.options.tabSize);(n==null||r>v)&&(n=u-1,r=v)}return n}function hl(e,t){if(e.modeFrontier=Math.min(e.modeFrontier,t),!(e.highlightFrontieri;r--){var n=we(e,r).stateAfter;if(n&&(!(n instanceof Ni)||r+n.lookAhead=t:a.to>t);(r||(r=[])).push(new Ii(o,a.from,s?null:a.to))}}return r}function xl(e,t,i){var r;if(e)for(var n=0;n=t:a.to>t);if(u||a.from==t&&o.type=="bookmark"&&(!i||a.marker.insertLeft)){var s=a.from==null||(o.inclusiveLeft?a.from<=t:a.from0&&u)for(var ve=0;ve0)){var v=[s,1],x=Me(f.from,u.from),M=Me(f.to,u.to);(x<0||!o.inclusiveLeft&&!x)&&v.push({from:f.from,to:u.from}),(M>0||!o.inclusiveRight&&!M)&&v.push({from:u.to,to:f.to}),n.splice.apply(n,v),s+=v.length-3}}return n}function ba(e){var t=e.markedSpans;if(t){for(var i=0;it)&&(!r||yn(r,a.marker)<0)&&(r=a.marker)}return r}function Sa(e,t,i,r,n){var a=we(e,t),o=rr&&a.markedSpans;if(o)for(var u=0;u=0&&x<=0||v<=0&&x>=0)&&(v<=0&&(s.marker.inclusiveRight&&n.inclusiveLeft?Me(f.to,i)>=0:Me(f.to,i)>0)||v>=0&&(s.marker.inclusiveRight&&n.inclusiveLeft?Me(f.from,r)<=0:Me(f.from,r)<0)))return!0}}}function Kt(e){for(var t;t=wa(e);)e=t.find(-1,!0).line;return e}function bl(e){for(var t;t=_i(e);)e=t.find(1,!0).line;return e}function Cl(e){for(var t,i;t=_i(e);)e=t.find(1,!0).line,(i||(i=[])).push(e);return i}function Dn(e,t){var i=we(e,t),r=Kt(i);return i==r?t:Xe(r)}function Fa(e,t){if(t>e.lastLine())return t;var i=we(e,t),r;if(!sr(e,i))return t;for(;r=_i(i);)i=r.find(1,!0).line;return Xe(i)+1}function sr(e,t){var i=rr&&t.markedSpans;if(i){for(var r=void 0,n=0;nt.maxLineLength&&(t.maxLineLength=n,t.maxLine=r)})}var Or=function(e,t,i){this.text=e,Ca(this,t),this.height=i?i(this):1};Or.prototype.lineNo=function(){return Xe(this)},xe(Or);function kl(e,t,i,r){e.text=t,e.stateAfter&&(e.stateAfter=null),e.styles&&(e.styles=null),e.order!=null&&(e.order=null),ba(e),Ca(e,i);var n=r?r(e):1;n!=e.height&&Qt(e,n)}function wl(e){e.parent=null,ba(e)}var Sl={},Fl={};function Aa(e,t){if(!e||/^\s*$/.test(e))return null;var i=t.addModeClass?Fl:Sl;return i[e]||(i[e]=e.replace(/\S+/g,"cm-$&"))}function Ea(e,t){var i=Re("span",null,null,N?"padding-right: .1px":null),r={pre:Re("pre",[i],"CodeMirror-line"),content:i,col:0,pos:0,cm:e,trailingSpace:!1,splitSpaces:e.getOption("lineWrapping")};t.measure={};for(var n=0;n<=(t.rest?t.rest.length:0);n++){var a=n?t.rest[n-1]:t.line,o=void 0;r.pos=0,r.addToken=El,Mr(e.display.measure)&&(o=y(a,e.doc.direction))&&(r.addToken=Tl(r.addToken,o)),r.map=[];var u=t!=e.display.externalMeasured&&Xe(a);Bl(a,r,da(e,a,u)),a.styleClasses&&(a.styleClasses.bgClass&&(r.bgClass=Je(a.styleClasses.bgClass,r.bgClass||"")),a.styleClasses.textClass&&(r.textClass=Je(a.styleClasses.textClass,r.textClass||""))),r.map.length==0&&r.map.push(0,0,r.content.appendChild(yt(e.display.measure))),n==0?(t.measure.map=r.map,t.measure.cache={}):((t.measure.maps||(t.measure.maps=[])).push(r.map),(t.measure.caches||(t.measure.caches=[])).push({}))}if(N){var s=r.content.lastChild;(/\bcm-tab\b/.test(s.className)||s.querySelector&&s.querySelector(".cm-tab"))&&(r.content.className="cm-tab-wrap-hack")}return C(e,"renderLine",e,t.line,r.pre),r.pre.className&&(r.textClass=Je(r.pre.className,r.textClass||"")),r}function Al(e){var t=J("span","\u2022","cm-invalidchar");return t.title="\\u"+e.charCodeAt(0).toString(16),t.setAttribute("aria-label",t.title),t}function El(e,t,i,r,n,a,o){if(t){var u=e.splitSpaces?Ll(t,e.trailingSpace):t,s=e.cm.state.specialChars,f=!1,v;if(!s.test(t))e.col+=t.length,v=document.createTextNode(u),e.map.push(e.pos,e.pos+t.length,v),L&&A<9&&(f=!0),e.pos+=t.length;else{v=document.createDocumentFragment();for(var x=0;;){s.lastIndex=x;var M=s.exec(t),E=M?M.index-x:t.length-x;if(E){var z=document.createTextNode(u.slice(x,x+E));L&&A<9?v.appendChild(J("span",[z])):v.appendChild(z),e.map.push(e.pos,e.pos+E,z),e.col+=E,e.pos+=E}if(!M)break;x+=E+1;var q=void 0;if(M[0]==" "){var ae=e.cm.options.tabSize,se=ae-e.col%ae;q=v.appendChild(J("span",Nt(se),"cm-tab")),q.setAttribute("role","presentation"),q.setAttribute("cm-text"," "),e.col+=se}else M[0]=="\r"||M[0]==` +`?(q=v.appendChild(J("span",M[0]=="\r"?"\u240D":"\u2424","cm-invalidchar")),q.setAttribute("cm-text",M[0]),e.col+=1):(q=e.cm.options.specialCharPlaceholder(M[0]),q.setAttribute("cm-text",M[0]),L&&A<9?v.appendChild(J("span",[q])):v.appendChild(q),e.col+=1);e.map.push(e.pos,e.pos+1,q),e.pos++}}if(e.trailingSpace=u.charCodeAt(t.length-1)==32,i||r||n||f||a||o){var de=i||"";r&&(de+=r),n&&(de+=n);var fe=J("span",[v],de,a);if(o)for(var ve in o)o.hasOwnProperty(ve)&&ve!="style"&&ve!="class"&&fe.setAttribute(ve,o[ve]);return e.content.appendChild(fe)}e.content.appendChild(v)}}function Ll(e,t){if(e.length>1&&!/ /.test(e))return e;for(var i=t,r="",n=0;nf&&x.from<=f));M++);if(x.to>=v)return e(i,r,n,a,o,u,s);e(i,r.slice(0,x.to-f),n,a,null,u,s),a=null,r=r.slice(x.to-f),f=x.to}}}function La(e,t,i,r){var n=!r&&i.widgetNode;n&&e.map.push(e.pos,e.pos+t,n),!r&&e.cm.display.input.needsContentAttribute&&(n||(n=e.content.appendChild(document.createElement("span"))),n.setAttribute("cm-marker",i.id)),n&&(e.cm.display.input.setUneditable(n),e.content.appendChild(n)),e.pos+=t,e.trailingSpace=!1}function Bl(e,t,i){var r=e.markedSpans,n=e.text,a=0;if(!r){for(var o=1;os||He.collapsed&&Se.to==s&&Se.from==s)){if(Se.to!=null&&Se.to!=s&&E>Se.to&&(E=Se.to,q=""),He.className&&(z+=" "+He.className),He.css&&(M=(M?M+";":"")+He.css),He.startStyle&&Se.from==s&&(ae+=" "+He.startStyle),He.endStyle&&Se.to==E&&(ve||(ve=[])).push(He.endStyle,Se.to),He.title&&((de||(de={})).title=He.title),He.attributes)for(var Ze in He.attributes)(de||(de={}))[Ze]=He.attributes[Ze];He.collapsed&&(!se||yn(se.marker,He)<0)&&(se=Se)}else Se.from>s&&E>Se.from&&(E=Se.from)}if(ve)for(var vt=0;vt=u)break;for(var Rt=Math.min(u,E);;){if(v){var Tt=s+v.length;if(!se){var st=Tt>Rt?v.slice(0,Rt-s):v;t.addToken(t,st,x?x+z:z,ae,s+st.length==E?q:"",M,de)}if(Tt>=Rt){v=v.slice(Rt-s),s=Rt;break}s=Tt,ae=""}v=n.slice(a,a=i[f++]),x=Aa(i[f++],t.cm.options)}}}function Ta(e,t,i){this.line=t,this.rest=Cl(t),this.size=this.rest?Xe(Oe(this.rest))-i+1:1,this.node=this.text=null,this.hidden=sr(e,t)}function zi(e,t,i){for(var r=[],n,a=t;a2&&a.push((s.bottom+f.top)/2-i.top)}}a.push(i.bottom-i.top)}}function _a(e,t,i){if(e.line==t)return{map:e.measure.map,cache:e.measure.cache};if(e.rest){for(var r=0;ri)return{map:e.measure.maps[n],cache:e.measure.caches[n],before:!0}}}function Ul(e,t){t=Kt(t);var i=Xe(t),r=e.display.externalMeasured=new Ta(e.doc,t,i);r.lineN=i;var n=r.built=Ea(e,r);return r.text=n.pre,Ae(e.display.lineMeasure,n.pre),r}function Ra(e,t,i,r){return Vt(e,_r(e,t),i,r)}function Fn(e,t){if(t>=e.display.viewFrom&&t=i.lineN&&tt)&&(a=s-u,n=a-1,t>=s&&(o="right")),n!=null){if(r=e[f+2],u==s&&i==(r.insertLeft?"left":"right")&&(o=i),i=="left"&&n==0)for(;f&&e[f-2]==e[f-3]&&e[f-1].insertLeft;)r=e[(f-=3)+2],o="left";if(i=="right"&&n==s-u)for(;f=0&&(i=e[n]).left==i.right;n--);return i}function ql(e,t,i,r){var n=Pa(t.map,i,r),a=n.node,o=n.start,u=n.end,s=n.collapse,f;if(a.nodeType==3){for(var v=0;v<4;v++){for(;o&&c(t.line.text.charAt(n.coverStart+o));)--o;for(;n.coverStart+u0&&(s=r="right");var x;e.options.lineWrapping&&(x=a.getClientRects()).length>1?f=x[r=="right"?x.length-1:0]:f=a.getBoundingClientRect()}if(L&&A<9&&!o&&(!f||!f.left&&!f.right)){var M=a.parentNode.getClientRects()[0];M?f={left:M.left,right:M.left+zr(e.display),top:M.top,bottom:M.bottom}:f=za}for(var E=f.top-t.rect.top,z=f.bottom-t.rect.top,q=(E+z)/2,ae=t.view.measure.heights,se=0;se=r.text.length?(s=r.text.length,f="before"):s<=0&&(s=0,f="after"),!u)return o(f=="before"?s-1:s,f=="before");function v(z,q,ae){var se=u[q],de=se.level==1;return o(ae?z-1:z,de!=ae)}var x=d(u,s,f),M=l,E=v(s,x,f=="before");return M!=null&&(E.other=v(s,M,f!="before")),E}function Ka(e,t){var i=0;t=Ne(e.doc,t),e.options.lineWrapping||(i=zr(e.display)*t.ch);var r=we(e.doc,t.line),n=ir(r)+Pi(e.display);return{left:i,right:i,top:n,bottom:n+r.height}}function En(e,t,i,r,n){var a=re(e,t,i);return a.xRel=n,r&&(a.outside=r),a}function Ln(e,t,i){var r=e.doc;if(i+=e.display.viewOffset,i<0)return En(r.first,0,null,-1,-1);var n=br(r,i),a=r.first+r.size-1;if(n>a)return En(r.first+r.size-1,we(r,a).text.length,null,1,1);t<0&&(t=0);for(var o=we(r,n);;){var u=Kl(e,o,n,t,i),s=Dl(o,u.ch+(u.xRel>0||u.outside>0?1:0));if(!s)return u;var f=s.find(1);if(f.line==n)return f;o=we(r,n=f.line)}}function Xa(e,t,i,r){r-=An(t);var n=t.text.length,a=g(function(o){return Vt(e,i,o-1).bottom<=r},n,0);return n=g(function(o){return Vt(e,i,o).top>r},a,n),{begin:a,end:n}}function Ya(e,t,i,r){i||(i=_r(e,t));var n=Wi(e,t,Vt(e,i,r),"line").top;return Xa(e,t,i,n)}function Tn(e,t,i,r){return e.bottom<=i?!1:e.top>i?!0:(r?e.left:e.right)>t}function Kl(e,t,i,r,n){n-=ir(t);var a=_r(e,t),o=An(t),u=0,s=t.text.length,f=!0,v=y(t,e.doc.direction);if(v){var x=(e.options.lineWrapping?Yl:Xl)(e,t,i,a,v,r,n);f=x.level!=1,u=f?x.from:x.to-1,s=f?x.to:x.from-1}var M=null,E=null,z=g(function(Fe){var Se=Vt(e,a,Fe);return Se.top+=o,Se.bottom+=o,Tn(Se,r,n,!1)?(Se.top<=n&&Se.left<=r&&(M=Fe,E=Se),!0):!1},u,s),q,ae,se=!1;if(E){var de=r-E.left=ve.bottom?1:0}return z=p(t.text,z,1),En(i,z,ae,se,r-q)}function Xl(e,t,i,r,n,a,o){var u=g(function(x){var M=n[x],E=M.level!=1;return Tn(Xt(e,re(i,E?M.to:M.from,E?"before":"after"),"line",t,r),a,o,!0)},0,n.length-1),s=n[u];if(u>0){var f=s.level!=1,v=Xt(e,re(i,f?s.from:s.to,f?"after":"before"),"line",t,r);Tn(v,a,o,!0)&&v.top>o&&(s=n[u-1])}return s}function Yl(e,t,i,r,n,a,o){var u=Xa(e,t,r,o),s=u.begin,f=u.end;/\s/.test(t.text.charAt(f-1))&&f--;for(var v=null,x=null,M=0;M=f||E.to<=s)){var z=E.level!=1,q=Vt(e,r,z?Math.min(f,E.to)-1:Math.max(s,E.from)).right,ae=qae)&&(v=E,x=ae)}}return v||(v=n[n.length-1]),v.fromf&&(v={from:v.from,to:f,level:v.level}),v}var kr;function Rr(e){if(e.cachedTextHeight!=null)return e.cachedTextHeight;if(kr==null){kr=J("pre",null,"CodeMirror-line-like");for(var t=0;t<49;++t)kr.appendChild(document.createTextNode("x")),kr.appendChild(J("br"));kr.appendChild(document.createTextNode("x"))}Ae(e.measure,kr);var i=kr.offsetHeight/50;return i>3&&(e.cachedTextHeight=i),Z(e.measure),i||1}function zr(e){if(e.cachedCharWidth!=null)return e.cachedCharWidth;var t=J("span","xxxxxxxxxx"),i=J("pre",[t],"CodeMirror-line-like");Ae(e.measure,i);var r=t.getBoundingClientRect(),n=(r.right-r.left)/10;return n>2&&(e.cachedCharWidth=n),n||10}function Bn(e){for(var t=e.display,i={},r={},n=t.gutters.clientLeft,a=t.gutters.firstChild,o=0;a;a=a.nextSibling,++o){var u=e.display.gutterSpecs[o].className;i[u]=a.offsetLeft+a.clientLeft+n,r[u]=a.clientWidth}return{fixedPos:Mn(t),gutterTotalWidth:t.gutters.offsetWidth,gutterLeft:i,gutterWidth:r,wrapperWidth:t.wrapper.clientWidth}}function Mn(e){return e.scroller.getBoundingClientRect().left-e.sizer.getBoundingClientRect().left}function Za(e){var t=Rr(e.display),i=e.options.lineWrapping,r=i&&Math.max(5,e.display.scroller.clientWidth/zr(e.display)-3);return function(n){if(sr(e.doc,n))return 0;var a=0;if(n.widgets)for(var o=0;o0&&(f=we(e.doc,s.line).text).length==s.ch){var v=Ge(f,f.length,e.options.tabSize)-f.length;s=re(s.line,Math.max(0,Math.round((a-Ha(e.display).left)/zr(e.display))-v))}return s}function Sr(e,t){if(t>=e.display.viewTo||(t-=e.display.viewFrom,t<0))return null;for(var i=e.display.view,r=0;rt)&&(n.updateLineNumbers=t),e.curOp.viewChanged=!0,t>=n.viewTo)rr&&Dn(e.doc,t)n.viewFrom?cr(e):(n.viewFrom+=r,n.viewTo+=r);else if(t<=n.viewFrom&&i>=n.viewTo)cr(e);else if(t<=n.viewFrom){var a=ji(e,i,i+r,1);a?(n.view=n.view.slice(a.index),n.viewFrom=a.lineN,n.viewTo+=r):cr(e)}else if(i>=n.viewTo){var o=ji(e,t,t,-1);o?(n.view=n.view.slice(0,o.index),n.viewTo=o.lineN):cr(e)}else{var u=ji(e,t,t,-1),s=ji(e,i,i+r,1);u&&s?(n.view=n.view.slice(0,u.index).concat(zi(e,u.lineN,s.lineN)).concat(n.view.slice(s.index)),n.viewTo+=r):cr(e)}var f=n.externalMeasured;f&&(i=n.lineN&&t=r.viewTo)){var a=r.view[Sr(e,t)];if(a.node!=null){var o=a.changes||(a.changes=[]);je(o,i)==-1&&o.push(i)}}}function cr(e){e.display.viewFrom=e.display.viewTo=e.doc.first,e.display.view=[],e.display.viewOffset=0}function ji(e,t,i,r){var n=Sr(e,t),a,o=e.display.view;if(!rr||i==e.doc.first+e.doc.size)return{index:n,lineN:i};for(var u=e.display.viewFrom,s=0;s0){if(n==o.length-1)return null;a=u+o[n].size-t,n++}else a=u-t;t+=a,i+=a}for(;Dn(e.doc,i)!=i;){if(n==(r<0?0:o.length-1))return null;i+=r*o[n-(r<0?1:0)].size,n+=r}return{index:n,lineN:i}}function Zl(e,t,i){var r=e.display,n=r.view;n.length==0||t>=r.viewTo||i<=r.viewFrom?(r.view=zi(e,t,i),r.viewFrom=t):(r.viewFrom>t?r.view=zi(e,t,r.viewFrom).concat(r.view):r.viewFromi&&(r.view=r.view.slice(0,Sr(e,i)))),r.viewTo=i}function Qa(e){for(var t=e.display.view,i=0,r=0;r=e.display.viewTo||s.to().line0?o:e.defaultCharWidth())+"px"}if(r.other){var u=i.appendChild(J("div","\xA0","CodeMirror-cursor CodeMirror-secondarycursor"));u.style.display="",u.style.left=r.other.left+"px",u.style.top=r.other.top+"px",u.style.height=(r.other.bottom-r.other.top)*.85+"px"}}function qi(e,t){return e.top-t.top||e.left-t.left}function Ql(e,t,i){var r=e.display,n=e.doc,a=document.createDocumentFragment(),o=Ha(e.display),u=o.left,s=Math.max(r.sizerWidth,Cr(e)-r.sizer.offsetLeft)-o.right,f=n.direction=="ltr";function v(fe,ve,Fe,Se){ve<0&&(ve=0),ve=Math.round(ve),Se=Math.round(Se),a.appendChild(J("div",null,"CodeMirror-selected","position: absolute; left: "+fe+`px; + top: `+ve+"px; width: "+(Fe??s-fe)+`px; + height: `+(Se-ve)+"px"))}function x(fe,ve,Fe){var Se=we(n,fe),He=Se.text.length,Ze,vt;function tt(st,Bt){return Ui(e,re(fe,st),"div",Se,Bt)}function Rt(st,Bt,Dt){var ht=Ya(e,Se,null,st),ft=Bt=="ltr"==(Dt=="after")?"left":"right",it=Dt=="after"?ht.begin:ht.end-(/\s/.test(Se.text.charAt(ht.end-1))?2:1);return tt(it,ft)[ft]}var Tt=y(Se,n.direction);return D(Tt,ve||0,Fe??He,function(st,Bt,Dt,ht){var ft=Dt=="ltr",it=tt(st,ft?"left":"right"),Mt=tt(Bt-1,ft?"right":"left"),$r=ve==null&&st==0,mr=Fe==null&&Bt==He,Ct=ht==0,er=!Tt||ht==Tt.length-1;if(Mt.top-it.top<=3){var mt=(f?$r:mr)&&Ct,la=(f?mr:$r)&&er,lr=mt?u:(ft?it:Mt).left,Tr=la?s:(ft?Mt:it).right;v(lr,it.top,Tr-lr,it.bottom)}else{var Br,Ft,Vr,ua;ft?(Br=f&&$r&&Ct?u:it.left,Ft=f?s:Rt(st,Dt,"before"),Vr=f?u:Rt(Bt,Dt,"after"),ua=f&&mr&&er?s:Mt.right):(Br=f?Rt(st,Dt,"before"):u,Ft=!f&&$r&&Ct?s:it.right,Vr=!f&&mr&&er?u:Mt.left,ua=f?Rt(Bt,Dt,"after"):s),v(Br,it.top,Ft-Br,it.bottom),it.bottom0?t.blinker=setInterval(function(){e.hasFocus()||Pr(e),t.cursorDiv.style.visibility=(i=!i)?"":"hidden"},e.options.cursorBlinkRate):e.options.cursorBlinkRate<0&&(t.cursorDiv.style.visibility="hidden")}}function $a(e){e.hasFocus()||(e.display.input.focus(),e.state.focused||_n(e))}function Hn(e){e.state.delayingBlurEvent=!0,setTimeout(function(){e.state.delayingBlurEvent&&(e.state.delayingBlurEvent=!1,e.state.focused&&Pr(e))},100)}function _n(e,t){e.state.delayingBlurEvent&&!e.state.draggingText&&(e.state.delayingBlurEvent=!1),e.options.readOnly!="nocursor"&&(e.state.focused||(C(e,"focus",e,t),e.state.focused=!0,Ce(e.display.wrapper,"CodeMirror-focused"),!e.curOp&&e.display.selForContextMenu!=e.doc.sel&&(e.display.input.reset(),N&&setTimeout(function(){return e.display.input.reset(!0)},20)),e.display.input.receivedFocus()),On(e))}function Pr(e,t){e.state.delayingBlurEvent||(e.state.focused&&(C(e,"blur",e,t),e.state.focused=!1,Te(e.display.wrapper,"CodeMirror-focused")),clearInterval(e.display.blinker),setTimeout(function(){e.state.focused||(e.display.shift=!1)},150))}function Gi(e){for(var t=e.display,i=t.lineDiv.offsetTop,r=Math.max(0,t.scroller.getBoundingClientRect().top),n=t.lineDiv.getBoundingClientRect().top,a=0,o=0;o.005||E<-.005)&&(ne.display.sizerWidth){var q=Math.ceil(v/zr(e.display));q>e.display.maxLineLength&&(e.display.maxLineLength=q,e.display.maxLine=u.line,e.display.maxLineChanged=!0)}}}Math.abs(a)>2&&(t.scroller.scrollTop+=a)}function Va(e){if(e.widgets)for(var t=0;t=o&&(a=br(t,ir(we(t,s))-e.wrapper.clientHeight),o=s)}return{from:a,to:Math.max(o,a+1)}}function Jl(e,t){if(!ee(e,"scrollCursorIntoView")){var i=e.display,r=i.sizer.getBoundingClientRect(),n=null,a=i.wrapper.ownerDocument;if(t.top+r.top<0?n=!0:t.bottom+r.top>(a.defaultView.innerHeight||a.documentElement.clientHeight)&&(n=!1),n!=null&&!Ee){var o=J("div","\u200B",null,`position: absolute; + top: `+(t.top-i.viewOffset-Pi(e.display))+`px; + height: `+(t.bottom-t.top+$t(e)+i.barHeight)+`px; + left: `+t.left+"px; width: "+Math.max(2,t.right-t.left)+"px;");e.display.lineSpace.appendChild(o),o.scrollIntoView(n),e.display.lineSpace.removeChild(o)}}}function $l(e,t,i,r){r==null&&(r=0);var n;!e.options.lineWrapping&&t==i&&(i=t.sticky=="before"?re(t.line,t.ch+1,"before"):t,t=t.ch?re(t.line,t.sticky=="before"?t.ch-1:t.ch,"after"):t);for(var a=0;a<5;a++){var o=!1,u=Xt(e,t),s=!i||i==t?u:Xt(e,i);n={left:Math.min(u.left,s.left),top:Math.min(u.top,s.top)-r,right:Math.max(u.left,s.left),bottom:Math.max(u.bottom,s.bottom)+r};var f=Rn(e,n),v=e.doc.scrollTop,x=e.doc.scrollLeft;if(f.scrollTop!=null&&(fi(e,f.scrollTop),Math.abs(e.doc.scrollTop-v)>1&&(o=!0)),f.scrollLeft!=null&&(Fr(e,f.scrollLeft),Math.abs(e.doc.scrollLeft-x)>1&&(o=!0)),!o)break}return n}function Vl(e,t){var i=Rn(e,t);i.scrollTop!=null&&fi(e,i.scrollTop),i.scrollLeft!=null&&Fr(e,i.scrollLeft)}function Rn(e,t){var i=e.display,r=Rr(e.display);t.top<0&&(t.top=0);var n=e.curOp&&e.curOp.scrollTop!=null?e.curOp.scrollTop:i.scroller.scrollTop,a=Sn(e),o={};t.bottom-t.top>a&&(t.bottom=t.top+a);var u=e.doc.height+wn(i),s=t.topu-r;if(t.topn+a){var v=Math.min(t.top,(f?u:t.bottom)-a);v!=n&&(o.scrollTop=v)}var x=e.options.fixedGutter?0:i.gutters.offsetWidth,M=e.curOp&&e.curOp.scrollLeft!=null?e.curOp.scrollLeft:i.scroller.scrollLeft-x,E=Cr(e)-i.gutters.offsetWidth,z=t.right-t.left>E;return z&&(t.right=t.left+E),t.left<10?o.scrollLeft=0:t.leftE+M-3&&(o.scrollLeft=t.right+(z?0:10)-E),o}function zn(e,t){t!=null&&(Xi(e),e.curOp.scrollTop=(e.curOp.scrollTop==null?e.doc.scrollTop:e.curOp.scrollTop)+t)}function Wr(e){Xi(e);var t=e.getCursor();e.curOp.scrollToPos={from:t,to:t,margin:e.options.cursorScrollMargin}}function si(e,t,i){(t!=null||i!=null)&&Xi(e),t!=null&&(e.curOp.scrollLeft=t),i!=null&&(e.curOp.scrollTop=i)}function eu(e,t){Xi(e),e.curOp.scrollToPos=t}function Xi(e){var t=e.curOp.scrollToPos;if(t){e.curOp.scrollToPos=null;var i=Ka(e,t.from),r=Ka(e,t.to);eo(e,i,r,t.margin)}}function eo(e,t,i,r){var n=Rn(e,{left:Math.min(t.left,i.left),top:Math.min(t.top,i.top)-r,right:Math.max(t.right,i.right),bottom:Math.max(t.bottom,i.bottom)+r});si(e,n.scrollLeft,n.scrollTop)}function fi(e,t){Math.abs(e.doc.scrollTop-t)<2||(W||Wn(e,{top:t}),to(e,t,!0),W&&Wn(e),di(e,100))}function to(e,t,i){t=Math.max(0,Math.min(e.display.scroller.scrollHeight-e.display.scroller.clientHeight,t)),!(e.display.scroller.scrollTop==t&&!i)&&(e.doc.scrollTop=t,e.display.scrollbars.setScrollTop(t),e.display.scroller.scrollTop!=t&&(e.display.scroller.scrollTop=t))}function Fr(e,t,i,r){t=Math.max(0,Math.min(t,e.display.scroller.scrollWidth-e.display.scroller.clientWidth)),!((i?t==e.doc.scrollLeft:Math.abs(e.doc.scrollLeft-t)<2)&&!r)&&(e.doc.scrollLeft=t,oo(e),e.display.scroller.scrollLeft!=t&&(e.display.scroller.scrollLeft=t),e.display.scrollbars.setScrollLeft(t))}function ci(e){var t=e.display,i=t.gutters.offsetWidth,r=Math.round(e.doc.height+wn(e.display));return{clientHeight:t.scroller.clientHeight,viewHeight:t.wrapper.clientHeight,scrollWidth:t.scroller.scrollWidth,clientWidth:t.scroller.clientWidth,viewWidth:t.wrapper.clientWidth,barLeft:e.options.fixedGutter?i:0,docHeight:r,scrollHeight:r+$t(e)+t.barHeight,nativeBarWidth:t.nativeBarWidth,gutterWidth:i}}var Ar=function(e,t,i){this.cm=i;var r=this.vert=J("div",[J("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),n=this.horiz=J("div",[J("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");r.tabIndex=n.tabIndex=-1,e(r),e(n),S(r,"scroll",function(){r.clientHeight&&t(r.scrollTop,"vertical")}),S(n,"scroll",function(){n.clientWidth&&t(n.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,L&&A<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};Ar.prototype.update=function(e){var t=e.scrollWidth>e.clientWidth+1,i=e.scrollHeight>e.clientHeight+1,r=e.nativeBarWidth;if(i){this.vert.style.display="block",this.vert.style.bottom=t?r+"px":"0";var n=e.viewHeight-(t?r:0);this.vert.firstChild.style.height=Math.max(0,e.scrollHeight-e.clientHeight+n)+"px"}else this.vert.scrollTop=0,this.vert.style.display="",this.vert.firstChild.style.height="0";if(t){this.horiz.style.display="block",this.horiz.style.right=i?r+"px":"0",this.horiz.style.left=e.barLeft+"px";var a=e.viewWidth-e.barLeft-(i?r:0);this.horiz.firstChild.style.width=Math.max(0,e.scrollWidth-e.clientWidth+a)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&e.clientHeight>0&&(r==0&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:i?r:0,bottom:t?r:0}},Ar.prototype.setScrollLeft=function(e){this.horiz.scrollLeft!=e&&(this.horiz.scrollLeft=e),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},Ar.prototype.setScrollTop=function(e){this.vert.scrollTop!=e&&(this.vert.scrollTop=e),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},Ar.prototype.zeroWidthHack=function(){var e=U&&!pe?"12px":"18px";this.horiz.style.height=this.vert.style.width=e,this.horiz.style.visibility=this.vert.style.visibility="hidden",this.disableHoriz=new Qe,this.disableVert=new Qe},Ar.prototype.enableZeroWidthBar=function(e,t,i){e.style.visibility="";function r(){var n=e.getBoundingClientRect(),a=i=="vert"?document.elementFromPoint(n.right-1,(n.top+n.bottom)/2):document.elementFromPoint((n.right+n.left)/2,n.bottom-1);a!=e?e.style.visibility="hidden":t.set(1e3,r)}t.set(1e3,r)},Ar.prototype.clear=function(){var e=this.horiz.parentNode;e.removeChild(this.horiz),e.removeChild(this.vert)};var hi=function(){};hi.prototype.update=function(){return{bottom:0,right:0}},hi.prototype.setScrollLeft=function(){},hi.prototype.setScrollTop=function(){},hi.prototype.clear=function(){};function Ur(e,t){t||(t=ci(e));var i=e.display.barWidth,r=e.display.barHeight;ro(e,t);for(var n=0;n<4&&i!=e.display.barWidth||r!=e.display.barHeight;n++)i!=e.display.barWidth&&e.options.lineWrapping&&Gi(e),ro(e,ci(e)),i=e.display.barWidth,r=e.display.barHeight}function ro(e,t){var i=e.display,r=i.scrollbars.update(t);i.sizer.style.paddingRight=(i.barWidth=r.right)+"px",i.sizer.style.paddingBottom=(i.barHeight=r.bottom)+"px",i.heightForcer.style.borderBottom=r.bottom+"px solid transparent",r.right&&r.bottom?(i.scrollbarFiller.style.display="block",i.scrollbarFiller.style.height=r.bottom+"px",i.scrollbarFiller.style.width=r.right+"px"):i.scrollbarFiller.style.display="",r.bottom&&e.options.coverGutterNextToScrollbar&&e.options.fixedGutter?(i.gutterFiller.style.display="block",i.gutterFiller.style.height=r.bottom+"px",i.gutterFiller.style.width=t.gutterWidth+"px"):i.gutterFiller.style.display=""}var io={native:Ar,null:hi};function no(e){e.display.scrollbars&&(e.display.scrollbars.clear(),e.display.scrollbars.addClass&&Te(e.display.wrapper,e.display.scrollbars.addClass)),e.display.scrollbars=new io[e.options.scrollbarStyle](function(t){e.display.wrapper.insertBefore(t,e.display.scrollbarFiller),S(t,"mousedown",function(){e.state.focused&&setTimeout(function(){return e.display.input.focus()},0)}),t.setAttribute("cm-not-content","true")},function(t,i){i=="horizontal"?Fr(e,t):fi(e,t)},e),e.display.scrollbars.addClass&&Ce(e.display.wrapper,e.display.scrollbars.addClass)}var tu=0;function Er(e){e.curOp={cm:e,viewChanged:!1,startHeight:e.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++tu,markArrays:null},Ml(e.curOp)}function Lr(e){var t=e.curOp;t&&Il(t,function(i){for(var r=0;r=i.viewTo)||i.maxLineChanged&&t.options.lineWrapping,e.update=e.mustUpdate&&new Yi(t,e.mustUpdate&&{top:e.scrollTop,ensure:e.scrollToPos},e.forceUpdate)}function nu(e){e.updatedDisplay=e.mustUpdate&&Pn(e.cm,e.update)}function au(e){var t=e.cm,i=t.display;e.updatedDisplay&&Gi(t),e.barMeasure=ci(t),i.maxLineChanged&&!t.options.lineWrapping&&(e.adjustWidthTo=Ra(t,i.maxLine,i.maxLine.text.length).left+3,t.display.sizerWidth=e.adjustWidthTo,e.barMeasure.scrollWidth=Math.max(i.scroller.clientWidth,i.sizer.offsetLeft+e.adjustWidthTo+$t(t)+t.display.barWidth),e.maxScrollLeft=Math.max(0,i.sizer.offsetLeft+e.adjustWidthTo-Cr(t))),(e.updatedDisplay||e.selectionChanged)&&(e.preparedSelection=i.input.prepareSelection())}function ou(e){var t=e.cm;e.adjustWidthTo!=null&&(t.display.sizer.style.minWidth=e.adjustWidthTo+"px",e.maxScrollLeft=e.display.viewTo)){var i=+new Date+e.options.workTime,r=ri(e,t.highlightFrontier),n=[];t.iter(r.line,Math.min(t.first+t.size,e.display.viewTo+500),function(a){if(r.line>=e.display.viewFrom){var o=a.styles,u=a.text.length>e.options.maxHighlightLength?tr(t.mode,r.state):null,s=ha(e,a,r,!0);u&&(r.state=u),a.styles=s.styles;var f=a.styleClasses,v=s.classes;v?a.styleClasses=v:f&&(a.styleClasses=null);for(var x=!o||o.length!=a.styles.length||f!=v&&(!f||!v||f.bgClass!=v.bgClass||f.textClass!=v.textClass),M=0;!x&&Mi)return di(e,e.options.workDelay),!0}),t.highlightFrontier=r.line,t.modeFrontier=Math.max(t.modeFrontier,r.line),n.length&&_t(e,function(){for(var a=0;a=i.viewFrom&&t.visible.to<=i.viewTo&&(i.updateLineNumbers==null||i.updateLineNumbers>=i.viewTo)&&i.renderedView==i.view&&Qa(e)==0)return!1;lo(e)&&(cr(e),t.dims=Bn(e));var n=r.first+r.size,a=Math.max(t.visible.from-e.options.viewportMargin,r.first),o=Math.min(n,t.visible.to+e.options.viewportMargin);i.viewFromo&&i.viewTo-o<20&&(o=Math.min(n,i.viewTo)),rr&&(a=Dn(e.doc,a),o=Fa(e.doc,o));var u=a!=i.viewFrom||o!=i.viewTo||i.lastWrapHeight!=t.wrapperHeight||i.lastWrapWidth!=t.wrapperWidth;Zl(e,a,o),i.viewOffset=ir(we(e.doc,i.viewFrom)),e.display.mover.style.top=i.viewOffset+"px";var s=Qa(e);if(!u&&s==0&&!t.force&&i.renderedView==i.view&&(i.updateLineNumbers==null||i.updateLineNumbers>=i.viewTo))return!1;var f=fu(e);return s>4&&(i.lineDiv.style.display="none"),hu(e,i.updateLineNumbers,t.dims),s>4&&(i.lineDiv.style.display=""),i.renderedView=i.view,cu(f),Z(i.cursorDiv),Z(i.selectionDiv),i.gutters.style.height=i.sizer.style.minHeight=0,u&&(i.lastWrapHeight=t.wrapperHeight,i.lastWrapWidth=t.wrapperWidth,di(e,400)),i.updateLineNumbers=null,!0}function ao(e,t){for(var i=t.viewport,r=!0;;r=!1){if(!r||!e.options.lineWrapping||t.oldDisplayWidth==Cr(e)){if(i&&i.top!=null&&(i={top:Math.min(e.doc.height+wn(e.display)-Sn(e),i.top)}),t.visible=Ki(e.display,e.doc,i),t.visible.from>=e.display.viewFrom&&t.visible.to<=e.display.viewTo)break}else r&&(t.visible=Ki(e.display,e.doc,i));if(!Pn(e,t))break;Gi(e);var n=ci(e);ui(e),Ur(e,n),jn(e,n),t.force=!1}t.signal(e,"update",e),(e.display.viewFrom!=e.display.reportedViewFrom||e.display.viewTo!=e.display.reportedViewTo)&&(t.signal(e,"viewportChange",e,e.display.viewFrom,e.display.viewTo),e.display.reportedViewFrom=e.display.viewFrom,e.display.reportedViewTo=e.display.viewTo)}function Wn(e,t){var i=new Yi(e,t);if(Pn(e,i)){Gi(e),ao(e,i);var r=ci(e);ui(e),Ur(e,r),jn(e,r),i.finish()}}function hu(e,t,i){var r=e.display,n=e.options.lineNumbers,a=r.lineDiv,o=a.firstChild;function u(z){var q=z.nextSibling;return N&&U&&e.display.currentWheelTarget==z?z.style.display="none":z.parentNode.removeChild(z),q}for(var s=r.view,f=r.viewFrom,v=0;v-1&&(E=!1),Ba(e,x,f,i)),E&&(Z(x.lineNumber),x.lineNumber.appendChild(document.createTextNode(dn(e.options,f)))),o=x.node.nextSibling}f+=x.size}for(;o;)o=u(o)}function Un(e){var t=e.gutters.offsetWidth;e.sizer.style.marginLeft=t+"px",dt(e,"gutterChanged",e)}function jn(e,t){e.display.sizer.style.minHeight=t.docHeight+"px",e.display.heightForcer.style.top=t.docHeight+"px",e.display.gutters.style.height=t.docHeight+e.display.barHeight+$t(e)+"px"}function oo(e){var t=e.display,i=t.view;if(!(!t.alignWidgets&&(!t.gutters.firstChild||!e.options.fixedGutter))){for(var r=Mn(t)-t.scroller.scrollLeft+e.doc.scrollLeft,n=t.gutters.offsetWidth,a=r+"px",o=0;o=105&&(n.wrapper.style.clipPath="inset(0px)"),n.wrapper.setAttribute("translate","no"),L&&A<8&&(n.gutters.style.zIndex=-1,n.scroller.style.paddingRight=0),!N&&!(W&&H)&&(n.scroller.draggable=!0),e&&(e.appendChild?e.appendChild(n.wrapper):e(n.wrapper)),n.viewFrom=n.viewTo=t.first,n.reportedViewFrom=n.reportedViewTo=t.first,n.view=[],n.renderedView=null,n.externalMeasured=null,n.viewOffset=0,n.lastWrapHeight=n.lastWrapWidth=0,n.updateLineNumbers=null,n.nativeBarWidth=n.barHeight=n.barWidth=0,n.scrollbarsClipped=!1,n.lineNumWidth=n.lineNumInnerWidth=n.lineNumChars=null,n.alignWidgets=!1,n.cachedCharWidth=n.cachedTextHeight=n.cachedPaddingH=null,n.maxLine=null,n.maxLineLength=0,n.maxLineChanged=!1,n.wheelDX=n.wheelDY=n.wheelStartX=n.wheelStartY=null,n.shift=!1,n.selForContextMenu=null,n.activeTouch=null,n.gutterSpecs=qn(r.gutters,r.lineNumbers),uo(n),i.init(n)}var Zi=0,ar=null;L?ar=-.53:W?ar=15:V?ar=-.7:oe&&(ar=-1/3);function so(e){var t=e.wheelDeltaX,i=e.wheelDeltaY;return t==null&&e.detail&&e.axis==e.HORIZONTAL_AXIS&&(t=e.detail),i==null&&e.detail&&e.axis==e.VERTICAL_AXIS?i=e.detail:i==null&&(i=e.wheelDelta),{x:t,y:i}}function pu(e){var t=so(e);return t.x*=ar,t.y*=ar,t}function fo(e,t){V&&G==102&&(e.display.chromeScrollHack==null?e.display.sizer.style.pointerEvents="none":clearTimeout(e.display.chromeScrollHack),e.display.chromeScrollHack=setTimeout(function(){e.display.chromeScrollHack=null,e.display.sizer.style.pointerEvents=""},100));var i=so(t),r=i.x,n=i.y,a=ar;t.deltaMode===0&&(r=t.deltaX,n=t.deltaY,a=1);var o=e.display,u=o.scroller,s=u.scrollWidth>u.clientWidth,f=u.scrollHeight>u.clientHeight;if(r&&s||n&&f){if(n&&U&&N){e:for(var v=t.target,x=o.view;v!=u;v=v.parentNode)for(var M=0;M=0&&Me(e,r.to())<=0)return i}return-1};var Ke=function(e,t){this.anchor=e,this.head=t};Ke.prototype.from=function(){return Mi(this.anchor,this.head)},Ke.prototype.to=function(){return Bi(this.anchor,this.head)},Ke.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch};function Yt(e,t,i){var r=e&&e.options.selectionsMayTouch,n=t[i];t.sort(function(M,E){return Me(M.from(),E.from())}),i=je(t,n);for(var a=1;a0:s>=0){var f=Mi(u.from(),o.from()),v=Bi(u.to(),o.to()),x=u.empty()?o.from()==o.head:u.from()==u.head;a<=i&&--i,t.splice(--a,2,new Ke(x?v:f,x?f:v))}}return new Pt(t,i)}function hr(e,t){return new Pt([new Ke(e,t||e)],0)}function dr(e){return e.text?re(e.from.line+e.text.length-1,Oe(e.text).length+(e.text.length==1?e.from.ch:0)):e.to}function co(e,t){if(Me(e,t.from)<0)return e;if(Me(e,t.to)<=0)return dr(t);var i=e.line+t.text.length-(t.to.line-t.from.line)-1,r=e.ch;return e.line==t.to.line&&(r+=dr(t).ch-t.to.ch),re(i,r)}function Gn(e,t){for(var i=[],r=0;r1&&e.remove(u.line+1,z-1),e.insert(u.line+1,se)}dt(e,"change",e,t)}function pr(e,t,i){function r(n,a,o){if(n.linked)for(var u=0;u1&&!e.done[e.done.length-2].ranges)return e.done.pop(),Oe(e.done)}function xo(e,t,i,r){var n=e.history;n.undone.length=0;var a=+new Date,o,u;if((n.lastOp==r||n.lastOrigin==t.origin&&t.origin&&(t.origin.charAt(0)=="+"&&n.lastModTime>a-(e.cm?e.cm.options.historyEventDelay:500)||t.origin.charAt(0)=="*"))&&(o=mu(n,n.lastOp==r)))u=Oe(o.changes),Me(t.from,t.to)==0&&Me(t.from,u.to)==0?u.to=dr(t):o.changes.push(Yn(e,t));else{var s=Oe(n.done);for((!s||!s.ranges)&&Ji(e.sel,n.done),o={changes:[Yn(e,t)],generation:n.generation},n.done.push(o);n.done.length>n.undoDepth;)n.done.shift(),n.done[0].ranges||n.done.shift()}n.done.push(i),n.generation=++n.maxGeneration,n.lastModTime=n.lastSelTime=a,n.lastOp=n.lastSelOp=r,n.lastOrigin=n.lastSelOrigin=t.origin,u||C(e,"historyAdded")}function xu(e,t,i,r){var n=t.charAt(0);return n=="*"||n=="+"&&i.ranges.length==r.ranges.length&&i.somethingSelected()==r.somethingSelected()&&new Date-e.history.lastSelTime<=(e.cm?e.cm.options.historyEventDelay:500)}function yu(e,t,i,r){var n=e.history,a=r&&r.origin;i==n.lastSelOp||a&&n.lastSelOrigin==a&&(n.lastModTime==n.lastSelTime&&n.lastOrigin==a||xu(e,a,Oe(n.done),t))?n.done[n.done.length-1]=t:Ji(t,n.done),n.lastSelTime=+new Date,n.lastSelOrigin=a,n.lastSelOp=i,r&&r.clearRedo!==!1&&mo(n.undone)}function Ji(e,t){var i=Oe(t);i&&i.ranges&&i.equals(e)||t.push(e)}function yo(e,t,i,r){var n=t["spans_"+e.id],a=0;e.iter(Math.max(e.first,i),Math.min(e.first+e.size,r),function(o){o.markedSpans&&((n||(n=t["spans_"+e.id]={}))[a]=o.markedSpans),++a})}function Du(e){if(!e)return null;for(var t,i=0;i-1&&(Oe(u)[x]=f[x],delete f[x])}}return r}function Zn(e,t,i,r){if(r){var n=e.anchor;if(i){var a=Me(t,n)<0;a!=Me(i,n)<0?(n=t,t=i):a!=Me(t,i)<0&&(t=i)}return new Ke(n,t)}else return new Ke(i||t,t)}function $i(e,t,i,r,n){n==null&&(n=e.cm&&(e.cm.display.shift||e.extend)),bt(e,new Pt([Zn(e.sel.primary(),t,i,n)],0),r)}function bo(e,t,i){for(var r=[],n=e.cm&&(e.cm.display.shift||e.extend),a=0;a=t.ch:u.to>t.ch))){if(n&&(C(s,"beforeCursorEnter"),s.explicitlyCleared))if(a.markedSpans){--o;continue}else break;if(!s.atomic)continue;if(i){var x=s.find(r<0?1:-1),M=void 0;if((r<0?v:f)&&(x=Ao(e,x,-r,x&&x.line==t.line?a:null)),x&&x.line==t.line&&(M=Me(x,i))&&(r<0?M<0:M>0))return qr(e,x,t,r,n)}var E=s.find(r<0?-1:1);return(r<0?f:v)&&(E=Ao(e,E,r,E.line==t.line?a:null)),E?qr(e,E,t,r,n):null}}return t}function en(e,t,i,r,n){var a=r||1,o=qr(e,t,i,a,n)||!n&&qr(e,t,i,a,!0)||qr(e,t,i,-a,n)||!n&&qr(e,t,i,-a,!0);return o||(e.cantEdit=!0,re(e.first,0))}function Ao(e,t,i,r){return i<0&&t.ch==0?t.line>e.first?Ne(e,re(t.line-1)):null:i>0&&t.ch==(r||we(e,t.line)).text.length?t.line=0;--n)To(e,{from:r[n].from,to:r[n].to,text:n?[""]:t.text,origin:t.origin});else To(e,t)}}function To(e,t){if(!(t.text.length==1&&t.text[0]==""&&Me(t.from,t.to)==0)){var i=Gn(e,t);xo(e,t,i,e.cm?e.cm.curOp.id:NaN),vi(e,t,i,xn(e,t));var r=[];pr(e,function(n,a){!a&&je(r,n.history)==-1&&(Io(n.history,t),r.push(n.history)),vi(n,t,null,xn(n,t))})}}function tn(e,t,i){var r=e.cm&&e.cm.state.suppressEdits;if(!(r&&!i)){for(var n=e.history,a,o=e.sel,u=t=="undo"?n.done:n.undone,s=t=="undo"?n.undone:n.done,f=0;f=0;--E){var z=M(E);if(z)return z.v}}}}function Bo(e,t){if(t!=0&&(e.first+=t,e.sel=new Pt(It(e.sel.ranges,function(n){return new Ke(re(n.anchor.line+t,n.anchor.ch),re(n.head.line+t,n.head.ch))}),e.sel.primIndex),e.cm)){Et(e.cm,e.first,e.first-t,t);for(var i=e.cm.display,r=i.viewFrom;re.lastLine())){if(t.from.linea&&(t={from:t.from,to:re(a,we(e,a).text.length),text:[t.text[0]],origin:t.origin}),t.removed=Dr(e,t.from,t.to),i||(i=Gn(e,t)),e.cm?ku(e.cm,t,r):Xn(e,t,r),Vi(e,i,Ie),e.cantEdit&&en(e,re(e.firstLine(),0))&&(e.cantEdit=!1)}}function ku(e,t,i){var r=e.doc,n=e.display,a=t.from,o=t.to,u=!1,s=a.line;e.options.lineWrapping||(s=Xe(Kt(we(r,a.line))),r.iter(s,o.line+1,function(E){if(E==n.maxLine)return u=!0,!0})),r.sel.contains(t.from,t.to)>-1&&he(e),Xn(r,t,i,Za(e)),e.options.lineWrapping||(r.iter(s,a.line+t.text.length,function(E){var z=Ri(E);z>n.maxLineLength&&(n.maxLine=E,n.maxLineLength=z,n.maxLineChanged=!0,u=!1)}),u&&(e.curOp.updateMaxLine=!0)),hl(r,a.line),di(e,400);var f=t.text.length-(o.line-a.line)-1;t.full?Et(e):a.line==o.line&&t.text.length==1&&!po(e.doc,t)?fr(e,a.line,"text"):Et(e,a.line,o.line+1,f);var v=ke(e,"changes"),x=ke(e,"change");if(x||v){var M={from:a,to:o,text:t.text,removed:t.removed,origin:t.origin};x&&dt(e,"change",e,M),v&&(e.curOp.changeObjs||(e.curOp.changeObjs=[])).push(M)}e.display.selForContextMenu=null}function Kr(e,t,i,r,n){var a;r||(r=i),Me(r,i)<0&&(a=[r,i],i=a[0],r=a[1]),typeof t=="string"&&(t=e.splitLines(t)),Gr(e,{from:i,to:r,text:t,origin:n})}function Mo(e,t,i,r){i1||!(this.children[0]instanceof xi))){var u=[];this.collapse(u),this.children=[new xi(u)],this.children[0].parent=this}},collapse:function(e){for(var t=0;t50){for(var o=n.lines.length%25+25,u=o;u10);e.parent.maybeSpill()}},iterN:function(e,t,i){for(var r=0;re.display.maxLineLength&&(e.display.maxLine=f,e.display.maxLineLength=v,e.display.maxLineChanged=!0)}r!=null&&e&&this.collapsed&&Et(e,r,n+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,e&&So(e.doc)),e&&dt(e,"markerCleared",e,this,r,n),t&&Lr(e),this.parent&&this.parent.clear()}},gr.prototype.find=function(e,t){e==null&&this.type=="bookmark"&&(e=1);for(var i,r,n=0;n0||o==0&&a.clearWhenEmpty!==!1)return a;if(a.replacedWith&&(a.collapsed=!0,a.widgetNode=Re("span",[a.replacedWith],"CodeMirror-widget"),r.handleMouseEvents||a.widgetNode.setAttribute("cm-ignore-events","true"),r.insertLeft&&(a.widgetNode.insertLeft=!0)),a.collapsed){if(Sa(e,t.line,t,i,a)||t.line!=i.line&&Sa(e,i.line,t,i,a))throw new Error("Inserting collapsed marker partially overlapping an existing one");pl()}a.addToHistory&&xo(e,{from:t,to:i,origin:"markText"},e.sel,NaN);var u=t.line,s=e.cm,f;if(e.iter(u,i.line+1,function(x){s&&a.collapsed&&!s.options.lineWrapping&&Kt(x)==s.display.maxLine&&(f=!0),a.collapsed&&u!=t.line&&Qt(x,0),vl(x,new Ii(a,u==t.line?t.ch:null,u==i.line?i.ch:null),e.cm&&e.cm.curOp),++u}),a.collapsed&&e.iter(t.line,i.line+1,function(x){sr(e,x)&&Qt(x,0)}),a.clearOnEnter&&S(a,"beforeCursorEnter",function(){return a.clear()}),a.readOnly&&(dl(),(e.history.done.length||e.history.undone.length)&&e.clearHistory()),a.collapsed&&(a.id=++Ho,a.atomic=!0),s){if(f&&(s.curOp.updateMaxLine=!0),a.collapsed)Et(s,t.line,i.line+1);else if(a.className||a.startStyle||a.endStyle||a.css||a.attributes||a.title)for(var v=t.line;v<=i.line;v++)fr(s,v,"text");a.atomic&&So(s.doc),dt(s,"markerAdded",s,a)}return a}var bi=function(e,t){this.markers=e,this.primary=t;for(var i=0;i=0;s--)Gr(this,r[s]);u?ko(this,u):this.cm&&Wr(this.cm)}),undo:gt(function(){tn(this,"undo")}),redo:gt(function(){tn(this,"redo")}),undoSelection:gt(function(){tn(this,"undo",!0)}),redoSelection:gt(function(){tn(this,"redo",!0)}),setExtending:function(e){this.extend=e},getExtending:function(){return this.extend},historySize:function(){for(var e=this.history,t=0,i=0,r=0;r=e.ch)&&t.push(n.marker.parent||n.marker)}return t},findMarks:function(e,t,i){e=Ne(this,e),t=Ne(this,t);var r=[],n=e.line;return this.iter(e.line,t.line+1,function(a){var o=a.markedSpans;if(o)for(var u=0;u=s.to||s.from==null&&n!=e.line||s.from!=null&&n==t.line&&s.from>=t.ch)&&(!i||i(s.marker))&&r.push(s.marker.parent||s.marker)}++n}),r},getAllMarks:function(){var e=[];return this.iter(function(t){var i=t.markedSpans;if(i)for(var r=0;re)return t=e,!0;e-=a,++i}),Ne(this,re(i,t))},indexFromPos:function(e){e=Ne(this,e);var t=e.ch;if(e.linet&&(t=e.from),e.to!=null&&e.to-1){t.state.draggingText(e),setTimeout(function(){return t.display.input.focus()},20);return}try{var v=e.dataTransfer.getData("Text");if(v){var x;if(t.state.draggingText&&!t.state.draggingText.copy&&(x=t.listSelections()),Vi(t.doc,hr(i,i)),x)for(var M=0;M=0;u--)Kr(e.doc,"",r[u].from,r[u].to,"+delete");Wr(e)})}function Jn(e,t,i){var r=p(e.text,t+i,i);return r<0||r>e.text.length?null:r}function $n(e,t,i){var r=Jn(e,t.ch,i);return r==null?null:new re(t.line,r,i<0?"after":"before")}function Vn(e,t,i,r,n){if(e){t.doc.direction=="rtl"&&(n=-n);var a=y(i,t.doc.direction);if(a){var o=n<0?Oe(a):a[0],u=n<0==(o.level==1),s=u?"after":"before",f;if(o.level>0||t.doc.direction=="rtl"){var v=_r(t,i);f=n<0?i.text.length-1:0;var x=Vt(t,v,f).top;f=g(function(M){return Vt(t,v,M).top==x},n<0==(o.level==1)?o.from:o.to-1,f),s=="before"&&(f=Jn(i,f,1))}else f=n<0?o.to:o.from;return new re(r,f,s)}}return new re(r,n<0?i.text.length:0,n<0?"before":"after")}function _u(e,t,i,r){var n=y(t,e.doc.direction);if(!n)return $n(t,i,r);i.ch>=t.text.length?(i.ch=t.text.length,i.sticky="before"):i.ch<=0&&(i.ch=0,i.sticky="after");var a=d(n,i.ch,i.sticky),o=n[a];if(e.doc.direction=="ltr"&&o.level%2==0&&(r>0?o.to>i.ch:o.from=o.from&&M>=v.begin)){var E=x?"before":"after";return new re(i.line,M,E)}}var z=function(se,de,fe){for(var ve=function(Ze,vt){return vt?new re(i.line,u(Ze,1),"before"):new re(i.line,Ze,"after")};se>=0&&se0==(Fe.level!=1),He=Se?fe.begin:u(fe.end,-1);if(Fe.from<=He&&He0?v.end:u(v.begin,-1);return ae!=null&&!(r>0&&ae==t.text.length)&&(q=z(r>0?0:n.length-1,r,f(ae)),q)?q:null}var wi={selectAll:Eo,singleSelection:function(e){return e.setSelection(e.getCursor("anchor"),e.getCursor("head"),Ie)},killLine:function(e){return Zr(e,function(t){if(t.empty()){var i=we(e.doc,t.head.line).text.length;return t.head.ch==i&&t.head.line0)n=new re(n.line,n.ch+1),e.replaceRange(a.charAt(n.ch-1)+a.charAt(n.ch-2),re(n.line,n.ch-2),n,"+transpose");else if(n.line>e.doc.first){var o=we(e.doc,n.line-1).text;o&&(n=new re(n.line,1),e.replaceRange(a.charAt(0)+e.doc.lineSeparator()+o.charAt(o.length-1),re(n.line-1,o.length-1),n,"+transpose"))}}i.push(new Ke(n,n))}e.setSelections(i)})},newlineAndIndent:function(e){return _t(e,function(){for(var t=e.listSelections(),i=t.length-1;i>=0;i--)e.replaceRange(e.doc.lineSeparator(),t[i].anchor,t[i].head,"+input");t=e.listSelections();for(var r=0;re&&Me(t,this.pos)==0&&i==this.button};var Fi,Ai;function qu(e,t){var i=+new Date;return Ai&&Ai.compare(i,e,t)?(Fi=Ai=null,"triple"):Fi&&Fi.compare(i,e,t)?(Ai=new ta(i,e,t),Fi=null,"double"):(Fi=new ta(i,e,t),Ai=null,"single")}function $o(e){var t=this,i=t.display;if(!(ee(t,e)||i.activeTouch&&i.input.supportsTouch())){if(i.input.ensurePolled(),i.shift=e.shiftKey,nr(i,e)){N||(i.scroller.draggable=!1,setTimeout(function(){return i.scroller.draggable=!0},100));return}if(!ra(t,e)){var r=wr(t,e),n=$e(e),a=r?qu(r,n):"single";K(t).focus(),n==1&&t.state.selectingText&&t.state.selectingText(e),!(r&&Gu(t,n,r,a,e))&&(n==1?r?Xu(t,r,a,e):ze(e)==i.scroller&&ce(e):n==2?(r&&$i(t.doc,r),setTimeout(function(){return i.input.focus()},20)):n==3&&(ie?t.display.input.onContextMenu(e):Hn(t)))}}}function Gu(e,t,i,r,n){var a="Click";return r=="double"?a="Double"+a:r=="triple"&&(a="Triple"+a),a=(t==1?"Left":t==2?"Middle":"Right")+a,Si(e,jo(a,n),n,function(o){if(typeof o=="string"&&(o=wi[o]),!o)return!1;var u=!1;try{e.isReadOnly()&&(e.state.suppressEdits=!0),u=o(e,i)!=lt}finally{e.state.suppressEdits=!1}return u})}function Ku(e,t,i){var r=e.getOption("configureMouse"),n=r?r(e,t,i):{};if(n.unit==null){var a=j?i.shiftKey&&i.metaKey:i.altKey;n.unit=a?"rectangle":t=="single"?"char":t=="double"?"word":"line"}return(n.extend==null||e.doc.extend)&&(n.extend=e.doc.extend||i.shiftKey),n.addNew==null&&(n.addNew=U?i.metaKey:i.ctrlKey),n.moveOnDrag==null&&(n.moveOnDrag=!(U?i.altKey:i.ctrlKey)),n}function Xu(e,t,i,r){L?setTimeout(ne($a,e),0):e.curOp.focus=$(k(e));var n=Ku(e,i,r),a=e.doc.sel,o;e.options.dragDrop&&Ve&&!e.isReadOnly()&&i=="single"&&(o=a.contains(t))>-1&&(Me((o=a.ranges[o]).from(),t)<0||t.xRel>0)&&(Me(o.to(),t)>0||t.xRel<0)?Yu(e,r,t,n):Zu(e,r,t,n)}function Yu(e,t,i,r){var n=e.display,a=!1,o=pt(e,function(f){N&&(n.scroller.draggable=!1),e.state.draggingText=!1,e.state.delayingBlurEvent&&(e.hasFocus()?e.state.delayingBlurEvent=!1:Hn(e)),w(n.wrapper.ownerDocument,"mouseup",o),w(n.wrapper.ownerDocument,"mousemove",u),w(n.scroller,"dragstart",s),w(n.scroller,"drop",o),a||(ce(f),r.addNew||$i(e.doc,i,null,null,r.extend),N&&!oe||L&&A==9?setTimeout(function(){n.wrapper.ownerDocument.body.focus({preventScroll:!0}),n.input.focus()},20):n.input.focus())}),u=function(f){a=a||Math.abs(t.clientX-f.clientX)+Math.abs(t.clientY-f.clientY)>=10},s=function(){return a=!0};N&&(n.scroller.draggable=!0),e.state.draggingText=o,o.copy=!r.moveOnDrag,S(n.wrapper.ownerDocument,"mouseup",o),S(n.wrapper.ownerDocument,"mousemove",u),S(n.scroller,"dragstart",s),S(n.scroller,"drop",o),e.state.delayingBlurEvent=!0,setTimeout(function(){return n.input.focus()},20),n.scroller.dragDrop&&n.scroller.dragDrop()}function Vo(e,t,i){if(i=="char")return new Ke(t,t);if(i=="word")return e.findWordAt(t);if(i=="line")return new Ke(re(t.line,0),Ne(e.doc,re(t.line+1,0)));var r=i(e,t);return new Ke(r.from,r.to)}function Zu(e,t,i,r){L&&Hn(e);var n=e.display,a=e.doc;ce(t);var o,u,s=a.sel,f=s.ranges;if(r.addNew&&!r.extend?(u=a.sel.contains(i),u>-1?o=f[u]:o=new Ke(i,i)):(o=a.sel.primary(),u=a.sel.primIndex),r.unit=="rectangle")r.addNew||(o=new Ke(i,i)),i=wr(e,t,!0,!0),u=-1;else{var v=Vo(e,i,r.unit);r.extend?o=Zn(o,v.anchor,v.head,r.extend):o=v}r.addNew?u==-1?(u=f.length,bt(a,Yt(e,f.concat([o]),u),{scroll:!1,origin:"*mouse"})):f.length>1&&f[u].empty()&&r.unit=="char"&&!r.extend?(bt(a,Yt(e,f.slice(0,u).concat(f.slice(u+1)),0),{scroll:!1,origin:"*mouse"}),s=a.sel):Qn(a,u,o,qe):(u=0,bt(a,new Pt([o],0),qe),s=a.sel);var x=i;function M(fe){if(Me(x,fe)!=0)if(x=fe,r.unit=="rectangle"){for(var ve=[],Fe=e.options.tabSize,Se=Ge(we(a,i.line).text,i.ch,Fe),He=Ge(we(a,fe.line).text,fe.ch,Fe),Ze=Math.min(Se,He),vt=Math.max(Se,He),tt=Math.min(i.line,fe.line),Rt=Math.min(e.lastLine(),Math.max(i.line,fe.line));tt<=Rt;tt++){var Tt=we(a,tt).text,st=jt(Tt,Ze,Fe);Ze==vt?ve.push(new Ke(re(tt,st),re(tt,st))):Tt.length>st&&ve.push(new Ke(re(tt,st),re(tt,jt(Tt,vt,Fe))))}ve.length||ve.push(new Ke(i,i)),bt(a,Yt(e,s.ranges.slice(0,u).concat(ve),u),{origin:"*mouse",scroll:!1}),e.scrollIntoView(fe)}else{var Bt=o,Dt=Vo(e,fe,r.unit),ht=Bt.anchor,ft;Me(Dt.anchor,ht)>0?(ft=Dt.head,ht=Mi(Bt.from(),Dt.anchor)):(ft=Dt.anchor,ht=Bi(Bt.to(),Dt.head));var it=s.ranges.slice(0);it[u]=Qu(e,new Ke(Ne(a,ht),ft)),bt(a,Yt(e,it,u),qe)}}var E=n.wrapper.getBoundingClientRect(),z=0;function q(fe){var ve=++z,Fe=wr(e,fe,!0,r.unit=="rectangle");if(Fe)if(Me(Fe,x)!=0){e.curOp.focus=$(k(e)),M(Fe);var Se=Ki(n,a);(Fe.line>=Se.to||Fe.lineE.bottom?20:0;He&&setTimeout(pt(e,function(){z==ve&&(n.scroller.scrollTop+=He,q(fe))}),50)}}function ae(fe){e.state.selectingText=!1,z=1/0,fe&&(ce(fe),n.input.focus()),w(n.wrapper.ownerDocument,"mousemove",se),w(n.wrapper.ownerDocument,"mouseup",de),a.history.lastSelOrigin=null}var se=pt(e,function(fe){fe.buttons===0||!$e(fe)?ae(fe):q(fe)}),de=pt(e,ae);e.state.selectingText=de,S(n.wrapper.ownerDocument,"mousemove",se),S(n.wrapper.ownerDocument,"mouseup",de)}function Qu(e,t){var i=t.anchor,r=t.head,n=we(e.doc,i.line);if(Me(i,r)==0&&i.sticky==r.sticky)return t;var a=y(n);if(!a)return t;var o=d(a,i.ch,i.sticky),u=a[o];if(u.from!=i.ch&&u.to!=i.ch)return t;var s=o+(u.from==i.ch==(u.level!=1)?0:1);if(s==0||s==a.length)return t;var f;if(r.line!=i.line)f=(r.line-i.line)*(e.doc.direction=="ltr"?1:-1)>0;else{var v=d(a,r.ch,r.sticky),x=v-o||(r.ch-i.ch)*(u.level==1?-1:1);v==s-1||v==s?f=x<0:f=x>0}var M=a[s+(f?-1:0)],E=f==(M.level==1),z=E?M.from:M.to,q=E?"after":"before";return i.ch==z&&i.sticky==q?t:new Ke(new re(i.line,z,q),r)}function el(e,t,i,r){var n,a;if(t.touches)n=t.touches[0].clientX,a=t.touches[0].clientY;else try{n=t.clientX,a=t.clientY}catch{return!1}if(n>=Math.floor(e.display.gutters.getBoundingClientRect().right))return!1;r&&ce(t);var o=e.display,u=o.lineDiv.getBoundingClientRect();if(a>u.bottom||!ke(e,i))return Ue(t);a-=u.top-o.viewOffset;for(var s=0;s=n){var v=br(e.doc,a),x=e.display.gutterSpecs[s];return C(e,i,e,v,x.className,t),Ue(t)}}}function ra(e,t){return el(e,t,"gutterClick",!0)}function tl(e,t){nr(e.display,t)||Ju(e,t)||ee(e,t,"contextmenu")||ie||e.display.input.onContextMenu(t)}function Ju(e,t){return ke(e,"gutterContextMenu")?el(e,t,"gutterContextMenu",!1):!1}function rl(e){e.display.wrapper.className=e.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+e.options.theme.replace(/(^|\s)\s*/g," cm-s-"),li(e)}var Qr={toString:function(){return"CodeMirror.Init"}},il={},on={};function $u(e){var t=e.optionHandlers;function i(r,n,a,o){e.defaults[r]=n,a&&(t[r]=o?function(u,s,f){f!=Qr&&a(u,s,f)}:a)}e.defineOption=i,e.Init=Qr,i("value","",function(r,n){return r.setValue(n)},!0),i("mode",null,function(r,n){r.doc.modeOption=n,Kn(r)},!0),i("indentUnit",2,Kn,!0),i("indentWithTabs",!1),i("smartIndent",!0),i("tabSize",4,function(r){gi(r),li(r),Et(r)},!0),i("lineSeparator",null,function(r,n){if(r.doc.lineSep=n,!!n){var a=[],o=r.doc.first;r.doc.iter(function(s){for(var f=0;;){var v=s.text.indexOf(n,f);if(v==-1)break;f=v+n.length,a.push(re(o,v))}o++});for(var u=a.length-1;u>=0;u--)Kr(r.doc,n,a[u],re(a[u].line,a[u].ch+n.length))}}),i("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\u202d\u202e\u2066\u2067\u2069\ufeff\ufff9-\ufffc]/g,function(r,n,a){r.state.specialChars=new RegExp(n.source+(n.test(" ")?"":"| "),"g"),a!=Qr&&r.refresh()}),i("specialCharPlaceholder",Al,function(r){return r.refresh()},!0),i("electricChars",!0),i("inputStyle",H?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),i("spellcheck",!1,function(r,n){return r.getInputField().spellcheck=n},!0),i("autocorrect",!1,function(r,n){return r.getInputField().autocorrect=n},!0),i("autocapitalize",!1,function(r,n){return r.getInputField().autocapitalize=n},!0),i("rtlMoveVisually",!te),i("wholeLineUpdateBefore",!0),i("theme","default",function(r){rl(r),pi(r)},!0),i("keyMap","default",function(r,n,a){var o=nn(n),u=a!=Qr&&nn(a);u&&u.detach&&u.detach(r,o),o.attach&&o.attach(r,u||null)}),i("extraKeys",null),i("configureMouse",null),i("lineWrapping",!1,es,!0),i("gutters",[],function(r,n){r.display.gutterSpecs=qn(n,r.options.lineNumbers),pi(r)},!0),i("fixedGutter",!0,function(r,n){r.display.gutters.style.left=n?Mn(r.display)+"px":"0",r.refresh()},!0),i("coverGutterNextToScrollbar",!1,function(r){return Ur(r)},!0),i("scrollbarStyle","native",function(r){no(r),Ur(r),r.display.scrollbars.setScrollTop(r.doc.scrollTop),r.display.scrollbars.setScrollLeft(r.doc.scrollLeft)},!0),i("lineNumbers",!1,function(r,n){r.display.gutterSpecs=qn(r.options.gutters,n),pi(r)},!0),i("firstLineNumber",1,pi,!0),i("lineNumberFormatter",function(r){return r},pi,!0),i("showCursorWhenSelecting",!1,ui,!0),i("resetSelectionOnContextMenu",!0),i("lineWiseCopyCut",!0),i("pasteLinesPerSelection",!0),i("selectionsMayTouch",!1),i("readOnly",!1,function(r,n){n=="nocursor"&&(Pr(r),r.display.input.blur()),r.display.input.readOnlyChanged(n)}),i("screenReaderLabel",null,function(r,n){n=n===""?null:n,r.display.input.screenReaderLabelChanged(n)}),i("disableInput",!1,function(r,n){n||r.display.input.reset()},!0),i("dragDrop",!0,Vu),i("allowDropFileTypes",null),i("cursorBlinkRate",530),i("cursorScrollMargin",0),i("cursorHeight",1,ui,!0),i("singleCursorHeightPerLine",!0,ui,!0),i("workTime",100),i("workDelay",100),i("flattenSpans",!0,gi,!0),i("addModeClass",!1,gi,!0),i("pollInterval",100),i("undoDepth",200,function(r,n){return r.doc.history.undoDepth=n}),i("historyEventDelay",1250),i("viewportMargin",10,function(r){return r.refresh()},!0),i("maxHighlightLength",1e4,gi,!0),i("moveInputWithCursor",!0,function(r,n){n||r.display.input.resetPosition()}),i("tabindex",null,function(r,n){return r.display.input.getField().tabIndex=n||""}),i("autofocus",null),i("direction","ltr",function(r,n){return r.doc.setDirection(n)},!0),i("phrases",null)}function Vu(e,t,i){var r=i&&i!=Qr;if(!t!=!r){var n=e.display.dragFunctions,a=t?S:w;a(e.display.scroller,"dragstart",n.start),a(e.display.scroller,"dragenter",n.enter),a(e.display.scroller,"dragover",n.over),a(e.display.scroller,"dragleave",n.leave),a(e.display.scroller,"drop",n.drop)}}function es(e){e.options.lineWrapping?(Ce(e.display.wrapper,"CodeMirror-wrap"),e.display.sizer.style.minWidth="",e.display.sizerWidth=null):(Te(e.display.wrapper,"CodeMirror-wrap"),Cn(e)),Nn(e),Et(e),li(e),setTimeout(function(){return Ur(e)},100)}function et(e,t){var i=this;if(!(this instanceof et))return new et(e,t);this.options=t=t?Le(t):{},Le(il,t,!1);var r=t.value;typeof r=="string"?r=new Lt(r,t.mode,null,t.lineSeparator,t.direction):t.mode&&(r.modeOption=t.mode),this.doc=r;var n=new et.inputStyles[t.inputStyle](this),a=this.display=new du(e,r,n,t);a.wrapper.CodeMirror=this,rl(this),t.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),no(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new Qe,keySeq:null,specialChars:null},t.autofocus&&!H&&a.input.focus(),L&&A<11&&setTimeout(function(){return i.display.input.reset(!0)},20),ts(this),Mu(),Er(this),this.curOp.forceUpdate=!0,go(this,r),t.autofocus&&!H||this.hasFocus()?setTimeout(function(){i.hasFocus()&&!i.state.focused&&_n(i)},20):Pr(this);for(var o in on)on.hasOwnProperty(o)&&on[o](this,t[o],Qr);lo(this),t.finishInit&&t.finishInit(this);for(var u=0;u20*20}S(t.scroller,"touchstart",function(s){if(!ee(e,s)&&!a(s)&&!ra(e,s)){t.input.ensurePolled(),clearTimeout(i);var f=+new Date;t.activeTouch={start:f,moved:!1,prev:f-r.end<=300?r:null},s.touches.length==1&&(t.activeTouch.left=s.touches[0].pageX,t.activeTouch.top=s.touches[0].pageY)}}),S(t.scroller,"touchmove",function(){t.activeTouch&&(t.activeTouch.moved=!0)}),S(t.scroller,"touchend",function(s){var f=t.activeTouch;if(f&&!nr(t,s)&&f.left!=null&&!f.moved&&new Date-f.start<300){var v=e.coordsChar(t.activeTouch,"page"),x;!f.prev||o(f,f.prev)?x=new Ke(v,v):!f.prev.prev||o(f,f.prev.prev)?x=e.findWordAt(v):x=new Ke(re(v.line,0),Ne(e.doc,re(v.line+1,0))),e.setSelection(x.anchor,x.head),e.focus(),ce(s)}n()}),S(t.scroller,"touchcancel",n),S(t.scroller,"scroll",function(){t.scroller.clientHeight&&(fi(e,t.scroller.scrollTop),Fr(e,t.scroller.scrollLeft,!0),C(e,"scroll",e))}),S(t.scroller,"mousewheel",function(s){return fo(e,s)}),S(t.scroller,"DOMMouseScroll",function(s){return fo(e,s)}),S(t.wrapper,"scroll",function(){return t.wrapper.scrollTop=t.wrapper.scrollLeft=0}),t.dragFunctions={enter:function(s){ee(e,s)||Be(s)},over:function(s){ee(e,s)||(Bu(e,s),Be(s))},start:function(s){return Tu(e,s)},drop:pt(e,Lu),leave:function(s){ee(e,s)||zo(e)}};var u=t.input.getField();S(u,"keyup",function(s){return Qo.call(e,s)}),S(u,"keydown",pt(e,Zo)),S(u,"keypress",pt(e,Jo)),S(u,"focus",function(s){return _n(e,s)}),S(u,"blur",function(s){return Pr(e,s)})}var ia=[];et.defineInitHook=function(e){return ia.push(e)};function Ei(e,t,i,r){var n=e.doc,a;i==null&&(i="add"),i=="smart"&&(n.mode.indent?a=ri(e,t).state:i="prev");var o=e.options.tabSize,u=we(n,t),s=Ge(u.text,null,o);u.stateAfter&&(u.stateAfter=null);var f=u.text.match(/^\s*/)[0],v;if(!r&&!/\S/.test(u.text))v=0,i="not";else if(i=="smart"&&(v=n.mode.indent(a,u.text.slice(f.length),u.text),v==lt||v>150)){if(!r)return;i="prev"}i=="prev"?t>n.first?v=Ge(we(n,t-1).text,null,o):v=0:i=="add"?v=s+e.options.indentUnit:i=="subtract"?v=s-e.options.indentUnit:typeof i=="number"&&(v=s+i),v=Math.max(0,v);var x="",M=0;if(e.options.indentWithTabs)for(var E=Math.floor(v/o);E;--E)M+=o,x+=" ";if(Mo,s=Nr(t),f=null;if(u&&r.ranges.length>1)if(Zt&&Zt.text.join(` +`)==t){if(r.ranges.length%Zt.text.length==0){f=[];for(var v=0;v=0;M--){var E=r.ranges[M],z=E.from(),q=E.to();E.empty()&&(i&&i>0?z=re(z.line,z.ch-i):e.state.overwrite&&!u?q=re(q.line,Math.min(we(a,q.line).text.length,q.ch+Oe(s).length)):u&&Zt&&Zt.lineWise&&Zt.text.join(` +`)==s.join(` +`)&&(z=q=re(z.line,0)));var ae={from:z,to:q,text:f?f[M%f.length]:s,origin:n||(u?"paste":e.state.cutIncoming>o?"cut":"+input")};Gr(e.doc,ae),dt(e,"inputRead",e,ae)}t&&!u&&al(e,t),Wr(e),e.curOp.updateInput<2&&(e.curOp.updateInput=x),e.curOp.typing=!0,e.state.pasteIncoming=e.state.cutIncoming=-1}function nl(e,t){var i=e.clipboardData&&e.clipboardData.getData("Text");if(i)return e.preventDefault(),!t.isReadOnly()&&!t.options.disableInput&&t.hasFocus()&&_t(t,function(){return na(t,i,0,null,"paste")}),!0}function al(e,t){if(!(!e.options.electricChars||!e.options.smartIndent))for(var i=e.doc.sel,r=i.ranges.length-1;r>=0;r--){var n=i.ranges[r];if(!(n.head.ch>100||r&&i.ranges[r-1].head.line==n.head.line)){var a=e.getModeAt(n.head),o=!1;if(a.electricChars){for(var u=0;u-1){o=Ei(e,n.head.line,"smart");break}}else a.electricInput&&a.electricInput.test(we(e.doc,n.head.line).text.slice(0,n.head.ch))&&(o=Ei(e,n.head.line,"smart"));o&&dt(e,"electricInput",e,n.head.line)}}}function ol(e){for(var t=[],i=[],r=0;ra&&(Ei(this,u.head.line,r,!0),a=u.head.line,o==this.doc.sel.primIndex&&Wr(this));else{var s=u.from(),f=u.to(),v=Math.max(a,s.line);a=Math.min(this.lastLine(),f.line-(f.ch?0:1))+1;for(var x=v;x0&&Qn(this.doc,o,new Ke(s,M[o].to()),Ie)}}}),getTokenAt:function(r,n){return va(this,r,n)},getLineTokens:function(r,n){return va(this,re(r),n,!0)},getTokenTypeAt:function(r){r=Ne(this.doc,r);var n=da(this,we(this.doc,r.line)),a=0,o=(n.length-1)/2,u=r.ch,s;if(u==0)s=n[2];else for(;;){var f=a+o>>1;if((f?n[f*2-1]:0)>=u)o=f;else if(n[f*2+1]s&&(r=s,o=!0),u=we(this.doc,r)}else u=r;return Wi(this,u,{top:0,left:0},n||"page",a||o).top+(o?this.doc.height-ir(u):0)},defaultTextHeight:function(){return Rr(this.display)},defaultCharWidth:function(){return zr(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(r,n,a,o,u){var s=this.display;r=Xt(this,Ne(this.doc,r));var f=r.bottom,v=r.left;if(n.style.position="absolute",n.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(n),s.sizer.appendChild(n),o=="over")f=r.top;else if(o=="above"||o=="near"){var x=Math.max(s.wrapper.clientHeight,this.doc.height),M=Math.max(s.sizer.clientWidth,s.lineSpace.clientWidth);(o=="above"||r.bottom+n.offsetHeight>x)&&r.top>n.offsetHeight?f=r.top-n.offsetHeight:r.bottom+n.offsetHeight<=x&&(f=r.bottom),v+n.offsetWidth>M&&(v=M-n.offsetWidth)}n.style.top=f+"px",n.style.left=n.style.right="",u=="right"?(v=s.sizer.clientWidth-n.offsetWidth,n.style.right="0px"):(u=="left"?v=0:u=="middle"&&(v=(s.sizer.clientWidth-n.offsetWidth)/2),n.style.left=v+"px"),a&&Vl(this,{left:v,top:f,right:v+n.offsetWidth,bottom:f+n.offsetHeight})},triggerOnKeyDown:St(Zo),triggerOnKeyPress:St(Jo),triggerOnKeyUp:Qo,triggerOnMouseDown:St($o),execCommand:function(r){if(wi.hasOwnProperty(r))return wi[r].call(null,this)},triggerElectric:St(function(r){al(this,r)}),findPosH:function(r,n,a,o){var u=1;n<0&&(u=-1,n=-n);for(var s=Ne(this.doc,r),f=0;f0&&v(a.charAt(o-1));)--o;for(;u.5||this.options.lineWrapping)&&Nn(this),C(this,"refresh",this)}),swapDoc:St(function(r){var n=this.doc;return n.cm=null,this.state.selectingText&&this.state.selectingText(),go(this,r),li(this),this.display.input.reset(),si(this,r.scrollLeft,r.scrollTop),this.curOp.forceScroll=!0,dt(this,"swapDoc",this,n),n}),phrase:function(r){var n=this.options.phrases;return n&&Object.prototype.hasOwnProperty.call(n,r)?n[r]:r},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},xe(e),e.registerHelper=function(r,n,a){i.hasOwnProperty(r)||(i[r]=e[r]={_global:[]}),i[r][n]=a},e.registerGlobalHelper=function(r,n,a,o){e.registerHelper(r,n,o),i[r]._global.push({pred:a,val:o})}}function oa(e,t,i,r,n){var a=t,o=i,u=we(e,t.line),s=n&&e.direction=="rtl"?-i:i;function f(){var de=t.line+s;return de=e.first+e.size?!1:(t=new re(de,t.ch,t.sticky),u=we(e,de))}function v(de){var fe;if(r=="codepoint"){var ve=u.text.charCodeAt(t.ch+(i>0?0:-1));if(isNaN(ve))fe=null;else{var Fe=i>0?ve>=55296&&ve<56320:ve>=56320&&ve<57343;fe=new re(t.line,Math.max(0,Math.min(u.text.length,t.ch+i*(Fe?2:1))),-i)}}else n?fe=_u(e.cm,u,t,i):fe=$n(u,t,i);if(fe==null)if(!de&&f())t=Vn(n,e.cm,u,t.line,s);else return!1;else t=fe;return!0}if(r=="char"||r=="codepoint")v();else if(r=="column")v(!0);else if(r=="word"||r=="group")for(var x=null,M=r=="group",E=e.cm&&e.cm.getHelper(t,"wordChars"),z=!0;!(i<0&&!v(!z));z=!1){var q=u.text.charAt(t.ch)||` +`,ae=I(q,E)?"w":M&&q==` +`?"n":!M||/\s/.test(q)?null:"p";if(M&&!z&&!ae&&(ae="s"),x&&x!=ae){i<0&&(i=1,v(),t.sticky="after");break}if(ae&&(x=ae),i>0&&!v(!z))break}var se=en(e,t,a,o,!0);return pn(a,se)&&(se.hitSide=!0),se}function ul(e,t,i,r){var n=e.doc,a=t.left,o;if(r=="page"){var u=Math.min(e.display.wrapper.clientHeight,K(e).innerHeight||n(e).documentElement.clientHeight),s=Math.max(u-.5*Rr(e.display),3);o=(i>0?t.bottom:t.top)+i*s}else r=="line"&&(o=i>0?t.bottom+3:t.top-3);for(var f;f=Ln(e,a,o),!!f.outside;){if(i<0?o<=0:o>=n.height){f.hitSide=!0;break}o+=i*5}return f}var Ye=function(e){this.cm=e,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new Qe,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};Ye.prototype.init=function(e){var t=this,i=this,r=i.cm,n=i.div=e.lineDiv;n.contentEditable=!0,aa(n,r.options.spellcheck,r.options.autocorrect,r.options.autocapitalize);function a(u){for(var s=u.target;s;s=s.parentNode){if(s==n)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(s.className))break}return!1}S(n,"paste",function(u){!a(u)||ee(r,u)||nl(u,r)||A<=11&&setTimeout(pt(r,function(){return t.updateFromDOM()}),20)}),S(n,"compositionstart",function(u){t.composing={data:u.data,done:!1}}),S(n,"compositionupdate",function(u){t.composing||(t.composing={data:u.data,done:!1})}),S(n,"compositionend",function(u){t.composing&&(u.data!=t.composing.data&&t.readFromDOMSoon(),t.composing.done=!0)}),S(n,"touchstart",function(){return i.forceCompositionEnd()}),S(n,"input",function(){t.composing||t.readFromDOMSoon()});function o(u){if(!(!a(u)||ee(r,u))){if(r.somethingSelected())ln({lineWise:!1,text:r.getSelections()}),u.type=="cut"&&r.replaceSelection("",null,"cut");else if(r.options.lineWiseCopyCut){var s=ol(r);ln({lineWise:!0,text:s.text}),u.type=="cut"&&r.operation(function(){r.setSelections(s.ranges,0,Ie),r.replaceSelection("",null,"cut")})}else return;if(u.clipboardData){u.clipboardData.clearData();var f=Zt.text.join(` +`);if(u.clipboardData.setData("Text",f),u.clipboardData.getData("Text")==f){u.preventDefault();return}}var v=ll(),x=v.firstChild;aa(x),r.display.lineSpace.insertBefore(v,r.display.lineSpace.firstChild),x.value=Zt.text.join(` +`);var M=$(h(n));at(x),setTimeout(function(){r.display.lineSpace.removeChild(v),M.focus(),M==n&&i.showPrimarySelection()},50)}}S(n,"copy",o),S(n,"cut",o)},Ye.prototype.screenReaderLabelChanged=function(e){e?this.div.setAttribute("aria-label",e):this.div.removeAttribute("aria-label")},Ye.prototype.prepareSelection=function(){var e=Ja(this.cm,!1);return e.focus=$(h(this.div))==this.div,e},Ye.prototype.showSelection=function(e,t){!e||!this.cm.display.view.length||((e.focus||t)&&this.showPrimarySelection(),this.showMultipleSelections(e))},Ye.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},Ye.prototype.showPrimarySelection=function(){var e=this.getSelection(),t=this.cm,i=t.doc.sel.primary(),r=i.from(),n=i.to();if(t.display.viewTo==t.display.viewFrom||r.line>=t.display.viewTo||n.line=t.display.viewFrom&&sl(t,r)||{node:u[0].measure.map[2],offset:0},f=n.linee.firstLine()&&(r=re(r.line-1,we(e.doc,r.line-1).length)),n.ch==we(e.doc,n.line).text.length&&n.linet.viewTo-1)return!1;var a,o,u;r.line==t.viewFrom||(a=Sr(e,r.line))==0?(o=Xe(t.view[0].line),u=t.view[0].node):(o=Xe(t.view[a].line),u=t.view[a-1].node.nextSibling);var s=Sr(e,n.line),f,v;if(s==t.view.length-1?(f=t.viewTo-1,v=t.lineDiv.lastChild):(f=Xe(t.view[s+1].line)-1,v=t.view[s+1].node.previousSibling),!u)return!1;for(var x=e.doc.splitLines(ns(e,u,v,o,f)),M=Dr(e.doc,re(o,0),re(f,we(e.doc,f).text.length));x.length>1&&M.length>1;)if(Oe(x)==Oe(M))x.pop(),M.pop(),f--;else if(x[0]==M[0])x.shift(),M.shift(),o++;else break;for(var E=0,z=0,q=x[0],ae=M[0],se=Math.min(q.length,ae.length);Er.ch&&de.charCodeAt(de.length-z-1)==fe.charCodeAt(fe.length-z-1);)E--,z++;x[x.length-1]=de.slice(0,de.length-z).replace(/^\u200b+/,""),x[0]=x[0].slice(E).replace(/\u200b+$/,"");var Fe=re(o,E),Se=re(f,M.length?Oe(M).length-z:0);if(x.length>1||x[0]||Me(Fe,Se))return Kr(e.doc,x,Fe,Se,"+input"),!0},Ye.prototype.ensurePolled=function(){this.forceCompositionEnd()},Ye.prototype.reset=function(){this.forceCompositionEnd()},Ye.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},Ye.prototype.readFromDOMSoon=function(){var e=this;this.readDOMTimeout==null&&(this.readDOMTimeout=setTimeout(function(){if(e.readDOMTimeout=null,e.composing)if(e.composing.done)e.composing=null;else return;e.updateFromDOM()},80))},Ye.prototype.updateFromDOM=function(){var e=this;(this.cm.isReadOnly()||!this.pollContent())&&_t(this.cm,function(){return Et(e.cm)})},Ye.prototype.setUneditable=function(e){e.contentEditable="false"},Ye.prototype.onKeyPress=function(e){e.charCode==0||this.composing||(e.preventDefault(),this.cm.isReadOnly()||pt(this.cm,na)(this.cm,String.fromCharCode(e.charCode==null?e.keyCode:e.charCode),0))},Ye.prototype.readOnlyChanged=function(e){this.div.contentEditable=String(e!="nocursor")},Ye.prototype.onContextMenu=function(){},Ye.prototype.resetPosition=function(){},Ye.prototype.needsContentAttribute=!0;function sl(e,t){var i=Fn(e,t.line);if(!i||i.hidden)return null;var r=we(e.doc,t.line),n=_a(i,r,t.line),a=y(r,e.doc.direction),o="left";if(a){var u=d(a,t.ch);o=u%2?"right":"left"}var s=Pa(n.map,t.ch,o);return s.offset=s.collapse=="right"?s.end:s.start,s}function is(e){for(var t=e;t;t=t.parentNode)if(/CodeMirror-gutter-wrapper/.test(t.className))return!0;return!1}function Jr(e,t){return t&&(e.bad=!0),e}function ns(e,t,i,r,n){var a="",o=!1,u=e.doc.lineSeparator(),s=!1;function f(E){return function(z){return z.id==E}}function v(){o&&(a+=u,s&&(a+=u),o=s=!1)}function x(E){E&&(v(),a+=E)}function M(E){if(E.nodeType==1){var z=E.getAttribute("cm-text");if(z){x(z);return}var q=E.getAttribute("cm-marker"),ae;if(q){var se=e.findMarks(re(r,0),re(n+1,0),f(+q));se.length&&(ae=se[0].find(0))&&x(Dr(e.doc,ae.from,ae.to).join(u));return}if(E.getAttribute("contenteditable")=="false")return;var de=/^(pre|div|p|li|table|br)$/i.test(E.nodeName);if(!/^br$/i.test(E.nodeName)&&E.textContent.length==0)return;de&&v();for(var fe=0;fe=9&&t.hasSelection&&(t.hasSelection=null),i.poll()}),S(n,"paste",function(o){ee(r,o)||nl(o,r)||(r.state.pasteIncoming=+new Date,i.fastPoll())});function a(o){if(!ee(r,o)){if(r.somethingSelected())ln({lineWise:!1,text:r.getSelections()});else if(r.options.lineWiseCopyCut){var u=ol(r);ln({lineWise:!0,text:u.text}),o.type=="cut"?r.setSelections(u.ranges,null,Ie):(i.prevInput="",n.value=u.text.join(` +`),at(n))}else return;o.type=="cut"&&(r.state.cutIncoming=+new Date)}}S(n,"cut",a),S(n,"copy",a),S(e.scroller,"paste",function(o){if(!(nr(e,o)||ee(r,o))){if(!n.dispatchEvent){r.state.pasteIncoming=+new Date,i.focus();return}var u=new Event("paste");u.clipboardData=o.clipboardData,n.dispatchEvent(u)}}),S(e.lineSpace,"selectstart",function(o){nr(e,o)||ce(o)}),S(n,"compositionstart",function(){var o=r.getCursor("from");i.composing&&i.composing.range.clear(),i.composing={start:o,range:r.markText(o,r.getCursor("to"),{className:"CodeMirror-composing"})}}),S(n,"compositionend",function(){i.composing&&(i.poll(),i.composing.range.clear(),i.composing=null)})},nt.prototype.createField=function(e){this.wrapper=ll(),this.textarea=this.wrapper.firstChild;var t=this.cm.options;aa(this.textarea,t.spellcheck,t.autocorrect,t.autocapitalize)},nt.prototype.screenReaderLabelChanged=function(e){e?this.textarea.setAttribute("aria-label",e):this.textarea.removeAttribute("aria-label")},nt.prototype.prepareSelection=function(){var e=this.cm,t=e.display,i=e.doc,r=Ja(e);if(e.options.moveInputWithCursor){var n=Xt(e,i.sel.primary().head,"div"),a=t.wrapper.getBoundingClientRect(),o=t.lineDiv.getBoundingClientRect();r.teTop=Math.max(0,Math.min(t.wrapper.clientHeight-10,n.top+o.top-a.top)),r.teLeft=Math.max(0,Math.min(t.wrapper.clientWidth-10,n.left+o.left-a.left))}return r},nt.prototype.showSelection=function(e){var t=this.cm,i=t.display;Ae(i.cursorDiv,e.cursors),Ae(i.selectionDiv,e.selection),e.teTop!=null&&(this.wrapper.style.top=e.teTop+"px",this.wrapper.style.left=e.teLeft+"px")},nt.prototype.reset=function(e){if(!(this.contextMenuPending||this.composing&&e)){var t=this.cm;if(this.resetting=!0,t.somethingSelected()){this.prevInput="";var i=t.getSelection();this.textarea.value=i,t.state.focused&&at(this.textarea),L&&A>=9&&(this.hasSelection=i)}else e||(this.prevInput=this.textarea.value="",L&&A>=9&&(this.hasSelection=null));this.resetting=!1}},nt.prototype.getField=function(){return this.textarea},nt.prototype.supportsTouch=function(){return!1},nt.prototype.focus=function(){if(this.cm.options.readOnly!="nocursor"&&(!H||$(h(this.textarea))!=this.textarea))try{this.textarea.focus()}catch{}},nt.prototype.blur=function(){this.textarea.blur()},nt.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},nt.prototype.receivedFocus=function(){this.slowPoll()},nt.prototype.slowPoll=function(){var e=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){e.poll(),e.cm.state.focused&&e.slowPoll()})},nt.prototype.fastPoll=function(){var e=!1,t=this;t.pollingFast=!0;function i(){var r=t.poll();!r&&!e?(e=!0,t.polling.set(60,i)):(t.pollingFast=!1,t.slowPoll())}t.polling.set(20,i)},nt.prototype.poll=function(){var e=this,t=this.cm,i=this.textarea,r=this.prevInput;if(this.contextMenuPending||this.resetting||!t.state.focused||Li(i)&&!r&&!this.composing||t.isReadOnly()||t.options.disableInput||t.state.keySeq)return!1;var n=i.value;if(n==r&&!t.somethingSelected())return!1;if(L&&A>=9&&this.hasSelection===n||U&&/[\uf700-\uf7ff]/.test(n))return t.display.input.reset(),!1;if(t.doc.sel==t.display.selForContextMenu){var a=n.charCodeAt(0);if(a==8203&&!r&&(r="\u200B"),a==8666)return this.reset(),this.cm.execCommand("undo")}for(var o=0,u=Math.min(r.length,n.length);o1e3||n.indexOf(` +`)>-1?i.value=e.prevInput="":e.prevInput=n,e.composing&&(e.composing.range.clear(),e.composing.range=t.markText(e.composing.start,t.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},nt.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},nt.prototype.onKeyPress=function(){L&&A>=9&&(this.hasSelection=null),this.fastPoll()},nt.prototype.onContextMenu=function(e){var t=this,i=t.cm,r=i.display,n=t.textarea;t.contextMenuPending&&t.contextMenuPending();var a=wr(i,e),o=r.scroller.scrollTop;if(!a||P)return;var u=i.options.resetSelectionOnContextMenu;u&&i.doc.sel.contains(a)==-1&&pt(i,bt)(i.doc,hr(a),Ie);var s=n.style.cssText,f=t.wrapper.style.cssText,v=t.wrapper.offsetParent.getBoundingClientRect();t.wrapper.style.cssText="position: static",n.style.cssText=`position: absolute; width: 30px; height: 30px; + top: `+(e.clientY-v.top-5)+"px; left: "+(e.clientX-v.left-5)+`px; + z-index: 1000; background: `+(L?"rgba(255, 255, 255, .05)":"transparent")+`; + outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);`;var x;N&&(x=n.ownerDocument.defaultView.scrollY),r.input.focus(),N&&n.ownerDocument.defaultView.scrollTo(null,x),r.input.reset(),i.somethingSelected()||(n.value=t.prevInput=" "),t.contextMenuPending=E,r.selForContextMenu=i.doc.sel,clearTimeout(r.detectingSelectAll);function M(){if(n.selectionStart!=null){var q=i.somethingSelected(),ae="\u200B"+(q?n.value:"");n.value="\u21DA",n.value=ae,t.prevInput=q?"":"\u200B",n.selectionStart=1,n.selectionEnd=ae.length,r.selForContextMenu=i.doc.sel}}function E(){if(t.contextMenuPending==E&&(t.contextMenuPending=!1,t.wrapper.style.cssText=f,n.style.cssText=s,L&&A<9&&r.scrollbars.setScrollTop(r.scroller.scrollTop=o),n.selectionStart!=null)){(!L||L&&A<9)&&M();var q=0,ae=function(){r.selForContextMenu==i.doc.sel&&n.selectionStart==0&&n.selectionEnd>0&&t.prevInput=="\u200B"?pt(i,Eo)(i):q++<10?r.detectingSelectAll=setTimeout(ae,500):(r.selForContextMenu=null,r.input.reset())};r.detectingSelectAll=setTimeout(ae,200)}}if(L&&A>=9&&M(),ie){Be(e);var z=function(){w(window,"mouseup",z),setTimeout(E,20)};S(window,"mouseup",z)}else setTimeout(E,50)},nt.prototype.readOnlyChanged=function(e){e||this.reset(),this.textarea.disabled=e=="nocursor",this.textarea.readOnly=!!e},nt.prototype.setUneditable=function(){},nt.prototype.needsContentAttribute=!1;function os(e,t){if(t=t?Le(t):{},t.value=e.value,!t.tabindex&&e.tabIndex&&(t.tabindex=e.tabIndex),!t.placeholder&&e.placeholder&&(t.placeholder=e.placeholder),t.autofocus==null){var i=$(h(e));t.autofocus=i==e||e.getAttribute("autofocus")!=null&&i==document.body}function r(){e.value=u.getValue()}var n;if(e.form&&(S(e.form,"submit",r),!t.leaveSubmitMethodAlone)){var a=e.form;n=a.submit;try{var o=a.submit=function(){r(),a.submit=n,a.submit(),a.submit=o}}catch{}}t.finishInit=function(s){s.save=r,s.getTextArea=function(){return e},s.toTextArea=function(){s.toTextArea=isNaN,r(),e.parentNode.removeChild(s.getWrapperElement()),e.style.display="",e.form&&(w(e.form,"submit",r),!t.leaveSubmitMethodAlone&&typeof e.form.submit=="function"&&(e.form.submit=n))}},e.style.display="none";var u=et(function(s){return e.parentNode.insertBefore(s,e.nextSibling)},t);return u}function ls(e){e.off=w,e.on=S,e.wheelEventPixels=pu,e.Doc=Lt,e.splitLines=Nr,e.countColumn=Ge,e.findColumn=jt,e.isWordChar=xr,e.Pass=lt,e.signal=C,e.Line=Or,e.changeEnd=dr,e.scrollbarModel=io,e.Pos=re,e.cmpPos=Me,e.modes=ei,e.mimeModes=rt,e.resolveMode=Ht,e.getMode=Gt,e.modeExtensions=Ut,e.extendMode=Ti,e.copyState=tr,e.startState=sa,e.innerMode=Ir,e.commands=wi,e.keyMap=or,e.keyName=qo,e.isModifierKey=Uo,e.lookupKey=Yr,e.normalizeKeyMap=Hu,e.StringStream=ut,e.SharedTextMarker=bi,e.TextMarker=gr,e.LineWidget=Di,e.e_preventDefault=ce,e.e_stopPropagation=We,e.e_stop=Be,e.addClass=Ce,e.contains=le,e.rmClass=Te,e.keyNames=vr}$u(et),rs(et);var us="iter insert remove copy getEditor constructor".split(" ");for(var sn in Lt.prototype)Lt.prototype.hasOwnProperty(sn)&&je(us,sn)<0&&(et.prototype[sn]=function(e){return function(){return e.apply(this.doc,arguments)}}(Lt.prototype[sn]));return xe(Lt),et.inputStyles={textarea:nt,contenteditable:Ye},et.defineMode=function(e){!et.defaults.mode&&e!="null"&&(et.defaults.mode=e),ur.apply(this,arguments)},et.defineMIME=qt,et.defineMode("null",function(){return{token:function(e){return e.skipToEnd()}}}),et.defineMIME("text/plain","null"),et.defineExtension=function(e,t){et.prototype[e]=t},et.defineDocExtension=function(e,t){Lt.prototype[e]=t},et.fromTextArea=os,ls(et),et.version="5.65.16",et})},"./node_modules/codemirror/mode/gfm/gfm.js":function(ct,_e,ye){(function(W){W(ye("./node_modules/codemirror/lib/codemirror.js"),ye("./node_modules/codemirror/mode/markdown/markdown.js"),ye("./node_modules/codemirror/addon/mode/overlay.js"))})(function(W){"use strict";var Q=/^((?:(?:aaas?|about|acap|adiumxtra|af[ps]|aim|apt|attachment|aw|beshare|bitcoin|bolo|callto|cap|chrome(?:-extension)?|cid|coap|com-eventbrite-attendee|content|crid|cvs|data|dav|dict|dlna-(?:playcontainer|playsingle)|dns|doi|dtn|dvb|ed2k|facetime|feed|file|finger|fish|ftp|geo|gg|git|gizmoproject|go|gopher|gtalk|h323|hcp|https?|iax|icap|icon|im|imap|info|ipn|ipp|irc[6s]?|iris(?:\.beep|\.lwz|\.xpc|\.xpcs)?|itms|jar|javascript|jms|keyparc|lastfm|ldaps?|magnet|mailto|maps|market|message|mid|mms|ms-help|msnim|msrps?|mtqp|mumble|mupdate|mvn|news|nfs|nih?|nntp|notes|oid|opaquelocktoken|palm|paparazzi|platform|pop|pres|proxy|psyc|query|res(?:ource)?|rmi|rsync|rtmp|rtsp|secondlife|service|session|sftp|sgn|shttp|sieve|sips?|skype|sm[bs]|snmp|soap\.beeps?|soldat|spotify|ssh|steam|svn|tag|teamspeak|tel(?:net)?|tftp|things|thismessage|tip|tn3270|tv|udp|unreal|urn|ut2004|vemmi|ventrilo|view-source|webcal|wss?|wtai|wyciwyg|xcon(?:-userid)?|xfire|xmlrpc\.beeps?|xmpp|xri|ymsgr|z39\.50[rs]?):(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]|\([^\s()<>]*\))+(?:\([^\s()<>]*\)|[^\s`*!()\[\]{};:'".,<>?«»“”‘’]))/i;W.defineMode("gfm",function(B,R){var L=0;function A(G){return G.code=!1,null}var N={startState:function(){return{code:!1,codeBlock:!1,ateSpace:!1}},copyState:function(G){return{code:G.code,codeBlock:G.codeBlock,ateSpace:G.ateSpace}},token:function(G,P){if(P.combineTokens=null,P.codeBlock)return G.match(/^```+/)?(P.codeBlock=!1,null):(G.skipToEnd(),null);if(G.sol()&&(P.code=!1),G.sol()&&G.match(/^```+/))return G.skipToEnd(),P.codeBlock=!0,null;if(G.peek()==="`"){G.next();var oe=G.pos;G.eatWhile("`");var pe=1+G.pos-oe;return P.code?pe===L&&(P.code=!1):(L=pe,P.code=!0),null}else if(P.code)return G.next(),null;if(G.eatSpace())return P.ateSpace=!0,null;if((G.sol()||P.ateSpace)&&(P.ateSpace=!1,R.gitHubSpice!==!1)){if(G.match(/^(?:[a-zA-Z0-9\-_]+\/)?(?:[a-zA-Z0-9\-_]+@)?(?=.{0,6}\d)(?:[a-f0-9]{7,40}\b)/))return P.combineTokens=!0,"link";if(G.match(/^(?:[a-zA-Z0-9\-_]+\/)?(?:[a-zA-Z0-9\-_]+)?#[0-9]+\b/))return P.combineTokens=!0,"link"}return G.match(Q)&&G.string.slice(G.start-2,G.start)!="]("&&(G.start==0||/\W/.test(G.string.charAt(G.start-1)))?(P.combineTokens=!0,"link"):(G.next(),null)},blankLine:A},Y={taskLists:!0,strikethrough:!0,emoji:!0};for(var V in R)Y[V]=R[V];return Y.name="markdown",W.overlayMode(W.getMode(B,Y),N)},"markdown"),W.defineMIME("text/x-gfm","gfm")})},"./node_modules/codemirror/mode/markdown/markdown.js":function(ct,_e,ye){(function(W){W(ye("./node_modules/codemirror/lib/codemirror.js"),ye("./node_modules/codemirror/mode/xml/xml.js"),ye("./node_modules/codemirror/mode/meta.js"))})(function(W){"use strict";W.defineMode("markdown",function(Q,B){var R=W.getMode(Q,"text/html"),L=R.name=="null";function A(k){if(W.findModeByName){var h=W.findModeByName(k);h&&(k=h.mime||h.mimes[0])}var K=W.getMode(Q,k);return K.name=="null"?null:K}B.highlightFormatting===void 0&&(B.highlightFormatting=!1),B.maxBlockquoteDepth===void 0&&(B.maxBlockquoteDepth=0),B.taskLists===void 0&&(B.taskLists=!1),B.strikethrough===void 0&&(B.strikethrough=!1),B.emoji===void 0&&(B.emoji=!1),B.fencedCodeBlockHighlighting===void 0&&(B.fencedCodeBlockHighlighting=!0),B.fencedCodeBlockDefaultMode===void 0&&(B.fencedCodeBlockDefaultMode="text/plain"),B.xml===void 0&&(B.xml=!0),B.tokenTypeOverrides===void 0&&(B.tokenTypeOverrides={});var N={header:"header",code:"comment",quote:"quote",list1:"variable-2",list2:"variable-3",list3:"keyword",hr:"hr",image:"image",imageAltText:"image-alt-text",imageMarker:"image-marker",formatting:"formatting",linkInline:"link",linkEmail:"link",linkText:"link",linkHref:"string",em:"em",strong:"strong",strikethrough:"strikethrough",emoji:"builtin"};for(var Y in N)N.hasOwnProperty(Y)&&B.tokenTypeOverrides[Y]&&(N[Y]=B.tokenTypeOverrides[Y]);var V=/^([*\-_])(?:\s*\1){2,}\s*$/,G=/^(?:[*\-+]|^[0-9]+([.)]))\s+/,P=/^\[(x| )\](?=\s)/i,oe=B.allowAtxHeaderWithoutSpace?/^(#+)/:/^(#+)(?: |$)/,pe=/^ {0,3}(?:\={1,}|-{2,})\s*$/,Ee=/^[^#!\[\]*_\\<>` "'(~:]+/,me=/^(~~~+|```+)[ \t]*([\w\/+#-]*)[^\n`]*$/,be=/^\s*\[[^\]]+?\]:.*$/,H=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0AF0\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/,U=" ";function j(k,h,K){return h.f=h.inline=K,K(k,h)}function te(k,h,K){return h.f=h.block=K,K(k,h)}function X(k){return!k||!/\S/.test(k.string)}function ue(k){if(k.linkTitle=!1,k.linkHref=!1,k.linkText=!1,k.em=!1,k.strong=!1,k.strikethrough=!1,k.quote=0,k.indentedCode=!1,k.f==ge){var h=L;if(!h){var K=W.innerMode(R,k.htmlState);h=K.mode.name=="xml"&&K.state.tagStart===null&&!K.state.context&&K.state.tokenize.isInText}h&&(k.f=J,k.block=ie,k.htmlState=null)}return k.trailingSpace=0,k.trailingSpaceNewLine=!1,k.prevLine=k.thisLine,k.thisLine={stream:null},null}function ie(k,h){var K=k.column()===h.indentation,ne=X(h.prevLine.stream),Le=h.indentedCode,Ge=h.prevLine.hr,Qe=h.list!==!1,je=(h.listStack[h.listStack.length-1]||0)+3;h.indentedCode=!1;var ot=h.indentation;if(h.indentationDiff===null&&(h.indentationDiff=h.indentation,Qe)){for(h.list=null;ot=4&&(Le||h.prevLine.fencedCodeEnd||h.prevLine.header||ne))return k.skipToEnd(),h.indentedCode=!0,N.code;if(k.eatSpace())return null;if(K&&h.indentation<=je&&(qe=k.match(oe))&&qe[1].length<=6)return h.quote=0,h.header=qe[1].length,h.thisLine.header=!0,B.highlightFormatting&&(h.formatting="header"),h.f=h.inline,Z(h);if(h.indentation<=je&&k.eat(">"))return h.quote=K?1:h.quote+1,B.highlightFormatting&&(h.formatting="quote"),k.eatSpace(),Z(h);if(!Ie&&!h.setext&&K&&h.indentation<=je&&(qe=k.match(G))){var wt=qe[1]?"ol":"ul";return h.indentation=ot+k.current().length,h.list=!0,h.quote=0,h.listStack.push(h.indentation),h.em=!1,h.strong=!1,h.code=!1,h.strikethrough=!1,B.taskLists&&k.match(P,!1)&&(h.taskList=!0),h.f=h.inline,B.highlightFormatting&&(h.formatting=["list","list-"+wt]),Z(h)}else{if(K&&h.indentation<=je&&(qe=k.match(me,!0)))return h.quote=0,h.fencedEndRE=new RegExp(qe[1]+"+ *$"),h.localMode=B.fencedCodeBlockHighlighting&&A(qe[2]||B.fencedCodeBlockDefaultMode),h.localMode&&(h.localState=W.startState(h.localMode)),h.f=h.block=Te,B.highlightFormatting&&(h.formatting="code-block"),h.code=-1,Z(h);if(h.setext||(!lt||!Qe)&&!h.quote&&h.list===!1&&!h.code&&!Ie&&!be.test(k.string)&&(qe=k.lookAhead(1))&&(qe=qe.match(pe)))return h.setext?(h.header=h.setext,h.setext=0,k.skipToEnd(),B.highlightFormatting&&(h.formatting="header")):(h.header=qe[0].charAt(0)=="="?1:2,h.setext=h.header),h.thisLine.header=!0,h.f=h.inline,Z(h);if(Ie)return k.skipToEnd(),h.hr=!0,h.thisLine.hr=!0,N.hr;if(k.peek()==="[")return j(k,h,Ce)}return j(k,h,h.inline)}function ge(k,h){var K=R.token(k,h.htmlState);if(!L){var ne=W.innerMode(R,h.htmlState);(ne.mode.name=="xml"&&ne.state.tagStart===null&&!ne.state.context&&ne.state.tokenize.isInText||h.md_inside&&k.current().indexOf(">")>-1)&&(h.f=J,h.block=ie,h.htmlState=null)}return K}function Te(k,h){var K=h.listStack[h.listStack.length-1]||0,ne=h.indentation=k.quote?h.push(N.formatting+"-"+k.formatting[K]+"-"+k.quote):h.push("error"))}if(k.taskOpen)return h.push("meta"),h.length?h.join(" "):null;if(k.taskClosed)return h.push("property"),h.length?h.join(" "):null;if(k.linkHref?h.push(N.linkHref,"url"):(k.strong&&h.push(N.strong),k.em&&h.push(N.em),k.strikethrough&&h.push(N.strikethrough),k.emoji&&h.push(N.emoji),k.linkText&&h.push(N.linkText),k.code&&h.push(N.code),k.image&&h.push(N.image),k.imageAltText&&h.push(N.imageAltText,"link"),k.imageMarker&&h.push(N.imageMarker)),k.header&&h.push(N.header,N.header+"-"+k.header),k.quote&&(h.push(N.quote),!B.maxBlockquoteDepth||B.maxBlockquoteDepth>=k.quote?h.push(N.quote+"-"+k.quote):h.push(N.quote+"-"+B.maxBlockquoteDepth)),k.list!==!1){var ne=(k.listStack.length-1)%3;ne?ne===1?h.push(N.list2):h.push(N.list3):h.push(N.list1)}return k.trailingSpaceNewLine?h.push("trailing-space-new-line"):k.trailingSpace&&h.push("trailing-space-"+(k.trailingSpace%2?"a":"b")),h.length?h.join(" "):null}function Ae(k,h){if(k.match(Ee,!0))return Z(h)}function J(k,h){var K=h.text(k,h);if(typeof K<"u")return K;if(h.list)return h.list=null,Z(h);if(h.taskList){var ne=k.match(P,!0)[1]===" ";return ne?h.taskOpen=!0:h.taskClosed=!0,B.highlightFormatting&&(h.formatting="task"),h.taskList=!1,Z(h)}if(h.taskOpen=!1,h.taskClosed=!1,h.header&&k.match(/^#+$/,!0))return B.highlightFormatting&&(h.formatting="header"),Z(h);var Le=k.next();if(h.linkTitle){h.linkTitle=!1;var Ge=Le;Le==="("&&(Ge=")"),Ge=(Ge+"").replace(/([.?*+^\[\]\\(){}|-])/g,"\\$1");var Qe="^\\s*(?:[^"+Ge+"\\\\]+|\\\\\\\\|\\\\.)"+Ge;if(k.match(new RegExp(Qe),!0))return N.linkHref}if(Le==="`"){var je=h.formatting;B.highlightFormatting&&(h.formatting="code"),k.eatWhile("`");var ot=k.current().length;if(h.code==0&&(!h.quote||ot==1))return h.code=ot,Z(h);if(ot==h.code){var lt=Z(h);return h.code=0,lt}else return h.formatting=je,Z(h)}else if(h.code)return Z(h);if(Le==="\\"&&(k.next(),B.highlightFormatting)){var Ie=Z(h),qe=N.formatting+"-escape";return Ie?Ie+" "+qe:qe}if(Le==="!"&&k.match(/\[[^\]]*\] ?(?:\(|\[)/,!1))return h.imageMarker=!0,h.image=!0,B.highlightFormatting&&(h.formatting="image"),Z(h);if(Le==="["&&h.imageMarker&&k.match(/[^\]]*\](\(.*?\)| ?\[.*?\])/,!1))return h.imageMarker=!1,h.imageAltText=!0,B.highlightFormatting&&(h.formatting="image"),Z(h);if(Le==="]"&&h.imageAltText){B.highlightFormatting&&(h.formatting="image");var Ie=Z(h);return h.imageAltText=!1,h.image=!1,h.inline=h.f=_,Ie}if(Le==="["&&!h.image)return h.linkText&&k.match(/^.*?\]/)||(h.linkText=!0,B.highlightFormatting&&(h.formatting="link")),Z(h);if(Le==="]"&&h.linkText){B.highlightFormatting&&(h.formatting="link");var Ie=Z(h);return h.linkText=!1,h.inline=h.f=k.match(/\(.*?\)| ?\[.*?\]/,!1)?_:J,Ie}if(Le==="<"&&k.match(/^(https?|ftps?):\/\/(?:[^\\>]|\\.)+>/,!1)){h.f=h.inline=Re,B.highlightFormatting&&(h.formatting="link");var Ie=Z(h);return Ie?Ie+=" ":Ie="",Ie+N.linkInline}if(Le==="<"&&k.match(/^[^> \\]+@(?:[^\\>]|\\.)+>/,!1)){h.f=h.inline=Re,B.highlightFormatting&&(h.formatting="link");var Ie=Z(h);return Ie?Ie+=" ":Ie="",Ie+N.linkEmail}if(B.xml&&Le==="<"&&k.match(/^(!--|\?|!\[CDATA\[|[a-z][a-z0-9-]*(?:\s+[a-z_:.\-]+(?:\s*=\s*[^>]+)?)*\s*(?:>|$))/i,!1)){var wt=k.string.indexOf(">",k.pos);if(wt!=-1){var jt=k.string.substring(k.start,wt);/markdown\s*=\s*('|"){0,1}1('|"){0,1}/.test(jt)&&(h.md_inside=!0)}return k.backUp(1),h.htmlState=W.startState(R),te(k,h,ge)}if(B.xml&&Le==="<"&&k.match(/^\/\w*?>/))return h.md_inside=!1,"tag";if(Le==="*"||Le==="_"){for(var De=1,Nt=k.pos==1?" ":k.string.charAt(k.pos-2);De<3&&k.eat(Le);)De++;var Oe=k.peek()||" ",It=!/\s/.test(Oe)&&(!H.test(Oe)||/\s/.test(Nt)||H.test(Nt)),xt=!/\s/.test(Nt)&&(!H.test(Nt)||/\s/.test(Oe)||H.test(Oe)),Ot=null,Pe=null;if(De%2&&(!h.em&&It&&(Le==="*"||!xt||H.test(Nt))?Ot=!0:h.em==Le&&xt&&(Le==="*"||!It||H.test(Oe))&&(Ot=!1)),De>1&&(!h.strong&&It&&(Le==="*"||!xt||H.test(Nt))?Pe=!0:h.strong==Le&&xt&&(Le==="*"||!It||H.test(Oe))&&(Pe=!1)),Pe!=null||Ot!=null){B.highlightFormatting&&(h.formatting=Ot==null?"strong":Pe==null?"em":"strong em"),Ot===!0&&(h.em=Le),Pe===!0&&(h.strong=Le);var lt=Z(h);return Ot===!1&&(h.em=!1),Pe===!1&&(h.strong=!1),lt}}else if(Le===" "&&(k.eat("*")||k.eat("_"))){if(k.peek()===" ")return Z(h);k.backUp(1)}if(B.strikethrough){if(Le==="~"&&k.eatWhile(Le)){if(h.strikethrough){B.highlightFormatting&&(h.formatting="strikethrough");var lt=Z(h);return h.strikethrough=!1,lt}else if(k.match(/^[^\s]/,!1))return h.strikethrough=!0,B.highlightFormatting&&(h.formatting="strikethrough"),Z(h)}else if(Le===" "&&k.match("~~",!0)){if(k.peek()===" ")return Z(h);k.backUp(2)}}if(B.emoji&&Le===":"&&k.match(/^(?:[a-z_\d+][a-z_\d+-]*|\-[a-z_\d+][a-z_\d+-]*):/)){h.emoji=!0,B.highlightFormatting&&(h.formatting="emoji");var zt=Z(h);return h.emoji=!1,zt}return Le===" "&&(k.match(/^ +$/,!1)?h.trailingSpace++:h.trailingSpace&&(h.trailingSpaceNewLine=!0)),Z(h)}function Re(k,h){var K=k.next();if(K===">"){h.f=h.inline=J,B.highlightFormatting&&(h.formatting="link");var ne=Z(h);return ne?ne+=" ":ne="",ne+N.linkInline}return k.match(/^[^>]+/,!0),N.linkInline}function _(k,h){if(k.eatSpace())return null;var K=k.next();return K==="("||K==="["?(h.f=h.inline=$(K==="("?")":"]"),B.highlightFormatting&&(h.formatting="link-string"),h.linkHref=!0,Z(h)):"error"}var le={")":/^(?:[^\\\(\)]|\\.|\((?:[^\\\(\)]|\\.)*\))*?(?=\))/,"]":/^(?:[^\\\[\]]|\\.|\[(?:[^\\\[\]]|\\.)*\])*?(?=\])/};function $(k){return function(h,K){var ne=h.next();if(ne===k){K.f=K.inline=J,B.highlightFormatting&&(K.formatting="link-string");var Le=Z(K);return K.linkHref=!1,Le}return h.match(le[k]),K.linkHref=!0,Z(K)}}function Ce(k,h){return k.match(/^([^\]\\]|\\.)*\]:/,!1)?(h.f=Je,k.next(),B.highlightFormatting&&(h.formatting="link"),h.linkText=!0,Z(h)):j(k,h,J)}function Je(k,h){if(k.match("]:",!0)){h.f=h.inline=at,B.highlightFormatting&&(h.formatting="link");var K=Z(h);return h.linkText=!1,K}return k.match(/^([^\]\\]|\\.)+/,!0),N.linkText}function at(k,h){return k.eatSpace()?null:(k.match(/^[^\s]+/,!0),k.peek()===void 0?h.linkTitle=!0:k.match(/^(?:\s+(?:"(?:[^"\\]|\\.)+"|'(?:[^'\\]|\\.)+'|\((?:[^)\\]|\\.)+\)))?/,!0),h.f=h.inline=J,N.linkHref+" url")}var kt={startState:function(){return{f:ie,prevLine:{stream:null},thisLine:{stream:null},block:ie,htmlState:null,indentation:0,inline:J,text:Ae,formatting:!1,linkText:!1,linkHref:!1,linkTitle:!1,code:0,em:!1,strong:!1,header:0,setext:0,hr:!1,taskList:!1,list:!1,listStack:[],quote:0,trailingSpace:0,trailingSpaceNewLine:!1,strikethrough:!1,emoji:!1,fencedEndRE:null}},copyState:function(k){return{f:k.f,prevLine:k.prevLine,thisLine:k.thisLine,block:k.block,htmlState:k.htmlState&&W.copyState(R,k.htmlState),indentation:k.indentation,localMode:k.localMode,localState:k.localMode?W.copyState(k.localMode,k.localState):null,inline:k.inline,text:k.text,formatting:!1,linkText:k.linkText,linkTitle:k.linkTitle,linkHref:k.linkHref,code:k.code,em:k.em,strong:k.strong,strikethrough:k.strikethrough,emoji:k.emoji,header:k.header,setext:k.setext,hr:k.hr,taskList:k.taskList,list:k.list,listStack:k.listStack.slice(0),quote:k.quote,indentedCode:k.indentedCode,trailingSpace:k.trailingSpace,trailingSpaceNewLine:k.trailingSpaceNewLine,md_inside:k.md_inside,fencedEndRE:k.fencedEndRE}},token:function(k,h){if(h.formatting=!1,k!=h.thisLine.stream){if(h.header=0,h.hr=!1,k.match(/^\s*$/,!0))return ue(h),null;if(h.prevLine=h.thisLine,h.thisLine={stream:k},h.taskList=!1,h.trailingSpace=0,h.trailingSpaceNewLine=!1,!h.localState&&(h.f=h.block,h.f!=ge)){var K=k.match(/^\s*/,!0)[0].replace(/\t/g,U).length;if(h.indentation=K,h.indentationDiff=null,K>0)return null}}return h.f(k,h)},innerMode:function(k){return k.block==ge?{state:k.htmlState,mode:R}:k.localState?{state:k.localState,mode:k.localMode}:{state:k,mode:kt}},indent:function(k,h,K){return k.block==ge&&R.indent?R.indent(k.htmlState,h,K):k.localState&&k.localMode.indent?k.localMode.indent(k.localState,h,K):W.Pass},blankLine:ue,getType:Z,blockCommentStart:"",closeBrackets:"()[]{}''\"\"``",fold:"markdown"};return kt},"xml"),W.defineMIME("text/markdown","markdown"),W.defineMIME("text/x-markdown","markdown")})},"./node_modules/codemirror/mode/meta.js":function(ct,_e,ye){(function(W){W(ye("./node_modules/codemirror/lib/codemirror.js"))})(function(W){"use strict";W.modeInfo=[{name:"APL",mime:"text/apl",mode:"apl",ext:["dyalog","apl"]},{name:"PGP",mimes:["application/pgp","application/pgp-encrypted","application/pgp-keys","application/pgp-signature"],mode:"asciiarmor",ext:["asc","pgp","sig"]},{name:"ASN.1",mime:"text/x-ttcn-asn",mode:"asn.1",ext:["asn","asn1"]},{name:"Asterisk",mime:"text/x-asterisk",mode:"asterisk",file:/^extensions\.conf$/i},{name:"Brainfuck",mime:"text/x-brainfuck",mode:"brainfuck",ext:["b","bf"]},{name:"C",mime:"text/x-csrc",mode:"clike",ext:["c","h","ino"]},{name:"C++",mime:"text/x-c++src",mode:"clike",ext:["cpp","c++","cc","cxx","hpp","h++","hh","hxx"],alias:["cpp"]},{name:"Cobol",mime:"text/x-cobol",mode:"cobol",ext:["cob","cpy","cbl"]},{name:"C#",mime:"text/x-csharp",mode:"clike",ext:["cs"],alias:["csharp","cs"]},{name:"Clojure",mime:"text/x-clojure",mode:"clojure",ext:["clj","cljc","cljx"]},{name:"ClojureScript",mime:"text/x-clojurescript",mode:"clojure",ext:["cljs"]},{name:"Closure Stylesheets (GSS)",mime:"text/x-gss",mode:"css",ext:["gss"]},{name:"CMake",mime:"text/x-cmake",mode:"cmake",ext:["cmake","cmake.in"],file:/^CMakeLists\.txt$/},{name:"CoffeeScript",mimes:["application/vnd.coffeescript","text/coffeescript","text/x-coffeescript"],mode:"coffeescript",ext:["coffee"],alias:["coffee","coffee-script"]},{name:"Common Lisp",mime:"text/x-common-lisp",mode:"commonlisp",ext:["cl","lisp","el"],alias:["lisp"]},{name:"Cypher",mime:"application/x-cypher-query",mode:"cypher",ext:["cyp","cypher"]},{name:"Cython",mime:"text/x-cython",mode:"python",ext:["pyx","pxd","pxi"]},{name:"Crystal",mime:"text/x-crystal",mode:"crystal",ext:["cr"]},{name:"CSS",mime:"text/css",mode:"css",ext:["css"]},{name:"CQL",mime:"text/x-cassandra",mode:"sql",ext:["cql"]},{name:"D",mime:"text/x-d",mode:"d",ext:["d"]},{name:"Dart",mimes:["application/dart","text/x-dart"],mode:"dart",ext:["dart"]},{name:"diff",mime:"text/x-diff",mode:"diff",ext:["diff","patch"]},{name:"Django",mime:"text/x-django",mode:"django"},{name:"Dockerfile",mime:"text/x-dockerfile",mode:"dockerfile",file:/^Dockerfile$/},{name:"DTD",mime:"application/xml-dtd",mode:"dtd",ext:["dtd"]},{name:"Dylan",mime:"text/x-dylan",mode:"dylan",ext:["dylan","dyl","intr"]},{name:"EBNF",mime:"text/x-ebnf",mode:"ebnf"},{name:"ECL",mime:"text/x-ecl",mode:"ecl",ext:["ecl"]},{name:"edn",mime:"application/edn",mode:"clojure",ext:["edn"]},{name:"Eiffel",mime:"text/x-eiffel",mode:"eiffel",ext:["e"]},{name:"Elm",mime:"text/x-elm",mode:"elm",ext:["elm"]},{name:"Embedded JavaScript",mime:"application/x-ejs",mode:"htmlembedded",ext:["ejs"]},{name:"Embedded Ruby",mime:"application/x-erb",mode:"htmlembedded",ext:["erb"]},{name:"Erlang",mime:"text/x-erlang",mode:"erlang",ext:["erl"]},{name:"Esper",mime:"text/x-esper",mode:"sql"},{name:"Factor",mime:"text/x-factor",mode:"factor",ext:["factor"]},{name:"FCL",mime:"text/x-fcl",mode:"fcl"},{name:"Forth",mime:"text/x-forth",mode:"forth",ext:["forth","fth","4th"]},{name:"Fortran",mime:"text/x-fortran",mode:"fortran",ext:["f","for","f77","f90","f95"]},{name:"F#",mime:"text/x-fsharp",mode:"mllike",ext:["fs"],alias:["fsharp"]},{name:"Gas",mime:"text/x-gas",mode:"gas",ext:["s"]},{name:"Gherkin",mime:"text/x-feature",mode:"gherkin",ext:["feature"]},{name:"GitHub Flavored Markdown",mime:"text/x-gfm",mode:"gfm",file:/^(readme|contributing|history)\.md$/i},{name:"Go",mime:"text/x-go",mode:"go",ext:["go"]},{name:"Groovy",mime:"text/x-groovy",mode:"groovy",ext:["groovy","gradle"],file:/^Jenkinsfile$/},{name:"HAML",mime:"text/x-haml",mode:"haml",ext:["haml"]},{name:"Haskell",mime:"text/x-haskell",mode:"haskell",ext:["hs"]},{name:"Haskell (Literate)",mime:"text/x-literate-haskell",mode:"haskell-literate",ext:["lhs"]},{name:"Haxe",mime:"text/x-haxe",mode:"haxe",ext:["hx"]},{name:"HXML",mime:"text/x-hxml",mode:"haxe",ext:["hxml"]},{name:"ASP.NET",mime:"application/x-aspx",mode:"htmlembedded",ext:["aspx"],alias:["asp","aspx"]},{name:"HTML",mime:"text/html",mode:"htmlmixed",ext:["html","htm","handlebars","hbs"],alias:["xhtml"]},{name:"HTTP",mime:"message/http",mode:"http"},{name:"IDL",mime:"text/x-idl",mode:"idl",ext:["pro"]},{name:"Pug",mime:"text/x-pug",mode:"pug",ext:["jade","pug"],alias:["jade"]},{name:"Java",mime:"text/x-java",mode:"clike",ext:["java"]},{name:"Java Server Pages",mime:"application/x-jsp",mode:"htmlembedded",ext:["jsp"],alias:["jsp"]},{name:"JavaScript",mimes:["text/javascript","text/ecmascript","application/javascript","application/x-javascript","application/ecmascript"],mode:"javascript",ext:["js"],alias:["ecmascript","js","node"]},{name:"JSON",mimes:["application/json","application/x-json"],mode:"javascript",ext:["json","map"],alias:["json5"]},{name:"JSON-LD",mime:"application/ld+json",mode:"javascript",ext:["jsonld"],alias:["jsonld"]},{name:"JSX",mime:"text/jsx",mode:"jsx",ext:["jsx"]},{name:"Jinja2",mime:"text/jinja2",mode:"jinja2",ext:["j2","jinja","jinja2"]},{name:"Julia",mime:"text/x-julia",mode:"julia",ext:["jl"],alias:["jl"]},{name:"Kotlin",mime:"text/x-kotlin",mode:"clike",ext:["kt"]},{name:"LESS",mime:"text/x-less",mode:"css",ext:["less"]},{name:"LiveScript",mime:"text/x-livescript",mode:"livescript",ext:["ls"],alias:["ls"]},{name:"Lua",mime:"text/x-lua",mode:"lua",ext:["lua"]},{name:"Markdown",mime:"text/x-markdown",mode:"markdown",ext:["markdown","md","mkd"]},{name:"mIRC",mime:"text/mirc",mode:"mirc"},{name:"MariaDB SQL",mime:"text/x-mariadb",mode:"sql"},{name:"Mathematica",mime:"text/x-mathematica",mode:"mathematica",ext:["m","nb","wl","wls"]},{name:"Modelica",mime:"text/x-modelica",mode:"modelica",ext:["mo"]},{name:"MUMPS",mime:"text/x-mumps",mode:"mumps",ext:["mps"]},{name:"MS SQL",mime:"text/x-mssql",mode:"sql"},{name:"mbox",mime:"application/mbox",mode:"mbox",ext:["mbox"]},{name:"MySQL",mime:"text/x-mysql",mode:"sql"},{name:"Nginx",mime:"text/x-nginx-conf",mode:"nginx",file:/nginx.*\.conf$/i},{name:"NSIS",mime:"text/x-nsis",mode:"nsis",ext:["nsh","nsi"]},{name:"NTriples",mimes:["application/n-triples","application/n-quads","text/n-triples"],mode:"ntriples",ext:["nt","nq"]},{name:"Objective-C",mime:"text/x-objectivec",mode:"clike",ext:["m"],alias:["objective-c","objc"]},{name:"Objective-C++",mime:"text/x-objectivec++",mode:"clike",ext:["mm"],alias:["objective-c++","objc++"]},{name:"OCaml",mime:"text/x-ocaml",mode:"mllike",ext:["ml","mli","mll","mly"]},{name:"Octave",mime:"text/x-octave",mode:"octave",ext:["m"]},{name:"Oz",mime:"text/x-oz",mode:"oz",ext:["oz"]},{name:"Pascal",mime:"text/x-pascal",mode:"pascal",ext:["p","pas"]},{name:"PEG.js",mime:"null",mode:"pegjs",ext:["jsonld"]},{name:"Perl",mime:"text/x-perl",mode:"perl",ext:["pl","pm"]},{name:"PHP",mimes:["text/x-php","application/x-httpd-php","application/x-httpd-php-open"],mode:"php",ext:["php","php3","php4","php5","php7","phtml"]},{name:"Pig",mime:"text/x-pig",mode:"pig",ext:["pig"]},{name:"Plain Text",mime:"text/plain",mode:"null",ext:["txt","text","conf","def","list","log"]},{name:"PLSQL",mime:"text/x-plsql",mode:"sql",ext:["pls"]},{name:"PostgreSQL",mime:"text/x-pgsql",mode:"sql"},{name:"PowerShell",mime:"application/x-powershell",mode:"powershell",ext:["ps1","psd1","psm1"]},{name:"Properties files",mime:"text/x-properties",mode:"properties",ext:["properties","ini","in"],alias:["ini","properties"]},{name:"ProtoBuf",mime:"text/x-protobuf",mode:"protobuf",ext:["proto"]},{name:"Python",mime:"text/x-python",mode:"python",ext:["BUILD","bzl","py","pyw"],file:/^(BUCK|BUILD)$/},{name:"Puppet",mime:"text/x-puppet",mode:"puppet",ext:["pp"]},{name:"Q",mime:"text/x-q",mode:"q",ext:["q"]},{name:"R",mime:"text/x-rsrc",mode:"r",ext:["r","R"],alias:["rscript"]},{name:"reStructuredText",mime:"text/x-rst",mode:"rst",ext:["rst"],alias:["rst"]},{name:"RPM Changes",mime:"text/x-rpm-changes",mode:"rpm"},{name:"RPM Spec",mime:"text/x-rpm-spec",mode:"rpm",ext:["spec"]},{name:"Ruby",mime:"text/x-ruby",mode:"ruby",ext:["rb"],alias:["jruby","macruby","rake","rb","rbx"]},{name:"Rust",mime:"text/x-rustsrc",mode:"rust",ext:["rs"]},{name:"SAS",mime:"text/x-sas",mode:"sas",ext:["sas"]},{name:"Sass",mime:"text/x-sass",mode:"sass",ext:["sass"]},{name:"Scala",mime:"text/x-scala",mode:"clike",ext:["scala"]},{name:"Scheme",mime:"text/x-scheme",mode:"scheme",ext:["scm","ss"]},{name:"SCSS",mime:"text/x-scss",mode:"css",ext:["scss"]},{name:"Shell",mimes:["text/x-sh","application/x-sh"],mode:"shell",ext:["sh","ksh","bash"],alias:["bash","sh","zsh"],file:/^PKGBUILD$/},{name:"Sieve",mime:"application/sieve",mode:"sieve",ext:["siv","sieve"]},{name:"Slim",mimes:["text/x-slim","application/x-slim"],mode:"slim",ext:["slim"]},{name:"Smalltalk",mime:"text/x-stsrc",mode:"smalltalk",ext:["st"]},{name:"Smarty",mime:"text/x-smarty",mode:"smarty",ext:["tpl"]},{name:"Solr",mime:"text/x-solr",mode:"solr"},{name:"SML",mime:"text/x-sml",mode:"mllike",ext:["sml","sig","fun","smackspec"]},{name:"Soy",mime:"text/x-soy",mode:"soy",ext:["soy"],alias:["closure template"]},{name:"SPARQL",mime:"application/sparql-query",mode:"sparql",ext:["rq","sparql"],alias:["sparul"]},{name:"Spreadsheet",mime:"text/x-spreadsheet",mode:"spreadsheet",alias:["excel","formula"]},{name:"SQL",mime:"text/x-sql",mode:"sql",ext:["sql"]},{name:"SQLite",mime:"text/x-sqlite",mode:"sql"},{name:"Squirrel",mime:"text/x-squirrel",mode:"clike",ext:["nut"]},{name:"Stylus",mime:"text/x-styl",mode:"stylus",ext:["styl"]},{name:"Swift",mime:"text/x-swift",mode:"swift",ext:["swift"]},{name:"sTeX",mime:"text/x-stex",mode:"stex"},{name:"LaTeX",mime:"text/x-latex",mode:"stex",ext:["text","ltx","tex"],alias:["tex"]},{name:"SystemVerilog",mime:"text/x-systemverilog",mode:"verilog",ext:["v","sv","svh"]},{name:"Tcl",mime:"text/x-tcl",mode:"tcl",ext:["tcl"]},{name:"Textile",mime:"text/x-textile",mode:"textile",ext:["textile"]},{name:"TiddlyWiki",mime:"text/x-tiddlywiki",mode:"tiddlywiki"},{name:"Tiki wiki",mime:"text/tiki",mode:"tiki"},{name:"TOML",mime:"text/x-toml",mode:"toml",ext:["toml"]},{name:"Tornado",mime:"text/x-tornado",mode:"tornado"},{name:"troff",mime:"text/troff",mode:"troff",ext:["1","2","3","4","5","6","7","8","9"]},{name:"TTCN",mime:"text/x-ttcn",mode:"ttcn",ext:["ttcn","ttcn3","ttcnpp"]},{name:"TTCN_CFG",mime:"text/x-ttcn-cfg",mode:"ttcn-cfg",ext:["cfg"]},{name:"Turtle",mime:"text/turtle",mode:"turtle",ext:["ttl"]},{name:"TypeScript",mime:"application/typescript",mode:"javascript",ext:["ts"],alias:["ts"]},{name:"TypeScript-JSX",mime:"text/typescript-jsx",mode:"jsx",ext:["tsx"],alias:["tsx"]},{name:"Twig",mime:"text/x-twig",mode:"twig"},{name:"Web IDL",mime:"text/x-webidl",mode:"webidl",ext:["webidl"]},{name:"VB.NET",mime:"text/x-vb",mode:"vb",ext:["vb"]},{name:"VBScript",mime:"text/vbscript",mode:"vbscript",ext:["vbs"]},{name:"Velocity",mime:"text/velocity",mode:"velocity",ext:["vtl"]},{name:"Verilog",mime:"text/x-verilog",mode:"verilog",ext:["v"]},{name:"VHDL",mime:"text/x-vhdl",mode:"vhdl",ext:["vhd","vhdl"]},{name:"Vue.js Component",mimes:["script/x-vue","text/x-vue"],mode:"vue",ext:["vue"]},{name:"XML",mimes:["application/xml","text/xml"],mode:"xml",ext:["xml","xsl","xsd","svg"],alias:["rss","wsdl","xsd"]},{name:"XQuery",mime:"application/xquery",mode:"xquery",ext:["xy","xquery"]},{name:"Yacas",mime:"text/x-yacas",mode:"yacas",ext:["ys"]},{name:"YAML",mimes:["text/x-yaml","text/yaml"],mode:"yaml",ext:["yaml","yml"],alias:["yml"]},{name:"Z80",mime:"text/x-z80",mode:"z80",ext:["z80"]},{name:"mscgen",mime:"text/x-mscgen",mode:"mscgen",ext:["mscgen","mscin","msc"]},{name:"xu",mime:"text/x-xu",mode:"mscgen",ext:["xu"]},{name:"msgenny",mime:"text/x-msgenny",mode:"mscgen",ext:["msgenny"]},{name:"WebAssembly",mime:"text/webassembly",mode:"wast",ext:["wat","wast"]}];for(var Q=0;Q-1&&R.substring(N+1,R.length);if(Y)return W.findModeByExtension(Y)},W.findModeByName=function(R){R=R.toLowerCase();for(var L=0;L")):null:_.match("--")?$(me("comment","-->")):_.match("DOCTYPE",!0,!0)?(_.eatWhile(/[\w\._\-]/),$(be(1))):null:_.eat("?")?(_.eatWhile(/[\w\._\-]/),le.tokenize=me("meta","?>"),"meta"):(G=_.eat("/")?"closeTag":"openTag",le.tokenize=pe,"tag bracket");if(Ce=="&"){var Je;return _.eat("#")?_.eat("x")?Je=_.eatWhile(/[a-fA-F\d]/)&&_.eat(";"):Je=_.eatWhile(/[\d]/)&&_.eat(";"):Je=_.eatWhile(/[\w\.\-:]/)&&_.eat(";"),Je?"atom":"error"}else return _.eatWhile(/[^&<]/),null}oe.isInText=!0;function pe(_,le){var $=_.next();if($==">"||$=="/"&&_.eat(">"))return le.tokenize=oe,G=$==">"?"endTag":"selfcloseTag","tag bracket";if($=="=")return G="equals",null;if($=="<"){le.tokenize=oe,le.state=X,le.tagName=le.tagStart=null;var Ce=le.tokenize(_,le);return Ce?Ce+" tag error":"tag error"}else return/[\'\"]/.test($)?(le.tokenize=Ee($),le.stringStartCol=_.column(),le.tokenize(_,le)):(_.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function Ee(_){var le=function($,Ce){for(;!$.eol();)if($.next()==_){Ce.tokenize=pe;break}return"string"};return le.isInAttribute=!0,le}function me(_,le){return function($,Ce){for(;!$.eol();){if($.match(le)){Ce.tokenize=oe;break}$.next()}return _}}function be(_){return function(le,$){for(var Ce;(Ce=le.next())!=null;){if(Ce=="<")return $.tokenize=be(_+1),$.tokenize(le,$);if(Ce==">")if(_==1){$.tokenize=oe;break}else return $.tokenize=be(_-1),$.tokenize(le,$)}return"meta"}}function H(_){return _&&_.toLowerCase()}function U(_,le,$){this.prev=_.context,this.tagName=le||"",this.indent=_.indented,this.startOfLine=$,(N.doNotIndent.hasOwnProperty(le)||_.context&&_.context.noIndent)&&(this.noIndent=!0)}function j(_){_.context&&(_.context=_.context.prev)}function te(_,le){for(var $;;){if(!_.context||($=_.context.tagName,!N.contextGrabbers.hasOwnProperty(H($))||!N.contextGrabbers[H($)].hasOwnProperty(H(le))))return;j(_)}}function X(_,le,$){return _=="openTag"?($.tagStart=le.column(),ue):_=="closeTag"?ie:X}function ue(_,le,$){return _=="word"?($.tagName=le.current(),P="tag",Z):N.allowMissingTagName&&_=="endTag"?(P="tag bracket",Z(_,le,$)):(P="error",ue)}function ie(_,le,$){if(_=="word"){var Ce=le.current();return $.context&&$.context.tagName!=Ce&&N.implicitlyClosed.hasOwnProperty(H($.context.tagName))&&j($),$.context&&$.context.tagName==Ce||N.matchClosing===!1?(P="tag",ge):(P="tag error",Te)}else return N.allowMissingTagName&&_=="endTag"?(P="tag bracket",ge(_,le,$)):(P="error",Te)}function ge(_,le,$){return _!="endTag"?(P="error",ge):(j($),X)}function Te(_,le,$){return P="error",ge(_,le,$)}function Z(_,le,$){if(_=="word")return P="attribute",Ae;if(_=="endTag"||_=="selfcloseTag"){var Ce=$.tagName,Je=$.tagStart;return $.tagName=$.tagStart=null,_=="selfcloseTag"||N.autoSelfClosers.hasOwnProperty(H(Ce))?te($,Ce):(te($,Ce),$.context=new U($,Ce,Je==$.indented)),X}return P="error",Z}function Ae(_,le,$){return _=="equals"?J:(N.allowMissing||(P="error"),Z(_,le,$))}function J(_,le,$){return _=="string"?Re:_=="word"&&N.allowUnquoted?(P="string",Z):(P="error",Z(_,le,$))}function Re(_,le,$){return _=="string"?Re:Z(_,le,$)}return{startState:function(_){var le={tokenize:oe,state:X,indented:_||0,tagName:null,tagStart:null,context:null};return _!=null&&(le.baseIndent=_),le},token:function(_,le){if(!le.tagName&&_.sol()&&(le.indented=_.indentation()),_.eatSpace())return null;G=null;var $=le.tokenize(_,le);return($||G)&&$!="comment"&&(P=null,le.state=le.state(G||$,_,le),P&&($=P=="error"?$+" error":P)),$},indent:function(_,le,$){var Ce=_.context;if(_.tokenize.isInAttribute)return _.tagStart==_.indented?_.stringStartCol+1:_.indented+A;if(Ce&&Ce.noIndent)return W.Pass;if(_.tokenize!=pe&&_.tokenize!=oe)return $?$.match(/^(\s*)/)[0].length:0;if(_.tagName)return N.multilineTagIndentPastTag!==!1?_.tagStart+_.tagName.length+2:_.tagStart+A*(N.multilineTagIndentFactor||1);if(N.alignCDATA&&/$/,blockCommentStart:"",configuration:N.htmlMode?"html":"xml",helperType:N.htmlMode?"html":"xml",skipAttribute:function(_){_.state==J&&(_.state=Z)},xmlCurrentTag:function(_){return _.tagName?{name:_.tagName,close:_.type=="closeTag"}:null},xmlCurrentContext:function(_){for(var le=[],$=_.context;$;$=$.prev)le.push($.tagName);return le.reverse()}}}),W.defineMIME("text/xml","xml"),W.defineMIME("application/xml","xml"),W.mimeModes.hasOwnProperty("text/html")||W.defineMIME("text/html",{name:"xml",htmlMode:!0})})},"./node_modules/easymde/src/js/codemirror/tablist.js":function(ct,_e,ye){var W=ye("./node_modules/codemirror/lib/codemirror.js");W.commands.tabAndIndentMarkdownList=function(Q){var B=Q.listSelections(),R=B[0].head,L=Q.getStateAfter(R.line),A=L.list!==!1;if(A){Q.execCommand("indentMore");return}if(Q.options.indentWithTabs)Q.execCommand("insertTab");else{var N=Array(Q.options.tabSize+1).join(" ");Q.replaceSelection(N)}},W.commands.shiftTabAndUnindentMarkdownList=function(Q){var B=Q.listSelections(),R=B[0].head,L=Q.getStateAfter(R.line),A=L.list!==!1;if(A){Q.execCommand("indentLess");return}if(Q.options.indentWithTabs)Q.execCommand("insertTab");else{var N=Array(Q.options.tabSize+1).join(" ");Q.replaceSelection(N)}}},"./node_modules/easymde/src/js/easymde.js":function(ct,_e,ye){"use strict";var W=ye("./node_modules/codemirror/lib/codemirror.js");ye("./node_modules/codemirror/addon/edit/continuelist.js"),ye("./node_modules/easymde/src/js/codemirror/tablist.js"),ye("./node_modules/codemirror/addon/display/fullscreen.js"),ye("./node_modules/codemirror/mode/markdown/markdown.js"),ye("./node_modules/codemirror/addon/mode/overlay.js"),ye("./node_modules/codemirror/addon/display/placeholder.js"),ye("./node_modules/codemirror/addon/display/autorefresh.js"),ye("./node_modules/codemirror/addon/selection/mark-selection.js"),ye("./node_modules/codemirror/addon/search/searchcursor.js"),ye("./node_modules/codemirror/mode/gfm/gfm.js"),ye("./node_modules/codemirror/mode/xml/xml.js");var Q=ye("./node_modules/codemirror-spell-checker/src/js/spell-checker.js"),B=ye("./node_modules/marked/lib/marked.cjs").xI,R=/Mac/.test(navigator.platform),L=new RegExp(/()+?/g),A={toggleBold:te,toggleItalic:X,drawLink:kt,toggleHeadingSmaller:Te,toggleHeadingBigger:Z,drawImage:k,toggleBlockquote:ge,toggleOrderedList:Je,toggleUnorderedList:Ce,toggleCodeBlock:ie,togglePreview:lt,toggleStrikethrough:ue,toggleHeading1:Ae,toggleHeading2:J,toggleHeading3:Re,toggleHeading4:_,toggleHeading5:le,toggleHeading6:$,cleanBlock:at,drawTable:Le,drawHorizontalRule:Ge,undo:Qe,redo:je,toggleSideBySide:ot,toggleFullScreen:j},N={toggleBold:"Cmd-B",toggleItalic:"Cmd-I",drawLink:"Cmd-K",toggleHeadingSmaller:"Cmd-H",toggleHeadingBigger:"Shift-Cmd-H",toggleHeading1:"Ctrl+Alt+1",toggleHeading2:"Ctrl+Alt+2",toggleHeading3:"Ctrl+Alt+3",toggleHeading4:"Ctrl+Alt+4",toggleHeading5:"Ctrl+Alt+5",toggleHeading6:"Ctrl+Alt+6",cleanBlock:"Cmd-E",drawImage:"Cmd-Alt-I",toggleBlockquote:"Cmd-'",toggleOrderedList:"Cmd-Alt-L",toggleUnorderedList:"Cmd-L",toggleCodeBlock:"Cmd-Alt-C",togglePreview:"Cmd-P",toggleSideBySide:"F9",toggleFullScreen:"F11"},Y=function(l){for(var d in A)if(A[d]===l)return d;return null},V=function(){var l=!1;return function(d){(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(d)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(d.substr(0,4)))&&(l=!0)}(navigator.userAgent||navigator.vendor||window.opera),l};function G(l){for(var d;(d=L.exec(l))!==null;){var m=d[0];if(m.indexOf("target=")===-1){var y=m.replace(/>$/,' target="_blank">');l=l.replace(m,y)}}return l}function P(l){for(var d=new DOMParser,m=d.parseFromString(l,"text/html"),y=m.getElementsByTagName("li"),F=0;F0){for(var ce=document.createElement("i"),We=0;We=0&&(he=b.getLineHandle(xe),!m(he));xe--);var ze=b.getTokenAt({line:xe,ch:1}),$e=y(ze).fencedChars,Ve,At,yt,Wt;m(b.getLineHandle(w.line))?(Ve="",At=w.line):m(b.getLineHandle(w.line-1))?(Ve="",At=w.line-1):(Ve=$e+` +`,At=w.line),m(b.getLineHandle(C.line))?(yt="",Wt=C.line,C.ch===0&&(Wt+=1)):C.ch!==0&&m(b.getLineHandle(C.line+1))?(yt="",Wt=C.line+1):(yt=$e+` +`,Wt=C.line+1),C.ch===0&&(Wt-=1),b.operation(function(){b.replaceRange(yt,{line:Wt,ch:0},{line:Wt+(yt?0:1),ch:0}),b.replaceRange(Ve,{line:At,ch:0},{line:At+(Ve?0:1),ch:0})}),b.setSelection({line:At+(Ve?1:0),ch:0},{line:Wt+(Ve?1:-1),ch:0}),b.focus()}else{var Mr=w.line;if(m(b.getLineHandle(w.line))&&(F(b,w.line+1)==="fenced"?(xe=w.line,Mr=w.line+1):(ce=w.line,Mr=w.line-1)),xe===void 0)for(xe=Mr;xe>=0&&(he=b.getLineHandle(xe),!m(he));xe--);if(ce===void 0)for(We=b.lineCount(),ce=Mr;ce=0;xe--)if(he=b.getLineHandle(xe),!he.text.match(/^\s*$/)&&F(b,xe,he)!=="indented"){xe+=1;break}for(We=b.lineCount(),ce=w.line;ce\s+/,"unordered-list":y,"ordered-list":y},ee=function(We,Ue){var Be={quote:">","unordered-list":m,"ordered-list":"%%i."};return Be[We].replace("%%i",Ue)},he=function(We,Ue){var Be={quote:">","unordered-list":"\\"+m,"ordered-list":"\\d+."},ze=new RegExp(Be[We]);return Ue&&ze.test(Ue)},ke=function(We,Ue,Be){var ze=y.exec(Ue),$e=ee(We,xe);return ze!==null?(he(We,ze[2])&&($e=""),Ue=ze[1]+$e+ze[3]+Ue.replace(F,"").replace(C[We],"$1")):Be==!1&&(Ue=$e+" "+Ue),Ue},xe=1,ce=b.line;ce<=w.line;ce++)(function(We){var Ue=l.getLine(We);S[d]?Ue=Ue.replace(C[d],"$1"):(d=="unordered-list"&&(Ue=ke("ordered-list",Ue,!0)),Ue=ke(d,Ue,!1),xe+=1),l.replaceRange(Ue,{line:We,ch:0},{line:We,ch:99999999999999})})(ce);l.focus()}}function jt(l,d,m,y){if(!(!l.codemirror||l.isPreviewActive())){var F=l.codemirror,S=H(F),b=S[d];if(!b){Ie(F,b,m,y);return}var w=F.getCursor("start"),C=F.getCursor("end"),ee=F.getLine(w.line),he=ee.slice(0,w.ch),ke=ee.slice(w.ch);d=="link"?he=he.replace(/(.*)[^!]\[/,"$1"):d=="image"&&(he=he.replace(/(.*)!\[$/,"$1")),ke=ke.replace(/]\(.*?\)/,""),F.replaceRange(he+ke,{line:w.line,ch:0},{line:w.line,ch:99999999999999}),w.ch-=m[0].length,w!==C&&(C.ch-=m[0].length),F.setSelection(w,C),F.focus()}}function De(l,d,m,y){if(!(!l.codemirror||l.isPreviewActive())){y=typeof y>"u"?m:y;var F=l.codemirror,S=H(F),b,w=m,C=y,ee=F.getCursor("start"),he=F.getCursor("end");S[d]?(b=F.getLine(ee.line),w=b.slice(0,ee.ch),C=b.slice(ee.ch),d=="bold"?(w=w.replace(/(\*\*|__)(?![\s\S]*(\*\*|__))/,""),C=C.replace(/(\*\*|__)/,"")):d=="italic"?(w=w.replace(/(\*|_)(?![\s\S]*(\*|_))/,""),C=C.replace(/(\*|_)/,"")):d=="strikethrough"&&(w=w.replace(/(\*\*|~~)(?![\s\S]*(\*\*|~~))/,""),C=C.replace(/(\*\*|~~)/,"")),F.replaceRange(w+C,{line:ee.line,ch:0},{line:ee.line,ch:99999999999999}),d=="bold"||d=="strikethrough"?(ee.ch-=2,ee!==he&&(he.ch-=2)):d=="italic"&&(ee.ch-=1,ee!==he&&(he.ch-=1))):(b=F.getSelection(),d=="bold"?(b=b.split("**").join(""),b=b.split("__").join("")):d=="italic"?(b=b.split("*").join(""),b=b.split("_").join("")):d=="strikethrough"&&(b=b.split("~~").join("")),F.replaceSelection(w+b+C),ee.ch+=m.length,he.ch=ee.ch+b.length),F.setSelection(ee,he),F.focus()}}function Nt(l){if(!l.getWrapperElement().lastChild.classList.contains("editor-preview-active"))for(var d=l.getCursor("start"),m=l.getCursor("end"),y,F=d.line;F<=m.line;F++)y=l.getLine(F),y=y.replace(/^[ ]*([# ]+|\*|-|[> ]+|[0-9]+(.|\)))[ ]*/,""),l.replaceRange(y,{line:F,ch:0},{line:F,ch:99999999999999})}function Oe(l,d){if(Math.abs(l)<1024)return""+l+d[0];var m=0;do l/=1024,++m;while(Math.abs(l)>=1024&&m=19968?y+=m[F].length:y+=1;return y}var Pe={bold:"fa fa-bold",italic:"fa fa-italic",strikethrough:"fa fa-strikethrough",heading:"fa fa-header fa-heading","heading-smaller":"fa fa-header fa-heading header-smaller","heading-bigger":"fa fa-header fa-heading header-bigger","heading-1":"fa fa-header fa-heading header-1","heading-2":"fa fa-header fa-heading header-2","heading-3":"fa fa-header fa-heading header-3",code:"fa fa-code",quote:"fa fa-quote-left","ordered-list":"fa fa-list-ol","unordered-list":"fa fa-list-ul","clean-block":"fa fa-eraser",link:"fa fa-link",image:"fa fa-image","upload-image":"fa fa-image",table:"fa fa-table","horizontal-rule":"fa fa-minus",preview:"fa fa-eye","side-by-side":"fa fa-columns",fullscreen:"fa fa-arrows-alt",guide:"fa fa-question-circle",undo:"fa fa-undo",redo:"fa fa-repeat fa-redo"},zt={bold:{name:"bold",action:te,className:Pe.bold,title:"Bold",default:!0},italic:{name:"italic",action:X,className:Pe.italic,title:"Italic",default:!0},strikethrough:{name:"strikethrough",action:ue,className:Pe.strikethrough,title:"Strikethrough"},heading:{name:"heading",action:Te,className:Pe.heading,title:"Heading",default:!0},"heading-smaller":{name:"heading-smaller",action:Te,className:Pe["heading-smaller"],title:"Smaller Heading"},"heading-bigger":{name:"heading-bigger",action:Z,className:Pe["heading-bigger"],title:"Bigger Heading"},"heading-1":{name:"heading-1",action:Ae,className:Pe["heading-1"],title:"Big Heading"},"heading-2":{name:"heading-2",action:J,className:Pe["heading-2"],title:"Medium Heading"},"heading-3":{name:"heading-3",action:Re,className:Pe["heading-3"],title:"Small Heading"},"separator-1":{name:"separator-1"},code:{name:"code",action:ie,className:Pe.code,title:"Code"},quote:{name:"quote",action:ge,className:Pe.quote,title:"Quote",default:!0},"unordered-list":{name:"unordered-list",action:Ce,className:Pe["unordered-list"],title:"Generic List",default:!0},"ordered-list":{name:"ordered-list",action:Je,className:Pe["ordered-list"],title:"Numbered List",default:!0},"clean-block":{name:"clean-block",action:at,className:Pe["clean-block"],title:"Clean block"},"separator-2":{name:"separator-2"},link:{name:"link",action:kt,className:Pe.link,title:"Create Link",default:!0},image:{name:"image",action:k,className:Pe.image,title:"Insert Image",default:!0},"upload-image":{name:"upload-image",action:K,className:Pe["upload-image"],title:"Import an image"},table:{name:"table",action:Le,className:Pe.table,title:"Insert Table"},"horizontal-rule":{name:"horizontal-rule",action:Ge,className:Pe["horizontal-rule"],title:"Insert Horizontal Line"},"separator-3":{name:"separator-3"},preview:{name:"preview",action:lt,className:Pe.preview,noDisable:!0,title:"Toggle Preview",default:!0},"side-by-side":{name:"side-by-side",action:ot,className:Pe["side-by-side"],noDisable:!0,noMobile:!0,title:"Toggle Side by Side",default:!0},fullscreen:{name:"fullscreen",action:j,className:Pe.fullscreen,noDisable:!0,noMobile:!0,title:"Toggle Fullscreen",default:!0},"separator-4":{name:"separator-4"},guide:{name:"guide",action:"https://www.markdownguide.org/basic-syntax/",className:Pe.guide,noDisable:!0,title:"Markdown Guide",default:!0},"separator-5":{name:"separator-5"},undo:{name:"undo",action:Qe,className:Pe.undo,noDisable:!0,title:"Undo"},redo:{name:"redo",action:je,className:Pe.redo,noDisable:!0,title:"Redo"}},xr={link:["[","](#url#)"],image:["![","](#url#)"],uploadedImage:["![](#url#)",""],table:["",` + +| Column 1 | Column 2 | Column 3 | +| -------- | -------- | -------- | +| Text | Text | Text | + +`],horizontalRule:["",` + +----- + +`]},I={link:"URL for the link:",image:"URL of the image:"},O={locale:"en-US",format:{hour:"2-digit",minute:"2-digit"}},T={bold:"**",code:"```",italic:"*"},c={sbInit:"Attach files by drag and dropping or pasting from clipboard.",sbOnDragEnter:"Drop image to upload it.",sbOnDrop:"Uploading image #images_names#...",sbProgress:"Uploading #file_name#: #progress#%",sbOnUploaded:"Uploaded #image_name#",sizeUnits:" B, KB, MB"},p={noFileGiven:"You must select a file.",typeNotAllowed:"This image type is not allowed.",fileTooLarge:`Image #image_name# is too big (#image_size#). +Maximum file size is #image_max_size#.`,importError:"Something went wrong when uploading the image #image_name#."};function g(l){l=l||{},l.parent=this;var d=!0;if(l.autoDownloadFontAwesome===!1&&(d=!1),l.autoDownloadFontAwesome!==!0)for(var m=document.styleSheets,y=0;y-1&&(d=!1);if(d){var F=document.createElement("link");F.rel="stylesheet",F.href="https://maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css",document.getElementsByTagName("head")[0].appendChild(F)}if(l.element)this.element=l.element;else if(l.element===null){console.log("EasyMDE: Error. No element was found.");return}if(l.toolbar===void 0){l.toolbar=[];for(var S in zt)Object.prototype.hasOwnProperty.call(zt,S)&&(S.indexOf("separator-")!=-1&&l.toolbar.push("|"),(zt[S].default===!0||l.showIcons&&l.showIcons.constructor===Array&&l.showIcons.indexOf(S)!=-1)&&l.toolbar.push(S))}if(Object.prototype.hasOwnProperty.call(l,"previewClass")||(l.previewClass="editor-preview"),Object.prototype.hasOwnProperty.call(l,"status")||(l.status=["autosave","lines","words","cursor"],l.uploadImage&&l.status.unshift("upload-image")),l.previewRender||(l.previewRender=function(w){return this.parent.markdown(w)}),l.parsingConfig=xt({highlightFormatting:!0},l.parsingConfig||{}),l.insertTexts=xt({},xr,l.insertTexts||{}),l.promptTexts=xt({},I,l.promptTexts||{}),l.blockStyles=xt({},T,l.blockStyles||{}),l.autosave!=null&&(l.autosave.timeFormat=xt({},O,l.autosave.timeFormat||{})),l.iconClassMap=xt({},Pe,l.iconClassMap||{}),l.shortcuts=xt({},N,l.shortcuts||{}),l.maxHeight=l.maxHeight||void 0,l.direction=l.direction||"ltr",typeof l.maxHeight<"u"?l.minHeight=l.maxHeight:l.minHeight=l.minHeight||"300px",l.errorCallback=l.errorCallback||function(w){alert(w)},l.uploadImage=l.uploadImage||!1,l.imageMaxSize=l.imageMaxSize||2097152,l.imageAccept=l.imageAccept||"image/png, image/jpeg, image/gif, image/avif",l.imageTexts=xt({},c,l.imageTexts||{}),l.errorMessages=xt({},p,l.errorMessages||{}),l.imagePathAbsolute=l.imagePathAbsolute||!1,l.imageCSRFName=l.imageCSRFName||"csrfmiddlewaretoken",l.imageCSRFHeader=l.imageCSRFHeader||!1,l.autosave!=null&&l.autosave.unique_id!=null&&l.autosave.unique_id!=""&&(l.autosave.uniqueId=l.autosave.unique_id),l.overlayMode&&l.overlayMode.combine===void 0&&(l.overlayMode.combine=!0),this.options=l,this.render(),l.initialValue&&(!this.options.autosave||this.options.autosave.foundSavedValue!==!0)&&this.value(l.initialValue),l.uploadImage){var b=this;this.codemirror.on("dragenter",function(w,C){b.updateStatusBar("upload-image",b.options.imageTexts.sbOnDragEnter),C.stopPropagation(),C.preventDefault()}),this.codemirror.on("dragend",function(w,C){b.updateStatusBar("upload-image",b.options.imageTexts.sbInit),C.stopPropagation(),C.preventDefault()}),this.codemirror.on("dragleave",function(w,C){b.updateStatusBar("upload-image",b.options.imageTexts.sbInit),C.stopPropagation(),C.preventDefault()}),this.codemirror.on("dragover",function(w,C){b.updateStatusBar("upload-image",b.options.imageTexts.sbOnDragEnter),C.stopPropagation(),C.preventDefault()}),this.codemirror.on("drop",function(w,C){C.stopPropagation(),C.preventDefault(),l.imageUploadFunction?b.uploadImagesUsingCustomFunction(l.imageUploadFunction,C.dataTransfer.files):b.uploadImages(C.dataTransfer.files)}),this.codemirror.on("paste",function(w,C){l.imageUploadFunction?b.uploadImagesUsingCustomFunction(l.imageUploadFunction,C.clipboardData.files):b.uploadImages(C.clipboardData.files)})}}g.prototype.uploadImages=function(l,d,m){if(l.length!==0){for(var y=[],F=0;F=2){var Ve=$e[1];if(d.imagesPreviewHandler){var At=d.imagesPreviewHandler($e[1]);typeof At=="string"&&(Ve=At)}if(window.EMDEimagesCache[Ve])ce(ze,window.EMDEimagesCache[Ve]);else{var yt=document.createElement("img");yt.onload=function(){window.EMDEimagesCache[Ve]={naturalWidth:yt.naturalWidth,naturalHeight:yt.naturalHeight,url:Ve},ce(ze,window.EMDEimagesCache[Ve])},yt.src=Ve}}}})}this.codemirror.on("update",function(){We()}),this.gui.sideBySide=this.createSideBySide(),this._rendered=this.element,(d.autofocus===!0||l.autofocus)&&this.codemirror.focus();var Ue=this.codemirror;setTimeout(function(){Ue.refresh()}.bind(Ue),0)},g.prototype.cleanup=function(){document.removeEventListener("keydown",this.documentOnKeyDown)};function D(){if(typeof localStorage=="object")try{localStorage.setItem("smde_localStorage",1),localStorage.removeItem("smde_localStorage")}catch{return!1}else return!1;return!0}g.prototype.autosave=function(){if(D()){var l=this;if(this.options.autosave.uniqueId==null||this.options.autosave.uniqueId==""){console.log("EasyMDE: You must set a uniqueId to use the autosave feature");return}this.options.autosave.binded!==!0&&(l.element.form!=null&&l.element.form!=null&&l.element.form.addEventListener("submit",function(){clearTimeout(l.autosaveTimeoutId),l.autosaveTimeoutId=void 0,localStorage.removeItem("smde_"+l.options.autosave.uniqueId)}),this.options.autosave.binded=!0),this.options.autosave.loaded!==!0&&(typeof localStorage.getItem("smde_"+this.options.autosave.uniqueId)=="string"&&localStorage.getItem("smde_"+this.options.autosave.uniqueId)!=""&&(this.codemirror.setValue(localStorage.getItem("smde_"+this.options.autosave.uniqueId)),this.options.autosave.foundSavedValue=!0),this.options.autosave.loaded=!0);var d=l.value();d!==""?localStorage.setItem("smde_"+this.options.autosave.uniqueId,d):localStorage.removeItem("smde_"+this.options.autosave.uniqueId);var m=document.getElementById("autosaved");if(m!=null&&m!=null&&m!=""){var y=new Date,F=new Intl.DateTimeFormat([this.options.autosave.timeFormat.locale,"en-US"],this.options.autosave.timeFormat.format).format(y),S=this.options.autosave.text==null?"Autosaved: ":this.options.autosave.text;m.innerHTML=S+F}}else console.log("EasyMDE: localStorage not available, cannot autosave")},g.prototype.clearAutosavedValue=function(){if(D()){if(this.options.autosave==null||this.options.autosave.uniqueId==null||this.options.autosave.uniqueId==""){console.log("EasyMDE: You must set a uniqueId to clear the autosave value");return}localStorage.removeItem("smde_"+this.options.autosave.uniqueId)}else console.log("EasyMDE: localStorage not available, cannot autosave")},g.prototype.openBrowseFileWindow=function(l,d){var m=this,y=this.gui.toolbar.getElementsByClassName("imageInput")[0];y.click();function F(S){m.options.imageUploadFunction?m.uploadImagesUsingCustomFunction(m.options.imageUploadFunction,S.target.files):m.uploadImages(S.target.files,l,d),y.removeEventListener("change",F)}y.addEventListener("change",F)},g.prototype.uploadImage=function(l,d,m){var y=this;d=d||function(ee){ne(y,ee)};function F(C){y.updateStatusBar("upload-image",C),setTimeout(function(){y.updateStatusBar("upload-image",y.options.imageTexts.sbInit)},1e4),m&&typeof m=="function"&&m(C),y.options.errorCallback(C)}function S(C){var ee=y.options.imageTexts.sizeUnits.split(",");return C.replace("#image_name#",l.name).replace("#image_size#",Oe(l.size,ee)).replace("#image_max_size#",Oe(y.options.imageMaxSize,ee))}if(l.size>this.options.imageMaxSize){F(S(this.options.errorMessages.fileTooLarge));return}var b=new FormData;b.append("image",l),y.options.imageCSRFToken&&!y.options.imageCSRFHeader&&b.append(y.options.imageCSRFName,y.options.imageCSRFToken);var w=new XMLHttpRequest;w.upload.onprogress=function(C){if(C.lengthComputable){var ee=""+Math.round(C.loaded*100/C.total);y.updateStatusBar("upload-image",y.options.imageTexts.sbProgress.replace("#file_name#",l.name).replace("#progress#",ee))}},w.open("POST",this.options.imageUploadEndpoint),y.options.imageCSRFToken&&y.options.imageCSRFHeader&&w.setRequestHeader(y.options.imageCSRFName,y.options.imageCSRFToken),w.onload=function(){try{var C=JSON.parse(this.responseText)}catch{console.error("EasyMDE: The server did not return a valid json."),F(S(y.options.errorMessages.importError));return}this.status===200&&C&&!C.error&&C.data&&C.data.filePath?d((y.options.imagePathAbsolute?"":window.location.origin+"/")+C.data.filePath):C.error&&C.error in y.options.errorMessages?F(S(y.options.errorMessages[C.error])):C.error?F(S(C.error)):(console.error("EasyMDE: Received an unexpected response after uploading the image."+this.status+" ("+this.statusText+")"),F(S(y.options.errorMessages.importError)))},w.onerror=function(C){console.error("EasyMDE: An unexpected error occurred when trying to upload the image."+C.target.status+" ("+C.target.statusText+")"),F(y.options.errorMessages.importError)},w.send(b)},g.prototype.uploadImageUsingCustomFunction=function(l,d){var m=this;function y(b){ne(m,b)}function F(b){var w=S(b);m.updateStatusBar("upload-image",w),setTimeout(function(){m.updateStatusBar("upload-image",m.options.imageTexts.sbInit)},1e4),m.options.errorCallback(w)}function S(b){var w=m.options.imageTexts.sizeUnits.split(",");return b.replace("#image_name#",d.name).replace("#image_size#",Oe(d.size,w)).replace("#image_max_size#",Oe(m.options.imageMaxSize,w))}l.apply(this,[d,y,F])},g.prototype.setPreviewMaxHeight=function(){var l=this.codemirror,d=l.getWrapperElement(),m=d.nextSibling,y=parseInt(window.getComputedStyle(d).paddingTop),F=parseInt(window.getComputedStyle(d).borderTopWidth),S=parseInt(this.options.maxHeight),b=S+y*2+F*2,w=b.toString()+"px";m.style.height=w},g.prototype.createSideBySide=function(){var l=this.codemirror,d=l.getWrapperElement(),m=d.nextSibling;if(!m||!m.classList.contains("editor-preview-side")){if(m=document.createElement("div"),m.className="editor-preview-side",this.options.previewClass)if(Array.isArray(this.options.previewClass))for(var y=0;y0&&(ge.continuationClasses=ue),ie!=="."&&(me==="SFX"?ge.match=new RegExp(ie+"$"):ge.match=new RegExp("^"+ie)),j!="0"&&(me==="SFX"?ge.remove=new RegExp(j+"$"):ge.remove=j),U.push(ge)}R[be]={type:me,combineable:H=="Y",entries:U},V+=N}else if(me==="COMPOUNDRULE"){for(N=parseInt(Ee[1],10),G=V+1,oe=V+1+N;G0&&(L[J]===null&&(L[J]=[]),L[J].push(Re))}for(var N=1,Y=R.length;N1){var oe=this.parseRuleCodes(G[1]);(!("NEEDAFFIX"in this.flags)||oe.indexOf(this.flags.NEEDAFFIX)==-1)&&A(P,oe);for(var pe=0,Ee=oe.length;pe"u"){if("COMPOUNDMIN"in this.flags&&B.length>=this.flags.COMPOUNDMIN){for(L=0,A=this.compoundRules.length;L"u"&&(L=Array.prototype.concat.apply([],this.dictionaryTable[B])),L&&L.indexOf(this.flags[R])!==-1))},alphabet:"",suggest:function(B,R){if(!this.loaded)throw"Dictionary not loaded.";if(R=R||5,this.memoized.hasOwnProperty(B)){var L=this.memoized[B].limit;if(R<=L||this.memoized[B].suggestions.length1&&Z[1][1]!==Z[1][0]&&(ie=Z[0]+Z[1][1]+Z[1][0]+Z[1].substring(2),(!be||oe.check(ie))&&(ie in H?H[ie]+=1:H[ie]=1)),Z[1]){var Ae=Z[1].substring(0,1).toUpperCase()===Z[1].substring(0,1)?"uppercase":"lowercase";for(j=0;j_?1:J[0].localeCompare(Ae[0])}ue.sort(ie).reverse();var ge=[],Te="lowercase";me.toUpperCase()===me?Te="uppercase":me.substr(0,1).toUpperCase()+me.substr(1).toLowerCase()===me&&(Te="capitalized");var Z=R;for(te=0;teI.length)&&(O=I.length);for(var T=0,c=new Array(O);T=I.length?{done:!0}:{done:!1,value:I[c++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function N(I,O){if(typeof I!="object"||I===null)return I;var T=I[Symbol.toPrimitive];if(T!==void 0){var c=T.call(I,O||"default");if(typeof c!="object")return c;throw new TypeError("@@toPrimitive must return a primitive value.")}return(O==="string"?String:Number)(I)}function Y(I){var O=N(I,"string");return typeof O=="symbol"?O:String(O)}function V(){return{async:!1,baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,hooks:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}_e.NT=V();function G(I){_e.NT=I}var P=/[&<>"']/,oe=new RegExp(P.source,"g"),pe=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,Ee=new RegExp(pe.source,"g"),me={"&":"&","<":"<",">":">",'"':""","'":"'"},be=function(O){return me[O]};function H(I,O){if(O){if(P.test(I))return I.replace(oe,be)}else if(pe.test(I))return I.replace(Ee,be);return I}var U=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function j(I){return I.replace(U,function(O,T){return T=T.toLowerCase(),T==="colon"?":":T.charAt(0)==="#"?T.charAt(1)==="x"?String.fromCharCode(parseInt(T.substring(2),16)):String.fromCharCode(+T.substring(1)):""})}var te=/(^|[^\[])\^/g;function X(I,O){I=typeof I=="string"?I:I.source,O=O||"";var T={replace:function(p,g){return g=g.source||g,g=g.replace(te,"$1"),I=I.replace(p,g),T},getRegex:function(){return new RegExp(I,O)}};return T}var ue=/[^\w:]/g,ie=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function ge(I,O,T){if(I){var c;try{c=decodeURIComponent(j(T)).replace(ue,"").toLowerCase()}catch{return null}if(c.indexOf("javascript:")===0||c.indexOf("vbscript:")===0||c.indexOf("data:")===0)return null}O&&!ie.test(T)&&(T=Re(O,T));try{T=encodeURI(T).replace(/%25/g,"%")}catch{return null}return T}var Te={},Z=/^[^:]+:\/*[^/]*$/,Ae=/^([^:]+:)[\s\S]*$/,J=/^([^:]+:\/*[^/]*)[\s\S]*$/;function Re(I,O){Te[" "+I]||(Z.test(I)?Te[" "+I]=I+"/":Te[" "+I]=$(I,"/",!0)),I=Te[" "+I];var T=I.indexOf(":")===-1;return O.substring(0,2)==="//"?T?O:I.replace(Ae,"$1")+O:O.charAt(0)==="/"?T?O:I.replace(J,"$1")+O:I+O}var _={exec:function(){}};function le(I,O){var T=I.replace(/\|/g,function(g,D,l){for(var d=!1,m=D;--m>=0&&l[m]==="\\";)d=!d;return d?"|":" |"}),c=T.split(/ \|/),p=0;if(c[0].trim()||c.shift(),c.length>0&&!c[c.length-1].trim()&&c.pop(),c.length>O)c.splice(O);else for(;c.length1;)O&1&&(T+=I),O>>=1,I+=I;return T+I}function kt(I,O,T,c){var p=O.href,g=O.title?H(O.title):null,D=I[1].replace(/\\([\[\]])/g,"$1");if(I[0].charAt(0)!=="!"){c.state.inLink=!0;var l={type:"link",raw:T,href:p,title:g,text:D,tokens:c.inlineTokens(D)};return c.state.inLink=!1,l}return{type:"image",raw:T,href:p,title:g,text:H(D)}}function k(I,O){var T=I.match(/^(\s+)(?:```)/);if(T===null)return O;var c=T[1];return O.split(` +`).map(function(p){var g=p.match(/^\s+/);if(g===null)return p;var D=g[0];return D.length>=c.length?p.slice(c.length):p}).join(` +`)}var h=function(){function I(T){this.options=T||_e.NT}var O=I.prototype;return O.space=function(c){var p=this.rules.block.newline.exec(c);if(p&&p[0].length>0)return{type:"space",raw:p[0]}},O.code=function(c){var p=this.rules.block.code.exec(c);if(p){var g=p[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:p[0],codeBlockStyle:"indented",text:this.options.pedantic?g:$(g,` +`)}}},O.fences=function(c){var p=this.rules.block.fences.exec(c);if(p){var g=p[0],D=k(g,p[3]||"");return{type:"code",raw:g,lang:p[2]?p[2].trim().replace(this.rules.inline._escapes,"$1"):p[2],text:D}}},O.heading=function(c){var p=this.rules.block.heading.exec(c);if(p){var g=p[2].trim();if(/#$/.test(g)){var D=$(g,"#");(this.options.pedantic||!D||/ $/.test(D))&&(g=D.trim())}return{type:"heading",raw:p[0],depth:p[1].length,text:g,tokens:this.lexer.inline(g)}}},O.hr=function(c){var p=this.rules.block.hr.exec(c);if(p)return{type:"hr",raw:p[0]}},O.blockquote=function(c){var p=this.rules.block.blockquote.exec(c);if(p){var g=p[0].replace(/^ *>[ \t]?/gm,""),D=this.lexer.state.top;this.lexer.state.top=!0;var l=this.lexer.blockTokens(g);return this.lexer.state.top=D,{type:"blockquote",raw:p[0],tokens:l,text:g}}},O.list=function(c){var p=this.rules.block.list.exec(c);if(p){var g,D,l,d,m,y,F,S,b,w,C,ee,he=p[1].trim(),ke=he.length>1,xe={type:"list",raw:"",ordered:ke,start:ke?+he.slice(0,-1):"",loose:!1,items:[]};he=ke?"\\d{1,9}\\"+he.slice(-1):"\\"+he,this.options.pedantic&&(he=ke?he:"[*+-]");for(var ce=new RegExp("^( {0,3}"+he+")((?:[ ][^\\n]*)?(?:\\n|$))");c&&(ee=!1,!(!(p=ce.exec(c))||this.rules.block.hr.test(c)));){if(g=p[0],c=c.substring(g.length),S=p[2].split(` +`,1)[0].replace(/^\t+/,function(yt){return" ".repeat(3*yt.length)}),b=c.split(` +`,1)[0],this.options.pedantic?(d=2,C=S.trimLeft()):(d=p[2].search(/[^ ]/),d=d>4?1:d,C=S.slice(d),d+=p[1].length),y=!1,!S&&/^ *$/.test(b)&&(g+=b+` +`,c=c.substring(b.length+1),ee=!0),!ee)for(var We=new RegExp("^ {0,"+Math.min(3,d-1)+"}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))"),Ue=new RegExp("^ {0,"+Math.min(3,d-1)+"}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)"),Be=new RegExp("^ {0,"+Math.min(3,d-1)+"}(?:```|~~~)"),ze=new RegExp("^ {0,"+Math.min(3,d-1)+"}#");c&&(w=c.split(` +`,1)[0],b=w,this.options.pedantic&&(b=b.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),!(Be.test(b)||ze.test(b)||We.test(b)||Ue.test(c)));){if(b.search(/[^ ]/)>=d||!b.trim())C+=` +`+b.slice(d);else{if(y||S.search(/[^ ]/)>=4||Be.test(S)||ze.test(S)||Ue.test(S))break;C+=` +`+b}!y&&!b.trim()&&(y=!0),g+=w+` +`,c=c.substring(w.length+1),S=b.slice(d)}xe.loose||(F?xe.loose=!0:/\n *\n *$/.test(g)&&(F=!0)),this.options.gfm&&(D=/^\[[ xX]\] /.exec(C),D&&(l=D[0]!=="[ ] ",C=C.replace(/^\[[ xX]\] +/,""))),xe.items.push({type:"list_item",raw:g,task:!!D,checked:l,loose:!1,text:C}),xe.raw+=g}xe.items[xe.items.length-1].raw=g.trimRight(),xe.items[xe.items.length-1].text=C.trimRight(),xe.raw=xe.raw.trimRight();var $e=xe.items.length;for(m=0;m<$e;m++)if(this.lexer.state.top=!1,xe.items[m].tokens=this.lexer.blockTokens(xe.items[m].text,[]),!xe.loose){var Ve=xe.items[m].tokens.filter(function(yt){return yt.type==="space"}),At=Ve.length>0&&Ve.some(function(yt){return/\n.*\n/.test(yt.raw)});xe.loose=At}if(xe.loose)for(m=0;m<$e;m++)xe.items[m].loose=!0;return xe}},O.html=function(c){var p=this.rules.block.html.exec(c);if(p){var g={type:"html",raw:p[0],pre:!this.options.sanitizer&&(p[1]==="pre"||p[1]==="script"||p[1]==="style"),text:p[0]};if(this.options.sanitize){var D=this.options.sanitizer?this.options.sanitizer(p[0]):H(p[0]);g.type="paragraph",g.text=D,g.tokens=this.lexer.inline(D)}return g}},O.def=function(c){var p=this.rules.block.def.exec(c);if(p){var g=p[1].toLowerCase().replace(/\s+/g," "),D=p[2]?p[2].replace(/^<(.*)>$/,"$1").replace(this.rules.inline._escapes,"$1"):"",l=p[3]?p[3].substring(1,p[3].length-1).replace(this.rules.inline._escapes,"$1"):p[3];return{type:"def",tag:g,raw:p[0],href:D,title:l}}},O.table=function(c){var p=this.rules.block.table.exec(c);if(p){var g={type:"table",header:le(p[1]).map(function(F){return{text:F}}),align:p[2].replace(/^ *|\| *$/g,"").split(/ *\| */),rows:p[3]&&p[3].trim()?p[3].replace(/\n[ \t]*$/,"").split(` +`):[]};if(g.header.length===g.align.length){g.raw=p[0];var D=g.align.length,l,d,m,y;for(l=0;l/i.test(p[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(p[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(p[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:p[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(p[0]):H(p[0]):p[0]}},O.link=function(c){var p=this.rules.inline.link.exec(c);if(p){var g=p[2].trim();if(!this.options.pedantic&&/^$/.test(g))return;var D=$(g.slice(0,-1),"\\");if((g.length-D.length)%2===0)return}else{var l=Ce(p[2],"()");if(l>-1){var d=p[0].indexOf("!")===0?5:4,m=d+p[1].length+l;p[2]=p[2].substring(0,l),p[0]=p[0].substring(0,m).trim(),p[3]=""}}var y=p[2],F="";if(this.options.pedantic){var S=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(y);S&&(y=S[1],F=S[3])}else F=p[3]?p[3].slice(1,-1):"";return y=y.trim(),/^$/.test(g)?y=y.slice(1):y=y.slice(1,-1)),kt(p,{href:y&&y.replace(this.rules.inline._escapes,"$1"),title:F&&F.replace(this.rules.inline._escapes,"$1")},p[0],this.lexer)}},O.reflink=function(c,p){var g;if((g=this.rules.inline.reflink.exec(c))||(g=this.rules.inline.nolink.exec(c))){var D=(g[2]||g[1]).replace(/\s+/g," ");if(D=p[D.toLowerCase()],!D){var l=g[0].charAt(0);return{type:"text",raw:l,text:l}}return kt(g,D,g[0],this.lexer)}},O.emStrong=function(c,p,g){g===void 0&&(g="");var D=this.rules.inline.emStrong.lDelim.exec(c);if(D&&!(D[3]&&g.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDF70-\uDF81\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDE70-\uDEBE\uDEC0-\uDEC9\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var l=D[1]||D[2]||"";if(!l||l&&(g===""||this.rules.inline.punctuation.exec(g))){var d=D[0].length-1,m,y,F=d,S=0,b=D[0][0]==="*"?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(b.lastIndex=0,p=p.slice(-1*c.length+d);(D=b.exec(p))!=null;)if(m=D[1]||D[2]||D[3]||D[4]||D[5]||D[6],!!m){if(y=m.length,D[3]||D[4]){F+=y;continue}else if((D[5]||D[6])&&d%3&&!((d+y)%3)){S+=y;continue}if(F-=y,!(F>0)){y=Math.min(y,y+F+S);var w=c.slice(0,d+D.index+(D[0].length-m.length)+y);if(Math.min(d,y)%2){var C=w.slice(1,-1);return{type:"em",raw:w,text:C,tokens:this.lexer.inlineTokens(C)}}var ee=w.slice(2,-2);return{type:"strong",raw:w,text:ee,tokens:this.lexer.inlineTokens(ee)}}}}}},O.codespan=function(c){var p=this.rules.inline.code.exec(c);if(p){var g=p[2].replace(/\n/g," "),D=/[^ ]/.test(g),l=/^ /.test(g)&&/ $/.test(g);return D&&l&&(g=g.substring(1,g.length-1)),g=H(g,!0),{type:"codespan",raw:p[0],text:g}}},O.br=function(c){var p=this.rules.inline.br.exec(c);if(p)return{type:"br",raw:p[0]}},O.del=function(c){var p=this.rules.inline.del.exec(c);if(p)return{type:"del",raw:p[0],text:p[2],tokens:this.lexer.inlineTokens(p[2])}},O.autolink=function(c,p){var g=this.rules.inline.autolink.exec(c);if(g){var D,l;return g[2]==="@"?(D=H(this.options.mangle?p(g[1]):g[1]),l="mailto:"+D):(D=H(g[1]),l=D),{type:"link",raw:g[0],text:D,href:l,tokens:[{type:"text",raw:D,text:D}]}}},O.url=function(c,p){var g;if(g=this.rules.inline.url.exec(c)){var D,l;if(g[2]==="@")D=H(this.options.mangle?p(g[0]):g[0]),l="mailto:"+D;else{var d;do d=g[0],g[0]=this.rules.inline._backpedal.exec(g[0])[0];while(d!==g[0]);D=H(g[0]),g[1]==="www."?l="http://"+g[0]:l=g[0]}return{type:"link",raw:g[0],text:D,href:l,tokens:[{type:"text",raw:D,text:D}]}}},O.inlineText=function(c,p){var g=this.rules.inline.text.exec(c);if(g){var D;return this.lexer.state.inRawBlock?D=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(g[0]):H(g[0]):g[0]:D=H(this.options.smartypants?p(g[0]):g[0]),{type:"text",raw:g[0],text:D}}},I}(),K={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,table:_,lheading:/^((?:.|\n(?!\n))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,text:/^[^\n]+/};K._label=/(?!\s*\])(?:\\.|[^\[\]\\])+/,K._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/,K.def=X(K.def).replace("label",K._label).replace("title",K._title).getRegex(),K.bullet=/(?:[*+-]|\d{1,9}[.)])/,K.listItemStart=X(/^( *)(bull) */).replace("bull",K.bullet).getRegex(),K.list=X(K.list).replace(/bull/g,K.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+K.def.source+")").getRegex(),K._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",K._comment=/|$)/,K.html=X(K.html,"i").replace("comment",K._comment).replace("tag",K._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),K.paragraph=X(K._paragraph).replace("hr",K.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",K._tag).getRegex(),K.blockquote=X(K.blockquote).replace("paragraph",K.paragraph).getRegex(),K.normal=B({},K),K.gfm=B({},K.normal,{table:"^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),K.gfm.table=X(K.gfm.table).replace("hr",K.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",K._tag).getRegex(),K.gfm.paragraph=X(K._paragraph).replace("hr",K.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("table",K.gfm.table).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",K._tag).getRegex(),K.pedantic=B({},K.normal,{html:X(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",K._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:_,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:X(K.normal._paragraph).replace("hr",K.hr).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",K.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var ne={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:_,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/^(?:[^_*\\]|\\.)*?\_\_(?:[^_*\\]|\\.)*?\*(?:[^_*\\]|\\.)*?(?=\_\_)|(?:[^*\\]|\\.)+(?=[^*])|[punct_](\*+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|(?:[^punct*_\s\\]|\\.)(\*+)(?=[^punct*_\s])/,rDelimUnd:/^(?:[^_*\\]|\\.)*?\*\*(?:[^_*\\]|\\.)*?\_(?:[^_*\\]|\\.)*?(?=\*\*)|(?:[^_\\]|\\.)+(?=[^_])|[punct*](\_+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:_,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~",ne.punctuation=X(ne.punctuation).replace(/punctuation/g,ne._punctuation).getRegex(),ne.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,ne.escapedEmSt=/(?:^|[^\\])(?:\\\\)*\\[*_]/g,ne._comment=X(K._comment).replace("(?:-->|$)","-->").getRegex(),ne.emStrong.lDelim=X(ne.emStrong.lDelim).replace(/punct/g,ne._punctuation).getRegex(),ne.emStrong.rDelimAst=X(ne.emStrong.rDelimAst,"g").replace(/punct/g,ne._punctuation).getRegex(),ne.emStrong.rDelimUnd=X(ne.emStrong.rDelimUnd,"g").replace(/punct/g,ne._punctuation).getRegex(),ne._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,ne._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,ne._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,ne.autolink=X(ne.autolink).replace("scheme",ne._scheme).replace("email",ne._email).getRegex(),ne._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,ne.tag=X(ne.tag).replace("comment",ne._comment).replace("attribute",ne._attribute).getRegex(),ne._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,ne._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,ne._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,ne.link=X(ne.link).replace("label",ne._label).replace("href",ne._href).replace("title",ne._title).getRegex(),ne.reflink=X(ne.reflink).replace("label",ne._label).replace("ref",K._label).getRegex(),ne.nolink=X(ne.nolink).replace("ref",K._label).getRegex(),ne.reflinkSearch=X(ne.reflinkSearch,"g").replace("reflink",ne.reflink).replace("nolink",ne.nolink).getRegex(),ne.normal=B({},ne),ne.pedantic=B({},ne.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:X(/^!?\[(label)\]\((.*?)\)/).replace("label",ne._label).getRegex(),reflink:X(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",ne._label).getRegex()}),ne.gfm=B({},ne.normal,{escape:X(ne.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\.5&&(c="x"+c.toString(16)),O+="&#"+c+";";return O}var Qe=function(){function I(T){this.tokens=[],this.tokens.links=Object.create(null),this.options=T||_e.NT,this.options.tokenizer=this.options.tokenizer||new h,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};var c={block:K.normal,inline:ne.normal};this.options.pedantic?(c.block=K.pedantic,c.inline=ne.pedantic):this.options.gfm&&(c.block=K.gfm,this.options.breaks?c.inline=ne.breaks:c.inline=ne.gfm),this.tokenizer.rules=c}I.lex=function(c,p){var g=new I(p);return g.lex(c)},I.lexInline=function(c,p){var g=new I(p);return g.inlineTokens(c)};var O=I.prototype;return O.lex=function(c){c=c.replace(/\r\n|\r/g,` +`),this.blockTokens(c,this.tokens);for(var p;p=this.inlineQueue.shift();)this.inlineTokens(p.src,p.tokens);return this.tokens},O.blockTokens=function(c,p){var g=this;p===void 0&&(p=[]),this.options.pedantic?c=c.replace(/\t/g," ").replace(/^ +$/gm,""):c=c.replace(/^( *)(\t+)/gm,function(F,S,b){return S+" ".repeat(b.length)});for(var D,l,d,m;c;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(F){return(D=F.call({lexer:g},c,p))?(c=c.substring(D.raw.length),p.push(D),!0):!1}))){if(D=this.tokenizer.space(c)){c=c.substring(D.raw.length),D.raw.length===1&&p.length>0?p[p.length-1].raw+=` +`:p.push(D);continue}if(D=this.tokenizer.code(c)){c=c.substring(D.raw.length),l=p[p.length-1],l&&(l.type==="paragraph"||l.type==="text")?(l.raw+=` +`+D.raw,l.text+=` +`+D.text,this.inlineQueue[this.inlineQueue.length-1].src=l.text):p.push(D);continue}if(D=this.tokenizer.fences(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.heading(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.hr(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.blockquote(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.list(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.html(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.def(c)){c=c.substring(D.raw.length),l=p[p.length-1],l&&(l.type==="paragraph"||l.type==="text")?(l.raw+=` +`+D.raw,l.text+=` +`+D.raw,this.inlineQueue[this.inlineQueue.length-1].src=l.text):this.tokens.links[D.tag]||(this.tokens.links[D.tag]={href:D.href,title:D.title});continue}if(D=this.tokenizer.table(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.lheading(c)){c=c.substring(D.raw.length),p.push(D);continue}if(d=c,this.options.extensions&&this.options.extensions.startBlock&&function(){var F=1/0,S=c.slice(1),b=void 0;g.options.extensions.startBlock.forEach(function(w){b=w.call({lexer:this},S),typeof b=="number"&&b>=0&&(F=Math.min(F,b))}),F<1/0&&F>=0&&(d=c.substring(0,F+1))}(),this.state.top&&(D=this.tokenizer.paragraph(d))){l=p[p.length-1],m&&l.type==="paragraph"?(l.raw+=` +`+D.raw,l.text+=` +`+D.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=l.text):p.push(D),m=d.length!==c.length,c=c.substring(D.raw.length);continue}if(D=this.tokenizer.text(c)){c=c.substring(D.raw.length),l=p[p.length-1],l&&l.type==="text"?(l.raw+=` +`+D.raw,l.text+=` +`+D.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=l.text):p.push(D);continue}if(c){var y="Infinite loop on byte: "+c.charCodeAt(0);if(this.options.silent){console.error(y);break}else throw new Error(y)}}return this.state.top=!0,p},O.inline=function(c,p){return p===void 0&&(p=[]),this.inlineQueue.push({src:c,tokens:p}),p},O.inlineTokens=function(c,p){var g=this;p===void 0&&(p=[]);var D,l,d,m=c,y,F,S;if(this.tokens.links){var b=Object.keys(this.tokens.links);if(b.length>0)for(;(y=this.tokenizer.rules.inline.reflinkSearch.exec(m))!=null;)b.includes(y[0].slice(y[0].lastIndexOf("[")+1,-1))&&(m=m.slice(0,y.index)+"["+at("a",y[0].length-2)+"]"+m.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(y=this.tokenizer.rules.inline.blockSkip.exec(m))!=null;)m=m.slice(0,y.index)+"["+at("a",y[0].length-2)+"]"+m.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(y=this.tokenizer.rules.inline.escapedEmSt.exec(m))!=null;)m=m.slice(0,y.index+y[0].length-2)+"++"+m.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex),this.tokenizer.rules.inline.escapedEmSt.lastIndex--;for(;c;)if(F||(S=""),F=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(C){return(D=C.call({lexer:g},c,p))?(c=c.substring(D.raw.length),p.push(D),!0):!1}))){if(D=this.tokenizer.escape(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.tag(c)){c=c.substring(D.raw.length),l=p[p.length-1],l&&D.type==="text"&&l.type==="text"?(l.raw+=D.raw,l.text+=D.text):p.push(D);continue}if(D=this.tokenizer.link(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.reflink(c,this.tokens.links)){c=c.substring(D.raw.length),l=p[p.length-1],l&&D.type==="text"&&l.type==="text"?(l.raw+=D.raw,l.text+=D.text):p.push(D);continue}if(D=this.tokenizer.emStrong(c,m,S)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.codespan(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.br(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.del(c)){c=c.substring(D.raw.length),p.push(D);continue}if(D=this.tokenizer.autolink(c,Ge)){c=c.substring(D.raw.length),p.push(D);continue}if(!this.state.inLink&&(D=this.tokenizer.url(c,Ge))){c=c.substring(D.raw.length),p.push(D);continue}if(d=c,this.options.extensions&&this.options.extensions.startInline&&function(){var C=1/0,ee=c.slice(1),he=void 0;g.options.extensions.startInline.forEach(function(ke){he=ke.call({lexer:this},ee),typeof he=="number"&&he>=0&&(C=Math.min(C,he))}),C<1/0&&C>=0&&(d=c.substring(0,C+1))}(),D=this.tokenizer.inlineText(d,Le)){c=c.substring(D.raw.length),D.raw.slice(-1)!=="_"&&(S=D.raw.slice(-1)),F=!0,l=p[p.length-1],l&&l.type==="text"?(l.raw+=D.raw,l.text+=D.text):p.push(D);continue}if(c){var w="Infinite loop on byte: "+c.charCodeAt(0);if(this.options.silent){console.error(w);break}else throw new Error(w)}}return p},Q(I,null,[{key:"rules",get:function(){return{block:K,inline:ne}}}]),I}(),je=function(){function I(T){this.options=T||_e.NT}var O=I.prototype;return O.code=function(c,p,g){var D=(p||"").match(/\S*/)[0];if(this.options.highlight){var l=this.options.highlight(c,D);l!=null&&l!==c&&(g=!0,c=l)}return c=c.replace(/\n$/,"")+` +`,D?'
    '+(g?c:H(c,!0))+`
    +`:"
    "+(g?c:H(c,!0))+`
    +`},O.blockquote=function(c){return`
    +`+c+`
    +`},O.html=function(c){return c},O.heading=function(c,p,g,D){if(this.options.headerIds){var l=this.options.headerPrefix+D.slug(g);return"'+c+" +`}return""+c+" +`},O.hr=function(){return this.options.xhtml?`
    +`:`
    +`},O.list=function(c,p,g){var D=p?"ol":"ul",l=p&&g!==1?' start="'+g+'"':"";return"<"+D+l+`> +`+c+" +`},O.listitem=function(c){return"
  • "+c+`
  • +`},O.checkbox=function(c){return" "},O.paragraph=function(c){return"

    "+c+`

    +`},O.table=function(c,p){return p&&(p=""+p+""),` + +`+c+` +`+p+`
    +`},O.tablerow=function(c){return` +`+c+` +`},O.tablecell=function(c,p){var g=p.header?"th":"td",D=p.align?"<"+g+' align="'+p.align+'">':"<"+g+">";return D+c+(" +`)},O.strong=function(c){return""+c+""},O.em=function(c){return""+c+""},O.codespan=function(c){return""+c+""},O.br=function(){return this.options.xhtml?"
    ":"
    "},O.del=function(c){return""+c+""},O.link=function(c,p,g){if(c=ge(this.options.sanitize,this.options.baseUrl,c),c===null)return g;var D='",D},O.image=function(c,p,g){if(c=ge(this.options.sanitize,this.options.baseUrl,c),c===null)return g;var D=''+g+'":">",D},O.text=function(c){return c},I}(),ot=function(){function I(){}var O=I.prototype;return O.strong=function(c){return c},O.em=function(c){return c},O.codespan=function(c){return c},O.del=function(c){return c},O.html=function(c){return c},O.text=function(c){return c},O.link=function(c,p,g){return""+g},O.image=function(c,p,g){return""+g},O.br=function(){return""},I}(),lt=function(){function I(){this.seen={}}var O=I.prototype;return O.serialize=function(c){return c.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},O.getNextSafeSlug=function(c,p){var g=c,D=0;if(this.seen.hasOwnProperty(g)){D=this.seen[c];do D++,g=c+"-"+D;while(this.seen.hasOwnProperty(g))}return p||(this.seen[c]=D,this.seen[g]=0),g},O.slug=function(c,p){p===void 0&&(p={});var g=this.serialize(c);return this.getNextSafeSlug(g,p.dryrun)},I}(),Ie=function(){function I(T){this.options=T||_e.NT,this.options.renderer=this.options.renderer||new je,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new ot,this.slugger=new lt}I.parse=function(c,p){var g=new I(p);return g.parse(c)},I.parseInline=function(c,p){var g=new I(p);return g.parseInline(c)};var O=I.prototype;return O.parse=function(c,p){p===void 0&&(p=!0);var g="",D,l,d,m,y,F,S,b,w,C,ee,he,ke,xe,ce,We,Ue,Be,ze,$e=c.length;for(D=0;D<$e;D++){if(C=c[D],this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[C.type]&&(ze=this.options.extensions.renderers[C.type].call({parser:this},C),ze!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(C.type))){g+=ze||"";continue}switch(C.type){case"space":continue;case"hr":{g+=this.renderer.hr();continue}case"heading":{g+=this.renderer.heading(this.parseInline(C.tokens),C.depth,j(this.parseInline(C.tokens,this.textRenderer)),this.slugger);continue}case"code":{g+=this.renderer.code(C.text,C.lang,C.escaped);continue}case"table":{for(b="",S="",m=C.header.length,l=0;l0&&ce.tokens[0].type==="paragraph"?(ce.tokens[0].text=Be+" "+ce.tokens[0].text,ce.tokens[0].tokens&&ce.tokens[0].tokens.length>0&&ce.tokens[0].tokens[0].type==="text"&&(ce.tokens[0].tokens[0].text=Be+" "+ce.tokens[0].tokens[0].text)):ce.tokens.unshift({type:"text",text:Be}):xe+=Be),xe+=this.parse(ce.tokens,ke),w+=this.renderer.listitem(xe,Ue,We);g+=this.renderer.list(w,ee,he);continue}case"html":{g+=this.renderer.html(C.text);continue}case"paragraph":{g+=this.renderer.paragraph(this.parseInline(C.tokens));continue}case"text":{for(w=C.tokens?this.parseInline(C.tokens):C.text;D+1<$e&&c[D+1].type==="text";)C=c[++D],w+=` +`+(C.tokens?this.parseInline(C.tokens):C.text);g+=p?this.renderer.paragraph(w):w;continue}default:{var Ve='Token with "'+C.type+'" type was not found.';if(this.options.silent){console.error(Ve);return}else throw new Error(Ve)}}}return g},O.parseInline=function(c,p){p=p||this.renderer;var g="",D,l,d,m=c.length;for(D=0;D";if(O)return Promise.resolve(p);if(T){T(null,p);return}return p}if(O)return Promise.reject(c);if(T){T(c);return}throw c}}function jt(I,O){return function(T,c,p){typeof c=="function"&&(p=c,c=null);var g=B({},c);c=B({},De.defaults,g);var D=wt(c.silent,c.async,p);if(typeof T>"u"||T===null)return D(new Error("marked(): input parameter is undefined or null"));if(typeof T!="string")return D(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(T)+", string expected"));if(Je(c),c.hooks&&(c.hooks.options=c),p){var l=c.highlight,d;try{c.hooks&&(T=c.hooks.preprocess(T)),d=I(T,c)}catch(b){return D(b)}var m=function(w){var C;if(!w)try{c.walkTokens&&De.walkTokens(d,c.walkTokens),C=O(d,c),c.hooks&&(C=c.hooks.postprocess(C))}catch(ee){w=ee}return c.highlight=l,w?D(w):p(null,C)};if(!l||l.length<3||(delete c.highlight,!d.length))return m();var y=0;De.walkTokens(d,function(b){b.type==="code"&&(y++,setTimeout(function(){l(b.text,b.lang,function(w,C){if(w)return m(w);C!=null&&C!==b.text&&(b.text=C,b.escaped=!0),y--,y===0&&m()})},0))}),y===0&&m();return}if(c.async)return Promise.resolve(c.hooks?c.hooks.preprocess(T):T).then(function(b){return I(b,c)}).then(function(b){return c.walkTokens?Promise.all(De.walkTokens(b,c.walkTokens)).then(function(){return b}):b}).then(function(b){return O(b,c)}).then(function(b){return c.hooks?c.hooks.postprocess(b):b}).catch(D);try{c.hooks&&(T=c.hooks.preprocess(T));var F=I(T,c);c.walkTokens&&De.walkTokens(F,c.walkTokens);var S=O(F,c);return c.hooks&&(S=c.hooks.postprocess(S)),S}catch(b){return D(b)}}}function De(I,O,T){return jt(Qe.lex,Ie.parse)(I,O,T)}De.options=De.setOptions=function(I){return De.defaults=B({},De.defaults,I),G(De.defaults),De},De.getDefaults=V,De.defaults=_e.NT,De.use=function(){for(var I=De.defaults.extensions||{renderers:{},childTokens:{}},O=arguments.length,T=new Array(O),c=0;c{this.notifyClients({type:t,data:e.data})}))}notifyClients(t){for(const e of this.clients)e.postMessage(t)}status(t){t.postMessage({type:"status",message:`url: ${this.url} readyState: ${this.eventSource.readyState}`})}}self.addEventListener("connect",c=>{for(const t of c.ports)t.addEventListener("message",e=>{if(!self.EventSource){t.postMessage({type:"no-event-source"});return}if(e.data.type==="start"){const s=e.data.url;if(r[s]){const o=r[s];o.register(t),n[t]=o;return}let i=n[t];if(i){if(i.eventSource&&i.url===s)return;i.deregister(t)===0&&(i.close(),r[i.url]=null)}i=new l(s),i.register(t),r[s]=i,n[t]=i}else if(e.data.type==="listen")n[t].listen(e.data.eventType);else if(e.data.type==="close"){const s=n[t];if(!s)return;s.deregister(t)===0&&(s.close(),r[s.url]=null,n[t]=null)}else if(e.data.type==="status"){const s=n[t];if(!s){t.postMessage({type:"status",message:"not connected"});return}s.status(t)}else t.postMessage({type:"error",message:`received but don't know how to handle: ${e.data}`})}),t.start()})})(); diff --git a/data/gitea/public/assets/js/index.js b/data/gitea/public/assets/js/index.js new file mode 100644 index 0000000..d7d735f --- /dev/null +++ b/data/gitea/public/assets/js/index.js @@ -0,0 +1,232 @@ +var L7=Object.defineProperty;var R7=(oi,bi,wi)=>bi in oi?L7(oi,bi,{enumerable:!0,configurable:!0,writable:!0,value:wi}):oi[bi]=wi;var vl=(oi,bi,wi)=>(R7(oi,typeof bi!="symbol"?bi+"":bi,wi),wi),ev=(oi,bi,wi)=>{if(!bi.has(oi))throw TypeError("Cannot "+wi)};var Wr=(oi,bi,wi)=>(ev(oi,bi,"read from private field"),wi?wi.call(oi):bi.get(oi)),Vl=(oi,bi,wi)=>{if(bi.has(oi))throw TypeError("Cannot add the same private member more than once");bi instanceof WeakSet?bi.add(oi):bi.set(oi,wi)},Qa=(oi,bi,wi,vi)=>(ev(oi,bi,"write to private field"),vi?vi.call(oi,wi):bi.set(oi,wi),wi);var qf=(oi,bi,wi)=>(ev(oi,bi,"access private method"),wi);(function(){var __webpack_modules__={"./node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js":function(oi,bi,wi){"use strict";wi.d(bi,{C4:function(){return fs},EW:function(){return bc},Gc:function(){return su},IG:function(){return Rc},IJ:function(){return ma},KR:function(){return mo},Kh:function(){return ec},Pr:function(){return Oc},QW:function(){return jd},X2:function(){return bn},bl:function(){return mn},fE:function(){return Da},g8:function(){return Ya},hZ:function(){return Wi},i9:function(){return Us},ju:function(){return ru},lW:function(){return cf},o5:function(){return _n},u4:function(){return ki},ux:function(){return Go},yC:function(){return Li}});var vi=wi("./node_modules/@vue/shared/dist/shared.esm-bundler.js");function ri(ln,...Tn){console.warn(`[Vue warn] ${ln}`,...Tn)}let yi;class Li{constructor(Tn=!1){this.detached=Tn,this._active=!0,this.effects=[],this.cleanups=[],this.parent=yi,!Tn&&yi&&(this.index=(yi.scopes||(yi.scopes=[])).push(this)-1)}get active(){return this._active}run(Tn){if(this._active){const ts=yi;try{return yi=this,Tn()}finally{yi=ts}}}on(){yi=this}off(){yi=this.parent}stop(Tn){if(this._active){let ts,xs;for(ts=0,xs=this.effects.length;ts=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),mn()}return this._dirtyLevel>=4}set dirty(Tn){this._dirtyLevel=Tn?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let Tn=sn,ts=Vn;try{return sn=!0,Vn=this,this._runnings++,un(this),this.fn()}finally{ls(this),this._runnings--,Vn=ts,sn=Tn}}stop(){var Tn;this.active&&(un(this),ls(this),(Tn=this.onStop)==null||Tn.call(this),this.active=!1)}}function Zi(ln){return ln.value}function un(ln){ln._trackId++,ln._depsLength=0}function ls(ln){if(ln.deps.length>ln._depsLength){for(let Tn=ln._depsLength;Tn{ts.dirty&&ts.run()});Tn&&(extend(ts,Tn),Tn.scope&&tn(ts,Tn.scope)),(!Tn||!Tn.lazy)&&ts.run();const xs=ts.run.bind(ts);return xs.effect=ts,xs}function qi(ln){ln.effect.stop()}let sn=!0,rs=0;const hs=[];function fs(){hs.push(sn),sn=!1}function yn(){hs.push(sn),sn=!0}function mn(){const ln=hs.pop();sn=ln===void 0?!0:ln}function Mn(){rs++}function pi(){for(rs--;!rs&&dn.length;)dn.shift()()}function rn(ln,Tn,ts){var xs;if(Tn.get(ln)!==ln._trackId){Tn.set(ln,ln._trackId);const As=ln.deps[ln._depsLength];As!==Tn?(As&&ks(As,ln),ln.deps[ln._depsLength++]=Tn):ln._depsLength++}}const dn=[];function pn(ln,Tn,ts){var xs;Mn();for(const As of ln.keys()){let Bs;As._dirtyLevel{const ts=new Map;return ts.cleanup=ln,ts.computed=Tn,ts},nn=new WeakMap,Ai=Symbol(""),Ri=Symbol("");function ki(ln,Tn,ts){if(sn&&Vn){let xs=nn.get(ln);xs||nn.set(ln,xs=new Map);let As=xs.get(ts);As||xs.set(ts,As=Pn(()=>xs.delete(ts))),rn(Vn,As,void 0)}}function Wi(ln,Tn,ts,xs,As,Bs){const Eo=nn.get(ln);if(!Eo)return;let qo=[];if(Tn==="clear")qo=[...Eo.values()];else if(ts==="length"&&(0,vi.cy)(ln)){const Wa=Number(xs);Eo.forEach((_c,ba)=>{(ba==="length"||!(0,vi.Bm)(ba)&&ba>=Wa)&&qo.push(_c)})}else switch(ts!==void 0&&qo.push(Eo.get(ts)),Tn){case"add":(0,vi.cy)(ln)?(0,vi.yI)(ts)&&qo.push(Eo.get("length")):(qo.push(Eo.get(Ai)),(0,vi.CE)(ln)&&qo.push(Eo.get(Ri)));break;case"delete":(0,vi.cy)(ln)||(qo.push(Eo.get(Ai)),(0,vi.CE)(ln)&&qo.push(Eo.get(Ri)));break;case"set":(0,vi.CE)(ln)&&qo.push(Eo.get(Ai));break}Mn();for(const Wa of qo)Wa&&pn(Wa,4,void 0);pi()}function an(ln,Tn){var ts;return(ts=nn.get(ln))==null?void 0:ts.get(Tn)}const Fn=(0,vi.pD)("__proto__,__v_isRef,__isVue"),en=new Set(Object.getOwnPropertyNames(Symbol).filter(ln=>ln!=="arguments"&&ln!=="caller").map(ln=>Symbol[ln]).filter(vi.Bm)),Fi=Oi();function Oi(){const ln={};return["includes","indexOf","lastIndexOf"].forEach(Tn=>{ln[Tn]=function(...ts){const xs=Go(this);for(let Bs=0,Eo=this.length;Bs{ln[Tn]=function(...ts){fs(),Mn();const xs=Go(this)[Tn].apply(this,ts);return pi(),mn(),xs}}),ln}function zi(ln){(0,vi.Bm)(ln)||(ln=String(ln));const Tn=Go(this);return ki(Tn,"has",ln),Tn.hasOwnProperty(ln)}class Ti{constructor(Tn=!1,ts=!1){this._isReadonly=Tn,this._isShallow=ts}get(Tn,ts,xs){const As=this._isReadonly,Bs=this._isShallow;if(ts==="__v_isReactive")return!As;if(ts==="__v_isReadonly")return As;if(ts==="__v_isShallow")return Bs;if(ts==="__v_raw")return xs===(As?Bs?rl:ra:Bs?Do:sa).get(Tn)||Object.getPrototypeOf(Tn)===Object.getPrototypeOf(xs)?Tn:void 0;const Eo=(0,vi.cy)(Tn);if(!As){if(Eo&&(0,vi.$3)(Fi,ts))return Reflect.get(Fi,ts,xs);if(ts==="hasOwnProperty")return zi}const qo=Reflect.get(Tn,ts,xs);return((0,vi.Bm)(ts)?en.has(ts):Fn(ts))||(As||ki(Tn,"get",ts),Bs)?qo:Us(qo)?Eo&&(0,vi.yI)(ts)?qo:qo.value:(0,vi.Gv)(qo)?As?Ta(qo):ec(qo):qo}}class Yi extends Ti{constructor(Tn=!1){super(!1,Tn)}set(Tn,ts,xs,As){let Bs=Tn[ts];if(!this._isShallow){const Wa=Zo(Bs);if(!Da(xs)&&!Zo(xs)&&(Bs=Go(Bs),xs=Go(xs)),!(0,vi.cy)(Tn)&&Us(Bs)&&!Us(xs))return Wa?!1:(Bs.value=xs,!0)}const Eo=(0,vi.cy)(Tn)&&(0,vi.yI)(ts)?Number(ts)ln,cs=ln=>Reflect.getPrototypeOf(ln);function Vs(ln,Tn,ts=!1,xs=!1){ln=ln.__v_raw;const As=Go(ln),Bs=Go(Tn);ts||((0,vi.$H)(Tn,Bs)&&ki(As,"get",Tn),ki(As,"get",Bs));const{has:Eo}=cs(As),qo=xs?Xn:ts?kl:El;if(Eo.call(As,Tn))return qo(ln.get(Tn));if(Eo.call(As,Bs))return qo(ln.get(Bs));ln!==As&&ln.get(Tn)}function uo(ln,Tn=!1){const ts=this.__v_raw,xs=Go(ts),As=Go(ln);return Tn||((0,vi.$H)(ln,As)&&ki(xs,"has",ln),ki(xs,"has",As)),ln===As?ts.has(ln):ts.has(ln)||ts.has(As)}function fo(ln,Tn=!1){return ln=ln.__v_raw,!Tn&&ki(Go(ln),"iterate",Ai),Reflect.get(ln,"size",ln)}function go(ln){ln=Go(ln);const Tn=Go(this);return cs(Tn).has.call(Tn,ln)||(Tn.add(ln),Wi(Tn,"add",ln,ln)),this}function Po(ln,Tn){Tn=Go(Tn);const ts=Go(this),{has:xs,get:As}=cs(ts);let Bs=xs.call(ts,ln);Bs||(ln=Go(ln),Bs=xs.call(ts,ln));const Eo=As.call(ts,ln);return ts.set(ln,Tn),Bs?(0,vi.$H)(Tn,Eo)&&Wi(ts,"set",ln,Tn,Eo):Wi(ts,"add",ln,Tn),this}function Jo(ln){const Tn=Go(this),{has:ts,get:xs}=cs(Tn);let As=ts.call(Tn,ln);As||(ln=Go(ln),As=ts.call(Tn,ln));const Bs=xs?xs.call(Tn,ln):void 0,Eo=Tn.delete(ln);return As&&Wi(Tn,"delete",ln,void 0,Bs),Eo}function ca(){const ln=Go(this),Tn=ln.size!==0,ts=void 0,xs=ln.clear();return Tn&&Wi(ln,"clear",void 0,void 0,ts),xs}function gi(ln,Tn){return function(xs,As){const Bs=this,Eo=Bs.__v_raw,qo=Go(Eo),Wa=Tn?Xn:ln?kl:El;return!ln&&ki(qo,"iterate",Ai),Eo.forEach((_c,ba)=>xs.call(As,Wa(_c),Wa(ba),Bs))}}function Si(ln,Tn,ts){return function(...xs){const As=this.__v_raw,Bs=Go(As),Eo=(0,vi.CE)(Bs),qo=ln==="entries"||ln===Symbol.iterator&&Eo,Wa=ln==="keys"&&Eo,_c=As[ln](...xs),ba=ts?Xn:Tn?kl:El;return!Tn&&ki(Bs,"iterate",Wa?Ri:Ai),{next(){const{value:ol,done:Al}=_c.next();return Al?{value:ol,done:Al}:{value:qo?[ba(ol[0]),ba(ol[1])]:ba(ol),done:Al}},[Symbol.iterator](){return this}}}}function $i(ln){return function(...Tn){return ln==="delete"?!1:ln==="clear"?void 0:this}}function kn(){const ln={get(Bs){return Vs(this,Bs)},get size(){return fo(this)},has:uo,add:go,set:Po,delete:Jo,clear:ca,forEach:gi(!1,!1)},Tn={get(Bs){return Vs(this,Bs,!1,!0)},get size(){return fo(this)},has:uo,add:go,set:Po,delete:Jo,clear:ca,forEach:gi(!1,!0)},ts={get(Bs){return Vs(this,Bs,!0)},get size(){return fo(this,!0)},has(Bs){return uo.call(this,Bs,!0)},add:$i("add"),set:$i("set"),delete:$i("delete"),clear:$i("clear"),forEach:gi(!0,!1)},xs={get(Bs){return Vs(this,Bs,!0,!0)},get size(){return fo(this,!0)},has(Bs){return uo.call(this,Bs,!0)},add:$i("add"),set:$i("set"),delete:$i("delete"),clear:$i("clear"),forEach:gi(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(Bs=>{ln[Bs]=Si(Bs,!1,!1),ts[Bs]=Si(Bs,!0,!1),Tn[Bs]=Si(Bs,!1,!0),xs[Bs]=Si(Bs,!0,!0)}),[ln,ts,Tn,xs]}const[Ln,Un,Jn,Ys]=kn();function bo(ln,Tn){const ts=Tn?ln?Ys:Jn:ln?Un:Ln;return(xs,As,Bs)=>As==="__v_isReactive"?!ln:As==="__v_isReadonly"?ln:As==="__v_raw"?xs:Reflect.get((0,vi.$3)(ts,As)&&As in xs?ts:xs,As,Bs)}const _o={get:bo(!1,!1)},pa={get:bo(!1,!0)},ka={get:bo(!0,!1)},Aa={get:bo(!0,!0)};function ha(ln,Tn,ts){const xs=Go(ts);if(xs!==ts&&Tn.call(ln,xs)){const As=toRawType(ln);ri(`Reactive ${As} contains both the raw and reactive versions of the same object${As==="Map"?" as keys":""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}const sa=new WeakMap,Do=new WeakMap,ra=new WeakMap,rl=new WeakMap;function bl(ln){switch(ln){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function nu(ln){return ln.__v_skip||!Object.isExtensible(ln)?0:bl((0,vi.Zf)(ln))}function ec(ln){return Zo(ln)?ln:va(ln,!1,Bi,_o,sa)}function su(ln){return va(ln,!1,Gi,pa,Do)}function Ta(ln){return va(ln,!0,Qi,ka,ra)}function La(ln){return va(ln,!0,On,Aa,rl)}function va(ln,Tn,ts,xs,As){if(!(0,vi.Gv)(ln)||ln.__v_raw&&!(Tn&&ln.__v_isReactive))return ln;const Bs=As.get(ln);if(Bs)return Bs;const Eo=nu(ln);if(Eo===0)return ln;const qo=new Proxy(ln,Eo===2?xs:ts);return As.set(ln,qo),qo}function Ya(ln){return Zo(ln)?Ya(ln.__v_raw):!!(ln&&ln.__v_isReactive)}function Zo(ln){return!!(ln&&ln.__v_isReadonly)}function Da(ln){return!!(ln&&ln.__v_isShallow)}function ru(ln){return ln?!!ln.__v_raw:!1}function Go(ln){const Tn=ln&&ln.__v_raw;return Tn?Go(Tn):ln}function Rc(ln){return Object.isExtensible(ln)&&(0,vi.yQ)(ln,"__v_skip",!0),ln}const El=ln=>(0,vi.Gv)(ln)?ec(ln):ln,kl=ln=>(0,vi.Gv)(ln)?Ta(ln):ln,tc=null;class Mc{constructor(Tn,ts,xs,As){this.getter=Tn,this._setter=ts,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new bn(()=>Tn(this._value),()=>Ts(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!As,this.__v_isReadonly=xs}get value(){const Tn=Go(this);return(!Tn._cacheable||Tn.effect.dirty)&&(0,vi.$H)(Tn._value,Tn._value=Tn.effect.run())&&Ts(Tn,4),Yn(Tn),Tn.effect._dirtyLevel>=2&&Ts(Tn,2),Tn._value}set value(Tn){this._setter(Tn)}get _dirty(){return this.effect.dirty}set _dirty(Tn){this.effect.dirty=Tn}}function bc(ln,Tn,ts=!1){let xs,As;const Bs=(0,vi.Tn)(ln);return Bs?(xs=ln,As=vi.tE):(xs=ln.get,As=ln.set),new Mc(xs,As,Bs||!As,ts)}function Yn(ln){var Tn;sn&&Vn&&(ln=Go(ln),rn(Vn,(Tn=ln.dep)!=null?Tn:ln.dep=Pn(()=>ln.dep=void 0,ln instanceof Mc?ln:void 0),void 0))}function Ts(ln,Tn=4,ts){ln=Go(ln);const xs=ln.dep;xs&&pn(xs,Tn,void 0)}function Us(ln){return!!(ln&&ln.__v_isRef===!0)}function mo(ln){return ea(ln,!1)}function ma(ln){return ea(ln,!0)}function ea(ln,Tn){return Us(ln)?ln:new Ra(ln,Tn)}class Ra{constructor(Tn,ts){this.__v_isShallow=ts,this.dep=void 0,this.__v_isRef=!0,this._rawValue=ts?Tn:Go(Tn),this._value=ts?Tn:El(Tn)}get value(){return Yn(this),this._value}set value(Tn){const ts=this.__v_isShallow||Da(Tn)||Zo(Tn);Tn=ts?Tn:Go(Tn),(0,vi.$H)(Tn,this._rawValue)&&(this._rawValue=Tn,this._value=ts?Tn:El(Tn),Ts(this,4,Tn))}}function Ka(ln){Ts(ln,4,void 0)}function ia(ln){return Us(ln)?ln.value:ln}function Ul(ln){return isFunction(ln)?ln():ia(ln)}const Ml={get:(ln,Tn,ts)=>ia(Reflect.get(ln,Tn,ts)),set:(ln,Tn,ts,xs)=>{const As=ln[Tn];return Us(As)&&!Us(ts)?(As.value=ts,!0):Reflect.set(ln,Tn,ts,xs)}};function Oc(ln){return Ya(ln)?ln:new Proxy(ln,Ml)}class xa{constructor(Tn){this.dep=void 0,this.__v_isRef=!0;const{get:ts,set:xs}=Tn(()=>Yn(this),()=>Ts(this));this._get=ts,this._set=xs}get value(){return this._get()}set value(Tn){this._set(Tn)}}function Dc(ln){return new xa(ln)}function jd(ln){const Tn=(0,vi.cy)(ln)?new Array(ln.length):{};for(const ts in ln)Tn[ts]=Ja(ln,ts);return Tn}class Fc{constructor(Tn,ts,xs){this._object=Tn,this._key=ts,this._defaultValue=xs,this.__v_isRef=!0}get value(){const Tn=this._object[this._key];return Tn===void 0?this._defaultValue:Tn}set value(Tn){this._object[this._key]=Tn}get dep(){return an(Go(this._object),this._key)}}class Iu{constructor(Tn){this._getter=Tn,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function cf(ln,Tn,ts){return Us(ln)?ln:(0,vi.Tn)(ln)?new Iu(ln):(0,vi.Gv)(ln)&&arguments.length>1?Ja(ln,Tn,ts):mo(ln)}function Ja(ln,Tn,ts){const xs=ln[Tn];return Us(xs)?xs:new Fc(ln,Tn,ts)}const vu=null,Sd={GET:"get",HAS:"has",ITERATE:"iterate"},Pu={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"},Cd={SKIP:"__v_skip",IS_REACTIVE:"__v_isReactive",IS_READONLY:"__v_isReadonly",IS_SHALLOW:"__v_isShallow",RAW:"__v_raw"}},"./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js":function(oi,bi,wi){"use strict";wi.d(bi,{$u:function(){return Pc},Bs:function(){return Lp},CE:function(){return lc},Df:function(){return bu},FK:function(){return $a},Gy:function(){return uf},K9:function(){return sv},Lk:function(){return Gu},MZ:function(){return Ol},OW:function(){return Wl},Q3:function(){return lv},QP:function(){return qu},Qi:function(){return bl},RG:function(){return Vu},Wv:function(){return _h},bF:function(){return Ca},bU:function(){return fv},bo:function(){return _c},dY:function(){return nn},eW:function(){return Yu},g2:function(){return bc},h:function(){return Tp},hi:function(){return $u},jt:function(){return nu},k6:function(){return su},nI:function(){return _f},pI:function(){return hf},pM:function(){return Ed},pR:function(){return ff},qL:function(){return qi},rE:function(){return Rp},sV:function(){return Bu},uX:function(){return bh},v6:function(){return xh},wB:function(){return xs},xo:function(){return Dl}});var vi=wi("./node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js"),ri=wi("./node_modules/@vue/shared/dist/shared.esm-bundler.js");const yi=[];function Li(ui){yi.push(ui)}function Ji(){yi.pop()}function tn(ui,...mi){(0,vi.C4)();const Ei=yi.length?yi[yi.length-1].component:null,Di=Ei&&Ei.appContext.config.warnHandler,Ni=_n();if(Di)En(Di,Ei,11,[ui+mi.map(Vi=>{var cn,An;return(An=(cn=Vi.toString)==null?void 0:cn.call(Vi))!=null?An:JSON.stringify(Vi)}).join(""),Ei&&Ei.proxy,Ni.map(({vnode:Vi})=>`at <${uu(Ei,Vi.type)}>`).join(` +`),Ni]);else{const Vi=[`[Vue warn]: ${ui}`,...mi];Ni.length&&Vi.push(` +`,...In(Ni)),console.warn(...Vi)}(0,vi.bl)()}function _n(){let ui=yi[yi.length-1];if(!ui)return[];const mi=[];for(;ui;){const Ei=mi[0];Ei&&Ei.vnode===ui?Ei.recurseCount++:mi.push({vnode:ui,recurseCount:0});const Di=ui.component&&ui.component.parent;ui=Di&&Di.vnode}return mi}function In(ui){const mi=[];return ui.forEach((Ei,Di)=>{mi.push(...Di===0?[]:[` +`],...Vn(Ei))}),mi}function Vn({vnode:ui,recurseCount:mi}){const Ei=mi>0?`... (${mi} recursive calls)`:"",Di=ui.component?ui.component.parent==null:!1,Ni=` at <${uu(ui.component,ui.type,Di)}`,Vi=">"+Ei;return ui.props?[Ni,...bn(ui.props),Vi]:[Ni+Vi]}function bn(ui){const mi=[],Ei=Object.keys(ui);return Ei.slice(0,3).forEach(Di=>{mi.push(...Zi(Di,ui[Di]))}),Ei.length>3&&mi.push(" ..."),mi}function Zi(ui,mi,Ei){return(0,ri.Kg)(mi)?(mi=JSON.stringify(mi),Ei?mi:[`${ui}=${mi}`]):typeof mi=="number"||typeof mi=="boolean"||mi==null?Ei?mi:[`${ui}=${mi}`]:(0,vi.i9)(mi)?(mi=Zi(ui,(0,vi.ux)(mi.value),!0),Ei?mi:[`${ui}=Ref<`,mi,">"]):(0,ri.Tn)(mi)?[`${ui}=fn${mi.name?`<${mi.name}>`:""}`]:(mi=(0,vi.ux)(mi),Ei?mi:[`${ui}=`,mi])}function un(ui,mi){}const ls={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},ks={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ."};function En(ui,mi,Ei,Di){try{return Di?ui(...Di):ui()}catch(Ni){sn(Ni,mi,Ei)}}function qi(ui,mi,Ei,Di){if((0,ri.Tn)(ui)){const Ni=En(ui,mi,Ei,Di);return Ni&&(0,ri.yL)(Ni)&&Ni.catch(Vi=>{sn(Vi,mi,Ei)}),Ni}if((0,ri.cy)(ui)){const Ni=[];for(let Vi=0;Vi>>1,Ni=yn[Di],Vi=Fi(Ni);Vimn&&yn.splice(mi,1)}function an(ui){(0,ri.cy)(ui)?Mn.push(...ui):(!pi||!pi.includes(ui,ui.allowRecurse?rn+1:rn))&&Mn.push(ui),ki()}function Fn(ui,mi,Ei=hs?mn+1:0){for(;EiFi(Ei)-Fi(Di));if(Mn.length=0,pi){pi.push(...mi);return}for(pi=mi,rn=0;rnui.id==null?1/0:ui.id,Oi=(ui,mi)=>{const Ei=Fi(ui)-Fi(mi);if(Ei===0){if(ui.pre&&!mi.pre)return-1;if(mi.pre&&!ui.pre)return 1}return Ei};function zi(ui){fs=!1,hs=!0,yn.sort(Oi);const mi=ri.tE;try{for(mn=0;mnPn){const Di=mi.ownerInstance,Ni=Di&&Ju(Di.type);return sn(`Maximum recursive updates exceeded${Ni?` in component <${Ni}>`:""}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,null,10),!0}else ui.set(mi,Ei+1)}}let Yi=!1;const wn=new Set,Bi=new Map;function Qi(ui){const mi=ui.type.__hmrId;let Ei=Bi.get(mi);Ei||(On(mi,ui.type),Ei=Bi.get(mi)),Ei.instances.add(ui)}function Gi(ui){Bi.get(ui.type.__hmrId).instances.delete(ui)}function On(ui,mi){return Bi.has(ui)?!1:(Bi.set(ui,{initialDef:Xn(mi),instances:new Set}),!0)}function Xn(ui){return Cm(ui)?ui.__vccOpts:ui}function cs(ui,mi){const Ei=Bi.get(ui);Ei&&(Ei.initialDef.render=mi,[...Ei.instances].forEach(Di=>{mi&&(Di.render=mi,Xn(Di.type).render=mi),Di.renderCache=[],Yi=!0,Di.effect.dirty=!0,Di.update(),Yi=!1}))}function Vs(ui,mi){const Ei=Bi.get(ui);if(!Ei)return;mi=Xn(mi),uo(Ei.initialDef,mi);const Di=[...Ei.instances];for(const Ni of Di){const Vi=Xn(Ni.type);wn.has(Vi)||(Vi!==Ei.initialDef&&uo(Vi,mi),wn.add(Vi)),Ni.appContext.propsCache.delete(Ni.type),Ni.appContext.emitsCache.delete(Ni.type),Ni.appContext.optionsCache.delete(Ni.type),Ni.ceReload?(wn.add(Vi),Ni.ceReload(mi.styles),wn.delete(Vi)):Ni.parent?(Ni.parent.effect.dirty=!0,Ri(Ni.parent.update)):Ni.appContext.reload?Ni.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required.")}an(()=>{for(const Ni of Di)wn.delete(Xn(Ni.type))})}function uo(ui,mi){extend(ui,mi);for(const Ei in ui)Ei!=="__file"&&!(Ei in mi)&&delete ui[Ei]}function fo(ui){return(mi,Ei)=>{try{return ui(mi,Ei)}catch(Di){console.error(Di),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let go,Po=null,Jo=!1;function ca(ui,...mi){go?go.emit(ui,...mi):Jo||Po.push({event:ui,args:mi})}function gi(ui,mi){var Ei,Di;go=ui,go?(go.enabled=!0,Po.forEach(({event:Ni,args:Vi})=>go.emit(Ni,...Vi)),Po=[]):typeof window<"u"&&window.HTMLElement&&!((Di=(Ei=window.navigator)==null?void 0:Ei.userAgent)!=null&&Di.includes("jsdom"))?((mi.__VUE_DEVTOOLS_HOOK_REPLAY__=mi.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(Vi=>{gi(Vi,mi)}),setTimeout(()=>{go||(mi.__VUE_DEVTOOLS_HOOK_REPLAY__=null,Jo=!0,Po=[])},3e3)):(Jo=!0,Po=[])}function Si(ui,mi){ca("app:init",ui,mi,{Fragment:$a,Text:vf,Comment:yl,Static:Yf})}function $i(ui){ca("app:unmount",ui)}const kn=null,Ln=null,Un=null,Jn=ui=>{go&&typeof go.cleanupBuffer=="function"&&!go.cleanupBuffer(ui)&&Un(ui)};function Ys(ui){return mi=>{ca(ui,mi.appContext.app,mi.uid,mi.parent?mi.parent.uid:void 0,mi)}}const bo=null,_o=null;function pa(ui){return(mi,Ei,Di)=>{ca(ui,mi.appContext.app,mi.uid,mi,Ei,Di)}}function ka(ui,mi,Ei){ca("component:emit",ui.appContext.app,ui,mi,Ei)}function Aa(ui,mi,...Ei){if(ui.isUnmounted)return;const Di=ui.vnode.props||ri.MZ;let Ni=Ei;const Vi=mi.startsWith("update:"),cn=Vi&&mi.slice(7);if(cn&&cn in Di){const ds=`${cn==="modelValue"?"model":cn}Modifiers`,{number:Cn,trim:is}=Di[ds]||ri.MZ;is&&(Ni=Ei.map(Ss=>(0,ri.Kg)(Ss)?Ss.trim():Ss)),Cn&&(Ni=Ei.map(ri.bB))}let An,qn=Di[An=(0,ri.rU)(mi)]||Di[An=(0,ri.rU)((0,ri.PT)(mi))];!qn&&Vi&&(qn=Di[An=(0,ri.rU)((0,ri.Tg)(mi))]),qn&&qi(qn,ui,6,Ni);const Qn=Di[An+"Once"];if(Qn){if(!ui.emitted)ui.emitted={};else if(ui.emitted[An])return;ui.emitted[An]=!0,qi(Qn,ui,6,Ni)}}function ha(ui,mi,Ei=!1){const Di=mi.emitsCache,Ni=Di.get(ui);if(Ni!==void 0)return Ni;const Vi=ui.emits;let cn={},An=!1;if(!(0,ri.Tn)(ui)){const qn=Qn=>{const ds=ha(Qn,mi,!0);ds&&(An=!0,(0,ri.X$)(cn,ds))};!Ei&&mi.mixins.length&&mi.mixins.forEach(qn),ui.extends&&qn(ui.extends),ui.mixins&&ui.mixins.forEach(qn)}return!Vi&&!An?((0,ri.Gv)(ui)&&Di.set(ui,null),null):((0,ri.cy)(Vi)?Vi.forEach(qn=>cn[qn]=null):(0,ri.X$)(cn,Vi),(0,ri.Gv)(ui)&&Di.set(ui,cn),cn)}function sa(ui,mi){return!ui||!(0,ri.Mp)(mi)?!1:(mi=mi.slice(2).replace(/Once$/,""),(0,ri.$3)(ui,mi[0].toLowerCase()+mi.slice(1))||(0,ri.$3)(ui,(0,ri.Tg)(mi))||(0,ri.$3)(ui,mi))}let Do=null,ra=null;function rl(ui){const mi=Do;return Do=ui,ra=ui&&ui.type.__scopeId||null,mi}function bl(ui){ra=ui}function nu(){ra=null}const ec=ui=>su;function su(ui,mi=Do,Ei){if(!mi||ui._n)return ui;const Di=(...Ni)=>{Di._d&&Jf(-1);const Vi=rl(mi);let cn;try{cn=ui(...Ni)}finally{rl(Vi),Di._d&&Jf(1)}return cn};return Di._n=!0,Di._c=!0,Di._d=!0,Di}let Ta=!1;function La(){Ta=!0}function va(ui){const{type:mi,vnode:Ei,proxy:Di,withProxy:Ni,propsOptions:[Vi],slots:cn,attrs:An,emit:qn,render:Qn,renderCache:ds,props:Cn,data:is,setupState:Ss,ctx:qs,inheritAttrs:oo}=ui,Qo=rl(ui);let Vo,Os;try{if(Ei.shapeFlag&4){const js=Ni||Di,Ks=js;Vo=tl(Qn.call(Ks,js,ds,Cn,Ss,is,qs)),Os=An}else{const js=mi;Vo=tl(js.length>1?js(Cn,{attrs:An,slots:cn,emit:qn}):js(Cn,null)),Os=mi.props?An:Da(An)}}catch(js){bf.length=0,sn(js,ui,1),Vo=Ca(yl)}let os=Vo,bs;if(Os&&oo!==!1){const js=Object.keys(Os),{shapeFlag:Ks}=os;js.length&&Ks&7&&(Vi&&js.some(ri.CP)&&(Os=ru(Os,Vi)),os=cu(os,Os))}return Ei.dirs&&(os=cu(os),os.dirs=os.dirs?os.dirs.concat(Ei.dirs):Ei.dirs),Ei.transition&&(os.transition=Ei.transition),Vo=os,rl(Qo),Vo}const Ya=ui=>{const mi=ui.children,Ei=ui.dynamicChildren,Di=Zo(mi,!1);if(!Di)return[ui,void 0];const Ni=mi.indexOf(Di),Vi=Ei?Ei.indexOf(Di):-1,cn=An=>{mi[Ni]=An,Ei&&(Vi>-1?Ei[Vi]=An:An.patchFlag>0&&(ui.dynamicChildren=[...Ei,An]))};return[tl(Di),cn]};function Zo(ui,mi=!0){let Ei;for(let Di=0;Di{let mi;for(const Ei in ui)(Ei==="class"||Ei==="style"||(0,ri.Mp)(Ei))&&((mi||(mi={}))[Ei]=ui[Ei]);return mi},ru=(ui,mi)=>{const Ei={};for(const Di in ui)(!(0,ri.CP)(Di)||!(Di.slice(9)in mi))&&(Ei[Di]=ui[Di]);return Ei},Go=ui=>ui.shapeFlag&7||ui.type===yl;function Rc(ui,mi,Ei){const{props:Di,children:Ni,component:Vi}=ui,{props:cn,children:An,patchFlag:qn}=mi,Qn=Vi.emitsOptions;if(mi.dirs||mi.transition)return!0;if(Ei&&qn>=0){if(qn&1024)return!0;if(qn&16)return Di?El(Di,cn,Qn):!!cn;if(qn&8){const ds=mi.dynamicProps;for(let Cn=0;Cnui.__isSuspense;let Ra=0;const Ka={name:"Suspense",__isSuspense:!0,process(ui,mi,Ei,Di,Ni,Vi,cn,An,qn,Qn){if(ui==null)Ml(mi,Ei,Di,Ni,Vi,cn,An,qn,Qn);else{if(Vi&&Vi.deps>0&&!ui.suspense.isInFallback){mi.suspense=ui.suspense,mi.suspense.vnode=mi,mi.el=ui.el;return}Oc(ui,mi,Ei,Di,Ni,cn,An,qn,Qn)}},hydrate:jd,create:Dc,normalize:Fc},ia=null;function Ul(ui,mi){const Ei=ui.props&&ui.props[mi];(0,ri.Tn)(Ei)&&Ei()}function Ml(ui,mi,Ei,Di,Ni,Vi,cn,An,qn){const{p:Qn,o:{createElement:ds}}=qn,Cn=ds("div"),is=ui.suspense=Dc(ui,Ni,Di,mi,Cn,Ei,Vi,cn,An,qn);Qn(null,is.pendingBranch=ui.ssContent,Cn,null,Di,is,Vi,cn),is.deps>0?(Ul(ui,"onPending"),Ul(ui,"onFallback"),Qn(null,ui.ssFallback,mi,Ei,Di,null,Vi,cn),Ja(is,ui.ssFallback)):is.resolve(!1,!0)}function Oc(ui,mi,Ei,Di,Ni,Vi,cn,An,{p:qn,um:Qn,o:{createElement:ds}}){const Cn=mi.suspense=ui.suspense;Cn.vnode=mi,mi.el=ui.el;const is=mi.ssContent,Ss=mi.ssFallback,{activeBranch:qs,pendingBranch:oo,isInFallback:Qo,isHydrating:Vo}=Cn;if(oo)Cn.pendingBranch=is,Vc(is,oo)?(qn(oo,is,Cn.hiddenContainer,null,Ni,Cn,Vi,cn,An),Cn.deps<=0?Cn.resolve():Qo&&(Vo||(qn(qs,Ss,Ei,Di,Ni,null,Vi,cn,An),Ja(Cn,Ss)))):(Cn.pendingId=Ra++,Vo?(Cn.isHydrating=!1,Cn.activeBranch=oo):Qn(oo,Ni,Cn),Cn.deps=0,Cn.effects.length=0,Cn.hiddenContainer=ds("div"),Qo?(qn(null,is,Cn.hiddenContainer,null,Ni,Cn,Vi,cn,An),Cn.deps<=0?Cn.resolve():(qn(qs,Ss,Ei,Di,Ni,null,Vi,cn,An),Ja(Cn,Ss))):qs&&Vc(is,qs)?(qn(qs,is,Ei,Di,Ni,Cn,Vi,cn,An),Cn.resolve(!0)):(qn(null,is,Cn.hiddenContainer,null,Ni,Cn,Vi,cn,An),Cn.deps<=0&&Cn.resolve()));else if(qs&&Vc(is,qs))qn(qs,is,Ei,Di,Ni,Cn,Vi,cn,An),Ja(Cn,is);else if(Ul(mi,"onPending"),Cn.pendingBranch=is,is.shapeFlag&512?Cn.pendingId=is.component.suspenseId:Cn.pendingId=Ra++,qn(null,is,Cn.hiddenContainer,null,Ni,Cn,Vi,cn,An),Cn.deps<=0)Cn.resolve();else{const{timeout:Os,pendingId:os}=Cn;Os>0?setTimeout(()=>{Cn.pendingId===os&&Cn.fallback(Ss)},Os):Os===0&&Cn.fallback(Ss)}}let xa=!1;function Dc(ui,mi,Ei,Di,Ni,Vi,cn,An,qn,Qn,ds=!1){const{p:Cn,m:is,um:Ss,n:qs,o:{parentNode:oo,remove:Qo}}=Qn;let Vo;const Os=vu(ui);Os&&mi?.pendingBranch&&(Vo=mi.pendingId,mi.deps++);const os=ui.props?(0,ri.Ro)(ui.props.timeout):void 0,bs=Vi,js={vnode:ui,parent:mi,parentComponent:Ei,namespace:cn,container:Di,hiddenContainer:Ni,deps:0,pendingId:Ra++,timeout:typeof os=="number"?os:-1,activeBranch:null,pendingBranch:null,isInFallback:!ds,isHydrating:ds,isUnmounted:!1,effects:[],resolve(Ks=!1,Ns=!1){const{vnode:Gs,activeBranch:Gr,pendingBranch:eo,pendingId:To,effects:fa,parentComponent:aa,container:Pa}=js;let Va=!1;js.isHydrating?js.isHydrating=!1:Ks||(Va=Gr&&eo.transition&&eo.transition.mode==="out-in",Va&&(Gr.transition.afterLeave=()=>{To===js.pendingId&&(is(eo,Pa,Vi===bs?qs(Gr):Vi,0),an(fa))}),Gr&&(oo(Gr.el)!==js.hiddenContainer&&(Vi=qs(Gr)),Ss(Gr,aa,js,!0)),Va||is(eo,Pa,Vi,0)),Ja(js,eo),js.pendingBranch=null,js.isInFallback=!1;let wo=js.parent,Yo=!1;for(;wo;){if(wo.pendingBranch){wo.effects.push(...fa),Yo=!0;break}wo=wo.parent}!Yo&&!Va&&an(fa),js.effects=[],Os&&mi&&mi.pendingBranch&&Vo===mi.pendingId&&(mi.deps--,mi.deps===0&&!Ns&&mi.resolve()),Ul(Gs,"onResolve")},fallback(Ks){if(!js.pendingBranch)return;const{vnode:Ns,activeBranch:Gs,parentComponent:Gr,container:eo,namespace:To}=js;Ul(Ns,"onFallback");const fa=qs(Gs),aa=()=>{js.isInFallback&&(Cn(null,Ks,eo,fa,Gr,null,To,An,qn),Ja(js,Ks))},Pa=Ks.transition&&Ks.transition.mode==="out-in";Pa&&(Gs.transition.afterLeave=aa),js.isInFallback=!0,Ss(Gs,Gr,null,!0),Pa||aa()},move(Ks,Ns,Gs){js.activeBranch&&is(js.activeBranch,Ks,Ns,Gs),js.container=Ks},next(){return js.activeBranch&&qs(js.activeBranch)},registerDep(Ks,Ns){const Gs=!!js.pendingBranch;Gs&&js.deps++;const Gr=Ks.vnode.el;Ks.asyncDep.catch(eo=>{sn(eo,Ks,0)}).then(eo=>{if(Ks.isUnmounted||js.isUnmounted||js.pendingId!==Ks.suspenseId)return;Ks.asyncResolved=!0;const{vnode:To}=Ks;Eh(Ks,eo,!1),Gr&&(To.el=Gr);const fa=!Gr&&Ks.subTree.el;Ns(Ks,To,oo(Gr||Ks.subTree.el),Gr?null:qs(Ks.subTree),js,cn,qn),fa&&Qo(fa),kl(Ks,To.el),Gs&&--js.deps===0&&js.resolve()})},unmount(Ks,Ns){js.isUnmounted=!0,js.activeBranch&&Ss(js.activeBranch,Ei,Ks,Ns),js.pendingBranch&&Ss(js.pendingBranch,Ei,Ks,Ns)}};return js}function jd(ui,mi,Ei,Di,Ni,Vi,cn,An,qn){const Qn=mi.suspense=Dc(mi,Di,Ei,ui.parentNode,document.createElement("div"),null,Ni,Vi,cn,An,!0),ds=qn(ui,Qn.pendingBranch=mi.ssContent,Ei,Qn,Vi,cn);return Qn.deps===0&&Qn.resolve(!1,!0),ds}function Fc(ui){const{shapeFlag:mi,children:Ei}=ui,Di=mi&32;ui.ssContent=Iu(Di?Ei.default:Ei),ui.ssFallback=Di?Iu(Ei.fallback):Ca(yl)}function Iu(ui){let mi;if((0,ri.Tn)(ui)){const Ei=ql&&ui._c;Ei&&(ui._d=!1,bh()),ui=ui(),Ei&&(ui._d=!0,mi=Xl,xc())}return(0,ri.cy)(ui)&&(ui=Zo(ui)),ui=tl(ui),mi&&!ui.dynamicChildren&&(ui.dynamicChildren=mi.filter(Ei=>Ei!==ui)),ui}function cf(ui,mi){mi&&mi.pendingBranch?(0,ri.cy)(ui)?mi.effects.push(...ui):mi.effects.push(ui):an(ui)}function Ja(ui,mi){ui.activeBranch=mi;const{vnode:Ei,parentComponent:Di}=ui;let Ni=mi.el;for(;!Ni&&mi.component;)mi=mi.component.subTree,Ni=mi.el;Ei.el=Ni,Di&&Di.subTree===Ei&&(Di.vnode.el=Ni,kl(Di,Ni))}function vu(ui){var mi;return((mi=ui.props)==null?void 0:mi.suspensible)!=null&&ui.props.suspensible!==!1}const Sd=Symbol.for("v-scx"),Pu=()=>{{const ui=rc(Sd);return ui}};function Cd(ui,mi){return As(ui,null,mi)}function ln(ui,mi){return As(ui,null,{flush:"post"})}function Tn(ui,mi){return As(ui,null,{flush:"sync"})}const ts={};function xs(ui,mi,Ei){return As(ui,mi,Ei)}function As(ui,mi,{immediate:Ei,deep:Di,flush:Ni,once:Vi,onTrack:cn,onTrigger:An}=ri.MZ){if(mi&&Vi){const Ns=mi;mi=(...Gs)=>{Ns(...Gs),Ks()}}const qn=Ns=>{tn("Invalid watch source: ",Ns,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},Qn=ga,ds=Ns=>Di===!0?Ns:qo(Ns,Di===!1?1:void 0);let Cn,is=!1,Ss=!1;if((0,vi.i9)(ui)?(Cn=()=>ui.value,is=(0,vi.fE)(ui)):(0,vi.g8)(ui)?(Cn=()=>ds(ui),is=!0):(0,ri.cy)(ui)?(Ss=!0,is=ui.some(Ns=>(0,vi.g8)(Ns)||(0,vi.fE)(Ns)),Cn=()=>ui.map(Ns=>{if((0,vi.i9)(Ns))return Ns.value;if((0,vi.g8)(Ns))return ds(Ns);if((0,ri.Tn)(Ns))return En(Ns,Qn,2)})):(0,ri.Tn)(ui)?mi?Cn=()=>En(ui,Qn,2):Cn=()=>(qs&&qs(),qi(ui,Qn,3,[oo])):Cn=ri.tE,mi&&Di){const Ns=Cn;Cn=()=>qo(Ns())}let qs,oo=Ns=>{qs=bs.onStop=()=>{En(Ns,Qn,4),qs=bs.onStop=void 0}},Qo;if(id)if(oo=ri.tE,mi?Ei&&qi(mi,Qn,3,[Cn(),Ss?[]:void 0,oo]):Cn(),Ni==="sync"){const Ns=Pu();Qo=Ns.__watcherHandles||(Ns.__watcherHandles=[])}else return ri.tE;let Vo=Ss?new Array(ui.length).fill(ts):ts;const Os=()=>{if(!(!bs.active||!bs.dirty))if(mi){const Ns=bs.run();(Di||is||(Ss?Ns.some((Gs,Gr)=>(0,ri.$H)(Gs,Vo[Gr])):(0,ri.$H)(Ns,Vo)))&&(qs&&qs(),qi(mi,Qn,3,[Ns,Vo===ts?void 0:Ss&&Vo[0]===ts?[]:Vo,oo]),Vo=Ns)}else bs.run()};Os.allowRecurse=!!mi;let os;Ni==="sync"?os=Os:Ni==="post"?os=()=>el(Os,Qn&&Qn.suspense):(Os.pre=!0,Qn&&(Os.id=Qn.uid),os=()=>Ri(Os));const bs=new vi.X2(Cn,ri.tE,os),js=(0,vi.o5)(),Ks=()=>{bs.stop(),js&&(0,ri.TF)(js.effects,bs)};return mi?Ei?Os():Vo=bs.run():Ni==="post"?el(bs.run.bind(bs),Qn&&Qn.suspense):bs.run(),Qo&&Qo.push(Ks),Ks}function Bs(ui,mi,Ei){const Di=this.proxy,Ni=(0,ri.Kg)(ui)?ui.includes(".")?Eo(Di,ui):()=>Di[ui]:ui.bind(Di,Di);let Vi;(0,ri.Tn)(mi)?Vi=mi:(Vi=mi.handler,Ei=mi);const cn=Tu(this),An=As(Ni,Vi.bind(Di),Ei);return cn(),An}function Eo(ui,mi){const Ei=mi.split(".");return()=>{let Di=ui;for(let Ni=0;Ni0){if(Ei>=mi)return ui;Ei++}if(Di=Di||new Set,Di.has(ui))return ui;if(Di.add(ui),(0,vi.i9)(ui))qo(ui.value,mi,Ei,Di);else if((0,ri.cy)(ui))for(let Ni=0;Ni{qo(Ni,mi,Ei,Di)});else if((0,ri.Qd)(ui))for(const Ni in ui)qo(ui[Ni],mi,Ei,Di);return ui}function Wa(ui){isBuiltInDirective(ui)&&tn("Do not use built-in directive ids as custom directive id: "+ui)}function _c(ui,mi){if(Do===null)return ui;const Ei=nd(Do)||Do.proxy,Di=ui.dirs||(ui.dirs=[]);for(let Ni=0;Ni{ui.isMounted=!0}),Dl(()=>{ui.isUnmounting=!0}),ui}const Tl=[Function,Array],qu={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Tl,onEnter:Tl,onAfterEnter:Tl,onEnterCancelled:Tl,onBeforeLeave:Tl,onLeave:Tl,onAfterLeave:Tl,onLeaveCancelled:Tl,onBeforeAppear:Tl,onAppear:Tl,onAfterAppear:Tl,onAppearCancelled:Tl},ff={name:"BaseTransition",props:qu,setup(ui,{slots:mi}){const Ei=_f(),Di=uf();return()=>{const Ni=mi.default&&bu(mi.default(),!0);if(!Ni||!Ni.length)return;let Vi=Ni[0];if(Ni.length>1){let is=!1;for(const Ss of Ni)if(Ss.type!==yl){Vi=Ss,is=!0;break}}const cn=(0,vi.ux)(ui),{mode:An}=cn;if(Di.isLeaving)return Nf(Vi);const qn=Ic(Vi);if(!qn)return Nf(Vi);const Qn=Wl(qn,cn,Di,Ei);Ol(qn,Qn);const ds=Ei.subTree,Cn=ds&&Ic(ds);if(Cn&&Cn.type!==yl&&!Vc(qn,Cn)){const is=Wl(Cn,cn,Di,Ei);if(Ol(Cn,is),An==="out-in")return Di.isLeaving=!0,is.afterLeave=()=>{Di.isLeaving=!1,Ei.update.active!==!1&&(Ei.effect.dirty=!0,Ei.update())},Nf(Vi);An==="in-out"&&qn.type!==yl&&(is.delayLeave=(Ss,qs,oo)=>{const Qo=Na(Di,Cn);Qo[String(Cn.key)]=Cn,Ss[ol]=()=>{qs(),Ss[ol]=void 0,delete Qn.delayedLeave},Qn.delayedLeave=oo})}return Vi}}};function Na(ui,mi){const{leavingVNodes:Ei}=ui;let Di=Ei.get(mi.type);return Di||(Di=Object.create(null),Ei.set(mi.type,Di)),Di}function Wl(ui,mi,Ei,Di){const{appear:Ni,mode:Vi,persisted:cn=!1,onBeforeEnter:An,onEnter:qn,onAfterEnter:Qn,onEnterCancelled:ds,onBeforeLeave:Cn,onLeave:is,onAfterLeave:Ss,onLeaveCancelled:qs,onBeforeAppear:oo,onAppear:Qo,onAfterAppear:Vo,onAppearCancelled:Os}=mi,os=String(ui.key),bs=Na(Ei,ui),js=(Gs,Gr)=>{Gs&&qi(Gs,Di,9,Gr)},Ks=(Gs,Gr)=>{const eo=Gr[1];js(Gs,Gr),(0,ri.cy)(Gs)?Gs.every(To=>To.length<=1)&&eo():Gs.length<=1&&eo()},Ns={mode:Vi,persisted:cn,beforeEnter(Gs){let Gr=An;if(!Ei.isMounted)if(Ni)Gr=oo||An;else return;Gs[ol]&&Gs[ol](!0);const eo=bs[os];eo&&Vc(ui,eo)&&eo.el[ol]&&eo.el[ol](),js(Gr,[Gs])},enter(Gs){let Gr=qn,eo=Qn,To=ds;if(!Ei.isMounted)if(Ni)Gr=Qo||qn,eo=Vo||Qn,To=Os||ds;else return;let fa=!1;const aa=Gs[Al]=Pa=>{fa||(fa=!0,Pa?js(To,[Gs]):js(eo,[Gs]),Ns.delayedLeave&&Ns.delayedLeave(),Gs[Al]=void 0)};Gr?Ks(Gr,[Gs,aa]):aa()},leave(Gs,Gr){const eo=String(ui.key);if(Gs[Al]&&Gs[Al](!0),Ei.isUnmounting)return Gr();js(Cn,[Gs]);let To=!1;const fa=Gs[ol]=aa=>{To||(To=!0,Gr(),aa?js(qs,[Gs]):js(Ss,[Gs]),Gs[ol]=void 0,bs[eo]===ui&&delete bs[eo])};bs[eo]=ui,is?Ks(is,[Gs,fa]):fa()},clone(Gs){return Wl(Gs,mi,Ei,Di)}};return Ns}function Nf(ui){if(ou(ui))return ui=cu(ui),ui.children=null,ui}function Ic(ui){if(!ou(ui))return ui;const{shapeFlag:mi,children:Ei}=ui;if(Ei){if(mi&16)return Ei[0];if(mi&32&&(0,ri.Tn)(Ei.default))return Ei.default()}}function Ol(ui,mi){ui.shapeFlag&6&&ui.component?Ol(ui.component.subTree,mi):ui.shapeFlag&128?(ui.ssContent.transition=mi.clone(ui.ssContent),ui.ssFallback.transition=mi.clone(ui.ssFallback)):ui.transition=mi}function bu(ui,mi=!1,Ei){let Di=[],Ni=0;for(let Vi=0;Vi1)for(let Vi=0;Vi!!ui.type.__asyncLoader;function kd(ui){isFunction(ui)&&(ui={loader:ui});const{loader:mi,loadingComponent:Ei,errorComponent:Di,delay:Ni=200,timeout:Vi,suspensible:cn=!0,onError:An}=ui;let qn=null,Qn,ds=0;const Cn=()=>(ds++,qn=null,is()),is=()=>{let Ss;return qn||(Ss=qn=mi().catch(qs=>{if(qs=qs instanceof Error?qs:new Error(String(qs)),An)return new Promise((oo,Qo)=>{An(qs,()=>oo(Cn()),()=>Qo(qs),ds+1)});throw qs}).then(qs=>Ss!==qn&&qn?qn:(qs&&(qs.__esModule||qs[Symbol.toStringTag]==="Module")&&(qs=qs.default),Qn=qs,qs)))};return Ed({name:"AsyncComponentWrapper",__asyncLoader:is,get __asyncResolved(){return Qn},setup(){const Ss=ga;if(Qn)return()=>_u(Qn,Ss);const qs=Os=>{qn=null,sn(Os,Ss,13,!Di)};if(cn&&Ss.suspense||id)return is().then(Os=>()=>_u(Os,Ss)).catch(Os=>(qs(Os),()=>Di?Ca(Di,{error:Os}):null));const oo=ref(!1),Qo=ref(),Vo=ref(!!Ni);return Ni&&setTimeout(()=>{Vo.value=!1},Ni),Vi!=null&&setTimeout(()=>{if(!oo.value&&!Qo.value){const Os=new Error(`Async component timed out after ${Vi}ms.`);qs(Os),Qo.value=Os}},Vi),is().then(()=>{oo.value=!0,Ss.parent&&ou(Ss.parent.vnode)&&(Ss.parent.effect.dirty=!0,Ri(Ss.parent.update))}).catch(Os=>{qs(Os),Qo.value=Os}),()=>{if(oo.value&&Qn)return _u(Qn,Ss);if(Qo.value&&Di)return Ca(Di,{error:Qo.value});if(Ei&&!Vo.value)return Ca(Ei)}}})}function _u(ui,mi){const{ref:Ei,props:Di,children:Ni,ce:Vi}=mi.vnode,cn=Ca(ui,Di,Ni);return cn.ref=Ei,cn.ce=Vi,delete mi.vnode.ce,cn}const ou=ui=>ui.type.__isKeepAlive,fh={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(ui,{slots:mi}){const Ei=_f(),Di=Ei.ctx;if(!Di.renderer)return()=>{const Os=mi.default&&mi.default();return Os&&Os.length===1?Os[0]:Os};const Ni=new Map,Vi=new Set;let cn=null;const An=Ei.suspense,{renderer:{p:qn,m:Qn,um:ds,o:{createElement:Cn}}}=Di,is=Cn("div");Di.activate=(Os,os,bs,js,Ks)=>{const Ns=Os.component;Qn(Os,os,bs,0,An),qn(Ns.vnode,Os,os,bs,Ns,An,js,Os.slotScopeIds,Ks),el(()=>{Ns.isDeactivated=!1,Ns.a&&(0,ri.DY)(Ns.a);const Gs=Os.props&&Os.props.onVnodeMounted;Gs&&Nl(Gs,Ns.parent,Os)},An)},Di.deactivate=Os=>{const os=Os.component;Qn(Os,is,null,1,An),el(()=>{os.da&&(0,ri.DY)(os.da);const bs=Os.props&&Os.props.onVnodeUnmounted;bs&&Nl(bs,os.parent,Os),os.isDeactivated=!0},An)};function Ss(Os){wu(Os),ds(Os,Ei,An,!0)}function qs(Os){Ni.forEach((os,bs)=>{const js=Ju(os.type);js&&(!Os||!Os(js))&&oo(bs)})}function oo(Os){const os=Ni.get(Os);!cn||!Vc(os,cn)?Ss(os):cn&&wu(cn),Ni.delete(Os),Vi.delete(Os)}xs(()=>[ui.include,ui.exclude],([Os,os])=>{Os&&qs(bs=>yu(Os,bs)),os&&qs(bs=>!yu(os,bs))},{flush:"post",deep:!0});let Qo=null;const Vo=()=>{Qo!=null&&Ni.set(Qo,xu(Ei.subTree))};return Bu(Vo),Pc(Vo),Dl(()=>{Ni.forEach(Os=>{const{subTree:os,suspense:bs}=Ei,js=xu(os);if(Os.type===js.type&&Os.key===js.key){wu(js);const Ks=js.component.da;Ks&&el(Ks,bs);return}Ss(Os)})}),()=>{if(Qo=null,!mi.default)return cn=null;const Os=mi.default(),os=Os[0];if(Os.length>1)return cn=null,Os;if(!ku(os)||!(os.shapeFlag&4)&&!(os.shapeFlag&128))return cn=null,os;let bs=xu(os);const js=bs.type,Ks=Ju(zl(bs)?bs.type.__asyncResolved||{}:js),{include:Ns,exclude:Gs,max:Gr}=ui;if(Ns&&(!Ks||!yu(Ns,Ks))||Gs&&Ks&&yu(Gs,Ks))return cn=bs,os;const eo=bs.key==null?js:bs.key,To=Ni.get(eo);return bs.el&&(bs=cu(bs),os.shapeFlag&128&&(os.ssContent=bs)),Qo=eo,To?(bs.el=To.el,bs.component=To.component,bs.transition&&Ol(bs,bs.transition),bs.shapeFlag|=512,Vi.delete(eo),Vi.add(eo)):(Vi.add(eo),Gr&&Vi.size>parseInt(Gr,10)&&oo(Vi.values().next().value)),bs.shapeFlag|=256,cn=bs,ea(os.type)?os:bs}}},cm=null;function yu(ui,mi){return(0,ri.cy)(ui)?ui.some(Ei=>yu(Ei,mi)):(0,ri.Kg)(ui)?ui.split(",").includes(mi):(0,ri.gd)(ui)?ui.test(mi):!1}function dh(ui,mi){au(ui,"a",mi)}function Bf(ui,mi){au(ui,"da",mi)}function au(ui,mi,Ei=ga){const Di=ui.__wdc||(ui.__wdc=()=>{let Ni=Ei;for(;Ni;){if(Ni.isDeactivated)return;Ni=Ni.parent}return ui()});if(Nu(mi,Di,Ei),Ei){let Ni=Ei.parent;for(;Ni&&Ni.parent;)ou(Ni.parent.vnode)&&df(Di,mi,Ei,Ni),Ni=Ni.parent}}function df(ui,mi,Ei,Di){const Ni=Nu(mi,ui,Di,!0);$u(()=>{(0,ri.TF)(Di[mi],Ni)},Ei)}function wu(ui){ui.shapeFlag&=-257,ui.shapeFlag&=-513}function xu(ui){return ui.shapeFlag&128?ui.ssContent:ui}function Nu(ui,mi,Ei=ga,Di=!1){if(Ei){const Ni=Ei[ui]||(Ei[ui]=[]),Vi=mi.__weh||(mi.__weh=(...cn)=>{if(Ei.isUnmounted)return;(0,vi.C4)();const An=Tu(Ei),qn=qi(mi,Ei,ui,cn);return An(),(0,vi.bl)(),qn});return Di?Ni.unshift(Vi):Ni.push(Vi),Vi}}const ic=ui=>(mi,Ei=ga)=>(!id||ui==="sp")&&Nu(ui,(...Di)=>mi(...Di),Ei),Ad=ic("bm"),Bu=ic("m"),Hu=ic("bu"),Pc=ic("u"),Dl=ic("bum"),$u=ic("um"),Td=ic("sp"),Ld=ic("rtg"),Hf=ic("rtc");function hh(ui,mi=ga){Nu("ec",ui,mi)}function hf(ui,mi,Ei,Di){let Ni;const Vi=Ei&&Ei[Di];if((0,ri.cy)(ui)||(0,ri.Kg)(ui)){Ni=new Array(ui.length);for(let cn=0,An=ui.length;cnmi(cn,An,void 0,Vi&&Vi[An]));else{const cn=Object.keys(ui);Ni=new Array(cn.length);for(let An=0,qn=cn.length;An{const Vi=Di.fn(...Ni);return Vi&&(Vi.key=Di.key),Vi}:Di.fn)}return ui}function Vu(ui,mi,Ei={},Di,Ni){if(Do.isCE||Do.parent&&zl(Do.parent)&&Do.parent.isCE)return mi!=="default"&&(Ei.name=mi),Ca("slot",Ei,Di&&Di());let Vi=ui[mi];Vi&&Vi._c&&(Vi._d=!1),bh();const cn=Vi&&$f(Vi(Ei)),An=_h($a,{key:Ei.key||cn&&cn.key||`_${mi}`},cn||(Di?Di():[]),cn&&ui._===1?64:-2);return!Ni&&An.scopeId&&(An.slotScopeIds=[An.scopeId+"-s"]),Vi&&Vi._c&&(Vi._d=!0),An}function $f(ui){return ui.some(mi=>ku(mi)?!(mi.type===yl||mi.type===$a&&!$f(mi.children)):!0)?ui:null}function Rd(ui,mi){const Ei={};for(const Di in ui)Ei[mi&&/[A-Z]/.test(Di)?`on:${Di}`:toHandlerKey(Di)]=ui[Di];return Ei}const Md=ui=>ui?wm(ui)?nd(ui)||ui.proxy:Md(ui.parent):null,qc=(0,ri.X$)(Object.create(null),{$:ui=>ui,$el:ui=>ui.vnode.el,$data:ui=>ui.data,$props:ui=>ui.props,$attrs:ui=>ui.attrs,$slots:ui=>ui.slots,$refs:ui=>ui.refs,$parent:ui=>Md(ui.parent),$root:ui=>Md(ui.root),$emit:ui=>ui.emit,$options:ui=>Nc(ui),$forceUpdate:ui=>ui.f||(ui.f=()=>{ui.effect.dirty=!0,Ri(ui.update)}),$nextTick:ui=>ui.n||(ui.n=nn.bind(ui.proxy)),$watch:ui=>Bs.bind(ui)}),Od=ui=>ui==="_"||ui==="$",ci=(ui,mi)=>ui!==ri.MZ&&!ui.__isScriptSetup&&(0,ri.$3)(ui,mi),di={get({_:ui},mi){if(mi==="__v_skip")return!0;const{ctx:Ei,setupState:Di,data:Ni,props:Vi,accessCache:cn,type:An,appContext:qn}=ui;let Qn;if(mi[0]!=="$"){const Ss=cn[mi];if(Ss!==void 0)switch(Ss){case 1:return Di[mi];case 2:return Ni[mi];case 4:return Ei[mi];case 3:return Vi[mi]}else{if(ci(Di,mi))return cn[mi]=1,Di[mi];if(Ni!==ri.MZ&&(0,ri.$3)(Ni,mi))return cn[mi]=2,Ni[mi];if((Qn=ui.propsOptions[0])&&(0,ri.$3)(Qn,mi))return cn[mi]=3,Vi[mi];if(Ei!==ri.MZ&&(0,ri.$3)(Ei,mi))return cn[mi]=4,Ei[mi];Xo&&(cn[mi]=0)}}const ds=qc[mi];let Cn,is;if(ds)return mi==="$attrs"&&(0,vi.u4)(ui.attrs,"get",""),ds(ui);if((Cn=An.__cssModules)&&(Cn=Cn[mi]))return Cn;if(Ei!==ri.MZ&&(0,ri.$3)(Ei,mi))return cn[mi]=4,Ei[mi];if(is=qn.config.globalProperties,(0,ri.$3)(is,mi))return is[mi]},set({_:ui},mi,Ei){const{data:Di,setupState:Ni,ctx:Vi}=ui;return ci(Ni,mi)?(Ni[mi]=Ei,!0):Di!==ri.MZ&&(0,ri.$3)(Di,mi)?(Di[mi]=Ei,!0):(0,ri.$3)(ui.props,mi)||mi[0]==="$"&&mi.slice(1)in ui?!1:(Vi[mi]=Ei,!0)},has({_:{data:ui,setupState:mi,accessCache:Ei,ctx:Di,appContext:Ni,propsOptions:Vi}},cn){let An;return!!Ei[cn]||ui!==ri.MZ&&(0,ri.$3)(ui,cn)||ci(mi,cn)||(An=Vi[0])&&(0,ri.$3)(An,cn)||(0,ri.$3)(Di,cn)||(0,ri.$3)(qc,cn)||(0,ri.$3)(Ni.config.globalProperties,cn)},defineProperty(ui,mi,Ei){return Ei.get!=null?ui._.accessCache[mi]=0:(0,ri.$3)(Ei,"value")&&this.set(ui,mi,Ei.value,null),Reflect.defineProperty(ui,mi,Ei)}},xi=(0,ri.X$)({},di,{get(ui,mi){if(mi!==Symbol.unscopables)return di.get(ui,mi,ui)},has(ui,mi){return mi[0]!=="_"&&!(0,ri.BH)(mi)}});function Ci(ui){const mi={};return Object.defineProperty(mi,"_",{configurable:!0,enumerable:!1,get:()=>ui}),Object.keys(qc).forEach(Ei=>{Object.defineProperty(mi,Ei,{configurable:!0,enumerable:!1,get:()=>qc[Ei](ui),set:NOOP})}),mi}function Ii(ui){const{ctx:mi,propsOptions:[Ei]}=ui;Ei&&Object.keys(Ei).forEach(Di=>{Object.defineProperty(mi,Di,{enumerable:!0,configurable:!0,get:()=>ui.props[Di],set:NOOP})})}function Pi(ui){const{ctx:mi,setupState:Ei}=ui;Object.keys(toRaw(Ei)).forEach(Di=>{if(!Ei.__isScriptSetup){if(Od(Di[0])){tn(`setup() return property ${JSON.stringify(Di)} should not start with "$" or "_" which are reserved prefixes for Vue internals.`);return}Object.defineProperty(mi,Di,{enumerable:!0,configurable:!0,get:()=>Ei[Di],set:NOOP})}})}const Ui=ui=>tn(`${ui}() is a compiler-hint helper that is only usable inside + + {{template "custom/footer" .}} + + diff --git a/data/gitea/templates/base/footer_content.tmpl b/data/gitea/templates/base/footer_content.tmpl new file mode 100644 index 0000000..c86d48c --- /dev/null +++ b/data/gitea/templates/base/footer_content.tmpl @@ -0,0 +1,37 @@ + diff --git a/data/gitea/templates/base/head.tmpl b/data/gitea/templates/base/head.tmpl new file mode 100644 index 0000000..e23e63f --- /dev/null +++ b/data/gitea/templates/base/head.tmpl @@ -0,0 +1,50 @@ + + + + + {{if .Title}}{{.Title}} - {{end}}{{if .Repository.Name}}{{.Repository.Name}} - {{end}}{{AppName}} + {{if .ManifestData}}{{end}} + + + + +{{if .GoGetImport}} + + +{{end}} +{{if and .EnableFeed .FeedURL}} + + +{{end}} + + + + {{template "base/head_script" .}} + + {{template "base/head_opengraph" .}} + {{template "base/head_style" .}} + {{template "custom/header" .}} + + + {{template "custom/body_outer_pre" .}} + +
    + + + {{template "custom/body_inner_pre" .}} + + {{if not .PageIsInstall}} + {{template "base/head_navbar" .}} + {{end}} + +{{if false}} + {{/* to make html structure "likely" complete to prevent IDE warnings */}} +
    + + +{{end}} diff --git a/data/gitea/templates/base/head_navbar.tmpl b/data/gitea/templates/base/head_navbar.tmpl new file mode 100644 index 0000000..a0c8468 --- /dev/null +++ b/data/gitea/templates/base/head_navbar.tmpl @@ -0,0 +1,221 @@ +{{$notificationUnreadCount := 0}} +{{if and .IsSigned .NotificationUnreadCount}} + {{$notificationUnreadCount = call .NotificationUnreadCount}} +{{end}} + + diff --git a/data/gitea/templates/base/head_opengraph.tmpl b/data/gitea/templates/base/head_opengraph.tmpl new file mode 100644 index 0000000..f1f3899 --- /dev/null +++ b/data/gitea/templates/base/head_opengraph.tmpl @@ -0,0 +1,47 @@ +{{- /* og:description - a one to two sentence description of your object, maybe it only needs at most 300 bytes */ -}} +{{if .PageIsUserProfile}} + + + + + {{if .ContextUser.Description}} + + {{end}} +{{else if .Repository}} + {{if .Issue}} + + + {{if .Issue.Content}} + + {{end}} + {{else if or .PageIsDiff .IsViewFile}} + + + {{if and .PageIsDiff .Commit}} + {{- $commitMessageParts := StringUtils.Cut .Commit.Message "\n" -}} + {{- $commitMessageBody := index $commitMessageParts 1 -}} + {{- if $commitMessageBody -}} + + {{- end -}} + {{end}} + {{else}} + + + {{if .Repository.Description}} + + {{end}} + {{end}} + + {{if (.Repository.AvatarLink ctx)}} + + {{else}} + + {{end}} +{{else}} + + + + + +{{end}} + diff --git a/data/gitea/templates/base/head_script.tmpl b/data/gitea/templates/base/head_script.tmpl new file mode 100644 index 0000000..22e08e9 --- /dev/null +++ b/data/gitea/templates/base/head_script.tmpl @@ -0,0 +1,50 @@ +{{/* +==== DO NOT EDIT ==== +If you are customizing Gitea, please do not change this file. +If you introduce mistakes in it, Gitea JavaScript code wouldn't run correctly. +*/}} + + diff --git a/data/gitea/templates/base/head_style.tmpl b/data/gitea/templates/base/head_style.tmpl new file mode 100644 index 0000000..f97e188 --- /dev/null +++ b/data/gitea/templates/base/head_style.tmpl @@ -0,0 +1,2 @@ + + diff --git a/data/gitea/templates/base/markup_codepreview.tmpl b/data/gitea/templates/base/markup_codepreview.tmpl new file mode 100644 index 0000000..a1a4f26 --- /dev/null +++ b/data/gitea/templates/base/markup_codepreview.tmpl @@ -0,0 +1,25 @@ +
    +
    + {{.FilePath}} + {{$link := HTMLFormat `%s` .RepoLink .CommitID (.CommitID | ShortSha) -}} + {{- if eq .LineStart .LineStop -}} + {{ctx.Locale.Tr "repo.code_preview_line_in" .LineStart $link}} + {{- else -}} + {{ctx.Locale.Tr "repo.code_preview_line_from_to" .LineStart .LineStop $link}} + {{- end}} +
    + + + {{- range $idx, $line := .HighlightLines -}} + + + {{- if $.EscapeStatus.Escaped -}} + {{- $lineEscapeStatus := index $.LineEscapeStatus $idx -}} + + {{- end}} + {{/* only div works, span generates incorrect HTML structure */}} + + {{- end -}} + +
    {{if $lineEscapeStatus.Escaped}}{{end}}
    {{$line.FormattedContent}}
    +
    diff --git a/data/gitea/templates/base/modal_actions_confirm.tmpl b/data/gitea/templates/base/modal_actions_confirm.tmpl new file mode 100644 index 0000000..9f7eb4a --- /dev/null +++ b/data/gitea/templates/base/modal_actions_confirm.tmpl @@ -0,0 +1,27 @@ +{{/* +Two buttons (negative, positive): +* ModalButtonTypes: "yes" (default) or "confirm" +* ModalButtonCancelText +* ModalButtonOkText + +Single danger button (GitHub-like): +* ModalButtonDangerText "This action will destroy your data" + +The ".ok.button" and ".cancel.button" selectors are also used by Fomantic Modal internally +*/}} +
    + {{if .ModalButtonDangerText}} + + {{else}} + {{$textNegitive := ctx.Locale.Tr "modal.no"}} + {{$textPositive := ctx.Locale.Tr "modal.yes"}} + {{if eq .ModalButtonTypes "confirm"}} + {{$textNegitive = ctx.Locale.Tr "modal.cancel"}} + {{$textPositive = ctx.Locale.Tr "modal.confirm"}} + {{end}} + {{if .ModalButtonCancelText}}{{$textNegitive = .ModalButtonCancelText}}{{end}} + {{if .ModalButtonOkText}}{{$textPositive = .ModalButtonOkText}}{{end}} + + + {{end}} +
    diff --git a/data/gitea/templates/base/paginate.tmpl b/data/gitea/templates/base/paginate.tmpl new file mode 100644 index 0000000..9a7a632 --- /dev/null +++ b/data/gitea/templates/base/paginate.tmpl @@ -0,0 +1,34 @@ +{{$paginationParams := .Page.GetParams}} +{{$paginationLink := $.Link}} +{{if eq $paginationLink AppSubUrl}}{{$paginationLink = print $paginationLink "/"}}{{end}} +{{with .Page.Paginater}} + {{if gt .TotalPages 1}} + + {{end}} +{{end}} diff --git a/data/gitea/templates/custom/body_inner_post.tmpl b/data/gitea/templates/custom/body_inner_post.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/custom/body_inner_pre.tmpl b/data/gitea/templates/custom/body_inner_pre.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/custom/body_outer_post.tmpl b/data/gitea/templates/custom/body_outer_post.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/custom/body_outer_pre.tmpl b/data/gitea/templates/custom/body_outer_pre.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/custom/extra_links.tmpl b/data/gitea/templates/custom/extra_links.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/custom/extra_links_footer.tmpl b/data/gitea/templates/custom/extra_links_footer.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/custom/extra_tabs.tmpl b/data/gitea/templates/custom/extra_tabs.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/custom/footer.tmpl b/data/gitea/templates/custom/footer.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/custom/header.tmpl b/data/gitea/templates/custom/header.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/devtest/fetch-action.tmpl b/data/gitea/templates/devtest/fetch-action.tmpl new file mode 100644 index 0000000..66f41fc --- /dev/null +++ b/data/gitea/templates/devtest/fetch-action.tmpl @@ -0,0 +1,44 @@ +{{template "base/head" .}} +
    + {{template "base/alert" .}} +
    +

    link-action

    +
    + Use "window.fetch" to send a request to backend, the request is defined in an "A" or "BUTTON" element. + It might be renamed to "link-fetch-action" to match the "form-fetch-action". +
    +
    + + + +
    +
    +
    +

    form-fetch-action

    +
    Use "window.fetch" to send a form request to backend
    +
    +
    + +
    +
    +
    +
    +
    +
    +
    +
    bad action url
    +
    +
    +
    +
    +
    + +{{template "base/footer" .}} diff --git a/data/gitea/templates/devtest/flex-list.tmpl b/data/gitea/templates/devtest/flex-list.tmpl new file mode 100644 index 0000000..015ab1e --- /dev/null +++ b/data/gitea/templates/devtest/flex-list.tmpl @@ -0,0 +1,115 @@ +{{template "base/head" .}} + +
    +
    +

    Flex List (standalone)

    +
    +
    +
    +
    + {{svg "octicon-info" 32}} +
    +
    +
    + Flex Item + + with label + +
    +
    + consists of leading/main/trailing part +
    +
    + main part contains title and (multiple) body lines +
    +
    +
    + + + +
    +
    + +
    +
    + {{svg "octicon-info" 32}} +
    +
    +
    + Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong title +
    +
    + consists of leading/main/trailing part +
    +
    + Very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong content + Truncate very loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong content +
    +
    +
    + +
    +
    + +
    +
    + {{svg "octicon-repo" 32}} +
    +
    + +
    + when inside header, the trailing part will wrap below the title +
    +
    +
    +
    + +
    + +

    Flex List (with "ui segment")

    +
    +
    +
    item 1
    +
    item 2
    +
    +
    +
    +

    Flex List (with "ui segment")

    +
    +
    item 1
    +
    item 2
    +
    +
    + +

    If parent provides the padding/margin space:

    +
    +
    +
    item 1 (no padding top)
    +
    item 2 (no padding bottom)
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/devtest/fomantic-dropdown.tmpl b/data/gitea/templates/devtest/fomantic-dropdown.tmpl new file mode 100644 index 0000000..57a7c13 --- /dev/null +++ b/data/gitea/templates/devtest/fomantic-dropdown.tmpl @@ -0,0 +1,109 @@ +{{template "base/head" .}} + +
    +
    +

    Dropdown

    +
    + + + + +
    + + +
    +
    + +

    Selection

    +
    + {{/* the "selection" class is optional, it will be added by JS automatically */}} + + +
    +

    Dropdown Button (demo only without menu)

    +
    + + + +
    + +
    + + + +
    + +
    +
    +
    Other button align with ...
    + +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/devtest/fomantic-modal.tmpl b/data/gitea/templates/devtest/fomantic-modal.tmpl new file mode 100644 index 0000000..f31cdc1 --- /dev/null +++ b/data/gitea/templates/devtest/fomantic-modal.tmpl @@ -0,0 +1,73 @@ +{{template "base/head" .}} +
    + {{template "base/alert" .}} + + + + + + + + + + + + + + + + +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/devtest/gitea-ui.tmpl b/data/gitea/templates/devtest/gitea-ui.tmpl new file mode 100644 index 0000000..ea293fd --- /dev/null +++ b/data/gitea/templates/devtest/gitea-ui.tmpl @@ -0,0 +1,207 @@ +{{template "base/head" .}} + +
    +
    +

    Link

    + +

    Button

    +
    + Style: + + + + +
    +
    + State: + +
    +
    +
      +
    • +

      General purpose:

      + + + + +
    • +
    • +

      Recommended colors:

      + + + + +
    • +
    • +

      Inline / Plain:

      +
      + + + +
      +
    • +
    + +
    +
    + +
    +

    Buttons

    +
    +
    +
    +
    +
    + +
    +

    Tooltip

    +
    text with tooltip
    +
    text with interactive tooltip
    +
    + +
    +

    Loading

    +
    loading ...
    +
    +

    loading ...

    +

    loading ...

    +

    loading ...

    +

    loading ...

    +
    +
    + +
    +

    <origin-url>

    +
    +
    +
    + +
    +

    <overflow-menu>

    + + + +
    + +
    +

    GiteaAbsoluteDate

    +
    +
    +
    +
    +
    +
    relative-time:
    +
    + +
    +

    LocaleNumber

    +
    {{ctx.Locale.PrettyNumber 1}}
    +
    {{ctx.Locale.PrettyNumber 12}}
    +
    {{ctx.Locale.PrettyNumber 123}}
    +
    {{ctx.Locale.PrettyNumber 1234}}
    +
    {{ctx.Locale.PrettyNumber 12345}}
    +
    {{ctx.Locale.PrettyNumber 123456}}
    +
    {{ctx.Locale.PrettyNumber 1234567}}
    +
    + +
    +

    TimeSince

    +
    Now: {{TimeSince .TimeNow ctx.Locale}}
    +
    5s past: {{TimeSince .TimePast5s ctx.Locale}}
    +
    5s future: {{TimeSince .TimeFuture5s ctx.Locale}}
    +
    2m past: {{TimeSince .TimePast2m ctx.Locale}}
    +
    2m future: {{TimeSince .TimeFuture2m ctx.Locale}}
    +
    1y past: {{TimeSince .TimePast1y ctx.Locale}}
    +
    1y future: {{TimeSince .TimeFuture1y ctx.Locale}}
    +
    + +
    +

    SVG alignment

    + +

    Text with SVG

    +
    {{svg "octicon-alert"}} {{svg "octicon-x"}} text (block)
    +
    {{svg "octicon-alert"}} {{svg "octicon-x"}} text
    (inline)
    + +
    {{svg "octicon-alert"}} flex item with very very very very very very very very long content
    + +
    +
    {{svg "octicon-alert"}} flex every line
    +
    {{svg "octicon-alert"}} flex every item
    +
    {{svg "octicon-alert"}} flex item with very very very very very very very very long content
    +
    + +

    Button with SVG

    +
    + +
    + + 123 +
    + +
    + +

    Input with SVG

    +
    + +
    +
    + +
    +

    Toast

    +
    + + + +
    +
    + +
    +

    ComboMarkdownEditor

    +
    ps: no JS code attached, so just a layout
    + {{template "shared/combomarkdowneditor" .}} +
    + +

    Tailwind CSS Demo

    +
    + +
    + + +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/devtest/label.tmpl b/data/gitea/templates/devtest/label.tmpl new file mode 100644 index 0000000..c4b52a3 --- /dev/null +++ b/data/gitea/templates/devtest/label.tmpl @@ -0,0 +1,27 @@ +{{template "base/head" .}} + +
    +
    +

    Label

    +
    + simple label + red label + green label +
    +
    + basic label + basic red label + basic green label +
    +
    + long content must be in a non-flex "gt-ellipsis" element, otherwise it won't get ellipsis. very looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong label +
    +
    + very looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong label +
    +
    + very looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong label +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/devtest/list.tmpl b/data/gitea/templates/devtest/list.tmpl new file mode 100644 index 0000000..90b1fcc --- /dev/null +++ b/data/gitea/templates/devtest/list.tmpl @@ -0,0 +1,15 @@ +{{template "base/head" .}} + +
      + {{range .SubNames}} +
    • {{.}}
    • + {{end}} +
    + + + +{{template "base/footer" .}} diff --git a/data/gitea/templates/devtest/tmplerr-sub.tmpl b/data/gitea/templates/devtest/tmplerr-sub.tmpl new file mode 100644 index 0000000..f7974eb --- /dev/null +++ b/data/gitea/templates/devtest/tmplerr-sub.tmpl @@ -0,0 +1,3 @@ +sub template triggers an executing error + + {{ctx.Locale.NoSuch "asdf"}} diff --git a/data/gitea/templates/devtest/tmplerr.tmpl b/data/gitea/templates/devtest/tmplerr.tmpl new file mode 100644 index 0000000..dd938c8 --- /dev/null +++ b/data/gitea/templates/devtest/tmplerr.tmpl @@ -0,0 +1,12 @@ +{{template "base/head" .}} +
    +
    +
    + hello hello hello hello hello hello hello hello hello hello +
    +
    + {{template "devtest/tmplerr-sub" .}} +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/explore/code.tmpl b/data/gitea/templates/explore/code.tmpl new file mode 100644 index 0000000..039933f --- /dev/null +++ b/data/gitea/templates/explore/code.tmpl @@ -0,0 +1,8 @@ +{{template "base/head" .}} +
    + {{template "explore/navbar" .}} +
    + {{template "shared/search/code/search" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/explore/navbar.tmpl b/data/gitea/templates/explore/navbar.tmpl new file mode 100644 index 0000000..9797e0f --- /dev/null +++ b/data/gitea/templates/explore/navbar.tmpl @@ -0,0 +1,24 @@ + + + diff --git a/data/gitea/templates/explore/repo_list.tmpl b/data/gitea/templates/explore/repo_list.tmpl new file mode 100644 index 0000000..fa66ef3 --- /dev/null +++ b/data/gitea/templates/explore/repo_list.tmpl @@ -0,0 +1,71 @@ +
    + {{range .Repos}} +
    +
    + {{template "repo/icon" .}} +
    +
    +
    +
    + {{if and (or $.PageIsExplore $.PageIsProfileStarList) .Owner}} + + {{end}} + {{.Name}} + + {{if .IsArchived}} + {{ctx.Locale.Tr "repo.desc.archived"}} + {{end}} + {{if .IsPrivate}} + {{ctx.Locale.Tr "repo.desc.private"}} + {{else}} + {{if .Owner.Visibility.IsPrivate}} + {{ctx.Locale.Tr "repo.desc.internal"}} + {{end}} + {{end}} + {{if .IsTemplate}} + {{ctx.Locale.Tr "repo.desc.template"}} + {{end}} + {{if eq .ObjectFormatName "sha256"}} + {{ctx.Locale.Tr "repo.desc.sha256"}} + {{end}} + +
    + +
    + {{$description := .DescriptionHTML $.Context}} + {{if $description}} +
    {{$description}}
    + {{end}} + {{if .Topics}} +
    + {{range .Topics}} + {{if ne . ""}}{{.}}{{end}} + {{end}} +
    + {{end}} +
    {{ctx.Locale.Tr "org.repo_updated"}} {{TimeSinceUnix .UpdatedUnix ctx.Locale}}
    +
    +
    + {{else}} +
    + {{ctx.Locale.Tr "search.no_results"}} +
    + {{end}} +
    diff --git a/data/gitea/templates/explore/repos.tmpl b/data/gitea/templates/explore/repos.tmpl new file mode 100644 index 0000000..aa5716a --- /dev/null +++ b/data/gitea/templates/explore/repos.tmpl @@ -0,0 +1,16 @@ +{{template "base/head" .}} +
    + + {{if 0}} + {{template "explore/navbar" .}} + {{end}} +
    + +

    Source code repository

    +

    This is a collection of some of my work. Some repositories contain contributions from others. Feel also free to create an account and contribute! Anonymous contribution is a allowed and for registering e-mail verififation is not required so you don't have to enter an existing e-mailaddress.

    + {{template "shared/repo_search" .}} + {{template "explore/repo_list" .}} + {{template "base/paginate" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/explore/search.tmpl b/data/gitea/templates/explore/search.tmpl new file mode 100644 index 0000000..1d984a2 --- /dev/null +++ b/data/gitea/templates/explore/search.tmpl @@ -0,0 +1,23 @@ + +
    diff --git a/data/gitea/templates/explore/user_list.tmpl b/data/gitea/templates/explore/user_list.tmpl new file mode 100644 index 0000000..f2cf939 --- /dev/null +++ b/data/gitea/templates/explore/user_list.tmpl @@ -0,0 +1,33 @@ +
    + {{range .Users}} +
    +
    + {{ctx.AvatarUtils.Avatar . 48}} +
    +
    +
    + {{template "shared/user/name" .}} + {{if .Visibility.IsPrivate}} + {{ctx.Locale.Tr "repo.desc.private"}} + {{end}} +
    +
    + {{if .Location}} + {{svg "octicon-location"}}{{.Location}} + {{end}} + {{if and .Email (or (and $.ShowUserEmail $.IsSigned (not .KeepEmailPrivate)) $.PageIsAdminUsers)}} + + {{svg "octicon-mail"}} + {{.Email}} + + {{end}} + {{svg "octicon-calendar"}}{{ctx.Locale.Tr "user.joined_on" (DateTime "short" .CreatedUnix)}} +
    +
    +
    + {{else}} +
    + {{ctx.Locale.Tr "search.no_results"}} +
    + {{end}} +
    diff --git a/data/gitea/templates/explore/users.tmpl b/data/gitea/templates/explore/users.tmpl new file mode 100644 index 0000000..e904612 --- /dev/null +++ b/data/gitea/templates/explore/users.tmpl @@ -0,0 +1,10 @@ +{{template "base/head" .}} +
    + {{template "explore/navbar" .}} +
    + {{template "explore/search" .}} + {{template "explore/user_list" .}} + {{template "base/paginate" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/home.tmpl b/data/gitea/templates/home.tmpl new file mode 100644 index 0000000..94d8ade --- /dev/null +++ b/data/gitea/templates/home.tmpl @@ -0,0 +1,95 @@ +{{template "base/head" .}} + +
    +
    +
    +
    +
    +

    + {{AppName}} +

    +

    Home of Retoor

    +

    Full Stack Software Developer

    +

    On this site you can find my last work, research and code snippets. It's all for free under MIT license unless stated otherwise in repository source folder.

    +
    +
    +
    + +
    +

    + C Development +

    +

    + With C I mostly reinvent to wheel and rewrite existing applications from scratch to learn what is under the hood. I am able to to write nginx-grade webservers with webdav support. I also have experience in writing Redis quality key-value stores. Projects made: +

  • HTTP(S) Server with support for reverse proxy and load balancing
  • +
  • WebDav Server with support for HTTP ranges (Streaming of media) and user authentication
  • +
  • PubSub Server
  • +
  • Restfull Sqlite3 Server
  • + I write servers primarely in C. WebDav, HTTP, PubSub +
  • JSON protocol: Only JSON communication for PubSub and database queries. Including Python bindings
  • +
  • Extremely fast json library, three times aster than Python's original to be used with JSON protocol.Has abaliity to find JSON data within data for parsing streams
  • +

    +
    +
    +

    + Python development +

    +

    + Python is my goto language for software development. + Technologies I prefer to work with but not limited to are: + +

      +
    • Django
    • +
    • aiohttp
    • +
    • FastAPI
    • +
    • dataset
    • +
    +

    +
    +
    +

    + Databases +

    +

    + I have experience with: +

      + +
    • MS SQL
    • +
    • Postgres SQL
    • +
    • MySQL
    • +
    • Redis
    • +
    • SQLite
    • +
    +

    +
    +
    +

    + Other languages +

    +

    + I have professional experience with: +

      + +
    • C#
    • +
    • VB .NET
    • +
    • VB 6
    • +
    • Java
    • +
    • PHP
    • +
    • Python
    • +
    • Delhpi (.NET)
    • +
    • Actionscript
    • +
    • Node
    • +
    • JavaScript (ECMAScript)
    • +
    +

    +
    + +
    + +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/install.tmpl b/data/gitea/templates/install.tmpl new file mode 100644 index 0000000..5055031 --- /dev/null +++ b/data/gitea/templates/install.tmpl @@ -0,0 +1,353 @@ +{{template "base/head" .}} +
    +
    +
    +

    + {{ctx.Locale.Tr "install.title"}} +

    +
    + {{template "base/alert" .}} + +

    {{ctx.Locale.Tr "install.docker_helper" "https://docs.gitea.com/installation/install-with-docker"}}

    + +
    + +

    {{ctx.Locale.Tr "install.db_title"}}

    +

    {{ctx.Locale.Tr "install.require_db_desc"}}

    +
    + + +
    + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + +
    +
    + + +
    +
    + + + {{ctx.Locale.Tr "install.db_schema_helper"}} +
    +
    + +
    +
    + + + {{ctx.Locale.Tr "install.sqlite_helper"}} +
    +
    + + {{if .Err_DbInstalledBefore}} +
    +

    {{ctx.Locale.Tr "install.reinstall_confirm_message"}}

    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    + {{end}} + + +

    {{ctx.Locale.Tr "install.general_title"}}

    +
    + + + {{ctx.Locale.Tr "install.app_name_helper"}} +
    +
    + + + {{ctx.Locale.Tr "install.repo_path_helper"}} +
    +
    + + + {{ctx.Locale.Tr "install.lfs_path_helper"}} +
    +
    + + + {{ctx.Locale.Tr "install.run_user_helper"}} +
    +
    + + + {{ctx.Locale.Tr "install.domain_helper"}} +
    +
    + + + {{ctx.Locale.Tr "install.ssh_port_helper"}} +
    +
    + + + {{ctx.Locale.Tr "install.http_port_helper"}} +
    +
    + + + {{ctx.Locale.Tr "install.app_url_helper"}} +
    +
    + + + {{ctx.Locale.Tr "install.log_root_path_helper"}} +
    +
    +
    + + +
    + {{ctx.Locale.Tr "install.enable_update_checker_helper"}} +
    + + +

    {{ctx.Locale.Tr "install.optional_title"}}

    +
    + +
    + + {{ctx.Locale.Tr "install.email_title"}} + +
    + + +
    +
    + + +
    +
    + + + {{ctx.Locale.TrString "install.smtp_from_helper"}}{{/* it contains lt/gt chars*/}} +
    +
    + + +
    +
    + + +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    + + +
    + + {{ctx.Locale.Tr "install.server_service_title"}} + +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    + + + {{ctx.Locale.Tr "install.no_reply_address_helper"}} +
    +
    + + + {{ctx.Locale.Tr "install.password_algorithm_helper"}} +
    +
    + + +
    + + {{ctx.Locale.Tr "install.admin_title"}} + +

    {{ctx.Locale.Tr "install.admin_setting_desc"}}

    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    +
    + +
    + + {{if .EnvConfigKeys}} + +

    {{ctx.Locale.Tr "install.env_config_keys"}}

    +
    +
    + {{ctx.Locale.Tr "install.env_config_keys_prompt"}} +
    +
    + {{range .EnvConfigKeys}}{{.}}{{end}} +
    +
    + {{end}} + +
    +
    + These configuration options will be written into: {{.CustomConfFile}} +
    +
    + +
    +
    +
    +
    +
    +
    +
    + +{{template "base/footer" .}} diff --git a/data/gitea/templates/mail/auth/activate.tmpl b/data/gitea/templates/mail/auth/activate.tmpl new file mode 100644 index 0000000..b1bb4cb --- /dev/null +++ b/data/gitea/templates/mail/auth/activate.tmpl @@ -0,0 +1,17 @@ + + + + + + {{.locale.Tr "mail.activate_account.title" (.DisplayName|DotEscape)}} + + +{{$activate_url := printf "%suser/activate?code=%s" AppUrl (QueryEscape .Code)}} + +

    {{.locale.Tr "mail.activate_account.text_1" (.DisplayName|DotEscape) AppName}}


    +

    {{.locale.Tr "mail.activate_account.text_2" .ActiveCodeLives}}

    {{$activate_url}}


    +

    {{.locale.Tr "mail.link_not_working_do_paste"}}

    + +

    © {{AppName}}

    + + diff --git a/data/gitea/templates/mail/auth/activate_email.tmpl b/data/gitea/templates/mail/auth/activate_email.tmpl new file mode 100644 index 0000000..3d32f80 --- /dev/null +++ b/data/gitea/templates/mail/auth/activate_email.tmpl @@ -0,0 +1,17 @@ + + + + + + {{.locale.Tr "mail.activate_email.title" (.DisplayName|DotEscape)}} + + +{{$activate_url := printf "%suser/activate_email?code=%s&email=%s" AppUrl (QueryEscape .Code) (QueryEscape .Email)}} + +

    {{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}


    +

    {{.locale.Tr "mail.activate_email.text" .ActiveCodeLives}}

    {{$activate_url}}


    +

    {{.locale.Tr "mail.link_not_working_do_paste"}}

    + +

    © {{AppName}}

    + + diff --git a/data/gitea/templates/mail/auth/register_notify.tmpl b/data/gitea/templates/mail/auth/register_notify.tmpl new file mode 100644 index 0000000..62dbf7d --- /dev/null +++ b/data/gitea/templates/mail/auth/register_notify.tmpl @@ -0,0 +1,18 @@ + + + + + + {{.locale.Tr "mail.register_notify.title" (.DisplayName|DotEscape) AppName}} + + +{{$set_pwd_url := printf "%[1]suser/forgot_password" AppUrl}} + +

    {{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}


    +

    {{.locale.Tr "mail.register_notify.text_1" AppName}}


    +

    {{.locale.Tr "mail.register_notify.text_2" .Username}}

    {{AppUrl}}user/login


    +

    {{.locale.Tr "mail.register_notify.text_3" $set_pwd_url}}


    + +

    © {{AppName}}

    + + diff --git a/data/gitea/templates/mail/auth/reset_passwd.tmpl b/data/gitea/templates/mail/auth/reset_passwd.tmpl new file mode 100644 index 0000000..55b1ece --- /dev/null +++ b/data/gitea/templates/mail/auth/reset_passwd.tmpl @@ -0,0 +1,17 @@ + + + + + + {{.locale.Tr "mail.reset_password.title" (.DisplayName|DotEscape)}} + + +{{$recover_url := printf "%suser/recover_account?code=%s" AppUrl (QueryEscape .Code)}} + +

    {{.locale.Tr "mail.hi_user_x" (.DisplayName|DotEscape)}}


    +

    {{.locale.Tr "mail.reset_password.text" .ResetPwdCodeLives}}

    {{$recover_url}}


    +

    {{.locale.Tr "mail.link_not_working_do_paste"}}

    + +

    © {{AppName}}

    + + diff --git a/data/gitea/templates/mail/issue/assigned.tmpl b/data/gitea/templates/mail/issue/assigned.tmpl new file mode 100644 index 0000000..5720319 --- /dev/null +++ b/data/gitea/templates/mail/issue/assigned.tmpl @@ -0,0 +1,29 @@ + + + + + + {{.Subject}} + + +{{$repo_url := HTMLFormat "%s" .Issue.Repo.HTMLURL .Issue.Repo.FullName}} +{{$link := HTMLFormat "#%d" .Link .Issue.Index}} + +

    + {{if .IsPull}} + {{.locale.Tr "mail.issue_assigned.pull" .Doer.Name $link $repo_url}} + {{else}} + {{.locale.Tr "mail.issue_assigned.issue" .Doer.Name $link $repo_url}} + {{end}} +

    + + + diff --git a/data/gitea/templates/mail/issue/default.tmpl b/data/gitea/templates/mail/issue/default.tmpl new file mode 100644 index 0000000..395b118 --- /dev/null +++ b/data/gitea/templates/mail/issue/default.tmpl @@ -0,0 +1,91 @@ + + + + + {{.Subject}} + + + + + + + {{if .IsMention}}

    {{.locale.Tr "mail.issue.x_mentioned_you" .Doer.Name}}

    {{end}} + {{if eq .ActionName "push"}} +

    + {{if .Comment.IsForcePush}} + {{$oldCommitUrl := printf "%s/commit/%s" .Comment.Issue.PullRequest.BaseRepo.HTMLURL .Comment.OldCommit}} + {{$oldShortSha := ShortSha .Comment.OldCommit}} + {{$oldCommitLink := HTMLFormat "%[2]s" $oldCommitUrl $oldShortSha}} + + {{$newCommitUrl := printf "%s/commit/%s" .Comment.Issue.PullRequest.BaseRepo.HTMLURL .Comment.NewCommit}} + {{$newShortSha := ShortSha .Comment.NewCommit}} + {{$newCommitLink := HTMLFormat "%[2]s" $newCommitUrl $newShortSha}} + + {{.locale.Tr "mail.issue.action.force_push" .Doer.Name .Comment.Issue.PullRequest.HeadBranch $oldCommitLink $newCommitLink}} + {{else}} + {{.locale.TrN (len .Comment.Commits) "mail.issue.action.push_1" "mail.issue.action.push_n" .Doer.Name .Comment.Issue.PullRequest.HeadBranch (len .Comment.Commits)}} + {{end}} +

    + {{end}} +

    + {{if eq .ActionName "close"}} + {{.locale.Tr "mail.issue.action.close" .Doer.Name .Issue.Index}} + {{else if eq .ActionName "reopen"}} + {{.locale.Tr "mail.issue.action.reopen" .Doer.Name .Issue.Index}} + {{else if eq .ActionName "merge"}} + {{.locale.Tr "mail.issue.action.merge" .Doer.Name .Issue.Index .Issue.PullRequest.BaseBranch}} + {{else if eq .ActionName "approve"}} + {{.locale.Tr "mail.issue.action.approve" .Doer.Name}} + {{else if eq .ActionName "reject"}} + {{.locale.Tr "mail.issue.action.reject" .Doer.Name}} + {{else if eq .ActionName "review"}} + {{.locale.Tr "mail.issue.action.review" .Doer.Name}} + {{else if eq .ActionName "review_dismissed"}} + {{.locale.Tr "mail.issue.action.review_dismissed" .Doer.Name .Comment.Review.Reviewer.Name}} + {{else if eq .ActionName "ready_for_review"}} + {{.locale.Tr "mail.issue.action.ready_for_review" .Doer.Name}} + {{end}} + + {{- if eq .Body ""}} + {{if eq .ActionName "new"}} + {{.locale.Tr "mail.issue.action.new" .Doer.Name .Issue.Index}} + {{end}} + {{else}} + {{.Body}} + {{end -}} + {{- range .ReviewComments}} +


    + {{$.locale.Tr "mail.issue.in_tree_path" .TreePath}} +
    +
    {{.Patch}}
    +
    {{.RenderedContent}}
    +
    + {{end -}} + {{if eq .ActionName "push"}} + + {{end}} +

    + + + diff --git a/data/gitea/templates/mail/notify/collaborator.tmpl b/data/gitea/templates/mail/notify/collaborator.tmpl new file mode 100644 index 0000000..9810c70 --- /dev/null +++ b/data/gitea/templates/mail/notify/collaborator.tmpl @@ -0,0 +1,21 @@ + + + + + + {{.Subject}} + + + +

    {{.locale.Tr "mail.repo.collaborator.added.text"}} {{.RepoName}}

    + + + diff --git a/data/gitea/templates/mail/notify/repo_transfer.tmpl b/data/gitea/templates/mail/notify/repo_transfer.tmpl new file mode 100644 index 0000000..8c8b276 --- /dev/null +++ b/data/gitea/templates/mail/notify/repo_transfer.tmpl @@ -0,0 +1,19 @@ + + + + + {{.Subject}} + + +{{$url := HTMLFormat "%[2]s" .Link .Repo}} + +

    {{.Subject}}. + {{.locale.Tr "mail.repo.transfer.body" $url}} +

    +

    + --- +
    + {{.locale.Tr "mail.view_it_on" AppName}}. +

    + + diff --git a/data/gitea/templates/mail/release.tmpl b/data/gitea/templates/mail/release.tmpl new file mode 100644 index 0000000..90a3caa --- /dev/null +++ b/data/gitea/templates/mail/release.tmpl @@ -0,0 +1,61 @@ + + + + + {{.Subject}} + + + + + +{{$release_url := HTMLFormat "%s" .Release.HTMLURL .Release.TagName}} +{{$repo_url := HTMLFormat "%s" .Release.Repo.HTMLURL .Release.Repo.FullName}} + +

    + {{.locale.Tr "mail.release.new.text" .Release.Publisher.Name $release_url $repo_url}} +

    +

    {{.locale.Tr "mail.release.title" .Release.Title}}

    +

    + {{.locale.Tr "mail.release.note"}}
    + {{- if eq .Release.RenderedNote ""}} + {{else}} + {{.Release.RenderedNote}} + {{end -}} +

    +

    +

    + --- +
    + {{.locale.Tr "mail.release.downloads"}} +

    +

    + + + diff --git a/data/gitea/templates/mail/team_invite.tmpl b/data/gitea/templates/mail/team_invite.tmpl new file mode 100644 index 0000000..cb0c0c0 --- /dev/null +++ b/data/gitea/templates/mail/team_invite.tmpl @@ -0,0 +1,15 @@ + + + + + + + +

    {{.locale.Tr "mail.team_invite.text_1" (DotEscape .Inviter.DisplayName) (DotEscape .Team.Name) (DotEscape .Organization.DisplayName)}}

    +

    {{.locale.Tr "mail.team_invite.text_2"}}

    {{.InviteURL}}

    +

    {{.locale.Tr "mail.link_not_working_do_paste"}}

    +

    {{.locale.Tr "mail.team_invite.text_3" .Invite.Email}}

    + +

    © {{AppName}}

    + + diff --git a/data/gitea/templates/org/create.tmpl b/data/gitea/templates/org/create.tmpl new file mode 100644 index 0000000..004cd9b --- /dev/null +++ b/data/gitea/templates/org/create.tmpl @@ -0,0 +1,57 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "new_org"}} +

    +
    + {{template "base/alert" .}} +
    + + + {{ctx.Locale.Tr "org.org_name_helper"}} +
    + +
    + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/follow_unfollow.tmpl b/data/gitea/templates/org/follow_unfollow.tmpl new file mode 100644 index 0000000..ba0bd01 --- /dev/null +++ b/data/gitea/templates/org/follow_unfollow.tmpl @@ -0,0 +1,7 @@ + diff --git a/data/gitea/templates/org/header.tmpl b/data/gitea/templates/org/header.tmpl new file mode 100644 index 0000000..7361df9 --- /dev/null +++ b/data/gitea/templates/org/header.tmpl @@ -0,0 +1,32 @@ +
    + {{ctx.AvatarUtils.Avatar .Org 100 "org-avatar"}} +
    +
    + {{.Org.DisplayName}} + + {{if .Org.Visibility.IsLimited}}{{ctx.Locale.Tr "org.settings.visibility.limited_shortname"}}{{end}} + {{if .Org.Visibility.IsPrivate}}{{ctx.Locale.Tr "org.settings.visibility.private_shortname"}}{{end}} + + + {{if .EnableFeed}} + + {{svg "octicon-rss" 24}} + + {{end}} + {{if .IsSigned}} + {{template "org/follow_unfollow" .}} + {{end}} + +
    + {{if .RenderedDescription}}
    {{.RenderedDescription}}
    {{end}} +
    + {{if .Org.Location}}
    {{svg "octicon-location"}} {{.Org.Location}}
    {{end}} + {{if .Org.Website}}
    {{svg "octicon-link"}} {{.Org.Website}}
    {{end}} + {{if .IsSigned}} + {{if .Org.Email}}
    {{svg "octicon-mail"}} {{.Org.Email}}
    {{end}} + {{end}} +
    +
    +
    + +{{template "org/menu" .}} diff --git a/data/gitea/templates/org/home.tmpl b/data/gitea/templates/org/home.tmpl new file mode 100644 index 0000000..4851b69 --- /dev/null +++ b/data/gitea/templates/org/home.tmpl @@ -0,0 +1,68 @@ +{{template "base/head" .}} +
    + {{template "org/header" .}} + +
    +
    +
    + {{if .ProfileReadme}} +
    {{.ProfileReadme}}
    + {{end}} + {{template "shared/repo_search" .}} + {{template "explore/repo_list" .}} + {{template "base/paginate" .}} +
    + + {{if .ShowMemberAndTeamTab}} +
    + {{if .CanCreateOrgRepo}} +
    + {{ctx.Locale.Tr "new_repo"}} + {{if not .DisableNewPullMirrors}} + {{ctx.Locale.Tr "new_migrate"}} + {{end}} +
    +
    + {{end}} + {{if .NumMembers}} +

    + {{ctx.Locale.Tr "org.members"}} + {{.NumMembers}} {{svg "octicon-chevron-right"}} +

    +
    + {{$isMember := .IsOrganizationMember}} + {{range .Members}} + {{if or $isMember (call $.IsPublicMember .ID)}} + {{ctx.AvatarUtils.Avatar . 48}} + {{end}} + {{end}} +
    + {{end}} + {{if .IsOrganizationMember}} +
    + {{ctx.Locale.Tr "org.teams"}} + {{.Org.NumTeams}} {{svg "octicon-chevron-right"}} +
    + + {{if .IsOrganizationOwner}} + + {{end}} + {{end}} +
    + {{end}} +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/member/members.tmpl b/data/gitea/templates/org/member/members.tmpl new file mode 100644 index 0000000..4388dc9 --- /dev/null +++ b/data/gitea/templates/org/member/members.tmpl @@ -0,0 +1,90 @@ +{{template "base/head" .}} +
    + {{template "org/header" .}} +
    + {{template "base/alert" .}} + +
    + {{range .Members}} + {{$isPublic := index $.MembersIsPublicMember .ID}} +
    + +
    +
    + {{template "shared/user/name" .}} + {{if not $isPublic}} + {{ctx.Locale.Tr "org.members.private"}} + {{end}} +
    + {{if not $.PublicOnly}} +
    + {{ctx.Locale.Tr "org.members.member_role"}} + {{if index $.MembersIsUserOrgOwner .ID}}{{svg "octicon-shield-lock"}} {{ctx.Locale.Tr "org.members.owner"}}{{else}}{{ctx.Locale.Tr "org.members.member"}}{{end}} +
    + {{if $.IsOrganizationOwner}} +
    + {{ctx.Locale.Tr "admin.users.2fa"}} + + {{if index $.MembersTwoFaStatus .ID}} + {{svg "octicon-check"}} + {{else}} + {{svg "octicon-x"}} + {{end}} + +
    + {{end}} + {{end}} +
    +
    + {{if or (eq $.SignedUser.ID .ID) $.IsOrganizationOwner}} + {{if $isPublic}} + {{svg "octicon-eye-closed" 12 "icon"}}{{ctx.Locale.Tr "org.members.public_helper"}} + {{else}} + {{svg "octicon-eye" 12 "icon"}}{{ctx.Locale.Tr "org.members.private_helper"}} + {{end}} + {{end}} + {{if eq $.SignedUser.ID .ID}} +
    + +
    + {{else if $.IsOrganizationOwner}} +
    + +
    + {{end}} +
    +
    + {{end}} +
    + + {{template "base/paginate" .}} +
    +
    + + + +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/menu.tmpl b/data/gitea/templates/org/menu.tmpl new file mode 100644 index 0000000..698a955 --- /dev/null +++ b/data/gitea/templates/org/menu.tmpl @@ -0,0 +1,50 @@ + diff --git a/data/gitea/templates/org/projects/list.tmpl b/data/gitea/templates/org/projects/list.tmpl new file mode 100644 index 0000000..80dde1c --- /dev/null +++ b/data/gitea/templates/org/projects/list.tmpl @@ -0,0 +1,24 @@ +{{template "base/head" .}} +{{if .ContextUser.IsOrganization}} +
    + {{template "org/header" .}} +
    + {{template "projects/list" .}} +
    +
    +{{else}} +
    +
    +
    +
    + {{template "shared/user/profile_big_avatar" .}} +
    +
    + {{template "user/overview/header" .}} + {{template "projects/list" .}} +
    +
    +
    +
    +{{end}} +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/projects/new.tmpl b/data/gitea/templates/org/projects/new.tmpl new file mode 100644 index 0000000..fc52130 --- /dev/null +++ b/data/gitea/templates/org/projects/new.tmpl @@ -0,0 +1,9 @@ +{{template "base/head" .}} +
    + {{template "shared/user/org_profile_avatar" .}} +
    + {{template "user/overview/header" .}} + {{template "projects/new" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/projects/view.tmpl b/data/gitea/templates/org/projects/view.tmpl new file mode 100644 index 0000000..e1ab81c --- /dev/null +++ b/data/gitea/templates/org/projects/view.tmpl @@ -0,0 +1,11 @@ +{{template "base/head" .}} +
    + {{template "shared/user/org_profile_avatar" .}} +
    + {{template "user/overview/header" .}} +
    +
    + {{template "projects/view" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/settings/actions.tmpl b/data/gitea/templates/org/settings/actions.tmpl new file mode 100644 index 0000000..abb9c98 --- /dev/null +++ b/data/gitea/templates/org/settings/actions.tmpl @@ -0,0 +1,11 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings actions")}} +
    + {{if eq .PageType "runners"}} + {{template "shared/actions/runner_list" .}} + {{else if eq .PageType "secrets"}} + {{template "shared/secrets/add_list" .}} + {{else if eq .PageType "variables"}} + {{template "shared/variables/variable_list" .}} + {{end}} +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/applications.tmpl b/data/gitea/templates/org/settings/applications.tmpl new file mode 100644 index 0000000..df5f4e9 --- /dev/null +++ b/data/gitea/templates/org/settings/applications.tmpl @@ -0,0 +1,9 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings options")}} +
    +

    + {{ctx.Locale.Tr "settings.applications"}} +

    + + {{template "user/settings/applications_oauth2_list" .}} +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/applications_oauth2_edit.tmpl b/data/gitea/templates/org/settings/applications_oauth2_edit.tmpl new file mode 100644 index 0000000..987803a --- /dev/null +++ b/data/gitea/templates/org/settings/applications_oauth2_edit.tmpl @@ -0,0 +1,5 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings options")}} +
    + {{template "user/settings/applications_oauth2_edit_form" .}} +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/blocked_users.tmpl b/data/gitea/templates/org/settings/blocked_users.tmpl new file mode 100644 index 0000000..eab5ec0 --- /dev/null +++ b/data/gitea/templates/org/settings/blocked_users.tmpl @@ -0,0 +1,5 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings blocked_users")}} +
    + {{template "shared/user/blocked_users" .}} +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/delete.tmpl b/data/gitea/templates/org/settings/delete.tmpl new file mode 100644 index 0000000..e1ef471 --- /dev/null +++ b/data/gitea/templates/org/settings/delete.tmpl @@ -0,0 +1,35 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings delete")}} + +
    +

    + {{ctx.Locale.Tr "org.settings.delete_account"}} +

    +
    +
    +

    {{svg "octicon-alert"}} {{ctx.Locale.Tr "org.settings.delete_prompt"}}

    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    + +
    +
    +
    + + + +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/hook_new.tmpl b/data/gitea/templates/org/settings/hook_new.tmpl new file mode 100644 index 0000000..f89ee5f --- /dev/null +++ b/data/gitea/templates/org/settings/hook_new.tmpl @@ -0,0 +1,7 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings new webhook")}} +
    + {{$CustomHeaderTitle := ctx.Locale.Tr "repo.settings.update_webhook"}} + {{if .PageIsSettingsHooksNew}}{{$CustomHeaderTitle = ctx.Locale.Tr "repo.settings.add_webhook"}}{{end}} + {{template "webhook/new" (dict "ctxData" . "CustomHeaderTitle" $CustomHeaderTitle)}} +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/hooks.tmpl b/data/gitea/templates/org/settings/hooks.tmpl new file mode 100644 index 0000000..9f30796 --- /dev/null +++ b/data/gitea/templates/org/settings/hooks.tmpl @@ -0,0 +1,5 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings webhooks")}} +
    + {{template "repo/settings/webhook/list" .}} +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/labels.tmpl b/data/gitea/templates/org/settings/labels.tmpl new file mode 100644 index 0000000..25a562c --- /dev/null +++ b/data/gitea/templates/org/settings/labels.tmpl @@ -0,0 +1,15 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings labels")}} +
    +
    +
    + {{ctx.Locale.Tr "org.settings.labels_desc"}} +
    + +
    +
    + {{template "repo/issue/labels/label_new" .}} + {{template "repo/issue/labels/label_list" .}} +
    +{{template "repo/issue/labels/edit_delete_label" .}} +{{template "org/settings/layout_footer" .}} + diff --git a/data/gitea/templates/org/settings/layout_footer.tmpl b/data/gitea/templates/org/settings/layout_footer.tmpl new file mode 100644 index 0000000..09d88c0 --- /dev/null +++ b/data/gitea/templates/org/settings/layout_footer.tmpl @@ -0,0 +1,11 @@ +{{if false}}{{/* to make html structure "likely" complete to prevent IDE warnings */}} +
    +
    +
    + {{/* block: org-setting-content */}} +{{end}} + +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/settings/layout_head.tmpl b/data/gitea/templates/org/settings/layout_head.tmpl new file mode 100644 index 0000000..31dad2c --- /dev/null +++ b/data/gitea/templates/org/settings/layout_head.tmpl @@ -0,0 +1,14 @@ +{{template "base/head" .ctxData}} +
    + {{template "org/header" .ctxData}} +
    + {{template "org/settings/navbar" .ctxData}} +
    + {{template "base/alert" .ctxData}} + {{/* block: org-setting-content */}} + +{{if false}}{{/* to make html structure "likely" complete to prevent IDE warnings */}} +
    +
    +
    +{{end}} diff --git a/data/gitea/templates/org/settings/navbar.tmpl b/data/gitea/templates/org/settings/navbar.tmpl new file mode 100644 index 0000000..ce792f6 --- /dev/null +++ b/data/gitea/templates/org/settings/navbar.tmpl @@ -0,0 +1,48 @@ + diff --git a/data/gitea/templates/org/settings/options.tmpl b/data/gitea/templates/org/settings/options.tmpl new file mode 100644 index 0000000..62debfc --- /dev/null +++ b/data/gitea/templates/org/settings/options.tmpl @@ -0,0 +1,102 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings options")}} +
    +

    + {{ctx.Locale.Tr "org.settings.options"}} +

    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    + +
    +
    + +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    + + {{if .SignedUser.IsAdmin}} +
    + +
    + + +

    {{ctx.Locale.Tr "admin.users.max_repo_creation_desc"}}

    +
    + {{end}} + +
    + +
    +
    + +
    + +
    + {{.CsrfTokenHtml}} +
    + + +
    + +
    + + +
    +
    +
    +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/packages.tmpl b/data/gitea/templates/org/settings/packages.tmpl new file mode 100644 index 0000000..91106c3 --- /dev/null +++ b/data/gitea/templates/org/settings/packages.tmpl @@ -0,0 +1,6 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings packages")}} +
    + {{template "package/shared/cleanup_rules/list" .}} + {{template "package/shared/cargo" .}} +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/packages_cleanup_rules_edit.tmpl b/data/gitea/templates/org/settings/packages_cleanup_rules_edit.tmpl new file mode 100644 index 0000000..ff4c2dd --- /dev/null +++ b/data/gitea/templates/org/settings/packages_cleanup_rules_edit.tmpl @@ -0,0 +1,5 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings packages")}} +
    + {{template "package/shared/cleanup_rules/edit" .}} +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/packages_cleanup_rules_preview.tmpl b/data/gitea/templates/org/settings/packages_cleanup_rules_preview.tmpl new file mode 100644 index 0000000..5a2f061 --- /dev/null +++ b/data/gitea/templates/org/settings/packages_cleanup_rules_preview.tmpl @@ -0,0 +1,5 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings packages")}} +
    + {{template "package/shared/cleanup_rules/preview" .}} +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/settings/runners_edit.tmpl b/data/gitea/templates/org/settings/runners_edit.tmpl new file mode 100644 index 0000000..acd67a4 --- /dev/null +++ b/data/gitea/templates/org/settings/runners_edit.tmpl @@ -0,0 +1,5 @@ +{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings runners")}} +
    + {{template "shared/actions/runner_edit" .}} +
    +{{template "org/settings/layout_footer" .}} diff --git a/data/gitea/templates/org/team/invite.tmpl b/data/gitea/templates/org/team/invite.tmpl new file mode 100644 index 0000000..1167828 --- /dev/null +++ b/data/gitea/templates/org/team/invite.tmpl @@ -0,0 +1,23 @@ +{{template "base/head" .}} +
    +
    + {{template "base/alert" .}} +
    +
    + {{ctx.AvatarUtils.Avatar .Organization 140}} +
    +
    +
    {{ctx.Locale.Tr "org.teams.invite.title" .Team.Name .Organization.Name}}
    +
    {{ctx.Locale.Tr "org.teams.invite.by" .Inviter.Name}}
    +
    {{ctx.Locale.Tr "org.teams.invite.description"}}
    +
    +
    +
    + {{.CsrfTokenHtml}} + +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/team/members.tmpl b/data/gitea/templates/org/team/members.tmpl new file mode 100644 index 0000000..5433f01 --- /dev/null +++ b/data/gitea/templates/org/team/members.tmpl @@ -0,0 +1,88 @@ +{{template "base/head" .}} +
    + {{template "org/header" .}} +
    + {{template "base/alert" .}} +
    + {{template "org/team/sidebar" .}} +
    + {{template "org/team/navbar" .}} + {{if .IsOrganizationOwner}} +
    +
    + {{.CsrfTokenHtml}} + + + +
    +
    + {{end}} +
    +
    + {{range .Team.Members}} +
    + +
    +
    + {{template "shared/user/name" .}} +
    +
    +
    + {{if and $.IsOrganizationOwner (not (and ($.Team.IsOwnerTeam) (eq (len $.Team.Members) 1)))}} +
    + +
    + {{end}} +
    +
    + {{else}} +
    + {{ctx.Locale.Tr "org.teams.members.none"}} +
    + {{end}} +
    +
    + {{if and .Invites $.IsOrganizationOwner}} +

    {{ctx.Locale.Tr "org.teams.invite_team_member.list"}}

    +
    +
    + {{range .Invites}} +
    +
    + {{.Email}} +
    +
    +
    + {{$.CsrfTokenHtml}} + + +
    +
    +
    + {{end}} +
    +
    + {{end}} +
    +
    +
    +
    + +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/team/navbar.tmpl b/data/gitea/templates/org/team/navbar.tmpl new file mode 100644 index 0000000..9704f63 --- /dev/null +++ b/data/gitea/templates/org/team/navbar.tmpl @@ -0,0 +1,4 @@ + diff --git a/data/gitea/templates/org/team/new.tmpl b/data/gitea/templates/org/team/new.tmpl new file mode 100644 index 0000000..9608eac --- /dev/null +++ b/data/gitea/templates/org/team/new.tmpl @@ -0,0 +1,161 @@ +{{template "base/head" .}} +
    + {{template "org/header" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +

    + {{if .PageIsOrgTeamsNew}}{{ctx.Locale.Tr "org.create_new_team"}}{{else}}{{ctx.Locale.Tr "org.teams.settings"}}{{end}} +

    +
    + {{template "base/alert" .}} +
    + + {{if eq .Team.LowerName "owners"}} + + {{end}} + + {{ctx.Locale.Tr "org.team_name_helper"}} +
    +
    + + + {{ctx.Locale.Tr "org.team_desc_helper"}} +
    + {{if not (eq .Team.LowerName "owners")}} +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "org.teams.specific_repositories_helper"}} +
    +
    +
    +
    + + + {{ctx.Locale.Tr "org.teams.all_repositories_helper"}} +
    +
    + +
    +
    + + + {{ctx.Locale.Tr "org.teams.can_create_org_repo_helper"}} +
    +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "org.teams.general_access_helper"}} +
    +
    +
    +
    + + + {{ctx.Locale.Tr "org.teams.admin_access_helper"}} +
    +
    +
    +
    + +
    + + + + + + + + + + + + {{range $t, $unit := $.Units}} + {{if ge $unit.MaxPerm 2}} + + + + + + + {{end}} + {{end}} + +
    {{ctx.Locale.Tr "units.unit"}}{{ctx.Locale.Tr "org.teams.none_access"}} + {{svg "octicon-question" 16 "tw-ml-1"}}{{ctx.Locale.Tr "org.teams.read_access"}} + {{svg "octicon-question" 16 "tw-ml-1"}}{{ctx.Locale.Tr "org.teams.write_access"}} + {{svg "octicon-question" 16 "tw-ml-1"}}
    +
    +
    + + {{ctx.Locale.Tr $unit.DescKey}} +
    +
    +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    + {{range $t, $unit := $.Units}} + {{if lt $unit.MaxPerm 2}} +
    +
    + + + {{ctx.Locale.Tr $unit.DescKey}} +
    +
    + {{end}} + {{end}} +
    + {{end}} + +
    + {{if .PageIsOrgTeamsNew}} + + {{else}} + + {{if not (eq .Team.LowerName "owners")}} + + {{end}} + {{end}} +
    +
    +
    +
    +
    +
    +
    + + +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/team/repositories.tmpl b/data/gitea/templates/org/team/repositories.tmpl new file mode 100644 index 0000000..502cf97 --- /dev/null +++ b/data/gitea/templates/org/team/repositories.tmpl @@ -0,0 +1,61 @@ +{{template "base/head" .}} +
    + {{template "org/header" .}} +
    + {{template "base/alert" .}} +
    + {{template "org/team/sidebar" .}} +
    + {{template "org/team/navbar" .}} + {{$canAddRemove := and $.IsOrganizationOwner (not $.Team.IncludesAllRepositories)}} + {{if $canAddRemove}} +
    +
    + {{.CsrfTokenHtml}} + + +
    +
    + + +
    +
    + {{end}} +
    +
    + {{range .Team.Repos}} +
    +
    + {{template "repo/icon" .}} +
    + +
    + {{if $canAddRemove}} +
    + {{$.CsrfTokenHtml}} + +
    + {{end}} +
    +
    + {{else}} +
    + {{ctx.Locale.Tr "org.teams.repos.none"}} +
    + {{end}} +
    +
    +
    +
    +
    +
    + +{{template "base/footer" .}} diff --git a/data/gitea/templates/org/team/sidebar.tmpl b/data/gitea/templates/org/team/sidebar.tmpl new file mode 100644 index 0000000..ac41cda --- /dev/null +++ b/data/gitea/templates/org/team/sidebar.tmpl @@ -0,0 +1,94 @@ +
    +

    + {{.Team.Name}} +
    + {{if .Team.IsMember ctx $.SignedUser.ID}} +
    + +
    + {{else if .IsOrganizationOwner}} +
    + {{$.CsrfTokenHtml}} + + +
    + {{end}} +
    +

    +
    +
    + {{if .Team.Description}} + {{.Team.Description}} + {{else}} + {{ctx.Locale.Tr "org.teams.no_desc"}} + {{end}} +
    + {{if eq .Team.LowerName "owners"}} +
    + {{ctx.Locale.Tr "org.teams.owners_permission_desc"}} +
    + {{else}} +
    +

    {{ctx.Locale.Tr "org.team_access_desc"}}

    +
      + {{if .Team.IncludesAllRepositories}} +
    • {{ctx.Locale.Tr "org.teams.all_repositories"}}
    • + {{else}} +
    • {{ctx.Locale.Tr "org.teams.specific_repositories"}}
    • + {{end}} + {{if .Team.CanCreateOrgRepo}} +
    • {{ctx.Locale.Tr "org.teams.can_create_org_repo"}}
    • + {{end}} +
    + {{if (eq .Team.AccessMode 2)}} +

    {{ctx.Locale.Tr "org.settings.permission"}}

    + {{ctx.Locale.Tr "org.teams.write_permission_desc"}} + {{else if (eq .Team.AccessMode 3)}} +

    {{ctx.Locale.Tr "org.settings.permission"}}

    + {{ctx.Locale.Tr "org.teams.admin_permission_desc"}} + {{else}} + + + + + + + + + {{range $t, $unit := $.Units}} + {{if (not $unit.Type.UnitGlobalDisabled)}} + + + + + {{end}} + {{end}} + +
    {{ctx.Locale.Tr "units.unit"}}{{ctx.Locale.Tr "org.team_permission_desc"}}
    {{ctx.Locale.Tr $unit.NameKey}}{{if eq ($.Team.UnitAccessMode $.Context $unit.Type) 0 -}} + {{ctx.Locale.Tr "org.teams.none_access"}} + {{- else if or (eq $.Team.ID 0) (eq ($.Team.UnitAccessMode $.Context $unit.Type) 1) -}} + {{ctx.Locale.Tr "org.teams.read_access"}} + {{- else if eq ($.Team.UnitAccessMode $.Context $unit.Type) 2 -}} + {{ctx.Locale.Tr "org.teams.write_access"}} + {{- end}}
    + {{end}} +
    + {{end}} +
    + {{if .IsOrganizationOwner}} + + {{end}} +
    + diff --git a/data/gitea/templates/org/team/teams.tmpl b/data/gitea/templates/org/team/teams.tmpl new file mode 100644 index 0000000..53c909e --- /dev/null +++ b/data/gitea/templates/org/team/teams.tmpl @@ -0,0 +1,56 @@ +{{template "base/head" .}} +
    + {{template "org/header" .}} +
    + {{template "base/alert" .}} + {{if .IsOrganizationOwner}} + +
    + {{end}} + +
    + {{range .Teams}} +
    +
    + {{.Name}} +
    + {{ctx.Locale.Tr "view"}} + {{if .IsMember ctx $.SignedUser.ID}} +
    + +
    + {{else if $.IsOrganizationOwner}} +
    + {{$.CsrfTokenHtml}} + +
    + {{end}} +
    +
    +
    + {{range .Members}} + {{template "shared/user/avatarlink" dict "user" .}} + {{end}} +
    + +
    + {{end}} +
    +
    +
    + +{{template "base/footer" .}} diff --git a/data/gitea/templates/package/content/alpine.tmpl b/data/gitea/templates/package/content/alpine.tmpl new file mode 100644 index 0000000..5c144b9 --- /dev/null +++ b/data/gitea/templates/package/content/alpine.tmpl @@ -0,0 +1,52 @@ +{{if eq .PackageDescriptor.Package.Type "alpine"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    /$branch/$repository
    +

    {{ctx.Locale.Tr "packages.alpine.registry.info"}}

    +
    +
    + +
    curl -JO 
    +
    +
    + +
    +
    sudo apk add {{$.PackageDescriptor.Package.Name}}={{$.PackageDescriptor.Version.Version}}
    +
    +
    +
    + +
    +
    +
    + +

    {{ctx.Locale.Tr "packages.alpine.repository"}}

    +
    + + + + + + + + + + + + + + + +
    {{ctx.Locale.Tr "packages.alpine.repository.branches"}}
    {{StringUtils.Join .Branches ", "}}
    {{ctx.Locale.Tr "packages.alpine.repository.repositories"}}
    {{StringUtils.Join .Repositories ", "}}
    {{ctx.Locale.Tr "packages.alpine.repository.architectures"}}
    {{StringUtils.Join .Architectures ", "}}
    +
    + + {{if .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{.PackageDescriptor.Metadata.Description}} +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/cargo.tmpl b/data/gitea/templates/package/content/cargo.tmpl new file mode 100644 index 0000000..7fd88a2 --- /dev/null +++ b/data/gitea/templates/package/content/cargo.tmpl @@ -0,0 +1,63 @@ +{{if eq .PackageDescriptor.Package.Type "cargo"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    [registry]
    +default = "gitea"
    +
    +[registries.gitea]
    +index = "sparse+" # Sparse index
    +# index = "" # Git
    +
    +[net]
    +git-fetch-with-cli = true
    +
    +
    + +
    cargo add {{.PackageDescriptor.Package.Name}}@{{.PackageDescriptor.Version.Version}}
    +
    +
    + +
    +
    +
    + + {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Readme}} +

    {{ctx.Locale.Tr "packages.about"}}

    + {{if .PackageDescriptor.Metadata.Description}}
    {{.PackageDescriptor.Metadata.Description}}
    {{end}} + {{if .PackageDescriptor.Metadata.Readme}}
    {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}
    {{end}} + {{end}} + + {{if .PackageDescriptor.Metadata.Dependencies}} +

    {{ctx.Locale.Tr "packages.dependencies"}}

    +
    + + + + + + + + + {{range .PackageDescriptor.Metadata.Dependencies}} + + + + + {{end}} + +
    {{ctx.Locale.Tr "packages.dependency.id"}}{{ctx.Locale.Tr "packages.dependency.version"}}
    {{.Name}}{{.Req}}
    +
    + {{end}} + + {{if .PackageDescriptor.Metadata.Keywords}} +

    {{ctx.Locale.Tr "packages.keywords"}}

    +
    + {{range .PackageDescriptor.Metadata.Keywords}} + {{.}} + {{end}} +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/chef.tmpl b/data/gitea/templates/package/content/chef.tmpl new file mode 100644 index 0000000..03ce9f8 --- /dev/null +++ b/data/gitea/templates/package/content/chef.tmpl @@ -0,0 +1,48 @@ +{{if eq .PackageDescriptor.Package.Type "chef"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    knife[:supermarket_site] = ''
    +
    +
    + +
    knife supermarket install {{.PackageDescriptor.Package.Name}} {{.PackageDescriptor.Version.Version}}
    +
    +
    + +
    +
    +
    + + {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.LongDescription}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{if .PackageDescriptor.Metadata.Description}}

    {{.PackageDescriptor.Metadata.Description}}

    {{end}} + {{if .PackageDescriptor.Metadata.LongDescription}}{{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.LongDescription}}{{end}} +
    + {{end}} + + {{if .PackageDescriptor.Metadata.Dependencies}} +

    {{ctx.Locale.Tr "packages.dependencies"}}

    +
    + + + + + + + + + {{range $dependency, $version := .PackageDescriptor.Metadata.Dependencies}} + + + + + {{end}} + +
    {{ctx.Locale.Tr "packages.dependency.id"}}{{ctx.Locale.Tr "packages.dependency.version"}}
    {{$dependency}}{{$version}}
    +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/composer.tmpl b/data/gitea/templates/package/content/composer.tmpl new file mode 100644 index 0000000..c2dc634 --- /dev/null +++ b/data/gitea/templates/package/content/composer.tmpl @@ -0,0 +1,50 @@ +{{if eq .PackageDescriptor.Package.Type "composer"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    {
    +	"repositories": [{
    +			"type": "composer",
    +			"url": ""
    +		}
    +	]
    +}
    +
    +
    + +
    composer require {{.PackageDescriptor.Package.Name}}:{{.PackageDescriptor.Version.Version}}
    +
    +
    + +
    +
    +
    + + {{if .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{.PackageDescriptor.Metadata.Description}} +
    + {{end}} + + {{if or .PackageDescriptor.Metadata.Require .PackageDescriptor.Metadata.RequireDev}} +

    {{ctx.Locale.Tr "packages.dependencies"}}

    +
    +
    + {{template "package/content/composer_dependencies" dict "root" $ "dependencies" .PackageDescriptor.Metadata.Require "title" (ctx.Locale.Tr "packages.composer.dependencies")}} + {{template "package/content/composer_dependencies" dict "root" $ "dependencies" .PackageDescriptor.Metadata.RequireDev "title" (ctx.Locale.Tr "packages.composer.dependencies.development")}} +
    +
    + {{end}} + + {{if or .PackageDescriptor.Metadata.Keywords}} +

    {{ctx.Locale.Tr "packages.keywords"}}

    +
    + {{range .PackageDescriptor.Metadata.Keywords}} + {{.}} + {{end}} +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/composer_dependencies.tmpl b/data/gitea/templates/package/content/composer_dependencies.tmpl new file mode 100644 index 0000000..dba4575 --- /dev/null +++ b/data/gitea/templates/package/content/composer_dependencies.tmpl @@ -0,0 +1,19 @@ +{{if .dependencies}} +

    {{.title}}

    + + + + + + + + + {{range $dependency, $version := .dependencies}} + + + + + {{end}} + +
    {{ctx.Locale.Tr "packages.dependency.id"}}{{ctx.Locale.Tr "packages.dependency.version"}}
    {{$dependency}}{{$version}}
    +{{end}} diff --git a/data/gitea/templates/package/content/conan.tmpl b/data/gitea/templates/package/content/conan.tmpl new file mode 100644 index 0000000..b68a45f --- /dev/null +++ b/data/gitea/templates/package/content/conan.tmpl @@ -0,0 +1,34 @@ +{{if eq .PackageDescriptor.Package.Type "conan"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    conan remote add gitea 
    +
    +
    + +
    conan install --remote=gitea {{.PackageDescriptor.Package.Name}}/{{.PackageDescriptor.Version.Version}}
    +
    +
    + +
    +
    +
    + + {{if .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{if .PackageDescriptor.Metadata.Description}}{{.PackageDescriptor.Metadata.Description}}{{end}} +
    + {{end}} + + {{if or .PackageDescriptor.Metadata.Keywords}} +

    {{ctx.Locale.Tr "packages.keywords"}}

    +
    + {{range .PackageDescriptor.Metadata.Keywords}} + {{.}} + {{end}} +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/conda.tmpl b/data/gitea/templates/package/content/conda.tmpl new file mode 100644 index 0000000..031b51a --- /dev/null +++ b/data/gitea/templates/package/content/conda.tmpl @@ -0,0 +1,30 @@ +{{if eq .PackageDescriptor.Package.Type "conda"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    channel_alias: 
    +channels:
    +  - 
    +default_channels:
    +  - 
    +
    +
    + + {{$channel := .PackageDescriptor.PackageProperties.GetByName "conda.channel"}} +
    conda install{{if $channel}} -c {{$channel}}{{end}} {{.PackageDescriptor.PackageProperties.GetByName "conda.name"}}={{.PackageDescriptor.Version.Version}}
    +
    +
    + +
    +
    +
    + + {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Summary}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{if .PackageDescriptor.Metadata.Description}}{{.PackageDescriptor.Metadata.Description}}{{else}}{{.PackageDescriptor.Metadata.Summary}}{{end}} +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/container.tmpl b/data/gitea/templates/package/content/container.tmpl new file mode 100644 index 0000000..fe393f4 --- /dev/null +++ b/data/gitea/templates/package/content/container.tmpl @@ -0,0 +1,90 @@ +{{if eq .PackageDescriptor.Package.Type "container"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + + {{if eq .PackageDescriptor.Metadata.Type "helm"}} +
    helm pull oci://{{.RegistryHost}}/{{.PackageDescriptor.Owner.LowerName}}/{{.PackageDescriptor.Package.LowerName}} --version {{.PackageDescriptor.Version.LowerVersion}}
    + {{else}} + {{$separator := ":"}} + {{if not .PackageDescriptor.Metadata.IsTagged}} + {{$separator = "@"}} + {{end}} +
    docker pull {{.RegistryHost}}/{{.PackageDescriptor.Owner.LowerName}}/{{.PackageDescriptor.Package.LowerName}}{{$separator}}{{.PackageDescriptor.Version.LowerVersion}}
    + {{end}} +
    +
    + +
    {{range .PackageDescriptor.Files}}{{if eq .File.LowerName "manifest.json"}}{{.Properties.GetByName "container.digest"}}{{end}}{{end}}
    +
    +
    + +
    +
    +
    + {{if .PackageDescriptor.Metadata.Manifests}} +

    {{ctx.Locale.Tr "packages.container.multi_arch"}}

    +
    + + + + + + + + + + {{range .PackageDescriptor.Metadata.Manifests}} + + + + + + {{end}} + +
    {{ctx.Locale.Tr "packages.container.digest"}}{{ctx.Locale.Tr "packages.container.multi_arch"}}{{ctx.Locale.Tr "admin.packages.size"}}
    {{.Digest}}{{.Platform}}{{FileSize .Size}}
    +
    + {{end}} + {{if .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{.PackageDescriptor.Metadata.Description}} +
    + {{end}} + {{if .PackageDescriptor.Metadata.ImageLayers}} +

    {{ctx.Locale.Tr "packages.container.layers"}}

    +
    + + + {{range .PackageDescriptor.Metadata.ImageLayers}} + + + + {{end}} + +
    {{.}}
    +
    + {{end}} + {{if .PackageDescriptor.Metadata.Labels}} +

    {{ctx.Locale.Tr "packages.container.labels"}}

    +
    + + + + + + + + + {{range $key, $value := .PackageDescriptor.Metadata.Labels}} + + + + + {{end}} + +
    {{ctx.Locale.Tr "packages.container.labels.key"}}{{ctx.Locale.Tr "packages.container.labels.value"}}
    {{$key}}{{$value}}
    +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/cran.tmpl b/data/gitea/templates/package/content/cran.tmpl new file mode 100644 index 0000000..ae58e6f --- /dev/null +++ b/data/gitea/templates/package/content/cran.tmpl @@ -0,0 +1,59 @@ +{{if eq .PackageDescriptor.Package.Type "cran"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    options("repos" = c(getOption("repos"), c(gitea="")))
    +
    +
    + +
    install.packages("{{.PackageDescriptor.Package.Name}}")
    +
    +
    + +
    +
    +
    + + {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Title}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{if .PackageDescriptor.Metadata.Description}}{{.PackageDescriptor.Metadata.Description}}{{.PackageDescriptor.Metadata.Title}}{{else}}{{end}} +
    + {{end}} + + {{if or .PackageDescriptor.Metadata.Imports .PackageDescriptor.Metadata.Depends .PackageDescriptor.Metadata.LinkingTo .PackageDescriptor.Metadata.Suggests}} +

    {{ctx.Locale.Tr "packages.dependencies"}}

    +
    + + + {{if .PackageDescriptor.Metadata.Imports}} + + + + + {{end}} + {{if .PackageDescriptor.Metadata.Depends}} + + + + + {{end}} + {{if .PackageDescriptor.Metadata.LinkingTo}} + + + + + {{end}} + {{if .PackageDescriptor.Metadata.Suggests}} + + + + + {{end}} + +
    Imports{{StringUtils.Join .PackageDescriptor.Metadata.Imports ", "}}
    Depends{{StringUtils.Join .PackageDescriptor.Metadata.Depends ", "}}
    LinkingTo{{StringUtils.Join .PackageDescriptor.Metadata.LinkingTo ", "}}
    Suggests{{StringUtils.Join .PackageDescriptor.Metadata.Suggests ", "}}
    +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/debian.tmpl b/data/gitea/templates/package/content/debian.tmpl new file mode 100644 index 0000000..73b8257 --- /dev/null +++ b/data/gitea/templates/package/content/debian.tmpl @@ -0,0 +1,65 @@ +{{if eq .PackageDescriptor.Package.Type "debian"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    sudo curl  -o /etc/apt/keyrings/gitea-{{$.PackageDescriptor.Owner.Name}}.asc
    +echo "deb [signed-by=/etc/apt/keyrings/gitea-{{$.PackageDescriptor.Owner.Name}}.asc]  $distribution $component" | sudo tee -a /etc/apt/sources.list.d/gitea.list
    +sudo apt update
    +

    {{ctx.Locale.Tr "packages.debian.registry.info"}}

    +
    +
    + +
    +
    sudo apt install {{$.PackageDescriptor.Package.Name}}={{$.PackageDescriptor.Version.Version}}
    +
    +
    +
    + +
    +
    +
    + +

    {{ctx.Locale.Tr "packages.debian.repository"}}

    +
    + + + + + + + + + + + + + + + +
    {{ctx.Locale.Tr "packages.debian.repository.distributions"}}
    {{StringUtils.Join .Distributions ", "}}
    {{ctx.Locale.Tr "packages.debian.repository.components"}}
    {{StringUtils.Join .Components ", "}}
    {{ctx.Locale.Tr "packages.debian.repository.architectures"}}
    {{StringUtils.Join .Architectures ", "}}
    +
    + + {{if .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{.PackageDescriptor.Metadata.Description}} +
    + {{end}} + + {{if .PackageDescriptor.Metadata.Dependencies}} +

    {{ctx.Locale.Tr "packages.dependencies"}}

    +
    + + + {{range .PackageDescriptor.Metadata.Dependencies}} + + + + {{end}} + +
    {{.}}
    +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/generic.tmpl b/data/gitea/templates/package/content/generic.tmpl new file mode 100644 index 0000000..2fd9521 --- /dev/null +++ b/data/gitea/templates/package/content/generic.tmpl @@ -0,0 +1,18 @@ +{{if eq .PackageDescriptor.Package.Type "generic"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    
    +{{- range .PackageDescriptor.Files -}}
    +curl -OJ 
    +{{end -}}
    +				
    +
    +
    + +
    +
    +
    +{{end}} diff --git a/data/gitea/templates/package/content/go.tmpl b/data/gitea/templates/package/content/go.tmpl new file mode 100644 index 0000000..80d1ab2 --- /dev/null +++ b/data/gitea/templates/package/content/go.tmpl @@ -0,0 +1,14 @@ +{{if eq .PackageDescriptor.Package.Type "go"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    GOPROXY= go install {{$.PackageDescriptor.Package.Name}}@{{$.PackageDescriptor.Version.Version}}
    +
    +
    + +
    +
    +
    +{{end}} diff --git a/data/gitea/templates/package/content/helm.tmpl b/data/gitea/templates/package/content/helm.tmpl new file mode 100644 index 0000000..da846e9 --- /dev/null +++ b/data/gitea/templates/package/content/helm.tmpl @@ -0,0 +1,57 @@ +{{if eq .PackageDescriptor.Package.Type "helm"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    helm repo add {{AppDomain}} 
    +helm repo update
    +
    +
    + +
    helm install {{.PackageDescriptor.Package.Name}} {{AppDomain}}/{{.PackageDescriptor.Package.Name}}
    +
    +
    + +
    +
    +
    + + {{if .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{.PackageDescriptor.Metadata.Description}} +
    + {{end}} + + {{if .PackageDescriptor.Metadata.Dependencies}} +

    {{ctx.Locale.Tr "packages.dependencies"}}

    +
    + + + + + + + + + {{range .PackageDescriptor.Metadata.Dependencies}} + + + + + {{end}} + +
    {{ctx.Locale.Tr "packages.dependency.id"}}{{ctx.Locale.Tr "packages.dependency.version"}}
    {{.Name}}{{.Version}}
    +
    + {{end}} + + {{if .PackageDescriptor.Metadata.Keywords}} +

    {{ctx.Locale.Tr "packages.keywords"}}

    +
    + {{range .PackageDescriptor.Metadata.Keywords}} + {{.}} + {{end}} +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/maven.tmpl b/data/gitea/templates/package/content/maven.tmpl new file mode 100644 index 0000000..f56595a --- /dev/null +++ b/data/gitea/templates/package/content/maven.tmpl @@ -0,0 +1,75 @@ +{{if and (eq .PackageDescriptor.Package.Type "maven") (not .PackageDescriptor.Metadata)}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    {{ctx.Locale.Tr "packages.no_metadata"}}
    +{{end}} +{{if and (eq .PackageDescriptor.Package.Type "maven") .PackageDescriptor.Metadata}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    <repositories>
    +	<repository>
    +		<id>gitea</id>
    +			<url></url>
    +	</repository>
    +</repositories>
    +
    +<distributionManagement>
    +	<repository>
    +		<id>gitea</id>
    +		<url></url>
    +	</repository>
    +
    +	<snapshotRepository>
    +		<id>gitea</id>
    +		<url></url>
    +	</snapshotRepository>
    +</distributionManagement>
    +
    +
    + +
    <dependency>
    +	<groupId>{{.PackageDescriptor.Metadata.GroupID}}</groupId>
    +	<artifactId>{{.PackageDescriptor.Metadata.ArtifactID}}</artifactId>
    +	<version>{{.PackageDescriptor.Version.Version}}</version>
    +</dependency>
    +
    +
    + +
    mvn install
    +
    +
    + +
    mvn dependency:get -DremoteRepositories= -Dartifact={{.PackageDescriptor.Metadata.GroupID}}:{{.PackageDescriptor.Metadata.ArtifactID}}:{{.PackageDescriptor.Version.Version}}
    +
    +
    + +
    +
    +
    + + {{if .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{.PackageDescriptor.Metadata.Description}} +
    + {{end}} + + {{if .PackageDescriptor.Metadata.Dependencies}} +

    {{ctx.Locale.Tr "packages.dependencies"}}

    +
    +
    + {{range .PackageDescriptor.Metadata.Dependencies}} +
    + {{svg "octicon-package-dependencies" 16 ""}} +
    +
    {{.GroupID}}:{{.ArtifactID}}
    +
    {{.Version}}
    +
    +
    + {{end}} +
    +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/npm.tmpl b/data/gitea/templates/package/content/npm.tmpl new file mode 100644 index 0000000..a78a07d --- /dev/null +++ b/data/gitea/templates/package/content/npm.tmpl @@ -0,0 +1,56 @@ +{{if eq .PackageDescriptor.Package.Type "npm"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    {{if .PackageDescriptor.Metadata.Scope}}{{.PackageDescriptor.Metadata.Scope}}:{{end}}registry=
    +
    +
    + +
    npm install {{.PackageDescriptor.Package.Name}}@{{.PackageDescriptor.Version.Version}}
    +
    +
    + +
    "{{.PackageDescriptor.Package.Name}}": "{{.PackageDescriptor.Version.Version}}"
    +
    +
    + +
    +
    +
    + + {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Readme}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{if .PackageDescriptor.Metadata.Readme}} +
    + {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}} +
    + {{else if .PackageDescriptor.Metadata.Description}} + {{.PackageDescriptor.Metadata.Description}} + {{end}} +
    + {{end}} + + {{if or .PackageDescriptor.Metadata.Dependencies .PackageDescriptor.Metadata.DevelopmentDependencies .PackageDescriptor.Metadata.PeerDependencies .PackageDescriptor.Metadata.OptionalDependencies}} +

    {{ctx.Locale.Tr "packages.dependencies"}}

    +
    +
    + {{template "package/content/npm_dependencies" dict "root" $ "dependencies" .PackageDescriptor.Metadata.Dependencies "title" (ctx.Locale.Tr "packages.npm.dependencies")}} + {{template "package/content/npm_dependencies" dict "root" $ "dependencies" .PackageDescriptor.Metadata.DevelopmentDependencies "title" (ctx.Locale.Tr "packages.npm.dependencies.development")}} + {{template "package/content/npm_dependencies" dict "root" $ "dependencies" .PackageDescriptor.Metadata.PeerDependencies "title" (ctx.Locale.Tr "packages.npm.dependencies.peer")}} + {{template "package/content/npm_dependencies" dict "root" $ "dependencies" .PackageDescriptor.Metadata.OptionalDependencies "title" (ctx.Locale.Tr "packages.npm.dependencies.optional")}} +
    +
    + {{end}} + + {{if .PackageDescriptor.Metadata.Keywords}} +

    {{ctx.Locale.Tr "packages.keywords"}}

    +
    + {{range .PackageDescriptor.Metadata.Keywords}} + {{.}} + {{end}} +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/npm_dependencies.tmpl b/data/gitea/templates/package/content/npm_dependencies.tmpl new file mode 100644 index 0000000..dba4575 --- /dev/null +++ b/data/gitea/templates/package/content/npm_dependencies.tmpl @@ -0,0 +1,19 @@ +{{if .dependencies}} +

    {{.title}}

    + + + + + + + + + {{range $dependency, $version := .dependencies}} + + + + + {{end}} + +
    {{ctx.Locale.Tr "packages.dependency.id"}}{{ctx.Locale.Tr "packages.dependency.version"}}
    {{$dependency}}{{$version}}
    +{{end}} diff --git a/data/gitea/templates/package/content/nuget.tmpl b/data/gitea/templates/package/content/nuget.tmpl new file mode 100644 index 0000000..f1fe420 --- /dev/null +++ b/data/gitea/templates/package/content/nuget.tmpl @@ -0,0 +1,51 @@ +{{if eq .PackageDescriptor.Package.Type "nuget"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    dotnet nuget add source --name {{.PackageDescriptor.Owner.Name}} --username your_username --password your_token 
    +
    +
    + +
    dotnet add package --source {{.PackageDescriptor.Owner.Name}} --version {{.PackageDescriptor.Version.Version}} {{.PackageDescriptor.Package.Name}}
    +
    +
    + +
    +
    +
    + + {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.ReleaseNotes .PackageDescriptor.Metadata.Readme}} +

    {{ctx.Locale.Tr "packages.about"}}

    + {{if .PackageDescriptor.Metadata.Description}}
    {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Description}}
    {{end}} + {{if .PackageDescriptor.Metadata.Readme}}
    {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}
    {{end}} + {{if .PackageDescriptor.Metadata.ReleaseNotes}}
    {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.ReleaseNotes}}
    {{end}} + {{end}} + + {{if .PackageDescriptor.Metadata.Dependencies}} +

    {{ctx.Locale.Tr "packages.dependencies"}}

    +
    + + + + + + + + + + {{range $framework, $dependencies := .PackageDescriptor.Metadata.Dependencies}} + {{range $dependencies}} + + + + + + {{end}} + {{end}} + +
    {{ctx.Locale.Tr "packages.dependency.id"}}{{ctx.Locale.Tr "packages.dependency.version"}}{{ctx.Locale.Tr "packages.nuget.dependency.framework"}}
    {{.ID}}{{.Version}}{{$framework}}
    +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/pub.tmpl b/data/gitea/templates/package/content/pub.tmpl new file mode 100644 index 0000000..f2c7ac9 --- /dev/null +++ b/data/gitea/templates/package/content/pub.tmpl @@ -0,0 +1,19 @@ +{{if eq .PackageDescriptor.Package.Type "pub"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    dart pub add {{.PackageDescriptor.Package.Name}}:{{.PackageDescriptor.Version.Version}} --hosted-url=
    +
    +
    + +
    +
    +
    + {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Readme}} +

    {{ctx.Locale.Tr "packages.about"}}

    + {{if .PackageDescriptor.Metadata.Description}}
    {{.PackageDescriptor.Metadata.Description}}
    {{end}} + {{if .PackageDescriptor.Metadata.Readme}}
    {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Readme}}
    {{end}} + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/pypi.tmpl b/data/gitea/templates/package/content/pypi.tmpl new file mode 100644 index 0000000..817fced --- /dev/null +++ b/data/gitea/templates/package/content/pypi.tmpl @@ -0,0 +1,31 @@ +{{if eq .PackageDescriptor.Package.Type "pypi"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    pip install --index-url  {{.PackageDescriptor.Package.Name}}
    +
    +
    + +
    +
    +
    + {{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.LongDescription .PackageDescriptor.Metadata.Summary}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    +

    {{if .PackageDescriptor.Metadata.Summary}}{{.PackageDescriptor.Metadata.Summary}}{{end}}

    + {{if .PackageDescriptor.Metadata.LongDescription}} + {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.LongDescription}} + {{else if .PackageDescriptor.Metadata.Description}} + {{RenderMarkdownToHtml $.Context .PackageDescriptor.Metadata.Description}} + {{end}} +
    + {{end}} + {{if .PackageDescriptor.Metadata.RequiresPython}} +

    {{ctx.Locale.Tr "packages.requirements"}}

    +
    + {{ctx.Locale.Tr "packages.pypi.requires"}}: {{.PackageDescriptor.Metadata.RequiresPython}} +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/rpm.tmpl b/data/gitea/templates/package/content/rpm.tmpl new file mode 100644 index 0000000..3faa8a0 --- /dev/null +++ b/data/gitea/templates/package/content/rpm.tmpl @@ -0,0 +1,56 @@ +{{if eq .PackageDescriptor.Package.Type "rpm"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    {{- if gt (len .Groups) 1 -}}
    +# {{ctx.Locale.Tr "packages.rpm.repository.multiple_groups"}}
    +
    +{{end -}}
    +# {{ctx.Locale.Tr "packages.rpm.distros.redhat"}}
    +{{- range $group := .Groups}}
    +	{{- if $group}}{{$group = print "/" $group}}{{end}}
    +dnf config-manager --add-repo 
    +{{- end}}
    +
    +# {{ctx.Locale.Tr "packages.rpm.distros.suse"}}
    +{{- range $group := .Groups}}
    +	{{- if $group}}{{$group = print "/" $group}}{{end}}
    +zypper addrepo 
    +{{- end}}
    +
    +
    + +
    +
    # {{ctx.Locale.Tr "packages.rpm.distros.redhat"}}
    +dnf install {{$.PackageDescriptor.Package.Name}}
    +
    +# {{ctx.Locale.Tr "packages.rpm.distros.suse"}}
    +zypper install {{$.PackageDescriptor.Package.Name}}
    +
    +
    +
    + +
    +
    +
    + +

    {{ctx.Locale.Tr "packages.rpm.repository"}}

    +
    + + + + + + + +
    {{ctx.Locale.Tr "packages.rpm.repository.architectures"}}
    {{StringUtils.Join .Architectures ", "}}
    +
    + + {{if or .PackageDescriptor.Metadata.Summary .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    + {{if .PackageDescriptor.Metadata.Summary}}
    {{.PackageDescriptor.Metadata.Summary}}
    {{end}} + {{if .PackageDescriptor.Metadata.Description}}
    {{.PackageDescriptor.Metadata.Description}}
    {{end}} + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/rubygems.tmpl b/data/gitea/templates/package/content/rubygems.tmpl new file mode 100644 index 0000000..610dfc7 --- /dev/null +++ b/data/gitea/templates/package/content/rubygems.tmpl @@ -0,0 +1,40 @@ +{{if eq .PackageDescriptor.Package.Type "rubygems"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    gem install {{.PackageDescriptor.Package.Name}} --version "{{.PackageDescriptor.Version.Version}}" --source ""
    +
    +
    + +
    source "" do
    +	gem "{{.PackageDescriptor.Package.Name}}", "{{.PackageDescriptor.Version.Version}}"
    +end
    +
    +
    + +
    +
    +
    + {{if .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    {{.PackageDescriptor.Metadata.Description}}
    + {{end}} + {{if or .PackageDescriptor.Metadata.RequiredRubyVersion .PackageDescriptor.Metadata.RequiredRubygemsVersion}} +

    {{ctx.Locale.Tr "packages.requirements"}}

    +
    + {{if .PackageDescriptor.Metadata.RequiredRubyVersion}}

    {{ctx.Locale.Tr "packages.rubygems.required.ruby"}}: {{range $i, $v := .PackageDescriptor.Metadata.RequiredRubyVersion}}{{if gt $i 0}}, {{end}}{{$v.Restriction}}{{$v.Version}}{{end}}

    {{end}} + {{if .PackageDescriptor.Metadata.RequiredRubygemsVersion}}

    {{ctx.Locale.Tr "packages.rubygems.required.rubygems"}}: {{range $i, $v := .PackageDescriptor.Metadata.RequiredRubygemsVersion}}{{if gt $i 0}}, {{end}}{{$v.Restriction}}{{$v.Version}}{{end}}

    {{end}} +
    + {{end}} + {{if or .PackageDescriptor.Metadata.RuntimeDependencies .PackageDescriptor.Metadata.DevelopmentDependencies}} +

    {{ctx.Locale.Tr "packages.dependencies"}}

    +
    +
    + {{template "package/content/rubygems_dependencies" dict "root" $ "dependencies" .PackageDescriptor.Metadata.RuntimeDependencies "title" (ctx.Locale.Tr "packages.rubygems.dependencies.runtime")}} + {{template "package/content/rubygems_dependencies" dict "root" $ "dependencies" .PackageDescriptor.Metadata.DevelopmentDependencies "title" (ctx.Locale.Tr "packages.rubygems.dependencies.development")}} +
    +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/rubygems_dependencies.tmpl b/data/gitea/templates/package/content/rubygems_dependencies.tmpl new file mode 100644 index 0000000..2c42dce --- /dev/null +++ b/data/gitea/templates/package/content/rubygems_dependencies.tmpl @@ -0,0 +1,19 @@ +{{if .dependencies}} +

    {{.title}}

    + + + + + + + + + {{range .dependencies}} + + + + + {{end}} + +
    {{ctx.Locale.Tr "packages.dependency.id"}}{{ctx.Locale.Tr "packages.dependency.version"}}
    {{.Name}}{{range $i, $v := .Version}}{{if gt $i 0}}, {{end}}{{$v.Restriction}}{{$v.Version}}{{end}}
    +{{end}} diff --git a/data/gitea/templates/package/content/swift.tmpl b/data/gitea/templates/package/content/swift.tmpl new file mode 100644 index 0000000..aacbc83 --- /dev/null +++ b/data/gitea/templates/package/content/swift.tmpl @@ -0,0 +1,40 @@ +{{if eq .PackageDescriptor.Package.Type "swift"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    swift package-registry set 
    +
    +
    + +
    dependencies: [
    +	.package(id: "{{.PackageDescriptor.Package.Name}}", from:"{{.PackageDescriptor.Version.Version}}")
    +]
    +
    +
    + +
    swift package resolve
    +
    +
    + +
    +
    +
    + + {{if .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    + {{if .PackageDescriptor.Metadata.Description}}{{.PackageDescriptor.Metadata.Description}}{{end}} +
    + {{end}} + + {{if .PackageDescriptor.Metadata.Keywords}} +

    {{ctx.Locale.Tr "packages.keywords"}}

    +
    + {{range .PackageDescriptor.Metadata.Keywords}} + {{.}} + {{end}} +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/content/vagrant.tmpl b/data/gitea/templates/package/content/vagrant.tmpl new file mode 100644 index 0000000..7666284 --- /dev/null +++ b/data/gitea/templates/package/content/vagrant.tmpl @@ -0,0 +1,18 @@ +{{if eq .PackageDescriptor.Package.Type "vagrant"}} +

    {{ctx.Locale.Tr "packages.installation"}}

    +
    +
    +
    + +
    vagrant box add --box-version {{.PackageDescriptor.Version.Version}} ""
    +
    +
    + +
    +
    +
    + {{if .PackageDescriptor.Metadata.Description}} +

    {{ctx.Locale.Tr "packages.about"}}

    +
    {{.PackageDescriptor.Metadata.Description}}
    + {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/alpine.tmpl b/data/gitea/templates/package/metadata/alpine.tmpl new file mode 100644 index 0000000..3e7f10f --- /dev/null +++ b/data/gitea/templates/package/metadata/alpine.tmpl @@ -0,0 +1,5 @@ +{{if eq .PackageDescriptor.Package.Type "alpine"}} + {{if .PackageDescriptor.Metadata.Maintainer}}
    {{svg "octicon-person" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Maintainer}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "mr-3"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.License}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.License}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/cargo.tmpl b/data/gitea/templates/package/metadata/cargo.tmpl new file mode 100644 index 0000000..5ad3c20 --- /dev/null +++ b/data/gitea/templates/package/metadata/cargo.tmpl @@ -0,0 +1,7 @@ +{{if eq .PackageDescriptor.Package.Type "cargo"}} + {{range .PackageDescriptor.Metadata.Authors}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.RepositoryURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.repository_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.DocumentationURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.documentation_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.License}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.License}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/chef.tmpl b/data/gitea/templates/package/metadata/chef.tmpl new file mode 100644 index 0000000..23a9ce3 --- /dev/null +++ b/data/gitea/templates/package/metadata/chef.tmpl @@ -0,0 +1,5 @@ +{{if eq .PackageDescriptor.Package.Type "chef"}} + {{if .PackageDescriptor.Metadata.Author}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.Author}}
    {{end}} + {{if .PackageDescriptor.Metadata.RepositoryURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.repository_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.License}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.License}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/composer.tmpl b/data/gitea/templates/package/metadata/composer.tmpl new file mode 100644 index 0000000..0f6ff9d --- /dev/null +++ b/data/gitea/templates/package/metadata/composer.tmpl @@ -0,0 +1,5 @@ +{{if eq .PackageDescriptor.Package.Type "composer"}} + {{range .PackageDescriptor.Metadata.Authors}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.Name}}
    {{end}} + {{if .PackageDescriptor.Metadata.Homepage}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{range .PackageDescriptor.Metadata.License}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/conan.tmpl b/data/gitea/templates/package/metadata/conan.tmpl new file mode 100644 index 0000000..4e05ec2 --- /dev/null +++ b/data/gitea/templates/package/metadata/conan.tmpl @@ -0,0 +1,6 @@ +{{if eq .PackageDescriptor.Package.Type "conan"}} + {{if .PackageDescriptor.Metadata.Author}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.Author}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.License}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.License}}
    {{end}} + {{if .PackageDescriptor.Metadata.RepositoryURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.repository_site"}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/conda.tmpl b/data/gitea/templates/package/metadata/conda.tmpl new file mode 100644 index 0000000..3628686 --- /dev/null +++ b/data/gitea/templates/package/metadata/conda.tmpl @@ -0,0 +1,6 @@ +{{if eq .PackageDescriptor.Package.Type "conda"}} + {{if .PackageDescriptor.Metadata.License}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.License}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.RepositoryURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.repository_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.DocumentationURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.documentation_site"}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/container.tmpl b/data/gitea/templates/package/metadata/container.tmpl new file mode 100644 index 0000000..f5abb7e --- /dev/null +++ b/data/gitea/templates/package/metadata/container.tmpl @@ -0,0 +1,9 @@ +{{if eq .PackageDescriptor.Package.Type "container"}} +
    {{svg "octicon-package" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.Type.Name}}
    + {{if .PackageDescriptor.Metadata.Platform}}
    {{svg "octicon-cpu" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.Platform}}
    {{end}} + {{range .PackageDescriptor.Metadata.Authors}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.}}
    {{end}} + {{if .PackageDescriptor.Metadata.Licenses}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.Licenses}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.RepositoryURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.repository_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.DocumentationURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.documentation_site"}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/cran.tmpl b/data/gitea/templates/package/metadata/cran.tmpl new file mode 100644 index 0000000..1d5a11e --- /dev/null +++ b/data/gitea/templates/package/metadata/cran.tmpl @@ -0,0 +1,5 @@ +{{if eq .PackageDescriptor.Package.Type "cran"}} + {{if .PackageDescriptor.Metadata.License}}
    {{svg "octicon-law" 16 "mr-3"}} {{.PackageDescriptor.Metadata.License}}
    {{end}} + {{range .PackageDescriptor.Metadata.Authors}}
    {{svg "octicon-person" 16 "mr-3"}} {{.}}
    {{end}} + {{range .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "mr-3"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/debian.tmpl b/data/gitea/templates/package/metadata/debian.tmpl new file mode 100644 index 0000000..3cd845c --- /dev/null +++ b/data/gitea/templates/package/metadata/debian.tmpl @@ -0,0 +1,4 @@ +{{if eq .PackageDescriptor.Package.Type "debian"}} + {{if .PackageDescriptor.Metadata.Maintainer}}
    {{svg "octicon-person" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Maintainer}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "mr-3"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/generic.tmpl b/data/gitea/templates/package/metadata/generic.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/package/metadata/helm.tmpl b/data/gitea/templates/package/metadata/helm.tmpl new file mode 100644 index 0000000..50ea484 --- /dev/null +++ b/data/gitea/templates/package/metadata/helm.tmpl @@ -0,0 +1,4 @@ +{{if eq .PackageDescriptor.Package.Type "helm"}} + {{range .PackageDescriptor.Metadata.Maintainers}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.Name}}
    {{end}} + {{if .PackageDescriptor.Metadata.Home}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/maven.tmpl b/data/gitea/templates/package/metadata/maven.tmpl new file mode 100644 index 0000000..3641272 --- /dev/null +++ b/data/gitea/templates/package/metadata/maven.tmpl @@ -0,0 +1,8 @@ +{{if and (eq .PackageDescriptor.Package.Type "maven") (not .PackageDescriptor.Metadata)}} +
    {{svg "octicon-note" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.no_metadata"}}
    +{{end}} +{{if and (eq .PackageDescriptor.Package.Type "maven") .PackageDescriptor.Metadata}} + {{if .PackageDescriptor.Metadata.Name}}
    {{svg "octicon-note" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.Name}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{range .PackageDescriptor.Metadata.Licenses}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/npm.tmpl b/data/gitea/templates/package/metadata/npm.tmpl new file mode 100644 index 0000000..df37504 --- /dev/null +++ b/data/gitea/templates/package/metadata/npm.tmpl @@ -0,0 +1,8 @@ +{{if eq .PackageDescriptor.Package.Type "npm"}} + {{if .PackageDescriptor.Metadata.Author}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.Author}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.License}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.License}}
    {{end}} + {{range .PackageDescriptor.VersionProperties}} + {{if eq .Name "npm.tag"}}
    {{svg "octicon-versions" 16 "tw-mr-2"}} {{.Value}}
    {{end}} + {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/nuget.tmpl b/data/gitea/templates/package/metadata/nuget.tmpl new file mode 100644 index 0000000..5534577 --- /dev/null +++ b/data/gitea/templates/package/metadata/nuget.tmpl @@ -0,0 +1,5 @@ +{{if eq .PackageDescriptor.Package.Type "nuget"}} + {{if .PackageDescriptor.Metadata.Authors}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.Authors}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.RepositoryURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.repository_site"}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/pub.tmpl b/data/gitea/templates/package/metadata/pub.tmpl new file mode 100644 index 0000000..16f7cec --- /dev/null +++ b/data/gitea/templates/package/metadata/pub.tmpl @@ -0,0 +1,5 @@ +{{if eq .PackageDescriptor.Package.Type "pub"}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.RepositoryURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.repository_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.DocumentationURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.documentation_site"}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/pypi.tmpl b/data/gitea/templates/package/metadata/pypi.tmpl new file mode 100644 index 0000000..3d9b213 --- /dev/null +++ b/data/gitea/templates/package/metadata/pypi.tmpl @@ -0,0 +1,5 @@ +{{if eq .PackageDescriptor.Package.Type "pypi"}} + {{if .PackageDescriptor.Metadata.Author}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.Author}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.License}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.License}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/rpm.tmpl b/data/gitea/templates/package/metadata/rpm.tmpl new file mode 100644 index 0000000..eda8a48 --- /dev/null +++ b/data/gitea/templates/package/metadata/rpm.tmpl @@ -0,0 +1,4 @@ +{{if eq .PackageDescriptor.Package.Type "rpm"}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.License}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.License}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/rubygems.tmpl b/data/gitea/templates/package/metadata/rubygems.tmpl new file mode 100644 index 0000000..9b11287 --- /dev/null +++ b/data/gitea/templates/package/metadata/rubygems.tmpl @@ -0,0 +1,5 @@ +{{if eq .PackageDescriptor.Package.Type "rubygems"}} + {{range .PackageDescriptor.Metadata.Authors}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{range .PackageDescriptor.Metadata.Licenses}}
    {{svg "octicon-law" 16 "tw-mr-2"}} {{.}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/swift.tmpl b/data/gitea/templates/package/metadata/swift.tmpl new file mode 100644 index 0000000..fdffb6d --- /dev/null +++ b/data/gitea/templates/package/metadata/swift.tmpl @@ -0,0 +1,4 @@ +{{if eq .PackageDescriptor.Package.Type "swift"}} + {{if .PackageDescriptor.Metadata.Author.String}}
    {{svg "octicon-person" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Author}}
    {{end}} + {{if .PackageDescriptor.Metadata.RepositoryURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.repository_site"}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/metadata/vagrant.tmpl b/data/gitea/templates/package/metadata/vagrant.tmpl new file mode 100644 index 0000000..4628a2d --- /dev/null +++ b/data/gitea/templates/package/metadata/vagrant.tmpl @@ -0,0 +1,5 @@ +{{if eq .PackageDescriptor.Package.Type "vagrant"}} + {{if .PackageDescriptor.Metadata.Author}}
    {{svg "octicon-person" 16 "tw-mr-2"}} {{.PackageDescriptor.Metadata.Author}}
    {{end}} + {{if .PackageDescriptor.Metadata.ProjectURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.project_site"}}
    {{end}} + {{if .PackageDescriptor.Metadata.RepositoryURL}}
    {{svg "octicon-link-external" 16 "tw-mr-2"}} {{ctx.Locale.Tr "packages.details.repository_site"}}
    {{end}} +{{end}} diff --git a/data/gitea/templates/package/settings.tmpl b/data/gitea/templates/package/settings.tmpl new file mode 100644 index 0000000..9424baf --- /dev/null +++ b/data/gitea/templates/package/settings.tmpl @@ -0,0 +1,77 @@ +{{template "base/head" .}} +
    + {{if .ContextUser.IsOrganization}} + {{template "org/header" .}} + {{else}} + {{template "shared/user/org_profile_avatar" .}} + {{end}} +
    + {{if not .ContextUser.IsOrganization}} + {{template "user/overview/header" .}} + {{end}} + {{template "base/alert" .}} +

    {{.PackageDescriptor.Package.Name}} ({{.PackageDescriptor.Version.Version}}) / {{ctx.Locale.Tr "repo.settings"}}

    +

    + {{ctx.Locale.Tr "packages.settings.link"}} +

    +
    +

    {{ctx.Locale.Tr "packages.settings.link.description"}}

    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} + +
    + +
    +
    + +
    +
    +
    +

    + {{ctx.Locale.Tr "repo.settings.danger_zone"}} +

    +
    +
    +
    +
    +
    {{ctx.Locale.Tr "packages.settings.delete"}}
    +
    {{ctx.Locale.Tr "packages.settings.delete.description"}}
    +
    +
    + +
    + +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/package/shared/cargo.tmpl b/data/gitea/templates/package/shared/cargo.tmpl new file mode 100644 index 0000000..7652231 --- /dev/null +++ b/data/gitea/templates/package/shared/cargo.tmpl @@ -0,0 +1,24 @@ +

    + {{ctx.Locale.Tr "packages.owner.settings.cargo.title"}} +

    +
    +
    +
    + +
    +
    + {{.CsrfTokenHtml}} + +
    +
    + +
    +
    + {{.CsrfTokenHtml}} + +
    +
    + +
    +
    +
    diff --git a/data/gitea/templates/package/shared/cleanup_rules/edit.tmpl b/data/gitea/templates/package/shared/cleanup_rules/edit.tmpl new file mode 100644 index 0000000..138a907 --- /dev/null +++ b/data/gitea/templates/package/shared/cleanup_rules/edit.tmpl @@ -0,0 +1,73 @@ +

    {{if .IsEditRule}}{{ctx.Locale.Tr "packages.owner.settings.cleanuprules.edit"}}{{else}}{{ctx.Locale.Tr "packages.owner.settings.cleanuprules.add"}}{{end}}

    +
    +
    + {{.CsrfTokenHtml}} + +
    +
    + + +
    +
    +
    + + +
    +
    +
    + + +
    +
    +
    +

    {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.keep.title"}}

    +
    + + +
    +
    + + +

    {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.keep.pattern.container"}}

    +
    +
    +

    {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.remove.title"}}

    +
    + + +
    +
    + + +
    +
    + {{if .IsEditRule}} + + + {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.preview"}} + {{else}} + + {{end}} +
    +
    +
    diff --git a/data/gitea/templates/package/shared/cleanup_rules/list.tmpl b/data/gitea/templates/package/shared/cleanup_rules/list.tmpl new file mode 100644 index 0000000..6505c8f --- /dev/null +++ b/data/gitea/templates/package/shared/cleanup_rules/list.tmpl @@ -0,0 +1,56 @@ +

    + {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.title"}} + +

    +
    +
    + {{range .CleanupRules}} +
    +
    + {{svg .Type.SVGName 32}} +
    +
    + +
    + {{if .Enabled}}{{ctx.Locale.Tr "enabled"}}{{else}}{{ctx.Locale.Tr "disabled"}}{{end}} +
    + {{if .KeepCount}} +
    + {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.keep.count"}}: {{if eq .KeepCount 1}}{{ctx.Locale.Tr "packages.owner.settings.cleanuprules.keep.count.1"}}{{else}}{{ctx.Locale.Tr "packages.owner.settings.cleanuprules.keep.count.n" .KeepCount}}{{end}} +
    + {{end}} + {{if .KeepPattern}} +
    + {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.keep.pattern"}}: {{StringUtils.EllipsisString .KeepPattern 100}} +
    + {{end}} + {{if .RemoveDays}} +
    + {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.remove.days"}}: {{ctx.Locale.Tr "tool.days" .RemoveDays}} +
    + {{end}} + {{if .RemovePattern}} +
    + {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.remove.pattern"}}: {{StringUtils.EllipsisString .RemovePattern 100}} +
    + {{end}} +
    + +
    + {{else}} +
    {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.none"}}
    + {{end}} +
    +
    diff --git a/data/gitea/templates/package/shared/cleanup_rules/preview.tmpl b/data/gitea/templates/package/shared/cleanup_rules/preview.tmpl new file mode 100644 index 0000000..cff8e82 --- /dev/null +++ b/data/gitea/templates/package/shared/cleanup_rules/preview.tmpl @@ -0,0 +1,34 @@ +

    {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.preview"}}

    +
    +

    {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.preview.overview" (len .VersionsToRemove)}}

    +
    +
    + + + + + + + + + + + + + {{range .VersionsToRemove}} + + + + + + + + + {{else}} + + + + {{end}} + +
    {{ctx.Locale.Tr "admin.packages.type"}}{{ctx.Locale.Tr "admin.packages.name"}}{{ctx.Locale.Tr "admin.packages.version"}}{{ctx.Locale.Tr "admin.packages.creator"}}{{ctx.Locale.Tr "admin.packages.size"}}{{ctx.Locale.Tr "admin.packages.published"}}
    {{.Package.Type.Name}}{{.Package.Name}}{{.Version.Version}}{{.Creator.Name}}{{FileSize .CalculateBlobSize}}{{DateTime "short" .Version.CreatedUnix}}
    {{ctx.Locale.Tr "packages.owner.settings.cleanuprules.preview.none"}}
    +
    diff --git a/data/gitea/templates/package/shared/list.tmpl b/data/gitea/templates/package/shared/list.tmpl new file mode 100644 index 0000000..e4e8eca --- /dev/null +++ b/data/gitea/templates/package/shared/list.tmpl @@ -0,0 +1,57 @@ +{{template "base/alert" .}} +{{if .HasPackages}} +
    +
    + {{template "shared/search/input" dict "Value" .Query "Placeholder" (ctx.Locale.Tr "search.package_kind")}} + + {{template "shared/search/button"}} +
    +
    +{{end}} +
    + {{range .PackageDescriptors}} +
    +
    +
    +
    + {{.Package.Name}} + {{svg .Package.Type.SVGName 16}} {{.Package.Type.Name}} +
    +
    + {{$timeStr := TimeSinceUnix .Version.CreatedUnix ctx.Locale}} + {{$hasRepositoryAccess := false}} + {{if .Repository}} + {{$hasRepositoryAccess = index $.RepositoryAccessMap .Repository.ID}} + {{end}} + {{if $hasRepositoryAccess}} + {{ctx.Locale.Tr "packages.published_by_in" $timeStr .Creator.HomeLink .Creator.GetDisplayName .Repository.Link .Repository.FullName}} + {{else}} + {{ctx.Locale.Tr "packages.published_by" $timeStr .Creator.HomeLink .Creator.GetDisplayName}} + {{end}} +
    +
    +
    +
    + {{else}} + {{if not .HasPackages}} +
    + {{svg "octicon-package" 48}} +

    {{ctx.Locale.Tr "packages.empty"}}

    + {{if and .Repository .CanWritePackages}} + {{$packagesUrl := URLJoin .Owner.HomeLink "-" "packages"}} +

    {{ctx.Locale.Tr "packages.empty.repo" $packagesUrl}}

    + {{end}} +

    {{ctx.Locale.Tr "packages.empty.documentation" "https://docs.gitea.com/usage/packages/overview/"}}

    +
    + {{else}} +

    {{ctx.Locale.Tr "packages.filter.no_result"}}

    + {{end}} + {{end}} + {{template "base/paginate" .}} +
    diff --git a/data/gitea/templates/package/shared/versionlist.tmpl b/data/gitea/templates/package/shared/versionlist.tmpl new file mode 100644 index 0000000..e5c568e --- /dev/null +++ b/data/gitea/templates/package/shared/versionlist.tmpl @@ -0,0 +1,37 @@ +

    {{.PackageDescriptor.Package.Name}} / {{ctx.Locale.Tr "packages.versions"}}

    +
    +
    + {{template "shared/search/input" dict "Value" .Query "Placeholder" (ctx.Locale.Tr "search.package_kind")}} + + {{if eq .PackageDescriptor.Package.Type "container"}} + + {{end}} + {{template "shared/search/button"}} +
    +
    +
    + {{range .PackageDescriptors}} +
    +
    +
    + {{.Version.LowerVersion}} +
    + {{ctx.Locale.Tr "packages.published_by" (TimeSinceUnix .Version.CreatedUnix ctx.Locale) .Creator.HomeLink .Creator.GetDisplayName}} +
    +
    +
    +
    + {{else}} +

    {{ctx.Locale.Tr "packages.filter.no_result"}}

    + {{end}} + {{template "base/paginate" .}} +
    diff --git a/data/gitea/templates/package/view.tmpl b/data/gitea/templates/package/view.tmpl new file mode 100644 index 0000000..6beb249 --- /dev/null +++ b/data/gitea/templates/package/view.tmpl @@ -0,0 +1,114 @@ +{{template "base/head" .}} +
    + {{template "shared/user/org_profile_avatar" .}} +
    + {{template "user/overview/header" .}} +
    +
    +

    {{.PackageDescriptor.Package.Name}} ({{.PackageDescriptor.Version.Version}})

    +
    +
    + {{$timeStr := TimeSinceUnix .PackageDescriptor.Version.CreatedUnix ctx.Locale}} + {{if .HasRepositoryAccess}} + {{ctx.Locale.Tr "packages.published_by_in" $timeStr .PackageDescriptor.Creator.HomeLink .PackageDescriptor.Creator.GetDisplayName .PackageDescriptor.Repository.Link .PackageDescriptor.Repository.FullName}} + {{else}} + {{ctx.Locale.Tr "packages.published_by" $timeStr .PackageDescriptor.Creator.HomeLink .PackageDescriptor.Creator.GetDisplayName}} + {{end}} +
    +
    +
    +
    + {{template "package/content/alpine" .}} + {{template "package/content/cargo" .}} + {{template "package/content/chef" .}} + {{template "package/content/composer" .}} + {{template "package/content/conan" .}} + {{template "package/content/conda" .}} + {{template "package/content/container" .}} + {{template "package/content/cran" .}} + {{template "package/content/debian" .}} + {{template "package/content/generic" .}} + {{template "package/content/go" .}} + {{template "package/content/helm" .}} + {{template "package/content/maven" .}} + {{template "package/content/npm" .}} + {{template "package/content/nuget" .}} + {{template "package/content/pub" .}} + {{template "package/content/pypi" .}} + {{template "package/content/rpm" .}} + {{template "package/content/rubygems" .}} + {{template "package/content/swift" .}} + {{template "package/content/vagrant" .}} +
    +
    + {{ctx.Locale.Tr "packages.details"}} +
    +
    {{svg .PackageDescriptor.Package.Type.SVGName 16 "tw-mr-2"}} {{.PackageDescriptor.Package.Type.Name}}
    + {{if .HasRepositoryAccess}} +
    {{svg "octicon-repo" 16 "tw-mr-2"}} {{.PackageDescriptor.Repository.FullName}}
    + {{end}} +
    {{svg "octicon-calendar" 16 "tw-mr-2"}} {{TimeSinceUnix .PackageDescriptor.Version.CreatedUnix ctx.Locale}}
    +
    {{svg "octicon-download" 16 "tw-mr-2"}} {{.PackageDescriptor.Version.DownloadCount}}
    + {{template "package/metadata/alpine" .}} + {{template "package/metadata/cargo" .}} + {{template "package/metadata/chef" .}} + {{template "package/metadata/composer" .}} + {{template "package/metadata/conan" .}} + {{template "package/metadata/conda" .}} + {{template "package/metadata/container" .}} + {{template "package/metadata/cran" .}} + {{template "package/metadata/debian" .}} + {{template "package/metadata/generic" .}} + {{template "package/metadata/helm" .}} + {{template "package/metadata/maven" .}} + {{template "package/metadata/npm" .}} + {{template "package/metadata/nuget" .}} + {{template "package/metadata/pub" .}} + {{template "package/metadata/pypi" .}} + {{template "package/metadata/rpm" .}} + {{template "package/metadata/rubygems" .}} + {{template "package/metadata/swift" .}} + {{template "package/metadata/vagrant" .}} + {{if not (and (eq .PackageDescriptor.Package.Type "container") .PackageDescriptor.Metadata.Manifests)}} +
    {{svg "octicon-database" 16 "tw-mr-2"}} {{FileSize .PackageDescriptor.CalculateBlobSize}}
    + {{end}} +
    + {{if not (eq .PackageDescriptor.Package.Type "container")}} +
    + {{ctx.Locale.Tr "packages.assets"}} ({{len .PackageDescriptor.Files}}) +
    + {{range .PackageDescriptor.Files}} +
    + {{.File.Name}} + {{FileSize .Blob.Size}} +
    + {{end}} +
    + {{end}} +
    + {{ctx.Locale.Tr "packages.versions"}} ({{.TotalVersionCount}}) + {{ctx.Locale.Tr "packages.versions.view_all"}} +
    + {{range .LatestVersions}} +
    + {{.Version}} + {{DateTime "short" .CreatedUnix}} +
    + {{end}} +
    + {{if or .CanWritePackages .HasRepositoryAccess}} +
    +
    + {{if .HasRepositoryAccess}} +
    {{svg "octicon-issue-opened" 16 "tw-mr-2"}} {{ctx.Locale.Tr "repo.issues"}}
    + {{end}} + {{if .CanWritePackages}} +
    {{svg "octicon-tools" 16 "tw-mr-2"}} {{ctx.Locale.Tr "repo.settings"}}
    + {{end}} +
    + {{end}} +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/post-install.tmpl b/data/gitea/templates/post-install.tmpl new file mode 100644 index 0000000..fb23400 --- /dev/null +++ b/data/gitea/templates/post-install.tmpl @@ -0,0 +1,24 @@ +{{template "base/head" .}} +
    +
    +
    +
    +
    +
    +
    +
    + {{ctx.Locale.Tr +
    +
    +
    + +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/projects/list.tmpl b/data/gitea/templates/projects/list.tmpl new file mode 100644 index 0000000..b2f48fe --- /dev/null +++ b/data/gitea/templates/projects/list.tmpl @@ -0,0 +1,93 @@ +{{if and $.CanWriteProjects (not $.Repository.IsArchived)}} + +{{end}} + +{{template "base/alert" .}} + +
    + + + + +
    + +
    + {{range .Projects}} +
  • +

    + {{svg .IconName 16}} + {{.Title}} +

    +
    +
    +
    + {{svg "octicon-issue-opened" 14}} + {{ctx.Locale.PrettyNumber (.NumOpenIssues ctx)}} {{ctx.Locale.Tr "repo.issues.open_title"}} +
    +
    + {{svg "octicon-check" 14}} + {{ctx.Locale.PrettyNumber (.NumClosedIssues ctx)}} {{ctx.Locale.Tr "repo.issues.closed_title"}} +
    +
    + {{if and $.CanWriteProjects (not $.Repository.IsArchived)}} + + {{end}} +
    + {{if .Description}} +
    + {{.RenderedContent}} +
    + {{end}} +
  • + {{end}} + + {{template "base/paginate" .}} +
    + +{{if and $.CanWriteProjects (not $.Repository.IsArchived)}} + +{{end}} diff --git a/data/gitea/templates/projects/new.tmpl b/data/gitea/templates/projects/new.tmpl new file mode 100644 index 0000000..92ee36c --- /dev/null +++ b/data/gitea/templates/projects/new.tmpl @@ -0,0 +1,66 @@ +

    + {{if .PageIsEditProjects}} + {{ctx.Locale.Tr "repo.projects.edit"}} +
    {{ctx.Locale.Tr "repo.projects.edit_subheader"}}
    + {{else}} + {{ctx.Locale.Tr "repo.projects.new"}} +
    {{ctx.Locale.Tr "repo.projects.new_subheader"}}
    + {{end}} +

    +{{template "base/alert" .}} +
    + {{.CsrfTokenHtml}} +
    + +
    + + +
    +
    + + +
    + + {{if not .PageIsEditProjects}} +
    + + +
    + {{end}} + +
    + + +
    +
    +
    +
    + + {{ctx.Locale.Tr "repo.milestones.cancel"}} + + +
    +
    diff --git a/data/gitea/templates/projects/view.tmpl b/data/gitea/templates/projects/view.tmpl new file mode 100644 index 0000000..6d331ca --- /dev/null +++ b/data/gitea/templates/projects/view.tmpl @@ -0,0 +1,176 @@ +{{$canWriteProject := and .CanWriteProjects (or (not .Repository) (not .Repository.IsArchived))}} + +
    +
    +

    {{.Project.Title}}

    + {{if $canWriteProject}} + + + {{end}} +
    + +
    {{$.Project.RenderedContent}}
    + +
    +
    + +
    +
    + {{range .Columns}} +
    +
    +
    + {{.NumIssues ctx}} +
    +
    {{.Title}}
    + {{if $canWriteProject}} + + {{end}} +
    +
    +
    + {{range (index $.IssuesMap .ID)}} +
    + {{template "repo/issue/card" (dict "Issue" . "Page" $)}} +
    + {{end}} +
    +
    + {{end}} +
    +
    + +{{if .CanWriteProjects}} + +{{end}} diff --git a/data/gitea/templates/repo/actions/list.tmpl b/data/gitea/templates/repo/actions/list.tmpl new file mode 100644 index 0000000..b66d0e3 --- /dev/null +++ b/data/gitea/templates/repo/actions/list.tmpl @@ -0,0 +1,87 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} + + {{if .HasWorkflowsOrRuns}} +
    + +
    + + {{template "repo/actions/runs_list" .}} +
    +
    + {{else}} + {{template "repo/actions/no_workflows" .}} + {{end}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/actions/no_workflows.tmpl b/data/gitea/templates/repo/actions/no_workflows.tmpl new file mode 100644 index 0000000..0093135 --- /dev/null +++ b/data/gitea/templates/repo/actions/no_workflows.tmpl @@ -0,0 +1,8 @@ +
    + {{svg "octicon-no-entry" 48}} +

    {{ctx.Locale.Tr "actions.runs.no_workflows"}}

    + {{if and .CanWriteCode .CanWriteActions}} +

    {{ctx.Locale.Tr "actions.runs.no_workflows.quick_start" "https://docs.gitea.com/usage/actions/quickstart/"}}

    + {{end}} +

    {{ctx.Locale.Tr "actions.runs.no_workflows.documentation" "https://docs.gitea.com/usage/actions/overview/"}}

    +
    diff --git a/data/gitea/templates/repo/actions/runs_list.tmpl b/data/gitea/templates/repo/actions/runs_list.tmpl new file mode 100644 index 0000000..09a25ce --- /dev/null +++ b/data/gitea/templates/repo/actions/runs_list.tmpl @@ -0,0 +1,43 @@ +
    + {{if not .Runs}} +
    + {{svg "octicon-no-entry" 48}} +

    {{if $.IsFiltered}}{{ctx.Locale.Tr "actions.runs.no_results"}}{{else}}{{ctx.Locale.Tr "actions.runs.no_runs"}}{{end}}

    +
    + {{end}} + {{range .Runs}} +
    +
    + {{template "repo/actions/status" (dict "status" .Status.String)}} +
    +
    + + {{if .Title}}{{.Title}}{{else}}{{ctx.Locale.Tr "actions.runs.empty_commit_message"}}{{end}} + +
    + {{if not $.CurWorkflow}}{{.WorkflowID}} {{end}}#{{.Index}}: + {{- if .ScheduleID -}} + {{ctx.Locale.Tr "actions.runs.scheduled"}} + {{- else -}} + {{ctx.Locale.Tr "actions.runs.commit"}} + {{ShortSha .CommitSHA}} + {{ctx.Locale.Tr "actions.runs.pushed_by"}} + {{.TriggerUser.GetDisplayName}} + {{- end -}} +
    +
    +
    + {{if .RefLink}} + {{.PrettyRef}} + {{else}} + {{.PrettyRef}} + {{end}} +
    +
    {{svg "octicon-calendar" 16}}{{TimeSinceUnix .Updated ctx.Locale}}
    +
    {{svg "octicon-stopwatch" 16}}{{.Duration}}
    +
    +
    +
    + {{end}} +
    +{{template "base/paginate" .}} diff --git a/data/gitea/templates/repo/actions/status.tmpl b/data/gitea/templates/repo/actions/status.tmpl new file mode 100644 index 0000000..a0e02cf --- /dev/null +++ b/data/gitea/templates/repo/actions/status.tmpl @@ -0,0 +1,29 @@ + +{{- $size := 16 -}} +{{- if .size -}} +{{- $size = .size -}} +{{- end -}} + +{{- $className := "" -}} +{{- if .className -}} +{{- $className = .className -}} +{{- end -}} + + +{{if eq .status "success"}} + {{svg "octicon-check-circle-fill" $size (printf "text green %s" $className)}} +{{else if eq .status "skipped"}} + {{svg "octicon-skip" $size (printf "text grey %s" $className)}} +{{else if eq .status "waiting"}} + {{svg "octicon-clock" $size (printf "text yellow %s" $className)}} +{{else if eq .status "blocked"}} + {{svg "octicon-blocked" $size (printf "text yellow %s" $className)}} +{{else if eq .status "running"}} + {{svg "octicon-meter" $size (printf "text yellow job-status-rotate %s" $className)}} +{{else if or (eq .status "failure") or (eq .status "cancelled") or (eq .status "unknown")}} + {{svg "octicon-x-circle-fill" $size (printf "text red %s" $className)}} +{{end}} + diff --git a/data/gitea/templates/repo/actions/view.tmpl b/data/gitea/templates/repo/actions/view.tmpl new file mode 100644 index 0000000..f7b0360 --- /dev/null +++ b/data/gitea/templates/repo/actions/view.tmpl @@ -0,0 +1,34 @@ +{{template "base/head" .}} + +
    + {{template "repo/header" .}} +
    +
    +
    + +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/activity.tmpl b/data/gitea/templates/repo/activity.tmpl new file mode 100644 index 0000000..a19fb66 --- /dev/null +++ b/data/gitea/templates/repo/activity.tmpl @@ -0,0 +1,17 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +
    + {{template "repo/navbar" .}} +
    +
    + {{if .PageIsPulse}}{{template "repo/pulse" .}}{{end}} + {{if .PageIsContributors}}{{template "repo/contributors" .}}{{end}} + {{if .PageIsCodeFrequency}}{{template "repo/code_frequency" .}}{{end}} + {{if .PageIsRecentCommits}}{{template "repo/recent_commits" .}}{{end}} +
    +
    +
    +{{template "base/footer" .}} + diff --git a/data/gitea/templates/repo/blame.tmpl b/data/gitea/templates/repo/blame.tmpl new file mode 100644 index 0000000..091196b --- /dev/null +++ b/data/gitea/templates/repo/blame.tmpl @@ -0,0 +1,90 @@ +{{if or .UsesIgnoreRevs .FaultyIgnoreRevsFile}} + {{$revsFileLink := URLJoin .RepoLink "src" .BranchNameSubURL "/.git-blame-ignore-revs"}} + {{if .UsesIgnoreRevs}} +
    +

    {{ctx.Locale.Tr "repo.blame.ignore_revs" $revsFileLink "?bypass-blame-ignore=true"}}

    +
    + {{else}} +
    +

    {{ctx.Locale.Tr "repo.blame.ignore_revs.failed" $revsFileLink}}

    +
    + {{end}} +{{end}} +
    +

    +
    + {{template "repo/file_info" .}} +
    +
    +
    + {{ctx.Locale.Tr "repo.file_raw"}} + {{if not .IsViewCommit}} + {{ctx.Locale.Tr "repo.file_permalink"}} + {{end}} + {{ctx.Locale.Tr "repo.normal_view"}} + {{ctx.Locale.Tr "repo.file_history"}} + + +
    +
    +

    +
    +
    + {{if .IsFileTooLarge}} + {{template "shared/filetoolarge" dict "RawFileLink" .RawFileLink}} + {{else}} + + + {{range $row := .BlameRows}} + + + + + {{if $.EscapeStatus.Escaped}} + + {{end}} + + + {{end}} + +
    +
    +
    +
    + {{$row.Avatar}} +
    + +
    + {{$row.CommitSince}} +
    +
    +
    +
    + {{if $row.PreviousSha}} + + {{svg "octicon-versions"}} + + {{end}} + + + + {{if $row.EscapeStatus.Escaped}} + + {{end}} + + {{$row.Code}} +
    + {{end}}{{/* end if .IsFileTooLarge */}} +
    + {{if $.Permission.CanRead ctx.Consts.RepoUnitTypeIssues}} + {{ctx.Locale.Tr "repo.issues.context.reference_issue"}} + {{end}} + {{ctx.Locale.Tr "repo.file_copy_permalink"}} +
    +
    +
    +
    diff --git a/data/gitea/templates/repo/branch/list.tmpl b/data/gitea/templates/repo/branch/list.tmpl new file mode 100644 index 0000000..0472ead --- /dev/null +++ b/data/gitea/templates/repo/branch/list.tmpl @@ -0,0 +1,256 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} + {{template "repo/sub_menu" .}} + {{if .DefaultBranchBranch}} +

    + {{ctx.Locale.Tr "repo.default_branch"}} + {{if and $.IsWriter (not $.Repository.IsArchived) (not .IsDeleted)}} + + {{svg "octicon-arrow-switch"}} + + {{end}} +

    + +
    + + + + + + + +
    +
    + {{if .DefaultBranchBranch.IsProtected}}{{svg "octicon-shield-lock"}}{{end}} + {{.DefaultBranchBranch.DBBranch.Name}} + + {{template "repo/commit_statuses" dict "Status" (index $.CommitStatus .DefaultBranchBranch.DBBranch.CommitID) "Statuses" (index $.CommitStatuses .DefaultBranchBranch.DBBranch.CommitID)}} +
    +

    {{svg "octicon-git-commit" 16 "tw-mr-1"}}{{ShortSha .DefaultBranchBranch.DBBranch.CommitID}} · {{RenderCommitMessage $.Context .DefaultBranchBranch.DBBranch.CommitMessage (.Repository.ComposeMetas ctx)}} · {{ctx.Locale.Tr "org.repo_updated"}} {{TimeSince .DefaultBranchBranch.DBBranch.CommitTime.AsTime ctx.Locale}}{{if .DefaultBranchBranch.DBBranch.Pusher}}  {{template "shared/user/avatarlink" dict "user" .DefaultBranchBranch.DBBranch.Pusher}}{{template "shared/user/namelink" .DefaultBranchBranch.DBBranch.Pusher}}{{end}}

    +
    + {{if and $.IsWriter (not $.Repository.IsArchived) (not .IsDeleted)}} + + {{end}} + {{if .EnableFeed}} + {{svg "octicon-rss"}} + {{end}} + {{if not $.DisableDownloadSourceArchives}} + + {{end}} + {{if and $.IsWriter (not $.Repository.IsArchived) (not .IsDeleted) (not $.IsMirror)}} + + {{end}} +
    +
    + {{end}} + +

    +
    + {{ctx.Locale.Tr "repo.branches"}} +
    +

    + +
    +
    + {{template "shared/search/combo" dict "Value" .Keyword "Placeholder" (ctx.Locale.Tr "search.branch_kind")}} +
    +
    + +
    + + + {{range .Branches}} + + + + + + + {{end}} + +
    + {{if .DBBranch.IsDeleted}} +
    + {{.DBBranch.Name}} + +
    +

    {{ctx.Locale.Tr "repo.branch.deleted_by" .DBBranch.DeletedBy.Name}} {{TimeSinceUnix .DBBranch.DeletedUnix ctx.Locale}}

    + {{else}} +
    + {{if .IsProtected}}{{svg "octicon-shield-lock"}}{{end}} + {{.DBBranch.Name}} + + {{template "repo/commit_statuses" dict "Status" (index $.CommitStatus .DBBranch.CommitID) "Statuses" (index $.CommitStatuses .DBBranch.CommitID)}} +
    +

    {{svg "octicon-git-commit" 16 "tw-mr-1"}}{{ShortSha .DBBranch.CommitID}} · {{RenderCommitMessage $.Context .DBBranch.CommitMessage ($.Repository.ComposeMetas ctx)}} · {{ctx.Locale.Tr "org.repo_updated"}} {{TimeSince .DBBranch.CommitTime.AsTime ctx.Locale}}{{if .DBBranch.Pusher}}  {{template "shared/user/avatarlink" dict "user" .DBBranch.Pusher}}  {{template "shared/user/namelink" .DBBranch.Pusher}}{{end}}

    + {{end}} +
    + {{if and (not .DBBranch.IsDeleted) $.DefaultBranchBranch}} +
    +
    +
    {{.CommitsBehind}}
    + {{/* old code bears 0/0.0 = NaN output, so it might output invalid "width: NaNpx", it just works and doesn't caues any problem. */}} +
    +
    +
    +
    {{.CommitsAhead}}
    +
    +
    +
    + {{end}} +
    + {{if not .LatestPullRequest}} + {{if .IsIncluded}} + + {{svg "octicon-git-pull-request"}} {{ctx.Locale.Tr "repo.branch.included"}} + + {{else if and (not .DBBranch.IsDeleted) $.AllowsPulls (gt .CommitsAhead 0)}} + + + + {{end}} + {{else if and .LatestPullRequest.HasMerged .MergeMovedOn}} + {{if and (not .DBBranch.IsDeleted) $.AllowsPulls (gt .CommitsAhead 0)}} + + + + {{end}} + {{else}} + {{if not .LatestPullRequest.IsSameRepo}}{{.LatestPullRequest.BaseRepo.FullName}}{{end}}#{{.LatestPullRequest.Issue.Index}} + {{if .LatestPullRequest.HasMerged}} + {{svg "octicon-git-merge" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.pulls.merged"}} + {{else if .LatestPullRequest.Issue.IsClosed}} + {{svg "octicon-git-pull-request" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.issues.closed_title"}} + {{else}} + {{svg "octicon-git-pull-request" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.issues.open_title"}} + {{end}} + {{end}} + + {{if and $.IsWriter (not $.Repository.IsArchived) (not .DBBranch.IsDeleted)}} + + {{end}} + {{if $.EnableFeed}} + {{svg "octicon-rss"}} + {{end}} + {{if and (not .DBBranch.IsDeleted) (not $.DisableDownloadSourceArchives)}} + + {{end}} + {{if and $.IsWriter (not $.Repository.IsArchived) (not .DBBranch.IsDeleted) (not $.IsMirror)}} + + {{end}} + {{if and $.IsWriter (not $.IsMirror) (not $.Repository.IsArchived) (not .IsProtected)}} + {{if .DBBranch.IsDeleted}} + + {{else}} + + {{end}} + {{end}} +
    +
    + {{template "base/paginate" .}} +
    +
    + + + + + + +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/branch_dropdown.tmpl b/data/gitea/templates/repo/branch_dropdown.tmpl new file mode 100644 index 0000000..c4f7387 --- /dev/null +++ b/data/gitea/templates/repo/branch_dropdown.tmpl @@ -0,0 +1,89 @@ +{{/* Attributes: +* root +* ContainerClasses +* (TODO: search "branch_dropdown" in the template directory) +*/}} +{{$defaultSelectedRefName := $.root.BranchName}} +{{if and .root.IsViewTag (not .noTag)}} + {{$defaultSelectedRefName = .root.TagName}} +{{end}} +{{if eq $defaultSelectedRefName ""}} + {{$defaultSelectedRefName = $.root.Repository.DefaultBranch}} +{{end}} + +{{$type := ""}} +{{if and .root.IsViewTag (not .noTag)}} + {{$type = "tag"}} +{{else if .root.IsViewBranch}} + {{$type = "branch"}} +{{else}} + {{$type = "tree"}} +{{end}} + +{{$showBranchesInDropdown := not .root.HideBranchesInDropdown}} + + + +
    + {{/* show dummy elements before Vue componment is mounted, this code must match the code in BranchTagSelector.vue */}} + +
    diff --git a/data/gitea/templates/repo/cite/cite_buttons.tmpl b/data/gitea/templates/repo/cite/cite_buttons.tmpl new file mode 100644 index 0000000..426ca38 --- /dev/null +++ b/data/gitea/templates/repo/cite/cite_buttons.tmpl @@ -0,0 +1,11 @@ + + + + + diff --git a/data/gitea/templates/repo/cite/cite_modal.tmpl b/data/gitea/templates/repo/cite/cite_modal.tmpl new file mode 100644 index 0000000..fb25144 --- /dev/null +++ b/data/gitea/templates/repo/cite/cite_modal.tmpl @@ -0,0 +1,20 @@ + diff --git a/data/gitea/templates/repo/clone_buttons.tmpl b/data/gitea/templates/repo/clone_buttons.tmpl new file mode 100644 index 0000000..91952c8 --- /dev/null +++ b/data/gitea/templates/repo/clone_buttons.tmpl @@ -0,0 +1,15 @@ + +{{if $.CloneButtonShowHTTPS}} + +{{end}} +{{if $.CloneButtonShowSSH}} + +{{end}} + + diff --git a/data/gitea/templates/repo/clone_script.tmpl b/data/gitea/templates/repo/clone_script.tmpl new file mode 100644 index 0000000..40dae76 --- /dev/null +++ b/data/gitea/templates/repo/clone_script.tmpl @@ -0,0 +1,50 @@ + diff --git a/data/gitea/templates/repo/code/recently_pushed_new_branches.tmpl b/data/gitea/templates/repo/code/recently_pushed_new_branches.tmpl new file mode 100644 index 0000000..025cc1a --- /dev/null +++ b/data/gitea/templates/repo/code/recently_pushed_new_branches.tmpl @@ -0,0 +1,12 @@ +{{range .RecentlyPushedNewBranches}} +
    +
    + {{$timeSince := TimeSince .CommitTime.AsTime ctx.Locale}} + {{$branchLink := HTMLFormat `%s` .BranchLink .BranchDisplayName}} + {{ctx.Locale.Tr "repo.pulls.recently_pushed_new_branches" $branchLink $timeSince}} +
    + + {{ctx.Locale.Tr "repo.pulls.compare_changes"}} + +
    +{{end}} diff --git a/data/gitea/templates/repo/code_frequency.tmpl b/data/gitea/templates/repo/code_frequency.tmpl new file mode 100644 index 0000000..79b45d4 --- /dev/null +++ b/data/gitea/templates/repo/code_frequency.tmpl @@ -0,0 +1,9 @@ +{{if .Permission.CanRead ctx.Consts.RepoUnitTypeCode}} +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/commit_load_branches_and_tags.tmpl b/data/gitea/templates/repo/commit_load_branches_and_tags.tmpl new file mode 100644 index 0000000..ffa0e53 --- /dev/null +++ b/data/gitea/templates/repo/commit_load_branches_and_tags.tmpl @@ -0,0 +1,20 @@ +{{if not .PageIsWiki}} +
    + +
    +
    +
    {{ctx.Locale.Tr "repo.commit.contained_in"}}
    +
    +
    {{svg "octicon-git-branch"}}
    +
    +
    +
    +
    {{svg "octicon-tag"}}
    +
    +
    +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/commit_page.tmpl b/data/gitea/templates/repo/commit_page.tmpl new file mode 100644 index 0000000..b8195ac --- /dev/null +++ b/data/gitea/templates/repo/commit_page.tmpl @@ -0,0 +1,285 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{$class := ""}} + {{if .Commit.Signature}} + {{$class = (print $class " isSigned")}} + {{if .Verification.Verified}} + {{if eq .Verification.TrustStatus "trusted"}} + {{$class = (print $class " isVerified")}} + {{else if eq .Verification.TrustStatus "untrusted"}} + {{$class = (print $class " isVerifiedUntrusted")}} + {{else}} + {{$class = (print $class " isVerifiedUnmatched")}} + {{end}} + {{else if .Verification.Warning}} + {{$class = (print $class " isWarning")}} + {{end}} + {{end}} +
    +
    +

    {{RenderCommitMessage $.Context .Commit.Message ($.Repository.ComposeMetas ctx)}}{{template "repo/commit_statuses" dict "Status" .CommitStatus "Statuses" .CommitStatuses}}

    + {{if not $.PageIsWiki}} +
    + + {{ctx.Locale.Tr "repo.diff.browse_source"}} + + {{if and ($.Permission.CanWrite ctx.Consts.RepoUnitTypeCode) (not $.Repository.IsArchived) (not .IsDeleted)}}{{- /* */ -}} + + {{end}} +
    + {{end}} +
    + {{if IsMultilineCommitMessage .Commit.Message}} +
    {{RenderCommitBody $.Context .Commit.Message ($.Repository.ComposeMetas ctx)}}
    + {{end}} + {{template "repo/commit_load_branches_and_tags" .}} +
    +
    +
    + {{if .Author}} + {{ctx.AvatarUtils.Avatar .Author 28 "tw-mr-2"}} + {{if .Author.FullName}} + {{.Author.FullName}} + {{else}} + {{.Commit.Author.Name}} + {{end}} + {{else}} + {{ctx.AvatarUtils.AvatarByEmail .Commit.Author.Email .Commit.Author.Email 28 "tw-mr-2"}} + {{.Commit.Author.Name}} + {{end}} + {{TimeSince .Commit.Author.When ctx.Locale}} + {{if or (ne .Commit.Committer.Name .Commit.Author.Name) (ne .Commit.Committer.Email .Commit.Author.Email)}} + {{ctx.Locale.Tr "repo.diff.committed_by"}} + {{if ne .Verification.CommittingUser.ID 0}} + {{ctx.AvatarUtils.Avatar .Verification.CommittingUser 28 "tw-mx-2"}} + {{.Commit.Committer.Name}} + {{else}} + {{ctx.AvatarUtils.AvatarByEmail .Commit.Committer.Email .Commit.Committer.Name 28 "tw-mr-2"}} + {{.Commit.Committer.Name}} + {{end}} + {{end}} +
    +
    + {{if .Parents}} +
    + {{ctx.Locale.Tr "repo.diff.parent"}} + {{range .Parents}} + {{if $.PageIsWiki}} + {{ShortSha .}} + {{else}} + {{ShortSha .}} + {{end}} + {{end}} +
    + {{end}} +
    + {{ctx.Locale.Tr "repo.diff.commit"}} + {{ShortSha .CommitID}} +
    +
    +
    + {{if .Commit.Signature}} +
    +
    + {{if .Verification.Verified}} + {{if ne .Verification.SigningUser.ID 0}} + {{svg "gitea-lock" 16 "tw-mr-2"}} + {{if eq .Verification.TrustStatus "trusted"}} + {{ctx.Locale.Tr "repo.commits.signed_by"}}: + {{else if eq .Verification.TrustStatus "untrusted"}} + {{ctx.Locale.Tr "repo.commits.signed_by_untrusted_user"}}: + {{else}} + {{ctx.Locale.Tr "repo.commits.signed_by_untrusted_user_unmatched"}}: + {{end}} + {{ctx.AvatarUtils.Avatar .Verification.SigningUser 28 "tw-mr-2"}} + {{.Verification.SigningUser.GetDisplayName}} + {{else}} + {{svg "gitea-lock-cog" 16 "tw-mr-2"}} + {{ctx.Locale.Tr "repo.commits.signed_by"}}: + {{ctx.AvatarUtils.AvatarByEmail .Verification.SigningEmail "" 28 "tw-mr-2"}} + {{.Verification.SigningUser.GetDisplayName}} + {{end}} + {{else}} + {{svg "gitea-unlock" 16 "tw-mr-2"}} + {{ctx.Locale.Tr .Verification.Reason}} + {{end}} +
    +
    + {{if .Verification.Verified}} + {{if ne .Verification.SigningUser.ID 0}} + {{svg "octicon-verified" 16 "tw-mr-2"}} + {{if .Verification.SigningSSHKey}} + {{ctx.Locale.Tr "repo.commits.ssh_key_fingerprint"}}: + {{.Verification.SigningSSHKey.Fingerprint}} + {{else}} + {{ctx.Locale.Tr "repo.commits.gpg_key_id"}}: + {{.Verification.SigningKey.PaddedKeyID}} + {{end}} + {{else}} + {{svg "octicon-unverified" 16 "tw-mr-2"}} + {{if .Verification.SigningSSHKey}} + {{ctx.Locale.Tr "repo.commits.ssh_key_fingerprint"}}: + {{.Verification.SigningSSHKey.Fingerprint}} + {{else}} + {{ctx.Locale.Tr "repo.commits.gpg_key_id"}}: + {{.Verification.SigningKey.PaddedKeyID}} + {{end}} + {{end}} + {{else if .Verification.Warning}} + {{svg "octicon-unverified" 16 "tw-mr-2"}} + {{if .Verification.SigningSSHKey}} + {{ctx.Locale.Tr "repo.commits.ssh_key_fingerprint"}}: + {{.Verification.SigningSSHKey.Fingerprint}} + {{else}} + {{ctx.Locale.Tr "repo.commits.gpg_key_id"}}: + {{.Verification.SigningKey.PaddedKeyID}} + {{end}} + {{else}} + {{if .Verification.SigningKey}} + {{if ne .Verification.SigningKey.KeyID ""}} + {{svg "octicon-verified" 16 "tw-mr-2"}} + {{ctx.Locale.Tr "repo.commits.gpg_key_id"}}: + {{.Verification.SigningKey.PaddedKeyID}} + {{end}} + {{end}} + {{if .Verification.SigningSSHKey}} + {{if ne .Verification.SigningSSHKey.Fingerprint ""}} + {{svg "octicon-verified" 16 "tw-mr-2"}} + {{ctx.Locale.Tr "repo.commits.ssh_key_fingerprint"}}: + {{.Verification.SigningSSHKey.Fingerprint}} + {{end}} + {{end}} + {{end}} +
    +
    + {{end}} + {{if .NoteRendered}} +
    + {{svg "octicon-note" 16 "tw-mr-2"}} + {{ctx.Locale.Tr "repo.diff.git-notes"}}: + {{if .NoteAuthor}} + + {{if .NoteAuthor.FullName}} + {{.NoteAuthor.FullName}} + {{else}} + {{.NoteCommit.Author.Name}} + {{end}} + + {{else}} + {{.NoteCommit.Author.Name}} + {{end}} + {{TimeSince .NoteCommit.Author.When ctx.Locale}} +
    +
    +
    {{.NoteRendered | SanitizeHTML}}
    +
    + {{end}} + {{template "repo/diff/box" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/commit_status.tmpl b/data/gitea/templates/repo/commit_status.tmpl new file mode 100644 index 0000000..eb700ab --- /dev/null +++ b/data/gitea/templates/repo/commit_status.tmpl @@ -0,0 +1,16 @@ + +{{if eq .State "pending"}} + {{svg "octicon-dot-fill" 18 "commit-status icon text yellow"}} +{{end}} +{{if eq .State "success"}} + {{svg "octicon-check" 18 "commit-status icon text green"}} +{{end}} +{{if eq .State "error"}} + {{svg "gitea-exclamation" 18 "commit-status icon text red"}} +{{end}} +{{if eq .State "failure"}} + {{svg "octicon-x" 18 "commit-status icon text red"}} +{{end}} +{{if eq .State "warning"}} + {{svg "gitea-exclamation" 18 "commit-status icon text yellow"}} +{{end}} diff --git a/data/gitea/templates/repo/commit_statuses.tmpl b/data/gitea/templates/repo/commit_statuses.tmpl new file mode 100644 index 0000000..f451ac0 --- /dev/null +++ b/data/gitea/templates/repo/commit_statuses.tmpl @@ -0,0 +1,14 @@ +{{if .Statuses}} + {{if and (eq (len .Statuses) 1) .Status.TargetURL}} + + {{template "repo/commit_status" .Status}} + + {{else}} + + {{template "repo/commit_status" .Status}} + + {{end}} +
    + {{template "repo/pulls/status" (dict "CommitStatuses" .Statuses "CommitStatus" .Status)}} +
    +{{end}} diff --git a/data/gitea/templates/repo/commits.tmpl b/data/gitea/templates/repo/commits.tmpl new file mode 100644 index 0000000..e6efe1f --- /dev/null +++ b/data/gitea/templates/repo/commits.tmpl @@ -0,0 +1,18 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "repo/sub_menu" .}} +
    +
    + {{template "repo/branch_dropdown" dict "root" . "ContainerClasses" "tw-mr-1"}} + + {{svg "octicon-git-branch"}} + {{ctx.Locale.Tr "repo.commit_graph"}} + +
    +
    + {{template "repo/commits_table" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/commits_list.tmpl b/data/gitea/templates/repo/commits_list.tmpl new file mode 100644 index 0000000..bb5d2a0 --- /dev/null +++ b/data/gitea/templates/repo/commits_list.tmpl @@ -0,0 +1,93 @@ +
    + + + + + + + + + + + + {{$commitRepoLink := $.RepoLink}}{{if $.CommitRepoLink}}{{$commitRepoLink = $.CommitRepoLink}}{{end}} + {{range .Commits}} + + + + + {{if .Committer}} + + {{else}} + + {{end}} + + + {{end}} + +
    {{ctx.Locale.Tr "repo.commits.author"}}{{StringUtils.ToUpper $.Repository.ObjectFormatName}}{{ctx.Locale.Tr "repo.commits.message"}}{{ctx.Locale.Tr "repo.commits.date"}}
    +
    + {{$userName := .Author.Name}} + {{if .User}} + {{if and .User.FullName DefaultShowFullName}} + {{$userName = .User.FullName}} + {{end}} + {{ctx.AvatarUtils.Avatar .User 28 "tw-mr-2"}}{{$userName}} + {{else}} + {{ctx.AvatarUtils.AvatarByEmail .Author.Email .Author.Name 28 "tw-mr-2"}} + {{$userName}} + {{end}} +
    +
    + {{$class := "ui sha label"}} + {{if .Signature}} + {{$class = (print $class " isSigned")}} + {{if .Verification.Verified}} + {{if eq .Verification.TrustStatus "trusted"}} + {{$class = (print $class " isVerified")}} + {{else if eq .Verification.TrustStatus "untrusted"}} + {{$class = (print $class " isVerifiedUntrusted")}} + {{else}} + {{$class = (print $class " isVerifiedUnmatched")}} + {{end}} + {{else if .Verification.Warning}} + {{$class = (print $class " isWarning")}} + {{end}} + {{end}} + {{$commitShaLink := ""}} + {{if $.PageIsWiki}} + {{$commitShaLink = (printf "%s/wiki/commit/%s" $commitRepoLink (PathEscape .ID.String))}} + {{else if $.PageIsPullCommits}} + {{$commitShaLink = (printf "%s/pulls/%d/commits/%s" $commitRepoLink $.Issue.Index (PathEscape .ID.String))}} + {{else if $.Reponame}} + {{$commitShaLink = (printf "%s/commit/%s" $commitRepoLink (PathEscape .ID.String))}} + {{end}} + + {{ShortSha .ID.String}} + {{if .Signature}}{{template "repo/shabox_badge" dict "root" $ "verification" .Verification}}{{end}} + + + + {{if $.PageIsWiki}} + {{.Summary | RenderEmoji $.Context}} + {{else}} + {{$commitLink:= printf "%s/commit/%s" $commitRepoLink (PathEscape .ID.String)}} + {{RenderCommitMessageLinkSubject $.Context .Message $commitLink ($.Repository.ComposeMetas ctx)}} + {{end}} + + {{if IsMultilineCommitMessage .Message}} + + {{end}} + {{template "repo/commit_statuses" dict "Status" .Status "Statuses" .Statuses}} + {{if IsMultilineCommitMessage .Message}} +
    {{RenderCommitBody $.Context .Message ($.Repository.ComposeMetas ctx)}}
    + {{end}} +
    {{TimeSince .Committer.When ctx.Locale}}{{TimeSince .Author.When ctx.Locale}} + + {{if not $.PageIsWiki}}{{/* at the moment, wiki doesn't support "view at history point*/}} + {{$viewCommitLink := printf "%s/src/commit/%s" $commitRepoLink (PathEscape .ID.String)}} + {{if $.FileName}}{{$viewCommitLink = printf "%s/%s" $viewCommitLink (PathEscapeSegments $.FileName)}}{{end}} + {{svg "octicon-file-code"}} + {{end}} +
    +
    diff --git a/data/gitea/templates/repo/commits_list_small.tmpl b/data/gitea/templates/repo/commits_list_small.tmpl new file mode 100644 index 0000000..4c67319 --- /dev/null +++ b/data/gitea/templates/repo/commits_list_small.tmpl @@ -0,0 +1,55 @@ +{{$index := 0}} +
    +{{range .comment.Commits}} + {{$tag := printf "%s-%d" $.comment.HashTag $index}} + {{$index = Eval $index "+" 1}} +
    + {{svg "octicon-git-commit"}} + {{if .User}} + {{ctx.AvatarUtils.Avatar .User 20}} + {{else}} + {{ctx.AvatarUtils.AvatarByEmail .Author.Email .Author.Name 20}} + {{end}} + + {{$commitLink:= printf "%s/commit/%s" $.comment.Issue.PullRequest.BaseRepo.Link (PathEscape .ID.String)}} + + + {{- RenderCommitMessageLinkSubject $.root.Context .Message $commitLink ($.comment.Issue.PullRequest.BaseRepo.ComposeMetas ctx) -}} + + + {{if IsMultilineCommitMessage .Message}} + + {{end}} + + + {{template "repo/commit_statuses" dict "Status" .Status "Statuses" .Statuses}} + {{$class := "ui sha label"}} + {{if .Signature}} + {{$class = (print $class " isSigned")}} + {{if .Verification.Verified}} + {{if eq .Verification.TrustStatus "trusted"}} + {{$class = (print $class " isVerified")}} + {{else if eq .Verification.TrustStatus "untrusted"}} + {{$class = (print $class " isVerifiedUntrusted")}} + {{else}} + {{$class = (print $class " isVerifiedUnmatched")}} + {{end}} + {{else if .Verification.Warning}} + {{$class = (print $class " isWarning")}} + {{end}} + {{end}} + + {{ShortSha .ID.String}} + {{if .Signature}} + {{template "repo/shabox_badge" dict "root" $.root "verification" .Verification}} + {{end}} + + +
    + {{if IsMultilineCommitMessage .Message}} +
    +		{{- RenderCommitBody $.root.Context .Message ($.comment.Issue.PullRequest.BaseRepo.ComposeMetas ctx) -}}
    +	
    + {{end}} +{{end}} +
    diff --git a/data/gitea/templates/repo/commits_search_dropdown.tmpl b/data/gitea/templates/repo/commits_search_dropdown.tmpl new file mode 100644 index 0000000..5aa3f4f --- /dev/null +++ b/data/gitea/templates/repo/commits_search_dropdown.tmpl @@ -0,0 +1,8 @@ + diff --git a/data/gitea/templates/repo/commits_table.tmpl b/data/gitea/templates/repo/commits_table.tmpl new file mode 100644 index 0000000..91fc1c2 --- /dev/null +++ b/data/gitea/templates/repo/commits_table.tmpl @@ -0,0 +1,36 @@ +

    +
    + {{if or .PageIsCommits (gt .CommitCount 0)}} + {{.CommitCount}} {{ctx.Locale.Tr "repo.commits.commits"}} + {{else if .IsNothingToCompare}} + {{ctx.Locale.Tr "repo.commits.nothing_to_compare"}} + {{else}} + {{ctx.Locale.Tr "repo.commits.no_commits" $.BaseBranch $.HeadBranch}} + {{end}} +
    + {{if .IsDiffCompare}} + + {{end}} +

    + +{{if .PageIsCommits}} +
    +
    +
    + {{template "shared/search/input" dict "Value" .Keyword "Placeholder" (ctx.Locale.Tr "search.commit_kind")}} + {{template "repo/commits_search_dropdown" .}} + {{template "shared/search/button" dict "Tooltip" (ctx.Locale.Tr "repo.commits.search.tooltip")}} +
    +
    +
    +{{end}} + +{{if and .Commits (gt .CommitCount 0)}} + {{template "repo/commits_list" .}} +{{end}} + +{{template "base/paginate" .}} diff --git a/data/gitea/templates/repo/contributors.tmpl b/data/gitea/templates/repo/contributors.tmpl new file mode 100644 index 0000000..6b8a63f --- /dev/null +++ b/data/gitea/templates/repo/contributors.tmpl @@ -0,0 +1,14 @@ +{{if .Permission.CanRead ctx.Consts.RepoUnitTypeCode}} +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/create.tmpl b/data/gitea/templates/repo/create.tmpl new file mode 100644 index 0000000..2e1de24 --- /dev/null +++ b/data/gitea/templates/repo/create.tmpl @@ -0,0 +1,221 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "new_repo"}} +

    +
    + {{template "base/alert" .}} + {{template "repo/create_helper" .}} + + {{if not .CanCreateRepo}} +
    +

    {{ctx.Locale.TrN .MaxCreationLimit "repo.form.reach_limit_of_creation_1" "repo.form.reach_limit_of_creation_n" .MaxCreationLimit}}

    +
    + {{end}} +
    + + + {{ctx.Locale.Tr "repo.owner_helper"}} +
    + +
    + + + {{ctx.Locale.Tr "repo.repo_name_helper"}} +
    +
    + +
    + {{if .IsForcedPrivate}} + + + {{else}} + + + {{end}} +
    + {{ctx.Locale.Tr "repo.visibility_description"}} +
    +
    + + +
    +
    + + +
    + +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    +
    + +
    +
    + + +
    + +
    + +
    + + + {{ctx.Locale.Tr "repo.repo_gitignore_helper_desc"}} +
    +
    + + + {{ctx.Locale.Tr "repo.license_helper_desc" "https://choosealicense.com/"}} +
    + +
    + + + {{ctx.Locale.Tr "repo.readme_helper_desc"}} +
    +
    +
    + + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.default_branch_helper"}} +
    +
    + + + {{ctx.Locale.Tr "repo.object_format_helper"}} +
    +
    + +
    + + +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/create_helper.tmpl b/data/gitea/templates/repo/create_helper.tmpl new file mode 100644 index 0000000..70c28b7 --- /dev/null +++ b/data/gitea/templates/repo/create_helper.tmpl @@ -0,0 +1,3 @@ +{{if not $.DisableMigrations}} +

    {{ctx.Locale.Tr "repo.new_repo_helper" (print AppSubUrl "/repo/migrate")}}

    +{{end}} diff --git a/data/gitea/templates/repo/diff/blob_excerpt.tmpl b/data/gitea/templates/repo/diff/blob_excerpt.tmpl new file mode 100644 index 0000000..cc22370 --- /dev/null +++ b/data/gitea/templates/repo/diff/blob_excerpt.tmpl @@ -0,0 +1,82 @@ +{{if $.IsSplitStyle}} + {{range $k, $line := $.section.Lines}} + + {{if eq .GetType 4}} + {{$expandDirection := $line.GetExpandDirection}} + +
    + {{if or (eq $expandDirection 3) (eq $expandDirection 5)}} + + {{end}} + {{if or (eq $expandDirection 3) (eq $expandDirection 4)}} + + {{end}} + {{if eq $expandDirection 2}} + + {{end}} +
    + + {{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}}{{/* + */}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}} + {{else}} + {{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}} + + {{if and $line.LeftIdx $inlineDiff.EscapeStatus.Escaped}}{{end}} + {{if $line.LeftIdx}}{{end}} + {{/* + */}}{{if $line.LeftIdx}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{else}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}} + + {{if and $line.RightIdx $inlineDiff.EscapeStatus.Escaped}}{{end}} + {{if $line.RightIdx}}{{end}} + {{/* + */}}{{if $line.RightIdx}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{else}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}} + {{end}} + + {{end}} +{{else}} + {{range $k, $line := $.section.Lines}} + + {{if eq .GetType 4}} + {{$expandDirection := $line.GetExpandDirection}} + +
    + {{if or (eq $expandDirection 3) (eq $expandDirection 5)}} + + {{end}} + {{if or (eq $expandDirection 3) (eq $expandDirection 4)}} + + {{end}} + {{if eq $expandDirection 2}} + + {{end}} +
    + + {{else}} + + + {{end}} + {{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}} + {{if $inlineDiff.EscapeStatus.Escaped}}{{end}} + + {{$inlineDiff.Content}} + + {{end}} +{{end}} diff --git a/data/gitea/templates/repo/diff/box.tmpl b/data/gitea/templates/repo/diff/box.tmpl new file mode 100644 index 0000000..bbca613 --- /dev/null +++ b/data/gitea/templates/repo/diff/box.tmpl @@ -0,0 +1,261 @@ +{{$showFileTree := (and (not .DiffNotAvailable) (gt .Diff.NumFiles 1))}} +
    +
    +
    + {{if $showFileTree}} + + + {{end}} + {{if not .DiffNotAvailable}} +
    + {{svg "octicon-diff" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.diff.stats_desc" .Diff.NumFiles .Diff.TotalAddition .Diff.TotalDeletion}} +
    + {{end}} +
    +
    + {{if and .PageIsPullFiles $.SignedUserID (not .IsArchived) (not .DiffNotAvailable)}} +
    + + +
    + {{end}} + {{template "repo/diff/whitespace_dropdown" .}} + {{template "repo/diff/options_dropdown" .}} + {{if .PageIsPullFiles}} +
    + {{/* + the following will be replaced by vue component + but this avoids any loading artifacts till the vue component is initialized + */}} + +
    + {{end}} + {{if and .PageIsPullFiles $.SignedUserID (not .IsArchived)}} + {{template "repo/diff/new_review" .}} + {{end}} +
    +
    + {{if not .DiffNotAvailable}} + {{if and .IsShowingOnlySingleCommit .PageIsPullFiles}} +
    +
    {{ctx.Locale.Tr "repo.pulls.showing_only_single_commit" (ShortSha .AfterCommitID)}} - {{ctx.Locale.Tr "repo.pulls.show_all_commits"}}
    +
    + {{else if and (not .IsShowingAllCommits) .PageIsPullFiles}} +
    +
    {{ctx.Locale.Tr "repo.pulls.showing_specified_commit_range" (ShortSha .BeforeCommitID) (ShortSha .AfterCommitID)}} - {{ctx.Locale.Tr "repo.pulls.show_all_commits"}}
    +
    + {{end}} + +
    + {{end}} +
    + {{if $showFileTree}} +
    + + {{end}} + {{if .DiffNotAvailable}} +

    {{ctx.Locale.Tr "repo.diff.data_not_available"}}

    + {{else}} +
    + {{range $i, $file := .Diff.Files}} + {{/*notice: the index of Diff.Files should not be used for element ID, because the index will be restarted from 0 when doing load-more for PRs with a lot of files*/}} + {{$blobBase := call $.GetBlobByPathForCommit $.BeforeCommit $file.OldName}} + {{$blobHead := call $.GetBlobByPathForCommit $.HeadCommit $file.Name}} + {{$sniffedTypeBase := call $.GetSniffedTypeForBlob $blobBase}} + {{$sniffedTypeHead := call $.GetSniffedTypeForBlob $blobHead}} + {{$isImage:= or (call $.IsSniffedTypeAnImage $sniffedTypeBase) (call $.IsSniffedTypeAnImage $sniffedTypeHead)}} + {{$isCsv := (call $.IsCsvFile $file)}} + {{$showFileViewToggle := or $isImage (and (not $file.IsIncomplete) $isCsv)}} + {{$isExpandable := or (gt $file.Addition 0) (gt $file.Deletion 0) $file.IsBin}} + {{$isReviewFile := and $.IsSigned $.PageIsPullFiles (not $.IsArchived) $.IsShowingAllCommits}} +
    +

    +
    + +
    + {{if $file.IsBin}} + + {{ctx.Locale.Tr "repo.diff.bin"}} + + {{else}} + {{template "repo/diff/stats" dict "file" . "root" $}} + {{end}} +
    + {{if $file.IsRenamed}}{{$file.OldName}} → {{end}}{{$file.Name}} + {{if .IsLFSFile}} ({{ctx.Locale.Tr "repo.stored_lfs"}}){{end}} + + {{if $file.IsGenerated}} + {{ctx.Locale.Tr "repo.diff.generated"}} + {{end}} + {{if $file.IsVendored}} + {{ctx.Locale.Tr "repo.diff.vendored"}} + {{end}} + {{if and $file.Mode $file.OldMode}} + {{$old := ctx.Locale.Tr ($file.ModeTranslationKey $file.OldMode)}} + {{$new := ctx.Locale.Tr ($file.ModeTranslationKey $file.Mode)}} + {{ctx.Locale.Tr "git.filemode.changed_filemode" $old $new}} + {{else if $file.Mode}} + {{ctx.Locale.Tr ($file.ModeTranslationKey $file.Mode)}} + {{end}} + +
    +
    + {{if $showFileViewToggle}} +
    + + +
    + {{end}} + {{if $file.IsProtected}} + {{ctx.Locale.Tr "repo.diff.protected"}} + {{end}} + {{if and $isReviewFile $file.HasChangedSinceLastReview}} + {{ctx.Locale.Tr "repo.pulls.has_changed_since_last_review"}} + {{end}} + {{if not (or $file.IsIncomplete $file.IsBin $file.IsSubmodule)}} + + + {{end}} + {{if and (not $file.IsSubmodule) (not $.PageIsWiki)}} + {{if $file.IsDeleted}} + {{ctx.Locale.Tr "repo.diff.view_file"}} + {{else}} + {{ctx.Locale.Tr "repo.diff.view_file"}} + {{if and $.Repository.CanEnableEditor $.CanEditFile (not $file.IsLFSFile) (not $file.IsBin)}} + {{ctx.Locale.Tr "repo.editor.edit_this_file"}} + {{end}} + {{end}} + {{end}} + {{if $isReviewFile}} + + {{end}} +
    +

    +
    +
    + {{if or $file.IsIncomplete $file.IsBin}} +
    + {{if $file.IsIncomplete}} + {{if $file.IsIncompleteLineTooLong}} + {{ctx.Locale.Tr "repo.diff.file_suppressed_line_too_long"}} + {{else}} + {{ctx.Locale.Tr "repo.diff.file_suppressed"}} + {{ctx.Locale.Tr "repo.diff.load"}} + {{end}} + {{else}} + {{ctx.Locale.Tr "repo.diff.bin_not_shown"}} + {{end}} +
    + {{else}} + + {{if $.IsSplitStyle}} + {{template "repo/diff/section_split" dict "file" . "root" $}} + {{else}} + {{template "repo/diff/section_unified" dict "file" . "root" $}} + {{end}} +
    + {{end}} +
    + {{if $showFileViewToggle}} + {{/* for image or CSV, it can have a horizontal scroll bar, there won't be review comment context menu (position absolute) which would be clipped by "overflow" */}} +
    + + {{if $isImage}} + {{template "repo/diff/image_diff" dict "file" . "root" $ "blobBase" $blobBase "blobHead" $blobHead "sniffedTypeBase" $sniffedTypeBase "sniffedTypeHead" $sniffedTypeHead}} + {{else}} + {{template "repo/diff/csv_diff" dict "file" . "root" $ "blobBase" $blobBase "blobHead" $blobHead "sniffedTypeBase" $sniffedTypeBase "sniffedTypeHead" $sniffedTypeHead}} + {{end}} +
    +
    + {{end}} +
    +
    + {{end}} + + {{if .Diff.IsIncomplete}} +
    +

    + {{ctx.Locale.Tr "repo.diff.too_many_files"}} + {{ctx.Locale.Tr "repo.diff.show_more"}} +

    +
    + {{end}} +
    + {{end}} +
    + + {{if and (not $.Repository.IsArchived) (not .DiffNotAvailable)}} + + {{end}} + {{if (not .DiffNotAvailable)}} + {{template "repo/issue/view_content/reference_issue_dialog" .}} + {{template "shared/user/block_user_dialog" .}} + {{end}} +
    diff --git a/data/gitea/templates/repo/diff/comment_form.tmpl b/data/gitea/templates/repo/diff/comment_form.tmpl new file mode 100644 index 0000000..856b3da --- /dev/null +++ b/data/gitea/templates/repo/diff/comment_form.tmpl @@ -0,0 +1,49 @@ +{{if and $.root.SignedUserID (not $.Repository.IsArchived)}} +
    + {{$.root.CsrfTokenHtml}} + + + + + + + + + + {{template "shared/combomarkdowneditor" (dict + "MarkdownPreviewUrl" (print $.root.Repository.Link "/markup") + "MarkdownPreviewContext" $.root.RepoLink + "TextareaName" "content" + "TextareaPlaceholder" (ctx.Locale.Tr "repo.diff.comment.placeholder") + "DropzoneParentContainer" "form" + "DisableAutosize" "true" + )}} + + {{if $.root.IsAttachmentEnabled}} +
    + {{template "repo/upload" $.root}} +
    + {{end}} + + +
    +{{end}} diff --git a/data/gitea/templates/repo/diff/comment_form_datahandler.tmpl b/data/gitea/templates/repo/diff/comment_form_datahandler.tmpl new file mode 100644 index 0000000..d0e4934 --- /dev/null +++ b/data/gitea/templates/repo/diff/comment_form_datahandler.tmpl @@ -0,0 +1,7 @@ +{{if $.comment}} + {{template "repo/diff/comment_form" dict "root" $.root "hidden" $.hidden "reply" $.reply "Line" $.comment.UnsignedLine "File" $.comment.TreePath "Side" $.comment.DiffSide "HasComments" true}} +{{else if $.root}} + {{template "repo/diff/comment_form" $}} +{{else}} + {{template "repo/diff/comment_form" dict "root" $}} +{{end}} diff --git a/data/gitea/templates/repo/diff/comments.tmpl b/data/gitea/templates/repo/diff/comments.tmpl new file mode 100644 index 0000000..c7f4337 --- /dev/null +++ b/data/gitea/templates/repo/diff/comments.tmpl @@ -0,0 +1,75 @@ +{{range .comments}} + +{{$createdStr:= TimeSinceUnix .CreatedUnix ctx.Locale}} +
    + {{if .OriginalAuthor}} + {{ctx.AvatarUtils.Avatar nil}} + {{else}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + {{end}} +
    +
    +
    + {{if .OriginalAuthor}} + + {{svg (MigrationIcon $.root.Repository.GetOriginalURLHostname)}} + {{.OriginalAuthor}} + + + {{ctx.Locale.Tr "repo.issues.commented_at" .HashTag $createdStr}} + + + {{if $.root.Repository.OriginalURL}} + ({{ctx.Locale.Tr "repo.migrated_from" $.root.Repository.OriginalURL $.root.Repository.GetOriginalURLHostname}}) + {{end}} + + {{else}} + + {{template "shared/user/namelink" .Poster}} + {{ctx.Locale.Tr "repo.issues.commented_at" .HashTag $createdStr}} + + {{end}} +
    +
    + {{if .Invalidated}} + {{$referenceUrl := printf "%s#%s" $.root.Issue.Link .HashTag}} + + {{ctx.Locale.Tr "repo.issues.review.outdated"}} + + {{end}} + {{if .Review}} + {{if eq .Review.Type 0}} +
    + {{ctx.Locale.Tr "repo.issues.review.pending"}} +
    + {{else}} +
    + {{ctx.Locale.Tr "repo.issues.review.review"}} +
    + {{end}} + {{end}} + {{template "repo/issue/view_content/add_reaction" dict "ActionURL" (printf "%s/comments/%d/reactions" $.root.RepoLink .ID)}} + {{template "repo/issue/view_content/context_menu" dict "ctxData" $.root "item" . "delete" true "issue" false "diff" true "IsCommentPoster" (and $.root.IsSigned (eq $.root.SignedUserID .PosterID))}} +
    +
    +
    +
    + {{if .RenderedContent}} + {{.RenderedContent}} + {{else}} + {{ctx.Locale.Tr "repo.issues.no_content"}} + {{end}} +
    +
    {{.Content}}
    +
    + {{if .Attachments}} + {{template "repo/issue/view_content/attachments" dict "Attachments" .Attachments "RenderedContent" .RenderedContent}} + {{end}} +
    + {{$reactions := .Reactions.GroupByType}} + {{if $reactions}} + {{template "repo/issue/view_content/reactions" dict "ActionURL" (printf "%s/comments/%d/reactions" $.root.RepoLink .ID) "Reactions" $reactions}} + {{end}} +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/diff/compare.tmpl b/data/gitea/templates/repo/diff/compare.tmpl new file mode 100644 index 0000000..f927501 --- /dev/null +++ b/data/gitea/templates/repo/diff/compare.tmpl @@ -0,0 +1,230 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} + {{$showDiffBox := false}} +
    +

    + {{if and $.PageIsComparePull $.IsSigned (not .Repository.IsArchived)}} + {{ctx.Locale.Tr "repo.pulls.compare_changes"}} +
    {{ctx.Locale.Tr "repo.pulls.compare_changes_desc"}}
    + {{else}} + {{ctx.Locale.Tr "action.compare_commits_general"}} + {{end}} +

    + {{$BaseCompareName := $.BaseName -}} + {{- $HeadCompareName := $.HeadRepo.OwnerName -}} + {{- if and (eq $.BaseName $.HeadRepo.OwnerName) (ne $.Repository.Name $.HeadRepo.Name) -}} + {{- $HeadCompareName = printf "%s/%s" $.HeadRepo.OwnerName $.HeadRepo.Name -}} + {{- end -}} + {{- $OwnForkCompareName := "" -}} + {{- if .OwnForkRepo -}} + {{- $OwnForkCompareName = .OwnForkRepo.OwnerName -}} + {{- end -}} + {{- $RootRepoCompareName := "" -}} + {{- if .RootRepo -}} + {{- $RootRepoCompareName = .RootRepo.OwnerName -}} + {{- if eq $.HeadRepo.OwnerName .RootRepo.OwnerName -}} + {{- $HeadCompareName = printf "%s/%s" $.HeadRepo.OwnerName $.HeadRepo.Name -}} + {{- end -}} + {{- end -}} +
    + {{svg "octicon-git-compare"}} + + {{svg "octicon-arrow-left" 16}}
    {{.CompareSeparator}}
    + +
    + + {{if .IsNothingToCompare}} + {{if and $.IsSigned $.AllowEmptyPr (not .Repository.IsArchived) .PageIsComparePull}} +
    {{ctx.Locale.Tr "repo.pulls.nothing_to_compare_and_allow_empty_pr"}}
    +
    + +
    +
    + {{template "repo/issue/new_form" .}} +
    + {{else if and .HeadIsBranch .BaseIsBranch}} +
    {{ctx.Locale.Tr "repo.pulls.nothing_to_compare"}}
    + {{else}} +
    {{ctx.Locale.Tr "repo.pulls.nothing_to_compare_have_tag"}}
    + {{end}} + {{else if and .PageIsComparePull (gt .CommitCount 0)}} + {{if .HasPullRequest}} +
    + {{template "shared/issueicon" .}} +
    + {{RenderIssueTitle $.Context .PullRequest.Issue.Title ($.Repository.ComposeMetas ctx) | RenderCodeBlock}} + #{{.PullRequest.Issue.Index}} +
    + + {{ctx.Locale.Tr "repo.pulls.view"}} + +
    + {{else}} + {{if and $.IsSigned (not .Repository.IsArchived)}} +
    + +
    + {{else if .Repository.IsArchived}} +
    + {{if .Repository.ArchivedUnix.IsZero}} + {{ctx.Locale.Tr "repo.archive.title"}} + {{else}} + {{ctx.Locale.Tr "repo.archive.title_date" (DateTime "long" .Repository.ArchivedUnix)}} + {{end}} +
    + {{end}} + {{if $.IsSigned}} +
    + {{template "repo/issue/new_form" .}} +
    + {{end}} + {{$showDiffBox = true}} + {{end}} + {{else if not .IsNothingToCompare}} + {{$showDiffBox = true}} + {{end}} +
    + + {{if $showDiffBox}} +
    + {{template "repo/commits_table" .}} + {{template "repo/diff/box" .}} +
    + {{end}} +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/diff/conversation.tmpl b/data/gitea/templates/repo/diff/conversation.tmpl new file mode 100644 index 0000000..08f6064 --- /dev/null +++ b/data/gitea/templates/repo/diff/conversation.tmpl @@ -0,0 +1,72 @@ +{{if len .comments}} + {{$comment := index .comments 0}} + {{$resolved := $comment.IsResolved}} + {{$invalid := $comment.Invalidated}} + {{$resolveDoer := $comment.ResolveDoer}} + {{$hasReview := and $comment.Review}} + {{$isReviewPending := and $hasReview (eq $comment.Review.Type 0)}} + {{$referenceUrl := printf "%s#%s" $.Issue.Link $comment.HashTag}} +
    + {{if $resolved}} +
    +
    + {{svg "octicon-check" 16 "icon tw-mr-1"}} + {{$resolveDoer.Name}} {{ctx.Locale.Tr "repo.issues.review.resolved_by"}} + {{if $invalid}} + + + {{ctx.Locale.Tr "repo.issues.review.outdated"}} + + {{end}} +
    +
    + + +
    +
    + {{end}} +
    +
    + + {{template "repo/diff/comments" dict "root" $ "comments" .comments}} + +
    +
    +
    + + +
    + {{if and $.CanMarkConversation $hasReview (not $isReviewPending)}} + + {{end}} + {{if and $.SignedUserID (not $.Repository.IsArchived)}} + + {{end}} +
    + {{template "repo/diff/comment_form_datahandler" dict "hidden" true "reply" $comment.ReviewID "root" $ "comment" $comment}} +
    +
    +{{else}} + {{template "repo/diff/conversation_outdated"}} +{{end}} diff --git a/data/gitea/templates/repo/diff/conversation_outdated.tmpl b/data/gitea/templates/repo/diff/conversation_outdated.tmpl new file mode 100644 index 0000000..c6a4bf1 --- /dev/null +++ b/data/gitea/templates/repo/diff/conversation_outdated.tmpl @@ -0,0 +1,3 @@ +
    + {{ctx.Locale.Tr "repo.issues.review.outdated_description"}} +
    diff --git a/data/gitea/templates/repo/diff/csv_diff.tmpl b/data/gitea/templates/repo/diff/csv_diff.tmpl new file mode 100644 index 0000000..0f46da3 --- /dev/null +++ b/data/gitea/templates/repo/diff/csv_diff.tmpl @@ -0,0 +1,58 @@ + + + {{$result := call .root.CreateCsvDiff .file .blobBase .blobHead}} + {{if $result.Error}} +
    {{$result.Error}}
    + {{else if $result.Sections}} + + {{range $i, $section := $result.Sections}} + + {{range $j, $row := $section.Rows}} + + {{if and (eq $i 0) (eq $j 0)}} + + {{range $j, $cell := $row.Cells}} + {{if not $cell}} + + {{else if eq $cell.Type 2}} + + {{else if eq $cell.Type 3}} + + {{else if eq $cell.Type 4}} + + {{else if eq $cell.Type 5}} + + {{else if eq $cell.Type 6}} + + {{else}} + + {{end}} + {{end}} + {{else}} + + {{range $j, $cell := $row.Cells}} + {{if not $cell}} + + {{else if eq $cell.Type 2}} + + {{else if eq $cell.Type 3}} + + {{else if eq $cell.Type 4}} + + {{else if eq $cell.Type 5}} + + {{else if eq $cell.Type 6}} + + {{else}} + + {{end}} + {{end}} + {{end}} + + {{end}} + + {{end}} +
    {{.RowIdx}}{{.LeftCell}} {{.RightCell}}{{.RightCell}}{{.LeftCell}}{{.RightCell}}{{.LeftCell}} {{.RightCell}}{{.RightCell}}{{if .RowIdx}}{{.RowIdx}}{{end}}{{.LeftCell}} {{.RightCell}}{{.RightCell}}{{.LeftCell}}{{.RightCell}}{{.LeftCell}} {{.RightCell}}{{.RightCell}}
    + {{end}} + + diff --git a/data/gitea/templates/repo/diff/escape_title.tmpl b/data/gitea/templates/repo/diff/escape_title.tmpl new file mode 100644 index 0000000..e70f402 --- /dev/null +++ b/data/gitea/templates/repo/diff/escape_title.tmpl @@ -0,0 +1,2 @@ +{{if .diff.EscapeStatus.HasInvisible}}{{ctx.Locale.Tr "repo.invisible_runes_line"}} {{end}}{{/* +*/}}{{if .diff.EscapeStatus.HasAmbiguous}}{{ctx.Locale.Tr "repo.ambiguous_runes_line"}}{{end}} diff --git a/data/gitea/templates/repo/diff/image_diff.tmpl b/data/gitea/templates/repo/diff/image_diff.tmpl new file mode 100644 index 0000000..9ad7916 --- /dev/null +++ b/data/gitea/templates/repo/diff/image_diff.tmpl @@ -0,0 +1,83 @@ +{{if or .blobBase .blobHead}} + + +
    + + + +
    +
    +
    + {{if .blobBase}} + +

    {{ctx.Locale.Tr "repo.diff.file_before"}}

    + +

    + + {{ctx.Locale.Tr "repo.diff.file_image_width"}}: +  |  + {{ctx.Locale.Tr "repo.diff.file_image_height"}}: +  |  + + {{ctx.Locale.Tr "repo.diff.file_byte_size"}}: {{FileSize .blobBase.Size}} +

    +
    + {{end}} + {{if .blobHead}} + +

    {{ctx.Locale.Tr "repo.diff.file_after"}}

    + +

    + + {{ctx.Locale.Tr "repo.diff.file_image_width"}}: +  |  + {{ctx.Locale.Tr "repo.diff.file_image_height"}}: +  |  + + {{ctx.Locale.Tr "repo.diff.file_byte_size"}}: {{FileSize .blobHead.Size}} +

    +
    + {{end}} +
    +
    + {{if and .blobBase .blobHead}} +
    +
    +
    + + + + + + + + +
    +
    +
    +
    +
    + +
    + + +
    +
    +
    + {{end}} +
    +
    + + +{{end}} diff --git a/data/gitea/templates/repo/diff/new_comment.tmpl b/data/gitea/templates/repo/diff/new_comment.tmpl new file mode 100644 index 0000000..6a71539 --- /dev/null +++ b/data/gitea/templates/repo/diff/new_comment.tmpl @@ -0,0 +1,5 @@ +
    +
    + {{template "repo/diff/comment_form_datahandler" .}} +
    +
    diff --git a/data/gitea/templates/repo/diff/new_review.tmpl b/data/gitea/templates/repo/diff/new_review.tmpl new file mode 100644 index 0000000..1b74a23 --- /dev/null +++ b/data/gitea/templates/repo/diff/new_review.tmpl @@ -0,0 +1,56 @@ +
    + + {{if $.IsShowingAllCommits}} +
    +
    +
    + {{.CsrfTokenHtml}} + +
    +
    {{ctx.Locale.Tr "repo.diff.review.header"}}
    + {{svg "octicon-x" 16}} +
    +
    + {{template "shared/combomarkdowneditor" (dict + "MarkdownPreviewUrl" (print .Repository.Link "/markup") + "MarkdownPreviewContext" .RepoLink + "TextareaName" "content" + "TextareaPlaceholder" (ctx.Locale.Tr "repo.diff.review.placeholder") + "DropzoneParentContainer" "form" + )}} +
    + {{if .IsAttachmentEnabled}} +
    + {{template "repo/upload" .}} +
    + {{end}} +
    + {{$showSelfTooltip := (and $.IsSigned ($.Issue.IsPoster $.SignedUser.ID))}} + {{if not $.Issue.IsClosed}} + {{if $showSelfTooltip}} + + + + {{else}} + + {{end}} + {{end}} + + {{if not $.Issue.IsClosed}} + {{if $showSelfTooltip}} + + + + {{else}} + + {{end}} + {{end}} +
    +
    +
    + {{end}} +
    diff --git a/data/gitea/templates/repo/diff/options_dropdown.tmpl b/data/gitea/templates/repo/diff/options_dropdown.tmpl new file mode 100644 index 0000000..09b7b80 --- /dev/null +++ b/data/gitea/templates/repo/diff/options_dropdown.tmpl @@ -0,0 +1,33 @@ + diff --git a/data/gitea/templates/repo/diff/section_code.tmpl b/data/gitea/templates/repo/diff/section_code.tmpl new file mode 100644 index 0000000..3e8303e --- /dev/null +++ b/data/gitea/templates/repo/diff/section_code.tmpl @@ -0,0 +1 @@ +{{.diff.Content}} diff --git a/data/gitea/templates/repo/diff/section_split.tmpl b/data/gitea/templates/repo/diff/section_split.tmpl new file mode 100644 index 0000000..37b42bc --- /dev/null +++ b/data/gitea/templates/repo/diff/section_split.tmpl @@ -0,0 +1,157 @@ +{{$file := .file}} +{{$blobExcerptRepoLink := or ctx.RootData.CommitRepoLink ctx.RootData.RepoLink}} + + + + + + + + + + +{{range $j, $section := $file.Sections}} + {{range $k, $line := $section.Lines}} + {{$hasmatch := ne $line.Match -1}} + {{if or (ne .GetType 2) (not $hasmatch)}} + + {{if eq .GetType 4}} + {{$expandDirection := $line.GetExpandDirection}} + +
    + {{if or (eq $expandDirection 3) (eq $expandDirection 5)}} + + {{end}} + {{if or (eq $expandDirection 3) (eq $expandDirection 4)}} + + {{end}} + {{if eq $expandDirection 2}} + + {{end}} +
    + {{$inlineDiff := $section.GetComputedInlineDiffFor $line ctx.Locale}} + {{if $inlineDiff.EscapeStatus.Escaped}}{{end}} + {{/* + */}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{/* + */}} + {{else if and (eq .GetType 3) $hasmatch}}{{/* DEL */}} + {{$match := index $section.Lines $line.Match}} + {{- $leftDiff := ""}}{{if $line.LeftIdx}}{{$leftDiff = $section.GetComputedInlineDiffFor $line ctx.Locale}}{{end}} + {{- $rightDiff := ""}}{{if $match.RightIdx}}{{$rightDiff = $section.GetComputedInlineDiffFor $match ctx.Locale}}{{end}} + + {{if $line.LeftIdx}}{{if $leftDiff.EscapeStatus.Escaped}}{{end}}{{end}} + + {{/* + */}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}}{{if $line.LeftIdx}}{{/* + */}}{{template "repo/diff/section_code" dict "diff" $leftDiff}}{{/* + */}}{{else}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}} + + {{if $match.RightIdx}}{{if $rightDiff.EscapeStatus.Escaped}}{{end}}{{end}} + {{if $match.RightIdx}}{{end}} + {{/* + */}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}}{{if $match.RightIdx}}{{/* + */}}{{template "repo/diff/section_code" dict "diff" $rightDiff}}{{/* + */}}{{else}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}} + {{else}} + {{$inlineDiff := $section.GetComputedInlineDiffFor $line ctx.Locale}} + + {{if $line.LeftIdx}}{{if $inlineDiff.EscapeStatus.Escaped}}{{end}}{{end}} + {{if $line.LeftIdx}}{{end}} + {{/* + */}}{{if and $.root.SignedUserID $.root.PageIsPullFiles (not (eq .GetType 2))}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}}{{if $line.LeftIdx}}{{/* + */}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{/* + */}}{{else}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}} + + {{if $line.RightIdx}}{{if $inlineDiff.EscapeStatus.Escaped}}{{end}}{{end}} + {{if $line.RightIdx}}{{end}} + {{/* + */}}{{if and $.root.SignedUserID $.root.PageIsPullFiles (not (eq .GetType 3))}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}}{{if $line.RightIdx}}{{/* + */}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{/* + */}}{{else}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}} + {{end}} + + {{if and (eq .GetType 3) $hasmatch}} + {{$match := index $section.Lines $line.Match}} + {{if or $line.Comments $match.Comments}} + + + {{if $line.Comments}} + {{if eq $line.GetCommentSide "previous"}} + {{template "repo/diff/conversation" dict "." $.root "comments" $line.Comments}} + {{end}} + {{end}} + {{if $match.Comments}} + {{if eq $match.GetCommentSide "previous"}} + {{template "repo/diff/conversation" dict "." $.root "comments" $match.Comments}} + {{end}} + {{end}} + + + {{if $line.Comments}} + {{if eq $line.GetCommentSide "proposed"}} + {{template "repo/diff/conversation" dict "." $.root "comments" $line.Comments}} + {{end}} + {{end}} + {{if $match.Comments}} + {{if eq $match.GetCommentSide "proposed"}} + {{template "repo/diff/conversation" dict "." $.root "comments" $match.Comments}} + {{end}} + {{end}} + + + {{end}} + {{else if $line.Comments}} + + + {{if eq $line.GetCommentSide "previous"}} + {{template "repo/diff/conversation" dict "." $.root "comments" $line.Comments}} + {{end}} + + + {{if eq $line.GetCommentSide "proposed"}} + {{template "repo/diff/conversation" dict "." $.root "comments" $line.Comments}} + {{end}} + + + {{end}} + {{end}} + {{end}} +{{end}} diff --git a/data/gitea/templates/repo/diff/section_unified.tmpl b/data/gitea/templates/repo/diff/section_unified.tmpl new file mode 100644 index 0000000..708b333 --- /dev/null +++ b/data/gitea/templates/repo/diff/section_unified.tmpl @@ -0,0 +1,73 @@ +{{$file := .file}} +{{$blobExcerptRepoLink := or ctx.RootData.CommitRepoLink ctx.RootData.RepoLink}} + + + + + + + +{{range $j, $section := $file.Sections}} + {{range $k, $line := $section.Lines}} + + {{if eq .GetType 4}} + {{if $.root.AfterCommitID}} + {{$expandDirection := $line.GetExpandDirection}} + +
    + {{if or (eq $expandDirection 3) (eq $expandDirection 5)}} + + {{end}} + {{if or (eq $expandDirection 3) (eq $expandDirection 4)}} + + {{end}} + {{if eq $expandDirection 2}} + + {{end}} +
    + + {{else}} + {{/* for code file preview page or comment diffs on pull comment pages, do not show the expansion arrows */}} + + {{end}} + {{else}} + + + {{end}} + {{$inlineDiff := $section.GetComputedInlineDiffFor $line ctx.Locale -}} + + {{- if $inlineDiff.EscapeStatus.Escaped -}} + + {{- end -}} + + + {{if eq .GetType 4}} + {{/* + */}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{/* + */}} + {{else}} + {{/* + */}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/* + */}}{{/* + */}}{{end}}{{/* + */}}{{template "repo/diff/section_code" dict "diff" $inlineDiff}}{{/* + */}} + {{end}} + + {{if $line.Comments}} + + + {{template "repo/diff/conversation" dict "." $.root "comments" $line.Comments}} + + + {{end}} + {{end}} +{{end}} diff --git a/data/gitea/templates/repo/diff/stats.tmpl b/data/gitea/templates/repo/diff/stats.tmpl new file mode 100644 index 0000000..d0dff1b --- /dev/null +++ b/data/gitea/templates/repo/diff/stats.tmpl @@ -0,0 +1,5 @@ +{{Eval .file.Addition "+" .file.Deletion}} + + {{/* if the denominator is zero, then the float result is "width: NaNpx", as before, it just works */}} +
    +
    diff --git a/data/gitea/templates/repo/diff/whitespace_dropdown.tmpl b/data/gitea/templates/repo/diff/whitespace_dropdown.tmpl new file mode 100644 index 0000000..c54de16 --- /dev/null +++ b/data/gitea/templates/repo/diff/whitespace_dropdown.tmpl @@ -0,0 +1,30 @@ + +{{if .IsSplitStyle}}{{svg "gitea-join"}}{{else}}{{svg "gitea-split"}}{{end}} diff --git a/data/gitea/templates/repo/editor/cherry_pick.tmpl b/data/gitea/templates/repo/editor/cherry_pick.tmpl new file mode 100644 index 0000000..f9c9eef --- /dev/null +++ b/data/gitea/templates/repo/editor/cherry_pick.tmpl @@ -0,0 +1,30 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} +
    + {{.CsrfTokenHtml}} + + + +
    + +
    + {{template "repo/editor/commit_form" .}} +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/editor/commit_form.tmpl b/data/gitea/templates/repo/editor/commit_form.tmpl new file mode 100644 index 0000000..21ef632 --- /dev/null +++ b/data/gitea/templates/repo/editor/commit_form.tmpl @@ -0,0 +1,74 @@ +
    + {{ctx.AvatarUtils.Avatar .SignedUser 48 "commit-avatar"}} +
    +

    {{- if .CanCommitToBranch.WillSign}} + {{svg "octicon-lock" 24}} + {{ctx.Locale.Tr "repo.editor.commit_signed_changes"}} + {{- else}} + {{svg "octicon-unlock" 24}} + {{ctx.Locale.Tr "repo.editor.commit_changes"}} + {{- end}}

    +
    + +
    +
    + +
    +
    +
    + + +
    +
    +
    +
    +
    + + +
    +
    + {{if and (not .Repository.IsEmpty) (not .IsEditingFileOnly)}} +
    +
    + {{if .CanCreatePullRequest}} + + {{else}} + + {{end}} + +
    +
    +
    +
    + {{svg "octicon-git-branch"}} + + +
    +
    + {{end}} +
    +
    + + {{ctx.Locale.Tr "repo.editor.cancel"}} +
    diff --git a/data/gitea/templates/repo/editor/delete.tmpl b/data/gitea/templates/repo/editor/delete.tmpl new file mode 100644 index 0000000..2c0c2fc --- /dev/null +++ b/data/gitea/templates/repo/editor/delete.tmpl @@ -0,0 +1,13 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} +
    + {{.CsrfTokenHtml}} + + {{template "repo/editor/commit_form" .}} +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/editor/diff_preview.tmpl b/data/gitea/templates/repo/editor/diff_preview.tmpl new file mode 100644 index 0000000..fd543a5 --- /dev/null +++ b/data/gitea/templates/repo/editor/diff_preview.tmpl @@ -0,0 +1,17 @@ +{{if .File}} +
    +
    +
    + + + {{template "repo/diff/section_unified" dict "file" .File "root" $}} + +
    +
    +
    +
    +{{else}} +
    + {{ctx.Locale.Tr "repo.editor.no_changes_to_show"}} +
    +{{end}} diff --git a/data/gitea/templates/repo/editor/edit.tmpl b/data/gitea/templates/repo/editor/edit.tmpl new file mode 100644 index 0000000..e990177 --- /dev/null +++ b/data/gitea/templates/repo/editor/edit.tmpl @@ -0,0 +1,78 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} +
    + {{.CsrfTokenHtml}} + + +
    + +
    + + {{template "repo/editor/commit_form" .}} +
    +
    + +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/editor/patch.tmpl b/data/gitea/templates/repo/editor/patch.tmpl new file mode 100644 index 0000000..a29021f --- /dev/null +++ b/data/gitea/templates/repo/editor/patch.tmpl @@ -0,0 +1,57 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} +
    + {{.CsrfTokenHtml}} + + +
    + +
    + + {{template "repo/editor/commit_form" .}} +
    +
    + + +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/editor/upload.tmpl b/data/gitea/templates/repo/editor/upload.tmpl new file mode 100644 index 0000000..5725020 --- /dev/null +++ b/data/gitea/templates/repo/editor/upload.tmpl @@ -0,0 +1,33 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} +
    + {{.CsrfTokenHtml}} +
    + +
    +
    + {{template "repo/upload" .}} +
    + {{template "repo/editor/commit_form" .}} +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/empty.tmpl b/data/gitea/templates/repo/empty.tmpl new file mode 100644 index 0000000..cb2a5ba --- /dev/null +++ b/data/gitea/templates/repo/empty.tmpl @@ -0,0 +1,82 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +
    +
    + {{template "base/alert" .}} + {{if .Repository.IsArchived}} +
    + {{if .Repository.ArchivedUnix.IsZero}} + {{ctx.Locale.Tr "repo.archive.title"}} + {{else}} + {{ctx.Locale.Tr "repo.archive.title_date" (DateTime "long" .Repository.ArchivedUnix)}} + {{end}} +
    + {{end}} + {{if .Repository.IsBroken}} +
    + {{ctx.Locale.Tr "repo.broken_message"}} +
    + {{else if .CanWriteCode}} +

    + {{ctx.Locale.Tr "repo.quick_guide"}} +

    +
    +
    +

    {{ctx.Locale.Tr "repo.clone_this_repo"}} {{ctx.Locale.Tr "repo.clone_helper" "http://git-scm.com/book/en/Git-Basics-Getting-a-Git-Repository"}}

    + +
    + {{if and .CanWriteCode (not .Repository.IsArchived)}} + + {{ctx.Locale.Tr "repo.editor.new_file"}} + + {{if .RepositoryUploadEnabled}} + + {{ctx.Locale.Tr "repo.editor.upload_file"}} + + {{end}} + {{end}} +
    + {{template "repo/clone_buttons" .}} +
    +
    +
    + + {{if not .Repository.IsArchived}} +
    + +
    +

    {{ctx.Locale.Tr "repo.create_new_repo_command"}}

    +
    +
    touch README.md
    +git init
    +{{if ne .Repository.DefaultBranch "master"}}git checkout -b {{.Repository.DefaultBranch}}{{end}}
    +git add README.md
    +git commit -m "first commit"
    +git remote add origin {{$.CloneButtonOriginLink.HTTPS}}
    +git push -u origin {{.Repository.DefaultBranch}}
    +
    +
    +
    + +
    +

    {{ctx.Locale.Tr "repo.push_exist_repo"}}

    +
    +
    git remote add origin {{$.CloneButtonOriginLink.HTTPS}}
    +git push -u origin {{.Repository.DefaultBranch}}
    +
    +
    + {{end}} + {{else}} +
    + {{ctx.Locale.Tr "repo.empty_message"}} +
    + {{end}} + {{template "repo/clone_script" .}} +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/file_info.tmpl b/data/gitea/templates/repo/file_info.tmpl new file mode 100644 index 0000000..823cf1b --- /dev/null +++ b/data/gitea/templates/repo/file_info.tmpl @@ -0,0 +1,48 @@ +
    + {{if .FileIsSymlink}} +
    + {{ctx.Locale.Tr "repo.symbolic_link"}} +
    + {{end}} + {{if .NumLinesSet}}{{/* Explicit attribute needed to show 0 line changes */}} +
    + {{.NumLines}} {{ctx.Locale.TrN .NumLines "repo.line" "repo.lines"}} +
    + {{end}} + {{if .FileSize}} +
    + {{FileSize .FileSize}}{{if .IsLFSFile}} ({{ctx.Locale.Tr "repo.stored_lfs"}}){{end}} +
    + {{end}} + {{if .LFSLock}} +
    + {{svg "octicon-lock" 16 "tw-mr-1"}} + {{.LFSLockOwner}} +
    + {{end}} + {{if .LexerName}} +
    + {{.LexerName}} +
    + {{end}} + {{if .IsExecutable}} +
    + {{ctx.Locale.Tr "repo.executable_file"}} +
    + {{end}} + {{if .IsVendored}} +
    + {{ctx.Locale.Tr "repo.vendored"}} +
    + {{end}} + {{if .IsGenerated}} +
    + {{ctx.Locale.Tr "repo.generated"}} +
    + {{end}} + {{if .ImageSize}} +
    + {{.ImageSize}} +
    + {{end}} +
    diff --git a/data/gitea/templates/repo/find/files.tmpl b/data/gitea/templates/repo/find/files.tmpl new file mode 100644 index 0000000..548ce2f --- /dev/null +++ b/data/gitea/templates/repo/find/files.tmpl @@ -0,0 +1,21 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +
    + {{.RepoName}} + / +
    + +
    +
    + + + +
    +
    +

    {{ctx.Locale.Tr "repo.find_file.no_matching"}}

    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/forks.tmpl b/data/gitea/templates/repo/forks.tmpl new file mode 100644 index 0000000..412c59b --- /dev/null +++ b/data/gitea/templates/repo/forks.tmpl @@ -0,0 +1,18 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +

    + {{ctx.Locale.Tr "repo.forks"}} +

    + {{range .Forks}} +
    + {{ctx.AvatarUtils.Avatar .Owner}} + {{.Owner.Name}} / {{.Name}} +
    + {{end}} +
    + + {{template "base/paginate" .}} +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/graph.tmpl b/data/gitea/templates/repo/graph.tmpl new file mode 100644 index 0000000..9eb4bd4 --- /dev/null +++ b/data/gitea/templates/repo/graph.tmpl @@ -0,0 +1,62 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +
    +

    + {{ctx.Locale.Tr "repo.commit_graph"}} +
    + + + +
    +

    +
    +
    + {{template "repo/graph/svgcontainer" .}} + {{template "repo/graph/commits" .}} +
    +
    +
    + +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/graph/commits.tmpl b/data/gitea/templates/repo/graph/commits.tmpl new file mode 100644 index 0000000..a90c530 --- /dev/null +++ b/data/gitea/templates/repo/graph/commits.tmpl @@ -0,0 +1,79 @@ +
    + +
    diff --git a/data/gitea/templates/repo/graph/div.tmpl b/data/gitea/templates/repo/graph/div.tmpl new file mode 100644 index 0000000..c0bd4e2 --- /dev/null +++ b/data/gitea/templates/repo/graph/div.tmpl @@ -0,0 +1,7 @@ +
    + {{template "repo/graph/svgcontainer" .}} + {{template "repo/graph/commits" .}} + +
    diff --git a/data/gitea/templates/repo/graph/svgcontainer.tmpl b/data/gitea/templates/repo/graph/svgcontainer.tmpl new file mode 100644 index 0000000..99c3c87 --- /dev/null +++ b/data/gitea/templates/repo/graph/svgcontainer.tmpl @@ -0,0 +1,24 @@ +
    + + {{range $flowid, $flow := .Graph.Flows}} + + + {{range $flow.Commits}} + + {{end}} + + {{end}} + +
    diff --git a/data/gitea/templates/repo/header.tmpl b/data/gitea/templates/repo/header.tmpl new file mode 100644 index 0000000..dab4614 --- /dev/null +++ b/data/gitea/templates/repo/header.tmpl @@ -0,0 +1,222 @@ +
    +{{ if .IsSigned }} +{{with .Repository}} +
    + +
    +
    +
    + {{template "repo/icon" .}} +
    + +
    + {{if .IsArchived}} + {{ctx.Locale.Tr "repo.desc.archived"}} +
    {{svg "octicon-archive" 18}}
    + {{end}} + {{if .IsPrivate}} + {{ctx.Locale.Tr "repo.desc.private"}} +
    {{svg "octicon-lock" 18}}
    + {{else}} + {{if .Owner.Visibility.IsPrivate}} + {{ctx.Locale.Tr "repo.desc.internal"}} +
    {{svg "octicon-shield-lock" 18}}
    + {{end}} + {{end}} + {{if .IsTemplate}} + {{ctx.Locale.Tr "repo.desc.template"}} +
    {{svg "octicon-repo-template" 18}}
    + {{end}} + {{if eq .ObjectFormatName "sha256"}} + {{ctx.Locale.Tr "repo.desc.sha256"}} + {{end}} +
    +
    + {{if not (or .IsBeingCreated .IsBroken)}} +
    + {{if $.RepoTransfer}} +
    + {{$.CsrfTokenHtml}} +
    + +
    +
    +
    + {{$.CsrfTokenHtml}} +
    + +
    +
    + {{end}} + {{if $.EnableFeed}} + {{/* An extra div-element is not necessary here, as this button does not secretly contain two buttons. */}} + + {{svg "octicon-rss" 16}} + + {{end}} + {{template "repo/watch_unwatch" $}} + {{if not $.DisableStars}} + {{template "repo/star_unstar" $}} + {{end}} + {{if and (not .IsEmpty) ($.Permission.CanRead ctx.Consts.RepoUnitTypeCode)}} + + + {{end}} +
    + {{end}} +
    + {{if $.PullMirror}} +
    + {{ctx.Locale.Tr "repo.mirror_from"}} + {{$.PullMirror.RemoteAddress}} + {{if $.PullMirror.UpdatedUnix}}{{ctx.Locale.Tr "repo.mirror_sync"}} {{TimeSinceUnix $.PullMirror.UpdatedUnix ctx.Locale}}{{end}} +
    + {{end}} + {{if .IsFork}}
    {{ctx.Locale.Tr "repo.forked_from"}} {{.BaseRepo.FullName}}
    {{end}} + {{if .IsGenerated}}
    {{ctx.Locale.Tr "repo.generated_from"}} {{(.TemplateRepo ctx).FullName}}
    {{end}} +
    +{{end}} +
    + + {{if not (or .Repository.IsBeingCreated .Repository.IsBroken)}} +
    + {{if .Permission.CanRead ctx.Consts.RepoUnitTypeCode}} + + {{svg "octicon-code"}} {{ctx.Locale.Tr "repo.code"}} + + {{end}} + + {{if .Permission.CanRead ctx.Consts.RepoUnitTypeIssues}} + + {{svg "octicon-issue-opened"}} {{ctx.Locale.Tr "repo.issues"}} + {{if .Repository.NumOpenIssues}} + {{CountFmt .Repository.NumOpenIssues}} + {{end}} + + {{end}} + + {{if .Permission.CanRead ctx.Consts.RepoUnitTypeExternalTracker}} + + {{svg "octicon-link-external"}} {{ctx.Locale.Tr "repo.issues"}} + + {{end}} + + {{if and .IsSigned .Repository.CanEnablePulls (.Permission.CanRead ctx.Consts.RepoUnitTypePullRequests)}} + + {{svg "octicon-git-pull-request"}} {{ctx.Locale.Tr "repo.pulls"}} + {{if .Repository.NumOpenPulls}} + {{CountFmt .Repository.NumOpenPulls}} + {{end}} + + {{end}} + + {{if and .IsSigned .EnableActions (not .UnitActionsGlobalDisabled) (.Permission.CanRead ctx.Consts.RepoUnitTypeActions)}} + + {{svg "octicon-play"}} {{ctx.Locale.Tr "actions.actions"}} + {{if .Repository.NumOpenActionRuns}} + {{CountFmt .Repository.NumOpenActionRuns}} + {{end}} + + {{end}} + + {{if and .IsSigned (.Permission.CanRead ctx.Consts.RepoUnitTypePackages)}} + + {{svg "octicon-package"}} {{ctx.Locale.Tr "packages.title"}} + + {{end}} + {{ if .IsSigned }} + {{$projectsUnit := .Repository.MustGetUnit $.Context ctx.Consts.RepoUnitTypeProjects}} + {{if and (not .UnitProjectsGlobalDisabled) (.Permission.CanRead ctx.Consts.RepoUnitTypeProjects) ($projectsUnit.ProjectsConfig.IsProjectsAllowed "repo")}} + {{ end}} + + {{svg "octicon-project"}} {{ctx.Locale.Tr "repo.project_board"}} + {{if .Repository.NumOpenProjects}} + {{CountFmt .Repository.NumOpenProjects}} + {{end}} + + {{end}} + + + {{if and (.Permission.CanReadAny ctx.Consts.RepoUnitTypePullRequests ctx.Consts.RepoUnitTypeIssues ctx.Consts.RepoUnitTypeReleases) (not .IsEmptyRepo)}} + {{ if false }} + + {{svg "octicon-pulse"}} {{ctx.Locale.Tr "repo.activity"}} + + {{end}} + {{end}} + + {{template "custom/extra_tabs" .}} + + {{if .Permission.IsAdmin}} + + + {{svg "octicon-tools"}} {{ctx.Locale.Tr "repo.settings"}} + + {{end}} +
    + {{else if .Permission.IsAdmin}} + + {{end}} +
    +
    +
    +
    +{{ end }} diff --git a/data/gitea/templates/repo/home.tmpl b/data/gitea/templates/repo/home.tmpl new file mode 100644 index 0000000..41b1068 --- /dev/null +++ b/data/gitea/templates/repo/home.tmpl @@ -0,0 +1,177 @@ +{{template "base/head" .}} +
    + + {{template "repo/header" .}} +
    + + {{template "base/alert" .}} + {{template "repo/code/recently_pushed_new_branches" .}} + {{if and false (not .HideRepoInfo) (not .IsBlame)}} +
    + {{- $description := .Repository.DescriptionHTML ctx -}} + {{if $description}}{{$description | RenderCodeBlock}}{{end}} + {{if .Repository.Website}}{{.Repository.Website}}{{end}} +
    +
    + {{/* it should match the code in issue-home.js */}} + {{range .Topics}}{{.Name}}{{end}} + {{if and .Permission.IsAdmin (not .Repository.IsArchived)}}{{end}} +
    + {{end}} + {{ if and (not .HideRepoInfo) (not .IsBlame)}} + +
    + Source files of this project at buttom of page. All source is under MIT license if no LICENSE file in list. + +
    + {{ end }} + + {{if and .Permission.IsAdmin (not .Repository.IsArchived)}} +
    + +
    + + +
    +
    + {{end}} + {{if .Repository.IsArchived}} +
    + {{if .Repository.ArchivedUnix.IsZero}} + {{ctx.Locale.Tr "repo.archive.title"}} + {{else}} + {{ctx.Locale.Tr "repo.archive.title_date" (DateTime "long" .Repository.ArchivedUnix)}} + {{end}} +
    + {{end}} + + + {{$n := len .TreeNames}} + {{$l := Eval $n "-" 1}} + + {{if .IsViewFile}} + {{template "repo/view_file" .}} + {{else if .IsBlame}} + {{template "repo/blame" .}} + {{else}}{{/* IsViewDirectory */}} + +
    + {{template "repo/view_list" .}} +
    + {{end}} + + {{ if .IsSigned }} + {{template "repo/sub_menu" .}} + {{ end }} + {{$isHomepage := (eq $n 0)}} +
    +
    + {{template "repo/branch_dropdown" dict "root" . "ContainerClasses" "tw-mr-1"}} + {{if and .CanCompareOrPull .IsViewBranch (not .Repository.IsArchived)}} + {{$cmpBranch := ""}} + {{if ne .Repository.ID .BaseRepo.ID}} + {{$cmpBranch = printf "%s/%s:" (.Repository.OwnerName|PathEscape) (.Repository.Name|PathEscape)}} + {{end}} + {{$cmpBranch = print $cmpBranch (.BranchName|PathEscapeSegments)}} + {{$compareLink := printf "%s/compare/%s...%s" .BaseRepo.Link (.BaseRepo.DefaultBranch|PathEscapeSegments) $cmpBranch}} + + {{svg "octicon-git-pull-request"}} + + {{end}} + + {{if $isHomepage}} + {{ctx.Locale.Tr "repo.find_file.go_to_file"}} + {{end}} + + {{if and .CanWriteCode .IsViewBranch (not .Repository.IsMirror) (not .Repository.IsArchived) (not .IsViewFile)}} + + {{end}} + + {{if and $isHomepage (.Repository.IsTemplate)}} + + {{ctx.Locale.Tr "repo.use_template"}} + + {{end}} + {{if $isHomepage}} + {{/* only show the "code search" on the repo home page, it only does global search, + so do not show it when viewing file or directory to avoid misleading users (it doesn't search in a directory) */}} +
    +
    + + {{template "shared/search/button"}} +
    +
    + {{else}} + + {{StringUtils.EllipsisString .Repository.Name 30}} + {{- range $i, $v := .TreeNames -}} + / + {{- if eq $i $l -}} + {{$v}} + {{- else -}} + {{$p := index $.Paths $i}}{{$v}} + {{- end -}} + {{- end -}} + + {{end}} +
    +
    + + {{if $isHomepage}} +
    + {{template "repo/clone_buttons" .}} + + {{template "repo/clone_script" .}}{{/* the script will update `.js-clone-url` and related elements */}} +
    + {{template "repo/cite/cite_modal" .}} + {{end}} + {{if and (not $isHomepage) (not .IsViewFile) (not .IsBlame)}}{{/* IsViewDirectory (not home), TODO: split the templates, avoid using "if" tricks */}} + + {{svg "octicon-history" 16 "tw-mr-2"}}{{ctx.Locale.Tr "repo.file_history"}} + + {{end}} +
    +
    + +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/icon.tmpl b/data/gitea/templates/repo/icon.tmpl new file mode 100644 index 0000000..e5e0bd6 --- /dev/null +++ b/data/gitea/templates/repo/icon.tmpl @@ -0,0 +1,10 @@ +{{$avatarLink := (.RelAvatarLink ctx)}} +{{if $avatarLink}} + {{.FullName}} +{{else if $.IsMirror}} + {{svg "octicon-mirror" 24}} +{{else if $.IsFork}} + {{svg "octicon-repo-forked" 24}} +{{else}} + {{svg "octicon-repo" 24}} +{{end}} diff --git a/data/gitea/templates/repo/issue/branch_selector_field.tmpl b/data/gitea/templates/repo/issue/branch_selector_field.tmpl new file mode 100644 index 0000000..5793a8b --- /dev/null +++ b/data/gitea/templates/repo/issue/branch_selector_field.tmpl @@ -0,0 +1,49 @@ +{{if and (not .Issue.IsPull) (not .PageIsComparePull)}} + + + +
    +{{end}} diff --git a/data/gitea/templates/repo/issue/card.tmpl b/data/gitea/templates/repo/issue/card.tmpl new file mode 100644 index 0000000..4c22c28 --- /dev/null +++ b/data/gitea/templates/repo/issue/card.tmpl @@ -0,0 +1,78 @@ +{{with .Issue}} + {{if eq $.Page.Project.CardType 1}}{{/* Images and Text*/}} + {{$attachments := index $.Page.issuesAttachmentMap .ID}} + {{if $attachments}} +
    + {{range $attachments}} + {{.Name}} + {{end}} +
    + {{end}} + {{end}} +
    +
    +
    + {{template "shared/issueicon" .}} +
    + {{.Title | RenderEmoji ctx | RenderCodeBlock}} + {{if and $.isPinnedIssueCard $.Page.IsRepoAdmin}} + + {{svg "octicon-x" 16}} + + {{end}} +
    +
    + + {{if not $.Page.Repository}}{{.Repo.FullName}}{{end}}#{{.Index}} + {{$timeStr := TimeSinceUnix .GetLastEventTimestamp ctx.Locale}} + {{if .OriginalAuthor}} + {{ctx.Locale.Tr .GetLastEventLabelFake $timeStr .OriginalAuthor}} + {{else if gt .Poster.ID 0}} + {{ctx.Locale.Tr .GetLastEventLabel $timeStr .Poster.HomeLink .Poster.GetDisplayName}} + {{else}} + {{ctx.Locale.Tr .GetLastEventLabelFake $timeStr .Poster.GetDisplayName}} + {{end}} + +
    + {{if .MilestoneID}} + + {{end}} + {{if $.Page.LinkedPRs}} + {{range index $.Page.LinkedPRs .ID}} + + {{end}} + {{end}} + {{$tasks := .GetTasks}} + {{if gt $tasks 0}} +
    + {{svg "octicon-checklist" 16 "tw-mr-1 tw-align-middle"}} + {{.GetTasksDone}} / {{$tasks}} +
    + {{end}} +
    + + {{if or .Labels .Assignees}} +
    +
    + {{range .Labels}} + {{RenderLabel ctx ctx.Locale .}} + {{end}} +
    +
    + {{range .Assignees}} + {{ctx.AvatarUtils.Avatar . 28}} + {{end}} +
    +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/repo/issue/choose.tmpl b/data/gitea/templates/repo/issue/choose.tmpl new file mode 100644 index 0000000..38cf9e4 --- /dev/null +++ b/data/gitea/templates/repo/issue/choose.tmpl @@ -0,0 +1,59 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} +
    + {{template "repo/issue/navbar" .}} +
    +
    + {{range .IssueTemplates}} +
    +
    +
    + {{.Name}} +
    {{.About}} +
    + +
    +
    + {{end}} + {{range .IssueConfig.ContactLinks}} + + {{end}} + {{if .IssueConfig.BlankIssuesEnabled}} +
    +
    +
    + {{ctx.Locale.Tr "repo.issues.choose.blank"}} +
    {{ctx.Locale.Tr "repo.issues.choose.blank_about"}} +
    + +
    +
    + {{end}} + {{- if .IssueConfigError}}{{/* normal warning flash makes problems here*/}} +
    +
    +
    {{ctx.Locale.Tr "repo.issues.choose.invalid_config"}}
    +
    {{.IssueConfigError}}
    +
    +
    + {{end}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/issue/comment_tab.tmpl b/data/gitea/templates/repo/issue/comment_tab.tmpl new file mode 100644 index 0000000..4197ea4 --- /dev/null +++ b/data/gitea/templates/repo/issue/comment_tab.tmpl @@ -0,0 +1,21 @@ +{{$textareaContent := .BodyQuery}} +{{if not $textareaContent}}{{$textareaContent = .IssueTemplate}}{{end}} +{{if not $textareaContent}}{{$textareaContent = .PullRequestTemplate}}{{end}} +{{if not $textareaContent}}{{$textareaContent = .content}}{{end}} + +
    + {{template "shared/combomarkdowneditor" (dict + "MarkdownPreviewUrl" (print .Repository.Link "/markup") + "MarkdownPreviewContext" .RepoLink + "TextareaName" "content" + "TextareaContent" $textareaContent + "TextareaPlaceholder" (ctx.Locale.Tr "repo.diff.comment.placeholder") + "DropzoneParentContainer" "form, .ui.form" + )}} +
    + +{{if .IsAttachmentEnabled}} +
    + {{template "repo/upload" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/issue/fields/checkboxes.tmpl b/data/gitea/templates/repo/issue/fields/checkboxes.tmpl new file mode 100644 index 0000000..531f401 --- /dev/null +++ b/data/gitea/templates/repo/issue/fields/checkboxes.tmpl @@ -0,0 +1,14 @@ +
    + {{template "repo/issue/fields/header" .}} + {{range $i, $opt := .item.Attributes.options}} +
    +
    + + +
    + {{if $opt.required}} + + {{end}} +
    + {{end}} +
    diff --git a/data/gitea/templates/repo/issue/fields/dropdown.tmpl b/data/gitea/templates/repo/issue/fields/dropdown.tmpl new file mode 100644 index 0000000..26505f5 --- /dev/null +++ b/data/gitea/templates/repo/issue/fields/dropdown.tmpl @@ -0,0 +1,17 @@ +
    + {{template "repo/issue/fields/header" .}} + {{/* FIXME: required validation */}} + +
    diff --git a/data/gitea/templates/repo/issue/fields/header.tmpl b/data/gitea/templates/repo/issue/fields/header.tmpl new file mode 100644 index 0000000..6034fed --- /dev/null +++ b/data/gitea/templates/repo/issue/fields/header.tmpl @@ -0,0 +1,6 @@ +{{if .item.Attributes.label}} +

    {{.item.Attributes.label}}{{if .item.Validations.required}}{{end}}

    +{{end}} +{{if .item.Attributes.description}} + {{RenderMarkdownToHtml .Context .item.Attributes.description}} +{{end}} diff --git a/data/gitea/templates/repo/issue/fields/input.tmpl b/data/gitea/templates/repo/issue/fields/input.tmpl new file mode 100644 index 0000000..039f9a9 --- /dev/null +++ b/data/gitea/templates/repo/issue/fields/input.tmpl @@ -0,0 +1,4 @@ +
    + {{template "repo/issue/fields/header" .}} + +
    diff --git a/data/gitea/templates/repo/issue/fields/markdown.tmpl b/data/gitea/templates/repo/issue/fields/markdown.tmpl new file mode 100644 index 0000000..934699e --- /dev/null +++ b/data/gitea/templates/repo/issue/fields/markdown.tmpl @@ -0,0 +1,3 @@ +
    +
    {{RenderMarkdownToHtml .Context .item.Attributes.value}}
    +
    diff --git a/data/gitea/templates/repo/issue/fields/textarea.tmpl b/data/gitea/templates/repo/issue/fields/textarea.tmpl new file mode 100644 index 0000000..3ad69e1 --- /dev/null +++ b/data/gitea/templates/repo/issue/fields/textarea.tmpl @@ -0,0 +1,24 @@ +{{$useMarkdownEditor := not .item.Attributes.render}} +
    + {{template "repo/issue/fields/header" .}} + + {{/* the real form element to provide the value */}} + + + {{if $useMarkdownEditor}} + {{template "shared/combomarkdowneditor" (dict + "ContainerClasses" "tw-hidden" + "MarkdownPreviewUrl" (print .root.RepoLink "/markup") + "MarkdownPreviewContext" .root.RepoLink + "TextareaContent" .item.Attributes.value + "TextareaPlaceholder" .item.Attributes.placeholder + "DropzoneParentContainer" ".combo-editor-dropzone" + )}} + + {{if .root.IsAttachmentEnabled}} +
    + {{template "repo/upload" .root}} +
    + {{end}} + {{end}} +
    diff --git a/data/gitea/templates/repo/issue/filter_actions.tmpl b/data/gitea/templates/repo/issue/filter_actions.tmpl new file mode 100644 index 0000000..56ae7dc --- /dev/null +++ b/data/gitea/templates/repo/issue/filter_actions.tmpl @@ -0,0 +1,128 @@ + + diff --git a/data/gitea/templates/repo/issue/filter_list.tmpl b/data/gitea/templates/repo/issue/filter_list.tmpl new file mode 100644 index 0000000..c6de497 --- /dev/null +++ b/data/gitea/templates/repo/issue/filter_list.tmpl @@ -0,0 +1,206 @@ + + + +{{if not .Milestone}} + + +{{end}} + + + + + + + + + + +{{if .IsSigned}} + + +{{end}} + + + diff --git a/data/gitea/templates/repo/issue/filters.tmpl b/data/gitea/templates/repo/issue/filters.tmpl new file mode 100644 index 0000000..06e7c1a --- /dev/null +++ b/data/gitea/templates/repo/issue/filters.tmpl @@ -0,0 +1,26 @@ +
    +
    + {{if and $.CanWriteIssuesOrPulls .Issues}} + + {{end}} + {{template "repo/issue/openclose" .}} + + {{if .TotalTrackedTime}} + + {{end}} +
    +
    + +
    +
    diff --git a/data/gitea/templates/repo/issue/label_precolors.tmpl b/data/gitea/templates/repo/issue/label_precolors.tmpl new file mode 100644 index 0000000..8000766 --- /dev/null +++ b/data/gitea/templates/repo/issue/label_precolors.tmpl @@ -0,0 +1,22 @@ +
    +
    + + + + + + + + +
    +
    + + + + + + + + +
    +
    diff --git a/data/gitea/templates/repo/issue/labels.tmpl b/data/gitea/templates/repo/issue/labels.tmpl new file mode 100644 index 0000000..230777e --- /dev/null +++ b/data/gitea/templates/repo/issue/labels.tmpl @@ -0,0 +1,22 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +
    + {{template "repo/issue/navbar" .}} + {{if and (or .CanWriteIssues .CanWritePulls) (not .Repository.IsArchived)}} + + {{end}} +
    + {{if and (or .CanWriteIssues .CanWritePulls) (not .Repository.IsArchived)}} + {{template "repo/issue/labels/label_new" .}} + {{end}} + {{template "base/alert" .}} + {{template "repo/issue/labels/label_list" .}} +
    +
    + +{{if and (or .CanWriteIssues .CanWritePulls) (not .Repository.IsArchived)}} + {{template "repo/issue/labels/edit_delete_label" .}} +{{end}} +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/issue/labels/edit_delete_label.tmpl b/data/gitea/templates/repo/issue/labels/edit_delete_label.tmpl new file mode 100644 index 0000000..fcf6921 --- /dev/null +++ b/data/gitea/templates/repo/issue/labels/edit_delete_label.tmpl @@ -0,0 +1,72 @@ + + + diff --git a/data/gitea/templates/repo/issue/labels/label.tmpl b/data/gitea/templates/repo/issue/labels/label.tmpl new file mode 100644 index 0000000..3651ba1 --- /dev/null +++ b/data/gitea/templates/repo/issue/labels/label.tmpl @@ -0,0 +1,7 @@ + + {{- RenderLabel $.Context ctx.Locale .label -}} + diff --git a/data/gitea/templates/repo/issue/labels/label_archived.tmpl b/data/gitea/templates/repo/issue/labels/label_archived.tmpl new file mode 100644 index 0000000..feaf77e --- /dev/null +++ b/data/gitea/templates/repo/issue/labels/label_archived.tmpl @@ -0,0 +1,5 @@ +{{if .IsArchived}} + + {{ctx.Locale.Tr "archived"}} + +{{end}} diff --git a/data/gitea/templates/repo/issue/labels/label_list.tmpl b/data/gitea/templates/repo/issue/labels/label_list.tmpl new file mode 100644 index 0000000..413d640 --- /dev/null +++ b/data/gitea/templates/repo/issue/labels/label_list.tmpl @@ -0,0 +1,86 @@ +

    + {{ctx.Locale.Tr "repo.issues.label_count" .NumLabels}} + +

    + +
    + {{if and (not $.PageIsOrgSettingsLabels) (or $.CanWriteIssues $.CanWritePulls) (eq .NumLabels 0) (not $.Repository.IsArchived)}} + {{template "repo/issue/labels/label_load_template" .}} +
    + {{else if and ($.PageIsOrgSettingsLabels) (eq .NumLabels 0)}} + {{template "repo/issue/labels/label_load_template" .}} +
    + {{end}} + + +
    diff --git a/data/gitea/templates/repo/issue/labels/label_load_template.tmpl b/data/gitea/templates/repo/issue/labels/label_load_template.tmpl new file mode 100644 index 0000000..3cb2442 --- /dev/null +++ b/data/gitea/templates/repo/issue/labels/label_load_template.tmpl @@ -0,0 +1,21 @@ +
    +
    +

    {{ctx.Locale.Tr "repo.issues.label_templates.info"}}

    +
    + {{.CsrfTokenHtml}} +
    + +
    + +
    +
    +
    diff --git a/data/gitea/templates/repo/issue/labels/label_new.tmpl b/data/gitea/templates/repo/issue/labels/label_new.tmpl new file mode 100644 index 0000000..32fd8e7 --- /dev/null +++ b/data/gitea/templates/repo/issue/labels/label_new.tmpl @@ -0,0 +1,48 @@ + diff --git a/data/gitea/templates/repo/issue/labels/labels_selector_field.tmpl b/data/gitea/templates/repo/issue/labels/labels_selector_field.tmpl new file mode 100644 index 0000000..e5f15ca --- /dev/null +++ b/data/gitea/templates/repo/issue/labels/labels_selector_field.tmpl @@ -0,0 +1,46 @@ + diff --git a/data/gitea/templates/repo/issue/labels/labels_sidebar.tmpl b/data/gitea/templates/repo/issue/labels/labels_sidebar.tmpl new file mode 100644 index 0000000..0b7b9b8 --- /dev/null +++ b/data/gitea/templates/repo/issue/labels/labels_sidebar.tmpl @@ -0,0 +1,11 @@ +
    + + {{ctx.Locale.Tr "repo.issues.new.no_label"}} + {{range .root.Labels}} + {{template "repo/issue/labels/label" dict "root" $.root "label" .}} + {{end}} + {{range .root.OrgLabels}} + {{template "repo/issue/labels/label" dict "root" $.root "label" .}} + {{end}} + +
    diff --git a/data/gitea/templates/repo/issue/list.tmpl b/data/gitea/templates/repo/issue/list.tmpl new file mode 100644 index 0000000..30edf82 --- /dev/null +++ b/data/gitea/templates/repo/issue/list.tmpl @@ -0,0 +1,55 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} + + {{if .PinnedIssues}} +
    + {{range .PinnedIssues}} +
    + {{template "repo/issue/card" (dict "Issue" . "Page" $ "isPinnedIssueCard" true)}} +
    + {{end}} +
    + {{end}} + +
    + {{template "repo/issue/navbar" .}} + {{template "repo/issue/search" .}} + {{if not .Repository.IsArchived}} + {{if .PageIsIssueList}} + {{ctx.Locale.Tr "repo.issues.new"}} + {{else}} + {{ctx.Locale.Tr "repo.pulls.new"}} + {{end}} + {{else}} + {{if not .PageIsIssueList}} + {{ctx.Locale.Tr "action.compare_commits_general"}} + {{end}} + {{end}} +
    + + {{template "repo/issue/filters" .}} + +
    +
    + {{template "repo/issue/openclose" .}} + + {{if .TotalTrackedTime}} + + {{end}} +
    +
    + {{template "repo/issue/filter_actions" .}} +
    +
    + {{template "shared/issuelist" dict "." . "listType" "repo"}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/issue/milestone/filter_list.tmpl b/data/gitea/templates/repo/issue/milestone/filter_list.tmpl new file mode 100644 index 0000000..45f9866 --- /dev/null +++ b/data/gitea/templates/repo/issue/milestone/filter_list.tmpl @@ -0,0 +1,15 @@ + + diff --git a/data/gitea/templates/repo/issue/milestone/select_menu.tmpl b/data/gitea/templates/repo/issue/milestone/select_menu.tmpl new file mode 100644 index 0000000..9b0492c --- /dev/null +++ b/data/gitea/templates/repo/issue/milestone/select_menu.tmpl @@ -0,0 +1,38 @@ +{{if or .OpenMilestones .ClosedMilestones}} + +
    +{{end}} +
    {{ctx.Locale.Tr "repo.issues.new.clear_milestone"}}
    +{{if and (not .OpenMilestones) (not .ClosedMilestones)}} +
    + {{ctx.Locale.Tr "repo.issues.new.no_items"}} +
    +{{else}} + {{if .OpenMilestones}} +
    +
    + {{ctx.Locale.Tr "repo.issues.new.open_milestone"}} +
    + {{range .OpenMilestones}} + + {{svg "octicon-milestone" 16 "tw-mr-1"}} + {{.Name}} + + {{end}} + {{end}} + {{if .ClosedMilestones}} +
    +
    + {{ctx.Locale.Tr "repo.issues.new.closed_milestone"}} +
    + {{range .ClosedMilestones}} + + {{svg "octicon-milestone" 16 "tw-mr-1"}} + {{.Name}} + + {{end}} + {{end}} +{{end}} diff --git a/data/gitea/templates/repo/issue/milestone_issues.tmpl b/data/gitea/templates/repo/issue/milestone_issues.tmpl new file mode 100644 index 0000000..5bae6fc --- /dev/null +++ b/data/gitea/templates/repo/issue/milestone_issues.tmpl @@ -0,0 +1,65 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} +
    +

    {{.Milestone.Name}}

    + {{if not .Repository.IsArchived}} +
    + {{if or .CanWriteIssues .CanWritePulls}} + {{if .Milestone.IsClosed}} + {{ctx.Locale.Tr "repo.milestones.open"}} + + {{else}} + {{ctx.Locale.Tr "repo.milestones.close"}} + + {{end}} + {{ctx.Locale.Tr "repo.milestones.edit"}} + {{end}} + {{ctx.Locale.Tr "repo.issues.new"}} +
    + {{end}} +
    + {{if .Milestone.RenderedContent}} +
    + {{.Milestone.RenderedContent}} +
    + {{end}} +
    + +
    +
    + {{$closedDate:= TimeSinceUnix .Milestone.ClosedDateUnix ctx.Locale}} + {{if .IsClosed}} + {{svg "octicon-clock"}} {{ctx.Locale.Tr "repo.milestones.closed" $closedDate}} + {{else}} + + {{if .Milestone.DeadlineString}} + + {{svg "octicon-calendar"}} + {{DateTime "short" .Milestone.DeadlineString}} + + {{else}} + {{svg "octicon-calendar"}} + {{ctx.Locale.Tr "repo.milestones.no_due_date"}} + {{end}} + {{end}} +
    +
    {{ctx.Locale.Tr "repo.milestones.completeness" .Milestone.Completeness}}
    + {{if .TotalTrackedTime}} +
    + {{svg "octicon-clock"}} + {{.TotalTrackedTime | Sec2Time}} +
    + {{end}} +
    +
    +
    + + {{template "repo/issue/filters" .}} + + {{template "shared/issuelist" dict "." . "listType" "milestone"}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/issue/milestone_new.tmpl b/data/gitea/templates/repo/issue/milestone_new.tmpl new file mode 100644 index 0000000..9f32df0 --- /dev/null +++ b/data/gitea/templates/repo/issue/milestone_new.tmpl @@ -0,0 +1,59 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +
    + {{template "repo/issue/navbar" .}} + {{if and (or .CanWriteIssues .CanWritePulls) .PageIsEditMilestone}} + + {{end}} +
    +
    +

    + {{if .PageIsEditMilestone}} + {{ctx.Locale.Tr "repo.milestones.edit"}} +
    {{ctx.Locale.Tr "repo.milestones.edit_subheader"}}
    + {{else}} + {{ctx.Locale.Tr "repo.milestones.new"}} +
    {{ctx.Locale.Tr "repo.milestones.new_subheader"}}
    + {{end}} +

    + {{template "base/alert" .}} +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    + + +
    +
    +
    + {{if .PageIsEditMilestone}} + + {{ctx.Locale.Tr "repo.milestones.cancel"}} + + + {{else}} + + {{end}} +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/issue/milestones.tmpl b/data/gitea/templates/repo/issue/milestones.tmpl new file mode 100644 index 0000000..bce7ad8 --- /dev/null +++ b/data/gitea/templates/repo/issue/milestones.tmpl @@ -0,0 +1,108 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} + +
    + {{template "repo/issue/navbar" .}} + {{template "repo/issue/search" .}} + {{if and (or .CanWriteIssues .CanWritePulls) (not .Repository.IsArchived)}} + {{ctx.Locale.Tr "repo.milestones.new"}} + {{end}} +
    + + {{template "repo/issue/filters" .}} + + +
    + {{range .Milestones}} +
  • +
    +

    + {{svg "octicon-milestone" 16}} + {{.Name}} +

    +
    + {{.Completeness}}% + +
    +
    +
    +
    +
    + {{svg "octicon-issue-opened" 14}} + {{ctx.Locale.PrettyNumber .NumOpenIssues}} {{ctx.Locale.Tr "repo.issues.open_title"}} +
    +
    + {{svg "octicon-check" 14}} + {{ctx.Locale.PrettyNumber .NumClosedIssues}} {{ctx.Locale.Tr "repo.issues.closed_title"}} +
    + {{if .TotalTrackedTime}} +
    + {{svg "octicon-clock"}} + {{.TotalTrackedTime|Sec2Time}} +
    + {{end}} + {{if .UpdatedUnix}} +
    + {{svg "octicon-clock"}} + {{ctx.Locale.Tr "repo.milestones.update_ago" (TimeSinceUnix .UpdatedUnix ctx.Locale)}} +
    + {{end}} +
    + {{if .IsClosed}} + {{$closedDate:= TimeSinceUnix .ClosedDateUnix ctx.Locale}} + {{svg "octicon-clock" 14}} + {{ctx.Locale.Tr "repo.milestones.closed" $closedDate}} + {{else}} + {{if .DeadlineString}} + + {{svg "octicon-calendar" 14}} + {{DateTime "short" .DeadlineString}} + + {{else}} + {{svg "octicon-calendar" 14}} + {{ctx.Locale.Tr "repo.milestones.no_due_date"}} + {{end}} + {{end}} +
    +
    + {{if and (or $.CanWriteIssues $.CanWritePulls) (not $.Repository.IsArchived)}} + + {{end}} +
    + {{if .Content}} +
    + {{.RenderedContent}} +
    + {{end}} +
  • + {{end}} + + {{template "base/paginate" .}} +
    +
    +
    + +{{if or .CanWriteIssues .CanWritePulls}} + +{{end}} +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/issue/navbar.tmpl b/data/gitea/templates/repo/issue/navbar.tmpl new file mode 100644 index 0000000..30e42c7 --- /dev/null +++ b/data/gitea/templates/repo/issue/navbar.tmpl @@ -0,0 +1,4 @@ + diff --git a/data/gitea/templates/repo/issue/new.tmpl b/data/gitea/templates/repo/issue/new.tmpl new file mode 100644 index 0000000..ccd45fd --- /dev/null +++ b/data/gitea/templates/repo/issue/new.tmpl @@ -0,0 +1,8 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "repo/issue/new_form" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/issue/new_form.tmpl b/data/gitea/templates/repo/issue/new_form.tmpl new file mode 100644 index 0000000..88a6c39 --- /dev/null +++ b/data/gitea/templates/repo/issue/new_form.tmpl @@ -0,0 +1,190 @@ +{{if .Flash}} +{{template "base/alert" .}} +{{end}} +
    + {{.CsrfTokenHtml}} +
    +
    +
    + {{ctx.AvatarUtils.Avatar .SignedUser 40}} +
    +
    + + {{if .PageIsComparePull}} +
    {{ctx.Locale.Tr "repo.pulls.title_wip_desc" (index .PullRequestWorkInProgressPrefixes 0)}}
    + {{end}} +
    + {{if .Fields}} + + {{range .Fields}} + {{if eq .Type "input"}} + {{template "repo/issue/fields/input" dict "Context" $.Context "item" .}} + {{else if eq .Type "markdown"}} + {{template "repo/issue/fields/markdown" dict "Context" $.Context "item" .}} + {{else if eq .Type "textarea"}} + {{template "repo/issue/fields/textarea" dict "Context" $.Context "item" . "root" $}} + {{else if eq .Type "dropdown"}} + {{template "repo/issue/fields/dropdown" dict "Context" $.Context "item" .}} + {{else if eq .Type "checkboxes"}} + {{template "repo/issue/fields/checkboxes" dict "Context" $.Context "item" .}} + {{end}} + {{end}} + {{else}} + {{template "repo/issue/comment_tab" .}} + {{end}} +
    + +
    +
    +
    +
    +
    + +
    + {{template "repo/issue/branch_selector_field" .}} + + + {{template "repo/issue/labels/labels_selector_field" .}} + {{template "repo/issue/labels/labels_sidebar" dict "root" $}} + +
    + + + +
    + {{ctx.Locale.Tr "repo.issues.new.no_milestone"}} + +
    + + {{if .IsProjectsEnabled}} +
    + + + +
    + {{ctx.Locale.Tr "repo.issues.new.no_projects"}} + +
    + {{end}} +
    + + +
    + + {{ctx.Locale.Tr "repo.issues.new.no_assignees"}} + + +
    + {{if and .PageIsComparePull (not (eq .HeadRepo.FullName .BaseCompareRepo.FullName)) .CanWriteToHeadRepo}} +
    +
    +
    + + +
    +
    + {{end}} +
    + +
    diff --git a/data/gitea/templates/repo/issue/openclose.tmpl b/data/gitea/templates/repo/issue/openclose.tmpl new file mode 100644 index 0000000..eb2d6e0 --- /dev/null +++ b/data/gitea/templates/repo/issue/openclose.tmpl @@ -0,0 +1,16 @@ + diff --git a/data/gitea/templates/repo/issue/search.tmpl b/data/gitea/templates/repo/issue/search.tmpl new file mode 100644 index 0000000..769387b --- /dev/null +++ b/data/gitea/templates/repo/issue/search.tmpl @@ -0,0 +1,18 @@ + diff --git a/data/gitea/templates/repo/issue/view.tmpl b/data/gitea/templates/repo/issue/view.tmpl new file mode 100644 index 0000000..1ef9e73 --- /dev/null +++ b/data/gitea/templates/repo/issue/view.tmpl @@ -0,0 +1,12 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "repo/issue/view_title" .}} + {{if .Issue.IsPull}} + {{template "repo/pulls/tab_menu" .}} + {{end}} + {{template "repo/issue/view_content" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/issue/view_content.tmpl b/data/gitea/templates/repo/issue/view_content.tmpl new file mode 100644 index 0000000..d40134e --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content.tmpl @@ -0,0 +1,190 @@ +
    + + + + + + + + {{$createdStr:= TimeSinceUnix .Issue.CreatedUnix ctx.Locale}} +
    +
    +
    + {{if .Issue.OriginalAuthor}} + + {{ctx.AvatarUtils.Avatar nil 40}} + + {{else}} + + {{ctx.AvatarUtils.Avatar .Issue.Poster 40}} + + {{end}} +
    +
    +
    + {{if .Issue.OriginalAuthor}} + + {{svg (MigrationIcon .Repository.GetOriginalURLHostname)}} + {{.Issue.OriginalAuthor}} + + + {{ctx.Locale.Tr "repo.issues.commented_at" .Issue.HashTag $createdStr}} + + + {{if .Repository.OriginalURL}} ({{ctx.Locale.Tr "repo.migrated_from" .Repository.OriginalURL .Repository.GetOriginalURLHostname}}){{end}} + + {{else}} + + {{ctx.AvatarUtils.Avatar .Issue.Poster 24}} + + + {{template "shared/user/authorlink" .Issue.Poster}} + {{ctx.Locale.Tr "repo.issues.commented_at" .Issue.HashTag $createdStr}} + + {{end}} +
    +
    + {{template "repo/issue/view_content/show_role" dict "ShowRole" .Issue.ShowRole "IgnorePoster" true}} + {{if not $.Repository.IsArchived}} + {{template "repo/issue/view_content/add_reaction" dict "ActionURL" (printf "%s/issues/%d/reactions" $.RepoLink .Issue.Index)}} + {{end}} + {{template "repo/issue/view_content/context_menu" dict "ctxData" $ "item" .Issue "delete" false "issue" true "diff" false "IsCommentPoster" $.IsIssuePoster}} +
    +
    +
    +
    + {{if .Issue.RenderedContent}} + {{.Issue.RenderedContent}} + {{else}} + {{ctx.Locale.Tr "repo.issues.no_content"}} + {{end}} +
    +
    {{.Issue.Content}}
    +
    + {{if .Issue.Attachments}} + {{template "repo/issue/view_content/attachments" dict "Attachments" .Issue.Attachments "RenderedContent" .Issue.RenderedContent}} + {{end}} +
    + {{$reactions := .Issue.Reactions.GroupByType}} + {{if $reactions}} + {{template "repo/issue/view_content/reactions" dict "ActionURL" (printf "%s/issues/%d/reactions" $.RepoLink .Issue.Index) "Reactions" $reactions}} + {{end}} +
    +
    + + {{template "repo/issue/view_content/comments" .}} + + {{if and .Issue.IsPull (not $.Repository.IsArchived)}} + {{template "repo/issue/view_content/pull".}} + {{end}} + + {{if .IsSigned}} + {{if and (or .IsRepoAdmin .HasIssuesOrPullsWritePermission (not .Issue.IsLocked)) (not .Repository.IsArchived)}} +
    + + {{ctx.AvatarUtils.Avatar .SignedUser 40}} + +
    +
    +
    + {{template "repo/issue/comment_tab" .}} + {{.CsrfTokenHtml}} + +
    +
    +
    +
    + {{else if .Repository.IsArchived}} +
    + {{if .Issue.IsPull}} + {{ctx.Locale.Tr "repo.archive.pull.nocomment"}} + {{else}} + {{ctx.Locale.Tr "repo.archive.issue.nocomment"}} + {{end}} +
    + {{end}} + {{else}} {{/* not .IsSigned */}} + {{if .Repository.IsArchived}} +
    + {{if .Issue.IsPull}} + {{ctx.Locale.Tr "repo.archive.pull.nocomment"}} + {{else}} + {{ctx.Locale.Tr "repo.archive.issue.nocomment"}} + {{end}} +
    + {{else}} +
    + {{ctx.Locale.Tr "repo.issues.sign_in_require_desc" .SignInLink}} +
    + {{end}} + {{end}}{{/* end if: .IsSigned */}} +
    +
    + + {{template "repo/issue/view_content/sidebar" .}} +
    + + + +{{template "repo/issue/view_content/reference_issue_dialog" .}} +{{template "shared/user/block_user_dialog" .}} + +
    + {{ctx.Locale.Tr "repo.issues.no_content"}} +
    + + diff --git a/data/gitea/templates/repo/issue/view_content/add_reaction.tmpl b/data/gitea/templates/repo/issue/view_content/add_reaction.tmpl new file mode 100644 index 0000000..6baded8 --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/add_reaction.tmpl @@ -0,0 +1,10 @@ +{{if ctx.RootData.IsSigned}} + +{{end}} diff --git a/data/gitea/templates/repo/issue/view_content/attachments.tmpl b/data/gitea/templates/repo/issue/view_content/attachments.tmpl new file mode 100644 index 0000000..2155f78 --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/attachments.tmpl @@ -0,0 +1,42 @@ +
    + {{if .Attachments}} +
    + {{end}} + {{$hasThumbnails := false}} + {{- range .Attachments -}} + + {{end -}} + + {{if $hasThumbnails}} +
    +
    + {{- range .Attachments -}} + {{if FilenameIsImage .Name}} + {{if not (StringUtils.Contains (StringUtils.ToString $.RenderedContent) .UUID)}} + + {{.Name}} + + {{end}} + {{end}} + {{end -}} +
    + {{end}} + +
    diff --git a/data/gitea/templates/repo/issue/view_content/comments.tmpl b/data/gitea/templates/repo/issue/view_content/comments.tmpl new file mode 100644 index 0000000..cc7f325 --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/comments.tmpl @@ -0,0 +1,691 @@ +{{template "base/alert"}} +{{range .Issue.Comments}} + {{if call $.ShouldShowCommentType .Type}} + {{$createdStr:= TimeSinceUnix .CreatedUnix ctx.Locale}} + + + {{if eq .Type 0}} +
    + {{if .OriginalAuthor}} + + {{ctx.AvatarUtils.Avatar nil 40}} + + {{else}} + + {{ctx.AvatarUtils.Avatar .Poster 40}} + + {{end}} +
    +
    +
    + {{if .OriginalAuthor}} + + {{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}} + {{.OriginalAuthor}} + + + {{ctx.Locale.Tr "repo.issues.commented_at" .HashTag $createdStr}} {{if $.Repository.OriginalURL}} + + + ({{ctx.Locale.Tr "repo.migrated_from" $.Repository.OriginalURL $.Repository.GetOriginalURLHostname}}){{end}} + + {{else}} + {{if gt .Poster.ID 0}} + + {{ctx.AvatarUtils.Avatar .Poster 24}} + + {{end}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.commented_at" .HashTag $createdStr}} + + {{end}} +
    +
    + {{template "repo/issue/view_content/show_role" dict "ShowRole" .ShowRole}} + {{if not $.Repository.IsArchived}} + {{template "repo/issue/view_content/add_reaction" dict "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID)}} + {{end}} + {{template "repo/issue/view_content/context_menu" dict "ctxData" $ "item" . "delete" true "issue" true "diff" false "IsCommentPoster" (and $.IsSigned (eq $.SignedUserID .PosterID))}} +
    +
    +
    +
    + {{if .RenderedContent}} + {{.RenderedContent}} + {{else}} + {{ctx.Locale.Tr "repo.issues.no_content"}} + {{end}} +
    +
    {{.Content}}
    +
    + {{if .Attachments}} + {{template "repo/issue/view_content/attachments" dict "Attachments" .Attachments "RenderedContent" .RenderedContent}} + {{end}} +
    + {{$reactions := .Reactions.GroupByType}} + {{if $reactions}} + {{template "repo/issue/view_content/reactions" dict "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID) "Reactions" $reactions}} + {{end}} +
    +
    + {{else if eq .Type 1}} +
    + {{svg "octicon-dot-fill"}} + {{if not .OriginalAuthor}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + {{end}} + + {{template "repo/issue/view_content/comments_authorlink" dict "ctxData" $ "comment" .}} + {{if .Issue.IsPull}} + {{ctx.Locale.Tr "repo.pulls.reopened_at" .EventTag $createdStr}} + {{else}} + {{ctx.Locale.Tr "repo.issues.reopened_at" .EventTag $createdStr}} + {{end}} + +
    + {{else if eq .Type 2}} +
    + {{svg "octicon-circle-slash"}} + {{if not .OriginalAuthor}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + {{end}} + + {{template "repo/issue/view_content/comments_authorlink" dict "ctxData" $ "comment" .}} + {{if .Issue.IsPull}} + {{ctx.Locale.Tr "repo.pulls.closed_at" .EventTag $createdStr}} + {{else}} + {{ctx.Locale.Tr "repo.issues.closed_at" .EventTag $createdStr}} + {{end}} + +
    + {{else if eq .Type 28}} +
    + {{svg "octicon-git-merge"}} + {{if not .OriginalAuthor}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + {{end}} + + {{template "repo/issue/view_content/comments_authorlink" dict "ctxData" $ "comment" .}} + {{$link := printf "%s/commit/%s" $.Repository.Link ($.Issue.PullRequest.MergedCommitID|PathEscape)}} + {{if eq $.Issue.PullRequest.Status 3}} + {{ctx.Locale.Tr "repo.issues.comment_manually_pull_merged_at" (HTMLFormat `%[2]s` $link (ShortSha $.Issue.PullRequest.MergedCommitID)) (HTMLFormat "%[1]s" $.BaseTarget) $createdStr}} + {{else}} + {{ctx.Locale.Tr "repo.issues.comment_pull_merged_at" (HTMLFormat `%[2]s` $link (ShortSha $.Issue.PullRequest.MergedCommitID)) (HTMLFormat "%[1]s" $.BaseTarget) $createdStr}} + {{end}} + +
    + {{else if eq .Type 3 5 6}} + {{$refFrom:= ""}} + {{if ne .RefRepoID .Issue.RepoID}} + {{$refFrom = ctx.Locale.Tr "repo.issues.ref_from" .RefRepo.FullName}} + {{end}} + {{$refTr := "repo.issues.ref_issue_from"}} + {{if .Issue.IsPull}} + {{$refTr = "repo.issues.ref_pull_from"}} + {{else if eq .RefAction 1}} + {{$refTr = "repo.issues.ref_closing_from"}} + {{else if eq .RefAction 2}} + {{$refTr = "repo.issues.ref_reopening_from"}} + {{end}} + {{$createdStr:= TimeSinceUnix .CreatedUnix ctx.Locale}} +
    + {{svg "octicon-bookmark"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + {{if eq .RefAction 3}}{{end}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr $refTr .EventTag $createdStr (.RefCommentLink ctx) $refFrom}} + + {{if eq .RefAction 3}}{{end}} + + +
    + {{else if eq .Type 4}} +
    + {{svg "octicon-bookmark"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.commit_ref_at" .EventTag $createdStr}} + +
    + {{svg "octicon-git-commit"}} + {{.Content | SanitizeHTML}} +
    +
    + {{else if eq .Type 7}} + {{if or .AddedLabels .RemovedLabels}} +
    + {{svg "octicon-tag"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{if and .AddedLabels (not .RemovedLabels)}} + {{ctx.Locale.TrN (len .AddedLabels) "repo.issues.add_label" "repo.issues.add_labels" (RenderLabels ctx ctx.Locale .AddedLabels $.RepoLink .Issue) $createdStr}} + {{else if and (not .AddedLabels) .RemovedLabels}} + {{ctx.Locale.TrN (len .RemovedLabels) "repo.issues.remove_label" "repo.issues.remove_labels" (RenderLabels ctx ctx.Locale .RemovedLabels $.RepoLink .Issue) $createdStr}} + {{else}} + {{ctx.Locale.Tr "repo.issues.add_remove_labels" (RenderLabels ctx ctx.Locale .AddedLabels $.RepoLink .Issue) (RenderLabels ctx ctx.Locale .RemovedLabels $.RepoLink .Issue) $createdStr}} + {{end}} + +
    + {{end}} + {{else if eq .Type 8}} +
    + {{svg "octicon-milestone"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{if gt .OldMilestoneID 0}}{{if gt .MilestoneID 0}}{{ctx.Locale.Tr "repo.issues.change_milestone_at" .OldMilestone.Name .Milestone.Name $createdStr}}{{else}}{{ctx.Locale.Tr "repo.issues.remove_milestone_at" .OldMilestone.Name $createdStr}}{{end}}{{else if gt .MilestoneID 0}}{{ctx.Locale.Tr "repo.issues.add_milestone_at" .Milestone.Name $createdStr}}{{end}} + +
    + {{else if and (eq .Type 9) (gt .AssigneeID 0)}} +
    + {{svg "octicon-person"}} + {{if .RemovedAssignee}} + {{template "shared/user/avatarlink" dict "user" .Assignee}} + + {{template "shared/user/authorlink" .Assignee}} + {{if eq .Poster.ID .Assignee.ID}} + {{ctx.Locale.Tr "repo.issues.remove_self_assignment" $createdStr}} + {{else}} + {{ctx.Locale.Tr "repo.issues.remove_assignee_at" .Poster.GetDisplayName $createdStr}} + {{end}} + + {{else}} + {{template "shared/user/avatarlink" dict "user" .Assignee}} + + {{template "shared/user/authorlink" .Assignee}} + {{if eq .Poster.ID .AssigneeID}} + {{ctx.Locale.Tr "repo.issues.self_assign_at" $createdStr}} + {{else}} + {{ctx.Locale.Tr "repo.issues.add_assignee_at" .Poster.GetDisplayName $createdStr}} + {{end}} + + {{end}} +
    + {{else if eq .Type 10}} +
    + {{svg "octicon-pencil"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.change_title_at" (.OldTitle|RenderEmoji $.Context) (.NewTitle|RenderEmoji $.Context) $createdStr}} + +
    + {{else if eq .Type 11}} +
    + {{svg "octicon-git-branch"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.delete_branch_at" .OldRef $createdStr}} + +
    + {{else if eq .Type 12}} +
    + {{svg "octicon-clock"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.start_tracking_history" $createdStr}} + +
    + {{else if eq .Type 13}} +
    + {{svg "octicon-clock"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.stop_tracking_history" $createdStr}} + + {{template "repo/issue/view_content/comments_delete_time" dict "ctxData" $ "comment" .}} +
    + {{svg "octicon-clock"}} + {{if .RenderedContent}} + {{/* compatibility with time comments made before v1.21 */}} + {{.RenderedContent}} + {{else}} + {{.Content|Sec2Time}} + {{end}} +
    +
    + {{else if eq .Type 14}} +
    + {{svg "octicon-clock"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.add_time_history" $createdStr}} + + {{template "repo/issue/view_content/comments_delete_time" dict "ctxData" $ "comment" .}} +
    + {{svg "octicon-clock"}} + {{if .RenderedContent}} + {{/* compatibility with time comments made before v1.21 */}} + {{.RenderedContent}} + {{else}} + {{.Content|Sec2Time}} + {{end}} +
    +
    + {{else if eq .Type 15}} +
    + {{svg "octicon-clock"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.cancel_tracking_history" $createdStr}} + +
    + {{else if eq .Type 16}} +
    + {{svg "octicon-clock"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.due_date_added" (DateTime "long" .Content) $createdStr}} + +
    + {{else if eq .Type 17}} +
    + {{svg "octicon-clock"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{$parsedDeadline := StringUtils.Split .Content "|"}} + {{if eq (len $parsedDeadline) 2}} + {{$from := DateTime "long" (index $parsedDeadline 1)}} + {{$to := DateTime "long" (index $parsedDeadline 0)}} + {{ctx.Locale.Tr "repo.issues.due_date_modified" $to $from $createdStr}} + {{end}} + +
    + {{else if eq .Type 18}} +
    + {{svg "octicon-clock"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.due_date_remove" (DateTime "long" .Content) $createdStr}} + +
    + {{else if eq .Type 19}} +
    + {{svg "octicon-package-dependents"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.dependency.added_dependency" $createdStr}} + + {{if .DependentIssue}} + + {{end}} +
    + {{else if eq .Type 20}} +
    + {{svg "octicon-package-dependents"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.dependency.removed_dependency" $createdStr}} + + {{if .DependentIssue}} + + {{end}} +
    + {{else if eq .Type 22}} +
    +
    + {{$reviewType := -1}} + {{if .Review}}{{$reviewType = .Review.Type}}{{end}} + {{if not .OriginalAuthor}} + {{/* Some timeline avatars need a offset to correctly align with their speech bubble. + The condition depends on whether the comment has contents/attachments or reviews */}} + + {{ctx.AvatarUtils.Avatar .Poster 40}} + + {{end}} + + {{if .Review}}{{svg (printf "octicon-%s" .Review.Type.Icon)}}{{end}} + + + {{template "repo/issue/view_content/comments_authorlink" dict "ctxData" $ "comment" .}} + {{if eq $reviewType 1}} + {{ctx.Locale.Tr "repo.issues.review.approve" $createdStr}} + {{else if eq $reviewType 2}} + {{ctx.Locale.Tr "repo.issues.review.comment" $createdStr}} + {{else if eq $reviewType 3}} + {{ctx.Locale.Tr "repo.issues.review.reject" $createdStr}} + {{else}} + {{ctx.Locale.Tr "repo.issues.review.comment" $createdStr}} + {{end}} + {{if and .Review .Review.Dismissed}} +
    {{ctx.Locale.Tr "repo.issues.review.dismissed_label"}}
    + {{end}} +
    +
    + {{if or .Content .Attachments}} +
    +
    +
    +
    + {{if gt .Poster.ID 0}} + + {{ctx.AvatarUtils.Avatar .Poster 24}} + + {{end}} + + {{if .OriginalAuthor}} + + {{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}} + {{.OriginalAuthor}} + + {{if $.Repository.OriginalURL}} + ({{ctx.Locale.Tr "repo.migrated_from" $.Repository.OriginalURL $.Repository.GetOriginalURLHostname}}){{end}} + {{else}} + {{template "shared/user/authorlink" .Poster}} + {{end}} + + {{ctx.Locale.Tr "repo.issues.review.left_comment"}} + +
    +
    + {{template "repo/issue/view_content/show_role" dict "ShowRole" .ShowRole}} + {{if not $.Repository.IsArchived}} + {{template "repo/issue/view_content/add_reaction" dict "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID)}} + {{template "repo/issue/view_content/context_menu" dict "ctxData" $ "item" . "delete" false "issue" true "diff" false "IsCommentPoster" (and $.IsSigned (eq $.SignedUserID .PosterID))}} + {{end}} +
    +
    +
    +
    + {{if .RenderedContent}} + {{.RenderedContent}} + {{else}} + {{ctx.Locale.Tr "repo.issues.no_content"}} + {{end}} +
    +
    {{.Content}}
    +
    + {{if .Attachments}} + {{template "repo/issue/view_content/attachments" dict "Attachments" .Attachments "RenderedContent" .RenderedContent}} + {{end}} +
    + {{$reactions := .Reactions.GroupByType}} + {{if $reactions}} + {{template "repo/issue/view_content/reactions" dict "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID) "Reactions" $reactions}} + {{end}} +
    +
    + {{end}} + + {{if and .Review .Review.CodeComments}} +
    + {{range $filename, $lines := .Review.CodeComments}} + {{range $line, $comms := $lines}} + {{template "repo/issue/view_content/conversation" dict "." $ "comments" $comms}} + {{end}} + {{end}} +
    + {{end}} +
    + {{else if eq .Type 23}} +
    + {{svg "octicon-lock"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + {{if .Content}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.lock_with_reason" .Content $createdStr}} + + {{else}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.lock_no_reason" $createdStr}} + + {{end}} +
    + {{else if eq .Type 24}} +
    + {{svg "octicon-key"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{ctx.Locale.Tr "repo.issues.unlock_comment" $createdStr}} + +
    + {{else if eq .Type 25}} +
    + {{svg "octicon-git-branch"}} + {{if not .OriginalAuthor}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + {{end}} + + {{template "repo/issue/view_content/comments_authorlink" dict "ctxData" $ "comment" .}} + {{ctx.Locale.Tr "repo.pulls.change_target_branch_at" .OldRef .NewRef $createdStr}} + +
    + {{else if eq .Type 26}} +
    + {{svg "octicon-clock"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + + {{ctx.Locale.Tr "repo.issues.del_time_history" $createdStr}} + +
    + {{svg "octicon-clock"}} + {{if .RenderedContent}} + {{/* compatibility with time comments made before v1.21 */}} + {{.RenderedContent}} + {{else}} + - {{.Content|Sec2Time}} + {{end}} +
    +
    + {{else if eq .Type 27}} +
    + {{svg "octicon-eye"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{if (gt .AssigneeID 0)}} + {{if .RemovedAssignee}} + {{if eq .PosterID .AssigneeID}} + {{ctx.Locale.Tr "repo.issues.review.remove_review_request_self" $createdStr}} + {{else}} + {{ctx.Locale.Tr "repo.issues.review.remove_review_request" .Assignee.GetDisplayName $createdStr}} + {{end}} + {{else}} + {{ctx.Locale.Tr "repo.issues.review.add_review_request" .Assignee.GetDisplayName $createdStr}} + {{end}} + {{else}} + + {{$teamName := "Ghost Team"}} + {{if .AssigneeTeam}} + {{$teamName = .AssigneeTeam.Name}} + {{end}} + {{if .RemovedAssignee}} + {{ctx.Locale.Tr "repo.issues.review.remove_review_request" $teamName $createdStr}} + {{else}} + {{ctx.Locale.Tr "repo.issues.review.add_review_request" $teamName $createdStr}} + {{end}} + {{end}} + +
    + {{else if and (eq .Type 29) (or (gt .CommitsNum 0) .IsForcePush)}} + + {{if and .Issue.IsClosed (gt .ID $.LatestCloseCommentID)}} + {{continue}} + {{end}} +
    + {{svg "octicon-repo-push"}} + + {{template "shared/user/authorlink" .Poster}} + {{if .IsForcePush}} + {{ctx.Locale.Tr "repo.issues.force_push_codes" $.Issue.PullRequest.HeadBranch (ShortSha .OldCommit) ($.Issue.Repo.CommitLink .OldCommit) (ShortSha .NewCommit) ($.Issue.Repo.CommitLink .NewCommit) $createdStr}} + {{else}} + {{ctx.Locale.TrN (len .Commits) "repo.issues.push_commit_1" "repo.issues.push_commits_n" (len .Commits) $createdStr}} + {{end}} + + {{if and .IsForcePush $.Issue.PullRequest.BaseRepo.Name}} + + {{ctx.Locale.Tr "repo.issues.force_push_compare"}} + + {{end}} +
    + {{if not .IsForcePush}} + {{template "repo/commits_list_small" dict "comment" . "root" $}} + {{end}} + {{else if eq .Type 30}} + {{if not $.UnitProjectsGlobalDisabled}} +
    + {{svg "octicon-project"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{$oldProjectDisplayHtml := "Unknown Project"}} + {{if .OldProject}} + {{$tooltip := ctx.Locale.Tr "projects.deleted.display_name"}} + {{if not .OldProject.IsGhost}} + {{$tooltip = ctx.Locale.Tr (printf "projects.type-%d.display_name" .OldProject.Type)}} + {{end}} + {{$oldProjectDisplayHtml = HTMLFormat `%s` $tooltip .OldProject.Title}} + {{end}} + {{$newProjectDisplayHtml := "Unknown Project"}} + {{if .Project}} + {{$tooltip := ctx.Locale.Tr "projects.deleted.display_name"}} + {{if not .Project.IsGhost}} + {{$tooltip = ctx.Locale.Tr (printf "projects.type-%d.display_name" .Project.Type)}} + {{end}} + {{$newProjectDisplayHtml = HTMLFormat `%s` $tooltip .Project.Title}} + {{end}} + {{if and (gt .OldProjectID 0) (gt .ProjectID 0)}} + {{ctx.Locale.Tr "repo.issues.change_project_at" $oldProjectDisplayHtml $newProjectDisplayHtml $createdStr}} + {{else if gt .OldProjectID 0}} + {{ctx.Locale.Tr "repo.issues.remove_project_at" $oldProjectDisplayHtml $createdStr}} + {{else if gt .ProjectID 0}} + {{ctx.Locale.Tr "repo.issues.add_project_at" $newProjectDisplayHtml $createdStr}} + {{end}} + +
    + {{end}} + {{else if eq .Type 32}} +
    +
    + + + + {{svg "octicon-x" 16}} + + {{template "shared/user/authorlink" .Poster}} + {{$reviewerName := ""}} + {{if .Review}} + {{if eq .Review.OriginalAuthor ""}} + {{$reviewerName = .Review.Reviewer.Name}} + {{else}} + {{$reviewerName = .Review.OriginalAuthor}} + {{end}} + {{end}} + {{ctx.Locale.Tr "repo.issues.review.dismissed" $reviewerName $createdStr}} + +
    + {{if .Content}} +
    +
    +
    + {{if gt .Poster.ID 0}} + + {{ctx.AvatarUtils.Avatar .Poster 24}} + + {{end}} + + {{ctx.Locale.Tr "action.review_dismissed_reason"}} + +
    +
    +
    + {{if .RenderedContent}} + {{.RenderedContent}} + {{else}} + {{ctx.Locale.Tr "repo.issues.no_content"}} + {{end}} +
    +
    +
    +
    + {{end}} +
    + {{else if eq .Type 33}} +
    + {{svg "octicon-git-branch"}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{if and .OldRef .NewRef}} + {{ctx.Locale.Tr "repo.issues.change_ref_at" .OldRef .NewRef $createdStr}} + {{else if .OldRef}} + {{ctx.Locale.Tr "repo.issues.remove_ref_at" .OldRef $createdStr}} + {{else}} + {{ctx.Locale.Tr "repo.issues.add_ref_at" .NewRef $createdStr}} + {{end}} + +
    + {{else if or (eq .Type 34) (eq .Type 35)}} +
    + {{svg "octicon-git-merge" 16}} + + {{template "repo/issue/view_content/comments_authorlink" dict "ctxData" $ "comment" .}} + {{if eq .Type 34}}{{ctx.Locale.Tr "repo.pulls.auto_merge_newly_scheduled_comment" $createdStr}} + {{else}}{{ctx.Locale.Tr "repo.pulls.auto_merge_canceled_schedule_comment" $createdStr}}{{end}} + +
    + {{else if or (eq .Type 36) (eq .Type 37)}} +
    + {{svg "octicon-pin" 16}} + {{template "shared/user/avatarlink" dict "user" .Poster}} + + {{template "shared/user/authorlink" .Poster}} + {{if eq .Type 36}}{{ctx.Locale.Tr "repo.issues.pin_comment" $createdStr}} + {{else}}{{ctx.Locale.Tr "repo.issues.unpin_comment" $createdStr}}{{end}} + +
    + {{end}} + {{end}} +{{end}} diff --git a/data/gitea/templates/repo/issue/view_content/comments_authorlink.tmpl b/data/gitea/templates/repo/issue/view_content/comments_authorlink.tmpl new file mode 100644 index 0000000..f652a0b --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/comments_authorlink.tmpl @@ -0,0 +1,11 @@ +{{if .comment.OriginalAuthor}} + + {{svg (MigrationIcon .ctxData.Repository.GetOriginalURLHostname)}} + {{.comment.OriginalAuthor}} + + {{if .ctxData.Repository.OriginalURL}} + ({{ctx.Locale.Tr "repo.migrated_from" .ctxData.Repository.OriginalURL .ctxData.Repository.GetOriginalURLHostname}}) + {{end}} +{{else}} + {{template "shared/user/authorlink" .comment.Poster}} +{{end}} diff --git a/data/gitea/templates/repo/issue/view_content/comments_delete_time.tmpl b/data/gitea/templates/repo/issue/view_content/comments_delete_time.tmpl new file mode 100644 index 0000000..2377e7c --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/comments_delete_time.tmpl @@ -0,0 +1,18 @@ +{{if and .comment.Time (.ctxData.Repository.IsTimetrackerEnabled ctx)}} {{/* compatibility with time comments made before v1.14 */}} + {{if (not .comment.Time.Deleted)}} + {{if (or .ctxData.IsAdmin (and .ctxData.IsSigned (eq .ctxData.SignedUserID .comment.PosterID)))}} + + + + + {{end}} + {{end}} +{{end}} diff --git a/data/gitea/templates/repo/issue/view_content/context_menu.tmpl b/data/gitea/templates/repo/issue/view_content/context_menu.tmpl new file mode 100644 index 0000000..17556d4 --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/context_menu.tmpl @@ -0,0 +1,44 @@ + diff --git a/data/gitea/templates/repo/issue/view_content/conversation.tmpl b/data/gitea/templates/repo/issue/view_content/conversation.tmpl new file mode 100644 index 0000000..ac32a2d --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/conversation.tmpl @@ -0,0 +1,143 @@ +{{if len .comments}} + {{$comment := index .comments 0}} + {{$invalid := $comment.Invalidated}} + {{$resolved := $comment.IsResolved}} + {{$resolveDoer := $comment.ResolveDoer}} + {{$hasReview := and $comment.Review}} + {{$isReviewPending := and $hasReview (eq $comment.Review.Type 0)}} +
    +
    +
    + {{$comment.TreePath}} + {{if $invalid}} + + {{ctx.Locale.Tr "repo.issues.review.outdated"}} + + {{end}} +
    +
    + {{if or $invalid $resolved}} + + + {{end}} +
    +
    + {{$diff := (CommentMustAsDiff ctx $comment)}} + {{if $diff}} + {{$file := (index $diff.Files 0)}} +
    +
    +
    + + + {{template "repo/diff/section_unified" dict "file" $file "root" $}} + +
    +
    +
    +
    + {{end}} +
    +
    + {{range .comments}} + {{$createdSubStr:= TimeSinceUnix .CreatedUnix ctx.Locale}} +
    +
    +
    +
    + {{if not .OriginalAuthor}} + + {{ctx.AvatarUtils.Avatar .Poster 20}} + + {{end}} + + {{if .OriginalAuthor}} + + {{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}} + {{.OriginalAuthor}} + + {{if $.Repository.OriginalURL}} + ({{ctx.Locale.Tr "repo.migrated_from" $.Repository.OriginalURL $.Repository.GetOriginalURLHostname}}) + {{end}} + {{else}} + {{template "shared/user/authorlink" .Poster}} + {{end}} + {{ctx.Locale.Tr "repo.issues.commented_at" .HashTag $createdSubStr}} + +
    +
    + {{template "repo/issue/view_content/show_role" dict "ShowRole" .ShowRole}} + {{if not $.Repository.IsArchived}} + {{template "repo/issue/view_content/add_reaction" dict "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID)}} + {{template "repo/issue/view_content/context_menu" dict "ctxData" $ "item" . "delete" true "issue" true "diff" true "IsCommentPoster" (and $.IsSigned (eq $.SignedUserID .PosterID))}} + {{end}} +
    +
    +
    +
    + {{if .RenderedContent}} + {{.RenderedContent}} + {{else}} + {{ctx.Locale.Tr "repo.issues.no_content"}} + {{end}} +
    +
    {{.Content}}
    +
    + {{if .Attachments}} + {{template "repo/issue/view_content/attachments" dict "Attachments" .Attachments "RenderedContent" .RenderedContent}} + {{end}} +
    + {{$reactions := .Reactions.GroupByType}} + {{if $reactions}} + {{template "repo/issue/view_content/reactions" dict "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID) "Reactions" $reactions}} + {{end}} +
    +
    + {{end}} +
    +
    +
    + {{if $resolved}} +
    + {{svg "octicon-check" 16 "tw-mr-1"}} + {{$resolveDoer.Name}} {{ctx.Locale.Tr "repo.issues.review.resolved_by"}} +
    + {{end}} +
    +
    + {{if and $.CanMarkConversation $hasReview (not $isReviewPending)}} + + {{end}} + {{if and $.SignedUserID (not $.Repository.IsArchived)}} + + {{end}} +
    +
    + {{template "repo/diff/comment_form_datahandler" dict "hidden" true "reply" $comment.ReviewID "root" $ "comment" $comment}} +
    +
    +{{else}} + {{template "repo/diff/conversation_outdated"}} +{{end}} diff --git a/data/gitea/templates/repo/issue/view_content/pull.tmpl b/data/gitea/templates/repo/issue/view_content/pull.tmpl new file mode 100644 index 0000000..77378ef --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/pull.tmpl @@ -0,0 +1,396 @@ +{{if and .Issue.PullRequest.HasMerged (not .IsPullBranchDeletable)}} +{{/* Then the merge box will not be displayed because this page already contains enough information */}} +{{else}} +
    +
    {{svg "octicon-git-merge" 40}}
    +
    + {{if .LatestCommitStatus}} +
    + {{template "repo/pulls/status" (dict + "CommitStatus" .LatestCommitStatus + "CommitStatuses" .LatestCommitStatuses + "MissingRequiredChecks" .MissingRequiredChecks + "ShowHideChecks" true + "is_context_required" .is_context_required + )}} +
    + {{end}} + {{$showGeneralMergeForm := false}} +
    + {{if .Issue.PullRequest.HasMerged}} + {{if .IsPullBranchDeletable}} +
    +
    +

    + {{ctx.Locale.Tr "repo.pulls.merged_success"}} +

    + +
    +
    + +
    +
    + {{end}} + {{else if .Issue.IsClosed}} +
    +
    +

    {{ctx.Locale.Tr "repo.pulls.closed"}}

    + +
    + {{if and .IsPullBranchDeletable (not .IsPullRequestBroken)}} +
    + +
    + {{end}} +
    + {{else if .IsPullFilesConflicted}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.files_conflicted"}} +
    +
      + {{range .ConflictedFiles}} +
    • {{.}}
    • + {{end}} +
    + {{else if .IsPullRequestBroken}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.data_broken"}} +
    + {{else if .IsPullWorkInProgress}} +
    +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.cannot_merge_work_in_progress"}} +
    + {{if or .HasIssuesOrPullsWritePermission .IsIssuePoster}} + + {{end}} +
    + {{template "repo/issue/view_content/update_branch_by_merge" $}} + {{else if .Issue.PullRequest.IsChecking}} +
    + {{svg "octicon-sync"}} + {{ctx.Locale.Tr "repo.pulls.is_checking"}} +
    + {{else if .Issue.PullRequest.IsAncestor}} +
    + {{svg "octicon-alert"}} + {{ctx.Locale.Tr "repo.pulls.is_ancestor"}} +
    + {{else if or .Issue.PullRequest.CanAutoMerge .Issue.PullRequest.IsEmpty}} + {{if .IsBlockedByApprovals}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.blocked_by_approvals" .GrantedApprovals .ProtectedBranch.RequiredApprovals}} +
    + {{else if .IsBlockedByRejection}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.blocked_by_rejection"}} +
    + {{else if .IsBlockedByOfficialReviewRequests}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.blocked_by_official_review_requests"}} +
    + {{else if .IsBlockedByOutdatedBranch}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.blocked_by_outdated_branch"}} +
    + {{else if .IsBlockedByChangedProtectedFiles}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.TrN $.ChangedProtectedFilesNum "repo.pulls.blocked_by_changed_protected_files_1" "repo.pulls.blocked_by_changed_protected_files_n"}} +
    +
      + {{range .ChangedProtectedFiles}} +
    • {{.}}
    • + {{end}} +
    + {{else if and .EnableStatusCheck (or .RequiredStatusCheckState.IsError .RequiredStatusCheckState.IsFailure)}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.required_status_check_failed"}} +
    + {{else if and .EnableStatusCheck (not .RequiredStatusCheckState.IsSuccess)}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.required_status_check_missing"}} +
    + {{else if and .AllowMerge .RequireSigned (not .WillSign)}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.require_signed_wont_sign"}} +
    +
    + {{svg "octicon-unlock"}} + {{ctx.Locale.Tr (printf "repo.signing.wont_sign.%s" .WontSignReason)}} +
    + {{end}} + + {{$notAllOverridableChecksOk := or .IsBlockedByApprovals .IsBlockedByRejection .IsBlockedByOfficialReviewRequests .IsBlockedByOutdatedBranch .IsBlockedByChangedProtectedFiles (and .EnableStatusCheck (not .RequiredStatusCheckState.IsSuccess))}} + + {{/* admin can merge without checks, writer can merge when checks succeed */}} + {{$canMergeNow := and (or $.IsRepoAdmin (not $notAllOverridableChecksOk)) (or (not .AllowMerge) (not .RequireSigned) .WillSign)}} + {{/* admin and writer both can make an auto merge schedule */}} + + {{if $canMergeNow}} + {{if $notAllOverridableChecksOk}} +
    + {{svg "octicon-dot-fill"}} + {{ctx.Locale.Tr "repo.pulls.required_status_check_administrator"}} +
    + {{else}} +
    + {{svg "octicon-check"}} + {{ctx.Locale.Tr "repo.pulls.can_auto_merge_desc"}} +
    + {{end}} + {{if .WillSign}} +
    + {{svg "octicon-lock" 16 "text green"}} + {{ctx.Locale.Tr "repo.signing.will_sign" .SigningKey}} +
    + {{else if .IsSigned}} +
    + {{svg "octicon-unlock"}} + {{ctx.Locale.Tr (printf "repo.signing.wont_sign.%s" .WontSignReason)}} +
    + {{end}} + {{end}} + {{template "repo/issue/view_content/update_branch_by_merge" $}} + {{if .Issue.PullRequest.IsEmpty}} +
    + +
    + {{svg "octicon-alert"}} + {{ctx.Locale.Tr "repo.pulls.is_empty"}} +
    + {{end}} + + {{if .AllowMerge}} {{/* user is allowed to merge */}} + {{$prUnit := .Repository.MustGetUnit $.Context ctx.Consts.RepoUnitTypePullRequests}} + {{$approvers := (.Issue.PullRequest.GetApprovers ctx)}} + {{if or $prUnit.PullRequestsConfig.AllowMerge $prUnit.PullRequestsConfig.AllowRebase $prUnit.PullRequestsConfig.AllowRebaseMerge $prUnit.PullRequestsConfig.AllowSquash $prUnit.PullRequestsConfig.AllowFastForwardOnly}} + {{$hasPendingPullRequestMergeTip := ""}} + {{if .HasPendingPullRequestMerge}} + {{$createdPRMergeStr := TimeSinceUnix .PendingPullRequestMerge.CreatedUnix ctx.Locale}} + {{$hasPendingPullRequestMergeTip = ctx.Locale.Tr "repo.pulls.auto_merge_has_pending_schedule" .PendingPullRequestMerge.Doer.Name $createdPRMergeStr}} + {{end}} +
    + + + {{$showGeneralMergeForm = true}} +
    + {{else}} + {{/* no merge style was set in repo setting: not or ($prUnit.PullRequestsConfig.AllowMerge ...) */}} +
    +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.no_merge_desc"}} +
    +
    + {{svg "octicon-info"}} + {{ctx.Locale.Tr "repo.pulls.no_merge_helper"}} +
    + {{end}} {{/* end if the repo was set to use any merge style */}} + {{else}} + {{/* user is not allowed to merge */}} +
    +
    + {{svg "octicon-info"}} + {{ctx.Locale.Tr "repo.pulls.no_merge_access"}} +
    + {{end}} {{/* end if user is allowed to merge or not */}} + {{else}} + {{/* Merge conflict without specific file. Suggest manual merge, only if all reviews and status checks OK. */}} + {{if .IsBlockedByApprovals}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.blocked_by_approvals" .GrantedApprovals .ProtectedBranch.RequiredApprovals}} +
    + {{else if .IsBlockedByRejection}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.blocked_by_rejection"}} +
    + {{else if .IsBlockedByOfficialReviewRequests}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.blocked_by_official_review_requests"}} +
    + {{else if .IsBlockedByOutdatedBranch}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.blocked_by_outdated_branch"}} +
    + {{else if .IsBlockedByChangedProtectedFiles}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.TrN $.ChangedProtectedFilesNum "repo.pulls.blocked_by_changed_protected_files_1" "repo.pulls.blocked_by_changed_protected_files_n"}} +
    +
      + {{range .ChangedProtectedFiles}} +
    • {{.}}
    • + {{end}} +
    + {{else if and .EnableStatusCheck (not .RequiredStatusCheckState.IsSuccess)}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.required_status_check_failed"}} +
    + {{else if and .RequireSigned (not .WillSign)}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.require_signed_wont_sign"}} +
    + {{else}} +
    + {{svg "octicon-x"}} + {{ctx.Locale.Tr "repo.pulls.cannot_auto_merge_desc"}} +
    +
    + {{svg "octicon-info"}} + {{ctx.Locale.Tr "repo.pulls.cannot_auto_merge_helper"}} +
    + {{end}} + {{end}}{{/* end if: pull request status */}} + + {{/* + Manually Merged is not a well-known feature, it is used to mark a non-mergeable PR (already merged, conflicted) as merged + To test it: + * Enable "Manually Merged" feature in the Repository Settings + * Create a pull request, either: + * - Merge the pull request branch locally and push the merged commit to Gitea + * - Make some conflicts between the base branch and the pull request branch + * Then the Manually Merged form will be shown in the merge form + */}} + {{if and $.StillCanManualMerge (not $showGeneralMergeForm)}} +
    +
    {{/* another similar form is in PullRequestMergeForm.vue*/}} + {{.CsrfTokenHtml}} +
    + +
    + +
    + {{end}} + + {{if and .Issue.PullRequest.HeadRepo (not .Issue.PullRequest.HasMerged) (not .Issue.IsClosed)}} + {{template "repo/issue/view_content/pull_merge_instruction" dict "PullRequest" .Issue.PullRequest "ShowMergeInstructions" .ShowMergeInstructions}} + {{end}} +
    +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/issue/view_content/pull_merge_instruction.tmpl b/data/gitea/templates/repo/issue/view_content/pull_merge_instruction.tmpl new file mode 100644 index 0000000..bb59b49 --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/pull_merge_instruction.tmpl @@ -0,0 +1,49 @@ +
    +
    {{ctx.Locale.Tr "repo.pulls.cmd_instruction_hint"}}
    +
    +

    {{ctx.Locale.Tr "repo.pulls.cmd_instruction_checkout_title"}}

    {{ctx.Locale.Tr "repo.pulls.cmd_instruction_checkout_desc"}}
    + {{$localBranch := .PullRequest.HeadBranch}} + {{if ne .PullRequest.HeadRepo.ID .PullRequest.BaseRepo.ID}} + {{$localBranch = print .PullRequest.HeadRepo.OwnerName "-" .PullRequest.HeadBranch}} + {{end}} +
    + {{if eq .PullRequest.Flow 0}} +
    git fetch -u {{if ne .PullRequest.HeadRepo.ID .PullRequest.BaseRepo.ID}}{{else}}origin{{end}} {{.PullRequest.HeadBranch}}:{{$localBranch}}
    + {{else}} +
    git fetch -u origin {{.PullRequest.GetGitRefName}}:{{$localBranch}}
    + {{end}} +
    git checkout {{$localBranch}}
    +
    + {{if .ShowMergeInstructions}} +

    {{ctx.Locale.Tr "repo.pulls.cmd_instruction_merge_title"}}

    {{ctx.Locale.Tr "repo.pulls.cmd_instruction_merge_desc"}}
    +
    +
    +
    git checkout {{.PullRequest.BaseBranch}}
    +
    git merge --no-ff {{$localBranch}}
    +
    +
    +
    git checkout {{.PullRequest.BaseBranch}}
    +
    git merge --ff-only {{$localBranch}}
    +
    +
    +
    git checkout {{$localBranch}}
    +
    git rebase {{.PullRequest.BaseBranch}}
    +
    git checkout {{.PullRequest.BaseBranch}}
    +
    git merge --no-ff {{$localBranch}}
    +
    +
    +
    git checkout {{.PullRequest.BaseBranch}}
    +
    git merge --squash {{$localBranch}}
    +
    +
    +
    git checkout {{.PullRequest.BaseBranch}}
    +
    git merge --ff-only {{$localBranch}}
    +
    +
    +
    git checkout {{.PullRequest.BaseBranch}}
    +
    git merge {{$localBranch}}
    +
    +
    git push origin {{.PullRequest.BaseBranch}}
    +
    + {{end}} +
    diff --git a/data/gitea/templates/repo/issue/view_content/reactions.tmpl b/data/gitea/templates/repo/issue/view_content/reactions.tmpl new file mode 100644 index 0000000..0011efe --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/reactions.tmpl @@ -0,0 +1,17 @@ +
    +{{range $key, $value := .Reactions}} + {{$hasReacted := $value.HasUser ctx.RootData.SignedUserID}} + + {{ReactionToEmoji $key}} + {{len $value}} + +{{end}} +{{if AllowedReactions}} + {{template "repo/issue/view_content/add_reaction" dict "ActionURL" .ActionURL}} +{{end}} +
    diff --git a/data/gitea/templates/repo/issue/view_content/reference_issue_dialog.tmpl b/data/gitea/templates/repo/issue/view_content/reference_issue_dialog.tmpl new file mode 100644 index 0000000..d6c9081 --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/reference_issue_dialog.tmpl @@ -0,0 +1,28 @@ + diff --git a/data/gitea/templates/repo/issue/view_content/show_role.tmpl b/data/gitea/templates/repo/issue/view_content/show_role.tmpl new file mode 100644 index 0000000..40c8b67 --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/show_role.tmpl @@ -0,0 +1,10 @@ +{{if and .ShowRole.IsPoster (not .IgnorePoster)}} +
    + {{ctx.Locale.Tr "repo.issues.author"}} +
    +{{end}} +{{if .ShowRole.RoleInRepo}} +
    + {{.ShowRole.RoleInRepo.LocaleString ctx.Locale}} +
    +{{end}} diff --git a/data/gitea/templates/repo/issue/view_content/sidebar.tmpl b/data/gitea/templates/repo/issue/view_content/sidebar.tmpl new file mode 100644 index 0000000..bb0bb2c --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/sidebar.tmpl @@ -0,0 +1,691 @@ +
    + {{template "repo/issue/branch_selector_field" .}} + {{if .Issue.IsPull}} + + + +
    + {{ctx.Locale.Tr "repo.issues.new.no_reviewers"}} +
    + {{range .PullReviewers}} +
    +
    + {{if .User}} + {{ctx.AvatarUtils.Avatar .User 20 "tw-mr-2"}}{{.User.GetDisplayName}} + {{else if .Team}} + {{svg "octicon-people" 20 "tw-mr-2"}}{{$.Issue.Repo.OwnerName}}/{{.Team.Name}} + {{end}} +
    +
    + {{if (and $.Permission.IsAdmin (or (eq .Review.Type 1) (eq .Review.Type 3)) (not $.Issue.IsClosed) (not $.Issue.PullRequest.HasMerged))}} + + {{svg "octicon-x" 20}} + + + {{end}} + {{if .Review.Stale}} + + {{svg "octicon-hourglass" 16}} + + {{end}} + {{if and .CanChange (or .Checked (and (not $.Issue.IsClosed) (not $.Issue.PullRequest.HasMerged)))}} + {{if .Checked}}{{svg "octicon-trash"}}{{else}}{{svg "octicon-sync"}}{{end}} + {{end}} + {{svg (printf "octicon-%s" .Review.Type.Icon) 16 (printf "text %s" (.Review.HTMLTypeColorName))}} +
    +
    + {{end}} + {{range .OriginalReviews}} +
    + +
    + {{svg (printf "octicon-%s" .Type.Icon) 16 (printf "text %s" (.HTMLTypeColorName))}} +
    +
    + {{end}} +
    +
    + {{if and (or .HasIssuesOrPullsWritePermission .IsIssuePoster) (not .HasMerged) (not .Issue.IsClosed) (not .IsPullWorkInProgress)}} + + {{end}} +
    + {{end}} + + {{template "repo/issue/labels/labels_selector_field" .}} + {{template "repo/issue/labels/labels_sidebar" dict "root" $}} + +
    + + +
    + {{ctx.Locale.Tr "repo.issues.new.no_milestone"}} + +
    + + {{if .IsProjectsEnabled}} +
    + + +
    + {{ctx.Locale.Tr "repo.issues.new.no_projects"}} + +
    + {{end}} + +
    + + + +
    + {{ctx.Locale.Tr "repo.issues.new.no_assignees"}} +
    + {{range .Issue.Assignees}} + + {{end}} +
    +
    + +
    + + {{if .Participants}} + {{ctx.Locale.Tr "repo.issues.num_participants" .NumParticipants}} +
    + {{range .Participants}} + + {{ctx.AvatarUtils.Avatar . 28 "tw-my-0.5 tw-mr-1"}} + + {{end}} +
    + {{end}} + + {{if and $.IssueWatch (not .Repository.IsArchived)}} +
    + +
    + {{ctx.Locale.Tr "notification.notifications"}} +
    + {{template "repo/issue/view_content/watching" .}} +
    +
    + {{end}} + {{if .Repository.IsTimetrackerEnabled $.Context}} + {{if and .CanUseTimetracker (not .Repository.IsArchived)}} +
    +
    + {{ctx.Locale.Tr "repo.issues.tracker"}} +
    +
    + {{$.CsrfTokenHtml}} +
    +
    + {{$.CsrfTokenHtml}} +
    + {{if $.IsStopwatchRunning}} + + + {{else}} + {{if .HasUserStopwatch}} +
    + {{ctx.Locale.Tr "repo.issues.tracking_already_started" .OtherStopwatchURL}} +
    + {{end}} + + + + {{end}} +
    +
    + {{end}} + {{if .WorkingUsers}} +
    +
    + {{ctx.Locale.Tr "repo.issues.time_spent_from_all_authors" ($.Issue.TotalTrackedTime | Sec2Time)}} +
    + {{range $user, $trackedtime := .WorkingUsers}} +
    + + {{ctx.AvatarUtils.Avatar $user}} + +
    + {{template "shared/user/authorlink" $user}} +
    + {{$trackedtime|Sec2Time}} +
    +
    +
    + {{end}} +
    +
    + {{end}} + {{end}} + +
    + {{ctx.Locale.Tr "repo.issues.due_date"}} +
    +
    + {{svg "octicon-x" 16 "close icon"}} + {{ctx.Locale.Tr "repo.issues.due_date_invalid"}} +
    + {{if ne .Issue.DeadlineUnix 0}} +

    +

    +
    + {{svg "octicon-calendar" 16 "tw-mr-2"}} + {{DateTime "long" .Issue.DeadlineUnix.FormatDate}} +
    +
    + {{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}} + {{svg "octicon-pencil" 16 "tw-mr-1"}} + {{svg "octicon-trash"}} + {{end}} +
    +
    +

    + {{else}} +

    {{ctx.Locale.Tr "repo.issues.due_date_not_set"}}

    + {{end}} + + {{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}} +
    +
    + {{$.CsrfTokenHtml}} + + +
    +
    + {{end}} +
    + + {{if .Repository.IsDependenciesEnabled $.Context}} +
    + +
    + {{if (and (not .BlockedByDependencies) (not .BlockedByDependenciesNotPermitted) (not .BlockingDependencies) (not .BlockingDependenciesNotPermitted))}} + {{ctx.Locale.Tr "repo.issues.dependency.title"}} +
    +

    + {{if .Issue.IsPull}} + {{ctx.Locale.Tr "repo.issues.dependency.pr_no_dependencies"}} + {{else}} + {{ctx.Locale.Tr "repo.issues.dependency.issue_no_dependencies"}} + {{end}} +

    + {{end}} + + {{if or .BlockingDependencies .BlockingDependenciesNotPermitted}} + + {{ctx.Locale.Tr "repo.issues.dependency.blocks_short"}} + +
    + {{range .BlockingDependencies}} +
    +
    + + #{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}} + +
    + {{.Repository.OwnerName}}/{{.Repository.Name}} +
    +
    +
    + {{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}} + + {{svg "octicon-trash" 16}} + + {{end}} +
    +
    + {{end}} + {{if .BlockingDependenciesNotPermitted}} +
    + {{ctx.Locale.TrN (len .BlockingDependenciesNotPermitted) "repo.issues.dependency.no_permission_1" "repo.issues.dependency.no_permission_n" (len .BlockingDependenciesNotPermitted)}} +
    + {{end}} +
    + {{end}} + + {{if or .BlockedByDependencies .BlockedByDependenciesNotPermitted}} + + {{ctx.Locale.Tr "repo.issues.dependency.blocked_by_short"}} + +
    + {{range .BlockedByDependencies}} +
    +
    + + #{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}} + +
    + {{.Repository.OwnerName}}/{{.Repository.Name}} +
    +
    +
    + {{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}} + + {{svg "octicon-trash" 16}} + + {{end}} +
    +
    + {{end}} + {{if $.CanCreateIssueDependencies}} + {{range .BlockedByDependenciesNotPermitted}} +
    +
    +
    + {{svg "octicon-lock" 16}} + + #{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}} + +
    +
    + {{.Repository.OwnerName}}/{{.Repository.Name}} +
    +
    +
    + {{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}} + + {{svg "octicon-trash" 16}} + + {{end}} +
    +
    + {{end}} + {{else if .BlockedByDependenciesNotPermitted}} +
    + {{ctx.Locale.TrN (len .BlockedByDependenciesNotPermitted) "repo.issues.dependency.no_permission_1" "repo.issues.dependency.no_permission_n" (len .BlockedByDependenciesNotPermitted)}} +
    + {{end}} +
    + {{end}} + + {{if and .CanCreateIssueDependencies (not .Repository.IsArchived)}} +
    +
    + {{$.CsrfTokenHtml}} +
    + + +
    +
    +
    + {{end}} +
    + + {{if and .CanCreateIssueDependencies (not .Repository.IsArchived)}} + + + + {{end}} + {{end}} + +
    +
    + {{$issueReferenceLink := printf "%s#%d" .Issue.Repo.FullName .Issue.Index}} +
    + {{ctx.Locale.Tr "repo.issues.reference_link" $issueReferenceLink}} + +
    +
    + + {{if and .IsRepoAdmin (not .Repository.IsArchived)}} +
    + + {{if or .PinEnabled .Issue.IsPinned}} +
    + {{$.CsrfTokenHtml}} + +
    + {{end}} + + + + + + {{end}} + + {{if and .Issue.IsPull .IsIssuePoster (not .Issue.IsClosed) .Issue.PullRequest.HeadRepo}} + {{if and (not (eq .Issue.PullRequest.HeadRepo.FullName .Issue.PullRequest.BaseRepo.FullName)) .CanWriteToHeadRepo}} +
    +
    +
    + + +
    +
    + {{end}} + {{end}} +
    diff --git a/data/gitea/templates/repo/issue/view_content/update_branch_by_merge.tmpl b/data/gitea/templates/repo/issue/view_content/update_branch_by_merge.tmpl new file mode 100644 index 0000000..adce052 --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/update_branch_by_merge.tmpl @@ -0,0 +1,37 @@ +{{if and (gt $.Issue.PullRequest.CommitsBehind 0) (not $.Issue.IsClosed) (not $.Issue.PullRequest.IsChecking) (not $.IsPullFilesConflicted) (not $.IsPullRequestBroken)}} +
    +
    +
    + {{svg "octicon-alert"}} + {{ctx.Locale.Tr "repo.pulls.outdated_with_base_branch"}} +
    +
    + {{if and $.UpdateAllowed $.UpdateByRebaseAllowed}} +
    +
    + + +
    +
    + {{end}} + {{if and $.UpdateAllowed (not $.UpdateByRebaseAllowed)}} +
    + {{$.CsrfTokenHtml}} + +
    + {{end}} +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/issue/view_content/watching.tmpl b/data/gitea/templates/repo/issue/view_content/watching.tmpl new file mode 100644 index 0000000..05936d0 --- /dev/null +++ b/data/gitea/templates/repo/issue/view_content/watching.tmpl @@ -0,0 +1,12 @@ +
    + + +
    diff --git a/data/gitea/templates/repo/issue/view_title.tmpl b/data/gitea/templates/repo/issue/view_title.tmpl new file mode 100644 index 0000000..58d3759 --- /dev/null +++ b/data/gitea/templates/repo/issue/view_title.tmpl @@ -0,0 +1,124 @@ +{{if .Flash}} +
    + {{template "base/alert" .}} +
    +{{end}} +
    + {{$canEditIssueTitle := and (or .HasIssuesOrPullsWritePermission .IsIssuePoster) (not .Repository.IsArchived)}} +
    +

    + {{RenderIssueTitle $.Context .Issue.Title ($.Repository.ComposeMetas ctx) | RenderCodeBlock}} + #{{.Issue.Index}} +

    +
    + {{if $canEditIssueTitle}} + + {{end}} + {{if not .Issue.IsPull}} + {{ctx.Locale.Tr "repo.issues.new"}} + {{end}} +
    +
    + {{if $canEditIssueTitle}} +
    +
    + +
    +
    + + +
    +
    + {{end}} +
    + {{if .HasMerged}} +
    {{svg "octicon-git-merge" 16 "tw-mr-1"}} {{if eq .Issue.PullRequest.Status 3}}{{ctx.Locale.Tr "repo.pulls.manually_merged"}}{{else}}{{ctx.Locale.Tr "repo.pulls.merged"}}{{end}}
    + {{else if .Issue.IsClosed}} +
    {{if .Issue.IsPull}}{{svg "octicon-git-pull-request"}}{{else}}{{svg "octicon-issue-closed"}}{{end}} {{ctx.Locale.Tr "repo.issues.closed_title"}}
    + {{else if .Issue.IsPull}} + {{if .IsPullWorkInProgress}} +
    {{svg "octicon-git-pull-request-draft"}} {{ctx.Locale.Tr "repo.issues.draft_title"}}
    + {{else}} +
    {{svg "octicon-git-pull-request"}} {{ctx.Locale.Tr "repo.issues.open_title"}}
    + {{end}} + {{else}} +
    {{svg "octicon-issue-opened"}} {{ctx.Locale.Tr "repo.issues.open_title"}}
    + {{end}} +
    + {{if .Issue.IsPull}} + {{$headHref := .HeadTarget}} + {{if .HeadBranchLink}} + {{$headHref = HTMLFormat `%s` .HeadBranchLink $headHref}} + {{end}} + {{$headHref = HTMLFormat `%s ` $headHref (ctx.Locale.Tr "copy_branch") .HeadTarget (svg "octicon-copy" 14)}} + {{$baseHref := .BaseTarget}} + {{if .BaseBranchLink}} + {{$baseHref = HTMLFormat `%s` .BaseBranchLink $baseHref}} + {{end}} + {{if .Issue.PullRequest.HasMerged}} + {{$mergedStr:= TimeSinceUnix .Issue.PullRequest.MergedUnix ctx.Locale}} + {{if .Issue.OriginalAuthor}} + {{.Issue.OriginalAuthor}} + {{ctx.Locale.Tr "repo.pulls.merged_title_desc" .NumCommits $headHref $baseHref $mergedStr}} + {{else}} + {{.Issue.PullRequest.Merger.GetDisplayName}} + {{ctx.Locale.Tr "repo.pulls.merged_title_desc" .NumCommits $headHref $baseHref $mergedStr}} + {{end}} + {{else}} + {{if .Issue.OriginalAuthor}} + {{.Issue.OriginalAuthor}} {{ctx.Locale.Tr "repo.pulls.title_desc" .NumCommits $headHref $baseHref}} + {{else}} + + {{.Issue.Poster.GetDisplayName}} + {{ctx.Locale.Tr "repo.pulls.title_desc" .NumCommits $headHref $baseHref}} + + {{end}} + + + {{svg "octicon-arrow-right"}} + + + {{end}} + {{else}} + {{$createdStr:= TimeSinceUnix .Issue.CreatedUnix ctx.Locale}} + + {{if .Issue.OriginalAuthor}} + {{ctx.Locale.Tr "repo.issues.opened_by_fake" $createdStr .Issue.OriginalAuthor}} + {{else if gt .Issue.Poster.ID 0}} + {{ctx.Locale.Tr "repo.issues.opened_by" $createdStr .Issue.Poster.HomeLink .Issue.Poster.GetDisplayName}} + {{else}} + {{ctx.Locale.Tr "repo.issues.opened_by_fake" $createdStr .Issue.Poster.GetDisplayName}} + {{end}} + · + {{ctx.Locale.TrN .Issue.NumComments "repo.issues.num_comments_1" "repo.issues.num_comments" .Issue.NumComments}} + + {{end}} +
    +
    +
    diff --git a/data/gitea/templates/repo/latest_commit.tmpl b/data/gitea/templates/repo/latest_commit.tmpl new file mode 100644 index 0000000..8bacb42 --- /dev/null +++ b/data/gitea/templates/repo/latest_commit.tmpl @@ -0,0 +1,31 @@ +{{if not .LatestCommit}} +
    +{{else}} + {{if .LatestCommitUser}} + {{ctx.AvatarUtils.Avatar .LatestCommitUser 24 "tw-mr-1"}} + {{if and .LatestCommitUser.FullName DefaultShowFullName}} + {{.LatestCommitUser.FullName}} + {{else}} + {{if .LatestCommit.Author}}{{.LatestCommit.Author.Name}}{{else}}{{.LatestCommitUser.Name}}{{end}} + {{end}} + {{else}} + {{if .LatestCommit.Author}} + {{ctx.AvatarUtils.AvatarByEmail .LatestCommit.Author.Email .LatestCommit.Author.Name 24 "tw-mr-1"}} + {{.LatestCommit.Author.Name}} + {{end}} + {{end}} + + {{ShortSha .LatestCommit.ID.String}} + {{if .LatestCommit.Signature}} + {{template "repo/shabox_badge" dict "root" $ "verification" .LatestCommitVerification}} + {{end}} + + {{template "repo/commit_statuses" dict "Status" .LatestCommitStatus "Statuses" .LatestCommitStatuses}} + {{$commitLink:= printf "%s/commit/%s" .RepoLink (PathEscape .LatestCommit.ID.String)}} + {{RenderCommitMessageLinkSubject $.Context .LatestCommit.Message $commitLink ($.Repository.ComposeMetas ctx)}} + {{if IsMultilineCommitMessage .LatestCommit.Message}} + +
    {{RenderCommitBody $.Context .LatestCommit.Message ($.Repository.ComposeMetas ctx)}}
    + {{end}} +
    +{{end}} diff --git a/data/gitea/templates/repo/migrate/codebase.tmpl b/data/gitea/templates/repo/migrate/codebase.tmpl new file mode 100644 index 0000000..c8059b7 --- /dev/null +++ b/data/gitea/templates/repo/migrate/codebase.tmpl @@ -0,0 +1,116 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "repo.migrate.migrate" .service.Title}} + +

    +
    + {{template "base/alert" .}} +
    + + + + {{ctx.Locale.Tr "repo.migrate.clone_address_desc"}}{{if .ContextUser.CanImportLocal}} {{ctx.Locale.Tr "repo.migrate.clone_local_path"}}{{end}} + +
    + +
    + + +
    +
    + + +
    + + {{template "repo/migrate/options" .}} + +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + +
    + + +
    + +
    + + +
    +
    + +
    + {{if .IsForcedPrivate}} + + + {{else}} + + + {{end}} +
    +
    +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/migrate/git.tmpl b/data/gitea/templates/repo/migrate/git.tmpl new file mode 100644 index 0000000..9c5f0d7 --- /dev/null +++ b/data/gitea/templates/repo/migrate/git.tmpl @@ -0,0 +1,90 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "repo.migrate.migrate" .service.Title}} + +

    +
    + {{template "base/alert" .}} +
    + + + + {{ctx.Locale.Tr "repo.migrate.clone_address_desc"}}{{if .ContextUser.CanImportLocal}} {{ctx.Locale.Tr "repo.migrate.clone_local_path"}}{{end}} + +
    +
    + + +
    +
    + + +
    + + {{template "repo/migrate/options" .}} + +
    + +
    + + +
    + +
    + + +
    +
    + +
    + {{if .IsForcedPrivate}} + + + {{else}} + + + {{end}} +
    +
    +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/migrate/gitbucket.tmpl b/data/gitea/templates/repo/migrate/gitbucket.tmpl new file mode 100644 index 0000000..b667fa8 --- /dev/null +++ b/data/gitea/templates/repo/migrate/gitbucket.tmpl @@ -0,0 +1,132 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "repo.migrate.migrate" .service.Title}} + +

    +
    + {{template "base/alert" .}} +
    + + + + {{ctx.Locale.Tr "repo.migrate.clone_address_desc"}}{{if .ContextUser.CanImportLocal}} {{ctx.Locale.Tr "repo.migrate.clone_local_path"}}{{end}} + +
    + +
    + + +
    +
    + + +
    + + {{template "repo/migrate/options" .}} + +
    + +
    + + +
    +
    + +
    + {{ctx.Locale.Tr "repo.migrate.migrate_items_options"}} +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    +
    + +
    + +
    + + +
    + +
    + + +
    +
    + +
    + {{if .IsForcedPrivate}} + + + {{else}} + + + {{end}} +
    +
    +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/migrate/gitea.tmpl b/data/gitea/templates/repo/migrate/gitea.tmpl new file mode 100644 index 0000000..3b8f377 --- /dev/null +++ b/data/gitea/templates/repo/migrate/gitea.tmpl @@ -0,0 +1,128 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "repo.migrate.migrate" .service.Title}} + +

    +
    + {{template "base/alert" .}} +
    + + + + {{ctx.Locale.Tr "repo.migrate.clone_address_desc"}}{{if .ContextUser.CanImportLocal}} {{ctx.Locale.Tr "repo.migrate.clone_local_path"}}{{end}} + +
    + +
    + + + {{svg "octicon-question"}} +
    + + {{template "repo/migrate/options" .}} + +
    + +
    + + +
    +
    + +
    + {{ctx.Locale.Tr "repo.migrate.migrate_items_options"}} +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    +
    + +
    + +
    + + +
    + +
    + + +
    +
    + +
    + {{if .IsForcedPrivate}} + + + {{else}} + + + {{end}} +
    +
    +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/migrate/github.tmpl b/data/gitea/templates/repo/migrate/github.tmpl new file mode 100644 index 0000000..3535edd --- /dev/null +++ b/data/gitea/templates/repo/migrate/github.tmpl @@ -0,0 +1,130 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "repo.migrate.migrate" .service.Title}} + +

    +
    + {{template "base/alert" .}} +
    + + + + {{ctx.Locale.Tr "repo.migrate.clone_address_desc"}} + +
    + +
    + + + {{svg "octicon-question"}} + + {{ctx.Locale.Tr "repo.migrate.github_token_desc"}} + +
    + + {{template "repo/migrate/options" .}} + +
    + +
    + + +
    +
    +
    + {{ctx.Locale.Tr "repo.migrate.migrate_items_options"}} +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    +
    + +
    + +
    + + +
    + +
    + + +
    +
    + +
    + {{if .IsForcedPrivate}} + + + {{else}} + + + {{end}} +
    +
    +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/migrate/gitlab.tmpl b/data/gitea/templates/repo/migrate/gitlab.tmpl new file mode 100644 index 0000000..f705fb3 --- /dev/null +++ b/data/gitea/templates/repo/migrate/gitlab.tmpl @@ -0,0 +1,127 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "repo.migrate.migrate" .service.Title}} + +

    +
    + {{template "base/alert" .}} +
    + + + + {{ctx.Locale.Tr "repo.migrate.clone_address_desc"}}{{if .ContextUser.CanImportLocal}} {{ctx.Locale.Tr "repo.migrate.clone_local_path"}}{{end}} + +
    + +
    + + + {{svg "octicon-question"}} +
    + + {{template "repo/migrate/options" .}} + +
    + +
    + + +
    +
    +
    + {{ctx.Locale.Tr "repo.migrate.migrate_items_options"}} +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    +
    + +
    + +
    + + +
    + +
    + + +
    +
    + +
    + {{if .IsForcedPrivate}} + + + {{else}} + + + {{end}} +
    +
    +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/migrate/gogs.tmpl b/data/gitea/templates/repo/migrate/gogs.tmpl new file mode 100644 index 0000000..eca83b1 --- /dev/null +++ b/data/gitea/templates/repo/migrate/gogs.tmpl @@ -0,0 +1,130 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "repo.migrate.migrate" .service.Title}} + +

    +
    + {{template "base/alert" .}} +
    + + + + {{ctx.Locale.Tr "repo.migrate.clone_address_desc"}}{{if .ContextUser.CanImportLocal}} {{ctx.Locale.Tr "repo.migrate.clone_local_path"}}{{end}} + +
    + +
    + + + +
    + + {{template "repo/migrate/options" .}} + +
    + +
    + + +
    +
    + +
    + {{ctx.Locale.Tr "repo.migrate.migrate_items_options"}} +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    + +
    + +
    + +
    + + +
    + +
    + + +
    +
    + +
    + {{if .IsForcedPrivate}} + + + {{else}} + + + {{end}} +
    +
    +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/migrate/helper.tmpl b/data/gitea/templates/repo/migrate/helper.tmpl new file mode 100644 index 0000000..e69de29 diff --git a/data/gitea/templates/repo/migrate/migrate.tmpl b/data/gitea/templates/repo/migrate/migrate.tmpl new file mode 100644 index 0000000..c5c697e --- /dev/null +++ b/data/gitea/templates/repo/migrate/migrate.tmpl @@ -0,0 +1,32 @@ +{{template "base/head" .}} + +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/migrate/migrating.tmpl b/data/gitea/templates/repo/migrate/migrating.tmpl new file mode 100644 index 0000000..bc07b48 --- /dev/null +++ b/data/gitea/templates/repo/migrate/migrating.tmpl @@ -0,0 +1,101 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +
    +
    + {{template "base/alert" .}} +
    +
    +
    +
    + +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    +

    {{ctx.Locale.Tr "repo.migrate.migrating" .CloneAddr}}

    +

    +
    +
    + {{if .CloneAddr}} +

    {{ctx.Locale.Tr "repo.migrate.migrating_failed" .CloneAddr}}

    + {{else}} +

    {{ctx.Locale.Tr "repo.migrate.migrating_failed_no_addr"}}

    + {{end}} +

    +
    + {{if .Permission.IsAdmin}} +
    +
    + {{if .Failed}} + + {{else}} + + {{end}} + +
    + {{end}} +
    +
    +
    +
    +
    +
    +
    + + + + + +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/migrate/onedev.tmpl b/data/gitea/templates/repo/migrate/onedev.tmpl new file mode 100644 index 0000000..e1aad96 --- /dev/null +++ b/data/gitea/templates/repo/migrate/onedev.tmpl @@ -0,0 +1,116 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "repo.migrate.migrate" .service.Title}} + +

    +
    + {{template "base/alert" .}} +
    + + + + {{ctx.Locale.Tr "repo.migrate.clone_address_desc"}}{{if .ContextUser.CanImportLocal}} {{ctx.Locale.Tr "repo.migrate.clone_local_path"}}{{end}} + +
    + +
    + + +
    +
    + + +
    + + {{template "repo/migrate/options" .}} + +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    + + +
    +
    +
    + +
    + +
    + + +
    + +
    + + +
    +
    + +
    + {{if .IsForcedPrivate}} + + + {{else}} + + + {{end}} +
    +
    +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/migrate/options.tmpl b/data/gitea/templates/repo/migrate/options.tmpl new file mode 100644 index 0000000..8a46e57 --- /dev/null +++ b/data/gitea/templates/repo/migrate/options.tmpl @@ -0,0 +1,26 @@ +{{if not .DisableNewPullMirrors}} +
    + +
    + + +
    +
    +{{end}} +{{if .LFSActive}} +
    + +
    + + +
    + ({{ctx.Locale.Tr "repo.settings.advanced_settings"}}) +
    +
    + {{ctx.Locale.Tr "repo.migrate_options_lfs_endpoint.description" "https://github.com/git-lfs/git-lfs/blob/main/docs/api/server-discovery.md#server-discovery"}}{{if .ContextUser.CanImportLocal}} {{ctx.Locale.Tr "repo.migrate_options_lfs_endpoint.description.local"}}{{end}} +
    + + +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/navbar.tmpl b/data/gitea/templates/repo/navbar.tmpl new file mode 100644 index 0000000..b2471dc --- /dev/null +++ b/data/gitea/templates/repo/navbar.tmpl @@ -0,0 +1,14 @@ + diff --git a/data/gitea/templates/repo/packages.tmpl b/data/gitea/templates/repo/packages.tmpl new file mode 100644 index 0000000..14e32c1 --- /dev/null +++ b/data/gitea/templates/repo/packages.tmpl @@ -0,0 +1,8 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "package/shared/list" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/projects/list.tmpl b/data/gitea/templates/repo/projects/list.tmpl new file mode 100644 index 0000000..9eae401 --- /dev/null +++ b/data/gitea/templates/repo/projects/list.tmpl @@ -0,0 +1,8 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "projects/list" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/projects/new.tmpl b/data/gitea/templates/repo/projects/new.tmpl new file mode 100644 index 0000000..e70f3bc --- /dev/null +++ b/data/gitea/templates/repo/projects/new.tmpl @@ -0,0 +1,8 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "projects/new" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/projects/view.tmpl b/data/gitea/templates/repo/projects/view.tmpl new file mode 100644 index 0000000..05ad726 --- /dev/null +++ b/data/gitea/templates/repo/projects/view.tmpl @@ -0,0 +1,15 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +
    + {{template "repo/issue/navbar" .}} + {{ctx.Locale.Tr "repo.issues.new"}} +
    +
    +
    + {{template "projects/view" .}} +
    +
    + +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/pulls/commits.tmpl b/data/gitea/templates/repo/pulls/commits.tmpl new file mode 100644 index 0000000..bf6e812 --- /dev/null +++ b/data/gitea/templates/repo/pulls/commits.tmpl @@ -0,0 +1,10 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "repo/issue/view_title" .}} + {{template "repo/pulls/tab_menu" .}} + {{template "repo/commits_table" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/pulls/files.tmpl b/data/gitea/templates/repo/pulls/files.tmpl new file mode 100644 index 0000000..402bec8 --- /dev/null +++ b/data/gitea/templates/repo/pulls/files.tmpl @@ -0,0 +1,14 @@ +{{template "base/head" .}} + + + + +
    + {{template "repo/header" .}} +
    + {{template "repo/issue/view_title" .}} + {{template "repo/pulls/tab_menu" .}} + {{template "repo/diff/box" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/pulls/fork.tmpl b/data/gitea/templates/repo/pulls/fork.tmpl new file mode 100644 index 0000000..2cf0a85 --- /dev/null +++ b/data/gitea/templates/repo/pulls/fork.tmpl @@ -0,0 +1,90 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "new_fork"}} +

    +
    + {{template "base/alert" .}} +
    + + +
    + +
    + + {{.ForkRepo.FullName}} +
    +
    + + +
    +
    + +
    + + +
    + {{ctx.Locale.Tr "repo.fork_visibility_helper"}} +
    +
    + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/pulls/status.tmpl b/data/gitea/templates/repo/pulls/status.tmpl new file mode 100644 index 0000000..e8636ba --- /dev/null +++ b/data/gitea/templates/repo/pulls/status.tmpl @@ -0,0 +1,59 @@ +{{/* +Template Attributes: +* CommitStatus: summary of all commit status state +* CommitStatuses: all commit status elements +* MissingRequiredChecks: commit check contexts that are required by branch protection but not present +* ShowHideChecks: whether use a button to show/hide the checks +* is_context_required: Used in pull request commit status check table +*/}} + +{{if .CommitStatus}} +
    +
    + {{if or (eq .CommitStatus.State "pending") (.MissingRequiredChecks)}} + {{ctx.Locale.Tr "repo.pulls.status_checking"}} + {{else if eq .CommitStatus.State "success"}} + {{ctx.Locale.Tr "repo.pulls.status_checks_success"}} + {{else if eq .CommitStatus.State "warning"}} + {{ctx.Locale.Tr "repo.pulls.status_checks_warning"}} + {{else if eq .CommitStatus.State "failure"}} + {{ctx.Locale.Tr "repo.pulls.status_checks_failure"}} + {{else if eq .CommitStatus.State "error"}} + {{ctx.Locale.Tr "repo.pulls.status_checks_error"}} + {{else}} + {{ctx.Locale.Tr "repo.pulls.status_checking"}} + {{end}} + + {{if .ShowHideChecks}} +
    + +
    + {{end}} +
    + +
    + {{range .CommitStatuses}} +
    + {{template "repo/commit_status" .}} +
    {{.Context}} {{.Description}}
    +
    + {{if $.is_context_required}} + {{if (call $.is_context_required .Context)}}
    {{ctx.Locale.Tr "repo.pulls.status_checks_requested"}}
    {{end}} + {{end}} + {{if .TargetURL}}{{ctx.Locale.Tr "repo.pulls.status_checks_details"}}{{end}} +
    +
    + {{end}} + {{range .MissingRequiredChecks}} +
    + {{svg "octicon-dot-fill" 18 "commit-status icon text yellow"}} +
    {{.}}
    +
    {{ctx.Locale.Tr "repo.pulls.status_checks_requested"}}
    +
    + {{end}} +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/pulls/tab_menu.tmpl b/data/gitea/templates/repo/pulls/tab_menu.tmpl new file mode 100644 index 0000000..8b192c4 --- /dev/null +++ b/data/gitea/templates/repo/pulls/tab_menu.tmpl @@ -0,0 +1,28 @@ + diff --git a/data/gitea/templates/repo/pulse.tmpl b/data/gitea/templates/repo/pulse.tmpl new file mode 100644 index 0000000..e68109b --- /dev/null +++ b/data/gitea/templates/repo/pulse.tmpl @@ -0,0 +1,231 @@ +

    + {{DateTime "long" .DateFrom}} - {{DateTime "long" .DateUntil}} + + +

    + +{{if (or (.Permission.CanRead ctx.Consts.RepoUnitTypeIssues) (.Permission.CanRead ctx.Consts.RepoUnitTypePullRequests))}} +

    {{ctx.Locale.Tr "repo.activity.overview"}}

    +
    + {{if .Permission.CanRead ctx.Consts.RepoUnitTypePullRequests}} +
    + {{if gt .Activity.ActivePRCount 0}} +
    + {{if gt .Activity.MergedPRPerc 0}} + + {{end}} + +
    + {{else}} +
    + +
    + {{end}} + {{ctx.Locale.TrN .Activity.ActivePRCount "repo.activity.active_prs_count_1" "repo.activity.active_prs_count_n" .Activity.ActivePRCount}} +
    + {{end}} + {{if .Permission.CanRead ctx.Consts.RepoUnitTypeIssues}} +
    + {{if gt .Activity.ActiveIssueCount 0}} +
    + {{if gt .Activity.ClosedIssuePerc 0}} + + {{end}} + +
    + {{else}} +
    + +
    + {{end}} + {{ctx.Locale.TrN .Activity.ActiveIssueCount "repo.activity.active_issues_count_1" "repo.activity.active_issues_count_n" .Activity.ActiveIssueCount}} +
    + {{end}} +
    + +{{end}} + +{{if .Permission.CanRead ctx.Consts.RepoUnitTypeCode}} + {{if eq .Activity.Code.CommitCountInAllBranches 0}} +
    +

    {{ctx.Locale.Tr "repo.activity.no_git_activity"}}

    +
    + {{end}} + {{if gt .Activity.Code.CommitCountInAllBranches 0}} +
    +
    + {{ctx.Locale.Tr "repo.activity.git_stats_exclude_merges"}} + {{ctx.Locale.TrN .Activity.Code.AuthorCount "repo.activity.git_stats_author_1" "repo.activity.git_stats_author_n" .Activity.Code.AuthorCount}} + {{ctx.Locale.TrN .Activity.Code.AuthorCount "repo.activity.git_stats_pushed_1" "repo.activity.git_stats_pushed_n"}} + {{ctx.Locale.TrN .Activity.Code.CommitCount "repo.activity.git_stats_commit_1" "repo.activity.git_stats_commit_n" .Activity.Code.CommitCount}} + {{ctx.Locale.Tr "repo.activity.git_stats_push_to_branch" .Repository.DefaultBranch}} + {{ctx.Locale.TrN .Activity.Code.CommitCountInAllBranches "repo.activity.git_stats_commit_1" "repo.activity.git_stats_commit_n" .Activity.Code.CommitCountInAllBranches}} + {{ctx.Locale.Tr "repo.activity.git_stats_push_to_all_branches"}} + {{ctx.Locale.Tr "repo.activity.git_stats_on_default_branch" .Repository.DefaultBranch}} + {{ctx.Locale.TrN .Activity.Code.ChangedFiles "repo.activity.git_stats_file_1" "repo.activity.git_stats_file_n" .Activity.Code.ChangedFiles}} + {{ctx.Locale.TrN .Activity.Code.ChangedFiles "repo.activity.git_stats_files_changed_1" "repo.activity.git_stats_files_changed_n"}} + {{ctx.Locale.Tr "repo.activity.git_stats_additions"}} + {{ctx.Locale.TrN .Activity.Code.Additions "repo.activity.git_stats_addition_1" "repo.activity.git_stats_addition_n" .Activity.Code.Additions}} + {{ctx.Locale.Tr "repo.activity.git_stats_and_deletions"}} + {{ctx.Locale.TrN .Activity.Code.Deletions "repo.activity.git_stats_deletion_1" "repo.activity.git_stats_deletion_n" .Activity.Code.Deletions}}. +
    +
    +
    +
    +
    + {{end}} +{{end}} + +{{if gt .Activity.PublishedReleaseCount 0}} +

    + {{svg "octicon-tag" 16 "tw-mr-2"}} + {{ctx.Locale.Tr "repo.activity.title.releases_published_by" + (ctx.Locale.TrN .Activity.PublishedReleaseCount "repo.activity.title.releases_1" "repo.activity.title.releases_n" .Activity.PublishedReleaseCount) + (ctx.Locale.TrN .Activity.PublishedReleaseAuthorCount "repo.activity.title.user_1" "repo.activity.title.user_n" .Activity.PublishedReleaseAuthorCount) + }} +

    +
    + {{range .Activity.PublishedReleases}} +

    + {{ctx.Locale.Tr "repo.activity.published_release_label"}} + {{.TagName}} + {{if not .IsTag}} + {{.Title | RenderEmoji $.Context | RenderCodeBlock}} + {{end}} + {{TimeSinceUnix .CreatedUnix ctx.Locale}} +

    + {{end}} +
    +{{end}} + +{{if gt .Activity.MergedPRCount 0}} +

    + {{svg "octicon-git-pull-request" 16 "tw-mr-2"}} + {{ctx.Locale.Tr "repo.activity.title.prs_merged_by" + (ctx.Locale.TrN .Activity.MergedPRCount "repo.activity.title.prs_1" "repo.activity.title.prs_n" .Activity.MergedPRCount) + (ctx.Locale.TrN .Activity.MergedPRAuthorCount "repo.activity.title.user_1" "repo.activity.title.user_n" .Activity.MergedPRAuthorCount) + }} +

    +
    + {{range .Activity.MergedPRs}} +

    + {{ctx.Locale.Tr "repo.activity.merged_prs_label"}} + #{{.Index}} {{.Issue.Title | RenderEmoji $.Context | RenderCodeBlock}} + {{TimeSinceUnix .MergedUnix ctx.Locale}} +

    + {{end}} +
    +{{end}} + +{{if gt .Activity.OpenedPRCount 0}} +

    + {{svg "octicon-git-branch" 16 "tw-mr-2"}} + {{ctx.Locale.Tr "repo.activity.title.prs_opened_by" + (ctx.Locale.TrN .Activity.OpenedPRCount "repo.activity.title.prs_1" "repo.activity.title.prs_n" .Activity.OpenedPRCount) + (ctx.Locale.TrN .Activity.OpenedPRAuthorCount "repo.activity.title.user_1" "repo.activity.title.user_n" .Activity.OpenedPRAuthorCount) + }} +

    +
    + {{range .Activity.OpenedPRs}} +

    + {{ctx.Locale.Tr "repo.activity.opened_prs_label"}} + #{{.Index}} {{.Issue.Title | RenderEmoji $.Context | RenderCodeBlock}} + {{TimeSinceUnix .Issue.CreatedUnix ctx.Locale}} +

    + {{end}} +
    +{{end}} + +{{if gt .Activity.ClosedIssueCount 0}} +

    + {{svg "octicon-issue-closed" 16 "tw-mr-2"}} + {{ctx.Locale.Tr "repo.activity.title.issues_closed_from" + (ctx.Locale.TrN .Activity.ClosedIssueCount "repo.activity.title.issues_1" "repo.activity.title.issues_n" .Activity.ClosedIssueCount) + (ctx.Locale.TrN .Activity.ClosedIssueAuthorCount "repo.activity.title.user_1" "repo.activity.title.user_n" .Activity.ClosedIssueAuthorCount) + }} +

    +
    + {{range .Activity.ClosedIssues}} +

    + {{ctx.Locale.Tr "repo.activity.closed_issue_label"}} + #{{.Index}} {{.Title | RenderEmoji $.Context | RenderCodeBlock}} + {{TimeSinceUnix .ClosedUnix ctx.Locale}} +

    + {{end}} +
    +{{end}} + +{{if gt .Activity.OpenedIssueCount 0}} +

    + {{svg "octicon-issue-opened" 16 "tw-mr-2"}} + {{ctx.Locale.Tr "repo.activity.title.issues_created_by" + (ctx.Locale.TrN .Activity.OpenedIssueCount "repo.activity.title.issues_1" "repo.activity.title.issues_n" .Activity.OpenedIssueCount) + (ctx.Locale.TrN .Activity.OpenedIssueAuthorCount "repo.activity.title.user_1" "repo.activity.title.user_n" .Activity.OpenedIssueAuthorCount) + }} +

    +
    + {{range .Activity.OpenedIssues}} +

    + {{ctx.Locale.Tr "repo.activity.new_issue_label"}} + #{{.Index}} {{.Title | RenderEmoji $.Context | RenderCodeBlock}} + {{TimeSinceUnix .CreatedUnix ctx.Locale}} +

    + {{end}} +
    +{{end}} + +{{if gt .Activity.UnresolvedIssueCount 0}} +

    + {{svg "octicon-comment-discussion" 16 "tw-mr-2"}} + {{ctx.Locale.TrN .Activity.UnresolvedIssueCount "repo.activity.title.unresolved_conv_1" "repo.activity.title.unresolved_conv_n" .Activity.UnresolvedIssueCount}} +

    +
    + {{range .Activity.UnresolvedIssues}} +

    + {{ctx.Locale.Tr "repo.activity.unresolved_conv_label"}} + #{{.Index}} + {{if .IsPull}} + {{.Title | RenderEmoji $.Context | RenderCodeBlock}} + {{else}} + {{.Title | RenderEmoji $.Context | RenderCodeBlock}} + {{end}} + {{TimeSinceUnix .UpdatedUnix ctx.Locale}} +

    + {{end}} +
    +{{end}} diff --git a/data/gitea/templates/repo/recent_commits.tmpl b/data/gitea/templates/repo/recent_commits.tmpl new file mode 100644 index 0000000..cfa8fab --- /dev/null +++ b/data/gitea/templates/repo/recent_commits.tmpl @@ -0,0 +1,9 @@ +{{if .Permission.CanRead ctx.Consts.RepoUnitTypeCode}} +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/release/list.tmpl b/data/gitea/templates/repo/release/list.tmpl new file mode 100644 index 0000000..3454867 --- /dev/null +++ b/data/gitea/templates/repo/release/list.tmpl @@ -0,0 +1,114 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} + {{template "repo/release_tag_header" .}} + + + {{template "base/paginate" .}} +
    +
    + +{{if (and ($.Permission.CanWrite ctx.Consts.RepoUnitTypeCode) .PageIsTagList)}} + +{{end}} + +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/release/new.tmpl b/data/gitea/templates/repo/release/new.tmpl new file mode 100644 index 0000000..c01f9a4 --- /dev/null +++ b/data/gitea/templates/repo/release/new.tmpl @@ -0,0 +1,150 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +

    + {{if .PageIsEditRelease}} + {{ctx.Locale.Tr "repo.release.edit_release"}} +
    {{ctx.Locale.Tr "repo.release.edit_subheader"}}
    + {{else}} + {{ctx.Locale.Tr "repo.release.new_release"}} +
    {{ctx.Locale.Tr "repo.release.new_subheader"}}
    + {{end}} +

    + {{template "base/alert" .}} +
    + {{.CsrfTokenHtml}} +
    +
    + {{if .PageIsEditRelease}} + {{.tag_name}}@{{.tag_target}} + {{else}} + + +
    + @ + +
    +
    + {{ctx.Locale.Tr "repo.release.tag_helper"}} +
    + {{end}} +
    +
    +
    +
    + +
    +
    + {{template "shared/combomarkdowneditor" (dict + "MarkdownPreviewUrl" (print .Repository.Link "/markup") + "MarkdownPreviewContext" .RepoLink + "TextareaName" "content" + "TextareaContent" .content + "TextareaPlaceholder" (ctx.Locale.Tr "repo.release.message") + "TextareaAriaLabel" (ctx.Locale.Tr "repo.release.message") + "DropzoneParentContainer" "form" + )}} +
    + {{range .attachments}} +
    +
    + + + {{.Size | FileSize}} + + {{svg "octicon-info"}} + +
    + + {{ctx.Locale.Tr "remove"}} + +
    + {{end}} + {{if .IsAttachmentEnabled}} +
    + {{template "repo/upload" .}} +
    + {{end}} +
    +
    +
    +
    + {{if not .PageIsEditRelease}} +
    +
    + + +
    +
    + {{else}} + + {{end}} +
    +
    + + +
    +
    + {{ctx.Locale.Tr "repo.release.prerelease_helper"}} +
    +
    + {{if .PageIsEditRelease}} + + {{ctx.Locale.Tr "repo.release.cancel"}} + + + {{ctx.Locale.Tr "repo.release.delete_release"}} + + {{if .IsDraft}} + + + {{else}} + + {{end}} + {{else}} + {{if not .tag_name}} + + {{end}} + + + {{end}} +
    +
    +
    +
    +
    +
    + +{{if .PageIsEditRelease}} + +{{end}} +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/release_tag_header.tmpl b/data/gitea/templates/repo/release_tag_header.tmpl new file mode 100644 index 0000000..f96c768 --- /dev/null +++ b/data/gitea/templates/repo/release_tag_header.tmpl @@ -0,0 +1,29 @@ +{{$canReadReleases := $.Permission.CanRead ctx.Consts.RepoUnitTypeReleases}} +{{$canReadCode := $.Permission.CanRead ctx.Consts.RepoUnitTypeCode}} + +{{if $canReadReleases}} + +
    +{{else if $canReadCode}} + {{/* if the "repo.releases" unit is disabled, only show the "commits / branches / tags" sub menu */}} + {{template "repo/sub_menu" .}} +{{end}} diff --git a/data/gitea/templates/repo/search.tmpl b/data/gitea/templates/repo/search.tmpl new file mode 100644 index 0000000..3f5b22b --- /dev/null +++ b/data/gitea/templates/repo/search.tmpl @@ -0,0 +1,8 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "shared/search/code/search" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/search_name.tmpl b/data/gitea/templates/repo/search_name.tmpl new file mode 100644 index 0000000..951f168 --- /dev/null +++ b/data/gitea/templates/repo/search_name.tmpl @@ -0,0 +1 @@ +{{.Name}}{{if DefaultShowFullName}} {{.FullName}}{{end}} diff --git a/data/gitea/templates/repo/settings/actions.tmpl b/data/gitea/templates/repo/settings/actions.tmpl new file mode 100644 index 0000000..f38ab5b --- /dev/null +++ b/data/gitea/templates/repo/settings/actions.tmpl @@ -0,0 +1,11 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings actions")}} +
    + {{if eq .PageType "runners"}} + {{template "shared/actions/runner_list" .}} + {{else if eq .PageType "secrets"}} + {{template "shared/secrets/add_list" .}} + {{else if eq .PageType "variables"}} + {{template "shared/variables/variable_list" .}} + {{end}} +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/branches.tmpl b/data/gitea/templates/repo/settings/branches.tmpl new file mode 100644 index 0000000..6f070ba --- /dev/null +++ b/data/gitea/templates/repo/settings/branches.tmpl @@ -0,0 +1,76 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings edit")}} +
    + {{if .Repository.IsArchived}} +
    + {{ctx.Locale.Tr "repo.settings.archive.branchsettings_unavailable"}} +
    + {{else}} +

    + {{ctx.Locale.Tr "repo.default_branch"}} +

    +
    +

    + {{ctx.Locale.Tr "repo.settings.default_branch_desc"}} +

    +
    + {{.CsrfTokenHtml}} + + + +
    +
    + +

    + {{ctx.Locale.Tr "repo.settings.protected_branch"}} + +

    + +
    +
    + {{range .ProtectedBranches}} +
    +
    +
    +
    {{.RuleName}}
    +
    +
    +
    + {{ctx.Locale.Tr "repo.settings.edit_protected_branch"}} + +
    +
    + {{else}} +
    + {{ctx.Locale.Tr "repo.settings.no_protected_branch"}} +
    + {{end}} +
    +
    + {{end}} +
    + + + +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/collaboration.tmpl b/data/gitea/templates/repo/settings/collaboration.tmpl new file mode 100644 index 0000000..8028642 --- /dev/null +++ b/data/gitea/templates/repo/settings/collaboration.tmpl @@ -0,0 +1,117 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings collaboration")}} +
    +

    + {{ctx.Locale.Tr "repo.settings.collaboration"}} +

    + {{if .Collaborators}} +
    +
    + {{range .Collaborators}} +
    + +
    +
    + {{template "shared/user/name" .}} +
    +
    +
    +
    + {{svg "octicon-shield-lock"}} + +
    + +
    +
    + {{end}} +
    +
    + {{end}} +
    +
    + {{.CsrfTokenHtml}} + + +
    +
    + + {{if .RepoOwnerIsOrganization}} +

    + {{ctx.Locale.Tr "repo.settings.teams"}} +

    + {{$allowedToChangeTeams := (or (.Org.RepoAdminChangeTeamAccess) (.Permission.IsOwner))}} + {{if .Teams}} +
    +
    + {{range $t, $team := .Teams}} +
    +
    + + {{.Name}} + +
    + {{svg "octicon-shield-lock"}} + {{if eq .AccessMode 1}}{{ctx.Locale.Tr "repo.settings.collaboration.read"}}{{else if eq .AccessMode 2}}{{ctx.Locale.Tr "repo.settings.collaboration.write"}}{{else if eq .AccessMode 3}}{{ctx.Locale.Tr "repo.settings.collaboration.admin"}}{{else if eq .AccessMode 4}}{{ctx.Locale.Tr "repo.settings.collaboration.owner"}}{{else}}{{ctx.Locale.Tr "repo.settings.collaboration.undefined"}}{{end}} +
    + {{if or (eq .AccessMode 1) (eq .AccessMode 2)}} + {{$first := true}} +
    + Sections: {{range $u, $unit := $.Units}}{{if and ($.Repo.UnitEnabled $.Context $unit.Type) ($team.UnitEnabled $.Context $unit.Type)}}{{if $first}}{{$first = false}}{{else}}, {{end}}{{ctx.Locale.Tr $unit.NameKey}}{{end}}{{end}} {{if $first}}None{{end}} +
    + {{end}} +
    + {{if $allowedToChangeTeams}} +
    + +
    + {{end}} +
    + {{end}} +
    +
    + {{end}} +
    + {{if $allowedToChangeTeams}} +
    + {{.CsrfTokenHtml}} + + +
    + {{else}} +
    + {{ctx.Locale.Tr "repo.settings.change_team_access_not_allowed"}} +
    + {{end}} +
    + {{end}} +
    + + + +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/deploy_keys.tmpl b/data/gitea/templates/repo/settings/deploy_keys.tmpl new file mode 100644 index 0000000..190ca1a --- /dev/null +++ b/data/gitea/templates/repo/settings/deploy_keys.tmpl @@ -0,0 +1,86 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings")}} +
    +

    + {{ctx.Locale.Tr "repo.settings.deploy_keys"}} +
    + {{if not .DisableSSH}} + + {{else}} + + {{end}} +
    +

    +
    +
    +
    + {{.CsrfTokenHtml}} +
    + {{ctx.Locale.Tr "repo.settings.deploy_key_desc"}} +
    +
    + + +
    +
    + + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.is_writable_info"}} +
    +
    + + +
    +
    + {{if .Deploykeys}} +
    + {{range .Deploykeys}} +
    +
    + {{svg "octicon-key" 32}} +
    +
    +
    {{.Name}}
    +
    + {{.Fingerprint}} +
    +
    + {{ctx.Locale.Tr "settings.added_on" (DateTime "short" .CreatedUnix)}} — {{svg "octicon-info"}} {{if .HasUsed}}{{ctx.Locale.Tr "settings.last_used"}} {{DateTime "short" .UpdatedUnix}}{{else}}{{ctx.Locale.Tr "settings.no_activity"}}{{end}} - {{ctx.Locale.Tr "settings.can_read_info"}}{{if not .IsReadOnly}} / {{ctx.Locale.Tr "settings.can_write_info"}} {{end}} +
    +
    +
    + +
    +
    + {{end}} +
    + {{else}} + {{ctx.Locale.Tr "repo.settings.no_deploy_keys"}} + {{end}} +
    +
    + + + +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/githook_edit.tmpl b/data/gitea/templates/repo/settings/githook_edit.tmpl new file mode 100644 index 0000000..e20f51b --- /dev/null +++ b/data/gitea/templates/repo/settings/githook_edit.tmpl @@ -0,0 +1,27 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings edit githook")}} +
    +

    + {{ctx.Locale.Tr "repo.settings.githooks"}} +

    +
    +

    {{ctx.Locale.Tr "repo.settings.githook_edit_desc"}}

    +
    + {{.CsrfTokenHtml}} + {{with .Hook}} +
    + + {{.Name}} +
    +
    + + +
    +
    +
    + +
    + {{end}} +
    +
    +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/githooks.tmpl b/data/gitea/templates/repo/settings/githooks.tmpl new file mode 100644 index 0000000..1a603f9 --- /dev/null +++ b/data/gitea/templates/repo/settings/githooks.tmpl @@ -0,0 +1,23 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings githooks")}} +
    +

    + {{ctx.Locale.Tr "repo.settings.githooks"}} +

    +
    +
    +
    + {{ctx.Locale.Tr "repo.settings.githooks_desc"}} +
    + {{range .Hooks}} +
    + {{svg "octicon-dot-fill" 22}} + {{.Name}} + + {{svg "octicon-pencil"}} + +
    + {{end}} +
    +
    +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/layout_footer.tmpl b/data/gitea/templates/repo/settings/layout_footer.tmpl new file mode 100644 index 0000000..60cad3f --- /dev/null +++ b/data/gitea/templates/repo/settings/layout_footer.tmpl @@ -0,0 +1,11 @@ +{{if false}}{{/* to make html structure "likely" complete to prevent IDE warnings */}} +
    +
    +
    + {{/* block: repo-setting-content */}} +{{end}} + +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/settings/layout_head.tmpl b/data/gitea/templates/repo/settings/layout_head.tmpl new file mode 100644 index 0000000..efec9bf --- /dev/null +++ b/data/gitea/templates/repo/settings/layout_head.tmpl @@ -0,0 +1,14 @@ +{{template "base/head" .ctxData}} +
    + {{template "repo/header" .ctxData}} +
    + {{template "repo/settings/navbar" .ctxData}} +
    + {{template "base/alert" .ctxData}} + {{/* block: repo-setting-content */}} + +{{if false}}{{/* to make html structure "likely" complete to prevent IDE warnings */}} +
    +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/lfs.tmpl b/data/gitea/templates/repo/settings/lfs.tmpl new file mode 100644 index 0000000..bc92b48 --- /dev/null +++ b/data/gitea/templates/repo/settings/lfs.tmpl @@ -0,0 +1,53 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings lfs")}} +
    +

    + {{ctx.Locale.Tr "repo.settings.lfs_filelist"}} ({{ctx.Locale.Tr "admin.total" .Total}}) + +

    + + + {{range .LFSFiles}} + + + + + + + {{else}} + + + + {{end}} + +
    + + {{ShortSha .Oid}} + + {{FileSize .Size}}{{TimeSince .CreatedUnix.AsTime ctx.Locale}} + {{ctx.Locale.Tr "repo.settings.lfs_findcommits"}} + +
    {{ctx.Locale.Tr "repo.settings.lfs_no_lfs_files"}}
    + {{template "base/paginate" .}} + {{range .LFSFiles}} + + {{end}} +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/lfs_file.tmpl b/data/gitea/templates/repo/settings/lfs_file.tmpl new file mode 100644 index 0000000..a015cc8 --- /dev/null +++ b/data/gitea/templates/repo/settings/lfs_file.tmpl @@ -0,0 +1,55 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings lfs")}} +
    +
    +

    + {{ctx.Locale.Tr "repo.settings.lfs"}} / {{.LFSFile.Oid}} + +

    +
    + {{template "repo/unicode_escape_prompt" dict "EscapeStatus" .EscapeStatus "root" $}} +
    + {{if .IsFileTooLarge}} + {{template "shared/filetoolarge" dict "RawFileLink" .RawFileLink}} + {{else if .IsMarkup}} + {{if .FileContent}}{{.FileContent | SafeHTML}}{{end}} + {{else if .IsPlainText}} +
    {{if .FileContent}}{{.FileContent | SafeHTML}}{{end}}
    + {{else if not .IsTextFile}} +
    + {{if .IsImageFile}} + + {{else if .IsVideoFile}} + + {{else if .IsAudioFile}} + + {{else if .IsPDFFile}} +
    + {{else}} + {{ctx.Locale.Tr "repo.file_view_raw"}} + {{end}} +
    + {{else if .FileSize}} + + + + + + + +
    {{.LineNums}}
      {{.FileContent}}
    + {{end}} +
    +
    +
    +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/lfs_file_find.tmpl b/data/gitea/templates/repo/settings/lfs_file_find.tmpl new file mode 100644 index 0000000..809a028 --- /dev/null +++ b/data/gitea/templates/repo/settings/lfs_file_find.tmpl @@ -0,0 +1,46 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings lfs")}} +
    +
    +

    + {{ctx.Locale.Tr "repo.settings.lfs"}} / {{.Oid}} +

    + + + {{range .Results}} + + + + + + + + {{else}} + + + + {{end}} + +
    + {{svg "octicon-file"}} + {{.Name}} + + + + {{.Summary | RenderEmoji $.Context}} + + + + {{svg "octicon-git-branch"}}{{.BranchName}} + + {{if .ParentHashes}} + {{ctx.Locale.Tr "repo.diff.parent"}} + {{range .ParentHashes}} + {{ShortSha .String}} + {{end}} + {{end}} + {{ctx.Locale.Tr "repo.diff.commit"}} + {{ShortSha .SHA}} + {{TimeSince .When ctx.Locale}}
    {{ctx.Locale.Tr "repo.settings.lfs_lfs_file_no_commits"}}
    +
    +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/lfs_locks.tmpl b/data/gitea/templates/repo/settings/lfs_locks.tmpl new file mode 100644 index 0000000..9a18f52 --- /dev/null +++ b/data/gitea/templates/repo/settings/lfs_locks.tmpl @@ -0,0 +1,56 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings lfs")}} +
    +
    +

    + {{ctx.Locale.Tr "repo.settings.lfs"}} / {{ctx.Locale.Tr "repo.settings.lfs_locks"}} ({{ctx.Locale.Tr "admin.total" .Total}}) +

    +
    +
    + {{$.CsrfTokenHtml}} +
    + + +
    +
    +
    + + + {{range $index, $lock := .LFSLocks}} + + + + + + + {{else}} + + + + {{end}} + +
    + {{if index $.Linkable $index}} + {{svg "octicon-file"}} + {{$lock.Path}} + {{else}} + {{svg "octicon-diff"}} + {{$lock.Path}} + {{end}} + {{if not (index $.Lockables $index)}} + {{svg "octicon-alert"}} + {{end}} + + + {{ctx.AvatarUtils.Avatar $lock.Owner}} + {{$lock.Owner.DisplayName}} + + {{TimeSince .Created ctx.Locale}} +
    + {{$.CsrfTokenHtml}} + +
    +
    {{ctx.Locale.Tr "repo.settings.lfs_locks_no_locks"}}
    + {{template "base/paginate" .}} +
    +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/lfs_pointers.tmpl b/data/gitea/templates/repo/settings/lfs_pointers.tmpl new file mode 100644 index 0000000..758aec6 --- /dev/null +++ b/data/gitea/templates/repo/settings/lfs_pointers.tmpl @@ -0,0 +1,56 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings lfs")}} +
    +

    + {{ctx.Locale.Tr "repo.settings.lfs_pointers.found" .NumPointers .NumAssociated .NumNotAssociated .NumNoExist}} + {{if gt .NumAssociatable 0}} +
    +
    + {{.CsrfTokenHtml}} + {{range .Pointers}} + {{if .Associatable}} + + {{end}} + {{end}} + +
    +
    + {{end}} +

    +
    + + + + + + + + + + + + + {{range .Pointers}} + + + + + + + + + {{end}} + +
    {{ctx.Locale.Tr "repo.settings.lfs_pointers.sha"}}{{ctx.Locale.Tr "repo.settings.lfs_pointers.oid"}}{{ctx.Locale.Tr "repo.settings.lfs_pointers.inRepo"}}{{ctx.Locale.Tr "repo.settings.lfs_pointers.exists"}}{{ctx.Locale.Tr "repo.settings.lfs_pointers.accessible"}}
    + + {{ShortSha .SHA}} + + + + {{ShortSha .Oid}} + + {{if .InRepo}}{{svg "octicon-check"}}{{else}}{{svg "octicon-x"}}{{end}}{{if .Exists}}{{svg "octicon-check"}}{{else}}{{svg "octicon-x"}}{{end}}{{if .Accessible}}{{svg "octicon-check"}}{{else}}{{svg "octicon-x"}}{{end}} + {{ctx.Locale.Tr "repo.settings.lfs_findcommits"}} +
    +
    +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/navbar.tmpl b/data/gitea/templates/repo/settings/navbar.tmpl new file mode 100644 index 0000000..debfad2 --- /dev/null +++ b/data/gitea/templates/repo/settings/navbar.tmpl @@ -0,0 +1,53 @@ +
    + +
    diff --git a/data/gitea/templates/repo/settings/options.tmpl b/data/gitea/templates/repo/settings/options.tmpl new file mode 100644 index 0000000..a21f0b8 --- /dev/null +++ b/data/gitea/templates/repo/settings/options.tmpl @@ -0,0 +1,1077 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings options")}} +
    +

    + {{ctx.Locale.Tr "repo.settings.basic_settings"}} +

    +
    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} + +
    + + +
    +
    + + {{FileSize .Repository.Size}} +
    +
    + +
    + + +
    +
    + {{if not .Repository.IsFork}} +
    + +
    + {{if .IsAdmin}} + + {{else}} + + {{if and .Repository.IsPrivate $.ForcePrivate}}{{end}} + {{end}} + +
    +
    + {{end}} +
    + + +
    +
    + + +
    +
    + +
    +
    + +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    +
    + + {{/* These variables exist to make the logic in the Settings window easier to comprehend and are not used later on. */}} + {{$newMirrorsPartiallyEnabled := or (not .DisableNewPullMirrors) (not .DisableNewPushMirrors)}} + {{/* .Repository.IsMirror is not always reliable if the repository is not actively acting as a mirror because of errors. */}} + {{$showMirrorSettings := and (.Repository.UnitEnabled $.Context ctx.Consts.RepoUnitTypeCode) (or $newMirrorsPartiallyEnabled .Repository.IsMirror .PullMirror .PushMirrors)}} + {{$newMirrorsEntirelyEnabled := and (not .DisableNewPullMirrors) (not .DisableNewPushMirrors)}} + {{$onlyNewPushMirrorsEnabled := and (not .DisableNewPushMirrors) .DisableNewPullMirrors}} + {{$onlyNewPullMirrorsEnabled := and .DisableNewPushMirrors (not .DisableNewPullMirrors)}} + {{$existingPushMirror := or .Repository.IsMirror .PushMirrors}} + {{$modifyBrokenPullMirror := and .Repository.IsMirror (not .PullMirror)}} + {{$isWorkingPullMirror := .PullMirror}} + + {{if $showMirrorSettings}} +

    + {{ctx.Locale.Tr "repo.settings.mirror_settings"}} +

    +
    + {{if .Repository.IsArchived}} +
    + {{ctx.Locale.Tr "repo.settings.archive.mirrors_unavailable"}} +
    + {{else}} + {{if $newMirrorsEntirelyEnabled}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs"}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.doc_link_title"}}

    + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.pull_mirror_instructions"}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.doc_link_pull_section"}}
    + {{else if $onlyNewPushMirrorsEnabled}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.disabled_pull_mirror.instructions"}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.more_information_if_disabled"}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.doc_link_title"}}
    + {{else if $onlyNewPullMirrorsEnabled}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.disabled_push_mirror.instructions"}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.disabled_push_mirror.pull_mirror_warning"}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.more_information_if_disabled"}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.doc_link_title"}}

    + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.disabled_push_mirror.info"}} + {{if $existingPushMirror}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.can_still_use"}} + {{end}} + {{else}} + {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.no_new_mirrors"}} {{ctx.Locale.Tr "repo.settings.mirror_settings.docs.can_still_use"}}
    + {{end}} + + {{if .Repository.IsMirror}} + + + + + + + + + + {{if $modifyBrokenPullMirror}} + {{/* even if a repo is a pull mirror (IsMirror=true), the PullMirror might still be nil if the mirror migration is broken */}} + + + + + + {{else if $isWorkingPullMirror}} + + + + + + + + + + + + {{end}}{{/* end if: $modifyBrokenPullMirror / $isWorkingPullMirror */}} +
    {{ctx.Locale.Tr "repo.settings.mirror_settings.mirrored_repository"}}{{ctx.Locale.Tr "repo.settings.mirror_settings.direction"}}{{ctx.Locale.Tr "repo.settings.mirror_settings.last_update"}}
    +
    {{ctx.Locale.Tr "repo.settings.mirror_settings.direction.pull"}}: {{ctx.Locale.Tr "error.occurred"}}
    +
    {{.PullMirror.RemoteAddress}}{{ctx.Locale.Tr "repo.settings.mirror_settings.direction.pull"}}{{DateTime "full" .PullMirror.UpdatedUnix}} +
    + {{.CsrfTokenHtml}} + + +
    +
    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} + +
    + +
    + + +
    +
    +
    + + +
    + {{$address := MirrorRemoteAddress $.Context .Repository .PullMirror.GetRemoteName}} +
    + + +

    {{ctx.Locale.Tr "repo.mirror_address_desc"}}

    +
    +
    + + {{ctx.Locale.Tr "repo.need_auth"}} + +
    +
    + + +
    +
    + + +
    +

    {{ctx.Locale.Tr "repo.mirror_password_help"}}

    +
    +
    + + {{if .LFSStartServer}} +
    + +
    + + +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.mirror_lfs_endpoint_desc" "https://github.com/git-lfs/git-lfs/blob/main/docs/api/server-discovery.md#server-discovery"}}

    +
    + {{end}} +
    + +
    +
    +
    + {{end}}{{/* end if .Repository.IsMirror */}} + + + + + + + + + + + + {{range .PushMirrors}} + + + + + + + {{else}} + + + + {{end}} + {{if (not .DisableNewPushMirrors)}} + + + + {{end}} + +
    {{ctx.Locale.Tr "repo.settings.mirror_settings.pushed_repository"}}{{ctx.Locale.Tr "repo.settings.mirror_settings.direction"}}{{ctx.Locale.Tr "repo.settings.mirror_settings.last_update"}}
    {{.RemoteAddress}}{{ctx.Locale.Tr "repo.settings.mirror_settings.direction.push"}}{{if .LastUpdateUnix}}{{DateTime "full" .LastUpdateUnix}}{{else}}{{ctx.Locale.Tr "never"}}{{end}} {{if .LastError}}
    {{ctx.Locale.Tr "error"}}
    {{end}}
    + +
    + {{$.CsrfTokenHtml}} + + + +
    +
    + {{$.CsrfTokenHtml}} + + + +
    +
    {{ctx.Locale.Tr "repo.settings.mirror_settings.push_mirror.none"}}
    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} + +
    + + +

    {{ctx.Locale.Tr "repo.mirror_address_desc"}}

    +
    +
    + + {{ctx.Locale.Tr "repo.need_auth"}} + +
    +
    + + +
    +
    + + +
    +
    +
    +
    +
    + + +
    +
    +
    + + +
    +
    + +
    +
    +
    + {{end}} +
    + {{end}} + +

    + {{ctx.Locale.Tr "repo.settings.advanced_settings"}} +

    +
    +
    + {{.CsrfTokenHtml}} + + + {{$isCodeEnabled := .Repository.UnitEnabled $.Context ctx.Consts.RepoUnitTypeCode}} + {{$isCodeGlobalDisabled := ctx.Consts.RepoUnitTypeCode.UnitGlobalDisabled}} +
    + +
    + + +
    +
    + + {{$isInternalWikiEnabled := .Repository.UnitEnabled ctx ctx.Consts.RepoUnitTypeWiki}} + {{$isExternalWikiEnabled := .Repository.UnitEnabled ctx ctx.Consts.RepoUnitTypeExternalWiki}} + {{$isWikiEnabled := or $isInternalWikiEnabled $isExternalWikiEnabled}} + {{$isWikiGlobalDisabled := ctx.Consts.RepoUnitTypeWiki.UnitGlobalDisabled}} + {{$isExternalWikiGlobalDisabled := ctx.Consts.RepoUnitTypeExternalWiki.UnitGlobalDisabled}} + {{$isBothWikiGlobalDisabled := and $isWikiGlobalDisabled $isExternalWikiGlobalDisabled}} +
    + +
    + + +
    +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    + {{$unitInternalWiki := .Repository.MustGetUnit ctx ctx.Consts.RepoUnitTypeWiki}} + + +
    +
    +
    +
    + + +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.external_wiki_url_desc"}}

    +
    +
    + +
    + + {{$isIssuesEnabled := or (.Repository.UnitEnabled $.Context ctx.Consts.RepoUnitTypeIssues) (.Repository.UnitEnabled $.Context ctx.Consts.RepoUnitTypeExternalTracker)}} + {{$isIssuesGlobalDisabled := ctx.Consts.RepoUnitTypeIssues.UnitGlobalDisabled}} + {{$isExternalTrackerGlobalDisabled := ctx.Consts.RepoUnitTypeExternalTracker.UnitGlobalDisabled}} + {{$isIssuesAndExternalGlobalDisabled := and $isIssuesGlobalDisabled $isExternalTrackerGlobalDisabled}} +
    + +
    + + +
    +
    +
    +
    +
    + + +
    +
    +
    + {{if .Repository.CanEnableTimetracker}} +
    +
    + + +
    +
    +
    +
    + + +
    +
    + {{end}} +
    +
    + + +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.external_tracker_url_desc"}}

    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.tracker_url_format_desc"}}

    +
    +
    + +
    +
    + {{$externalTracker := (.Repository.MustGetUnit $.Context ctx.Consts.RepoUnitTypeExternalTracker)}} + {{$externalTrackerStyle := $externalTracker.ExternalTrackerConfig.ExternalTrackerStyle}} + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.tracker_issue_style.regexp_pattern_desc"}}

    +
    +
    +
    + +
    + + {{$isProjectsEnabled := .Repository.UnitEnabled $.Context ctx.Consts.RepoUnitTypeProjects}} + {{$isProjectsGlobalDisabled := ctx.Consts.RepoUnitTypeProjects.UnitGlobalDisabled}} + {{$projectsUnit := .Repository.MustGetUnit $.Context ctx.Consts.RepoUnitTypeProjects}} +
    + +
    + + +
    +
    +
    +

    + {{ctx.Locale.Tr "repo.settings.projects_mode_desc"}} +

    + +
    + +
    + + {{$isReleasesEnabled := .Repository.UnitEnabled $.Context ctx.Consts.RepoUnitTypeReleases}} + {{$isReleasesGlobalDisabled := ctx.Consts.RepoUnitTypeReleases.UnitGlobalDisabled}} +
    + +
    + + +
    +
    + + {{$isPackagesEnabled := .Repository.UnitEnabled $.Context ctx.Consts.RepoUnitTypePackages}} + {{$isPackagesGlobalDisabled := ctx.Consts.RepoUnitTypePackages.UnitGlobalDisabled}} +
    + +
    + + +
    +
    + + {{if .EnableActions}} + {{$isActionsEnabled := .Repository.UnitEnabled $.Context ctx.Consts.RepoUnitTypeActions}} + {{$isActionsGlobalDisabled := ctx.Consts.RepoUnitTypeActions.UnitGlobalDisabled}} +
    + +
    + + +
    +
    + {{end}} + + {{if not .IsMirror}} +
    + {{$pullRequestEnabled := .Repository.UnitEnabled $.Context ctx.Consts.RepoUnitTypePullRequests}} + {{$pullRequestGlobalDisabled := ctx.Consts.RepoUnitTypePullRequests.UnitGlobalDisabled}} + {{$prUnit := .Repository.MustGetUnit $.Context ctx.Consts.RepoUnitTypePullRequests}} +
    + +
    + + +
    +
    +
    +
    +

    + {{ctx.Locale.Tr "repo.settings.merge_style_desc"}} +

    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    + +
    +

    + {{ctx.Locale.Tr "repo.settings.default_merge_style_desc"}} +

    + +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    + {{end}} + +
    +
    + +
    +
    +
    + +

    + {{ctx.Locale.Tr "repo.settings.signing_settings"}} +

    +
    +
    + {{.CsrfTokenHtml}} + +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.trust_model.default.desc"}}

    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.trust_model.collaborator.desc"}}

    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.trust_model.committer.desc"}}

    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.trust_model.collaboratorcommitter.desc"}}

    +
    +
    +
    + +
    +
    + +
    +
    +
    + + {{if .IsAdmin}} +

    + {{ctx.Locale.Tr "repo.settings.admin_settings"}} +

    +
    +
    + {{.CsrfTokenHtml}} + +
    +
    + + +
    +
    + +
    + +
    +
    + +
    +
    + {{.CsrfTokenHtml}} + + {{if .IsRepoIndexerEnabled}} +

    {{ctx.Locale.Tr "repo.settings.admin_code_indexer"}}

    +
    + + + {{if .CodeIndexerStatus}} + + {{ShortSha .CodeIndexerStatus.CommitSha}} + + {{else}} + {{ctx.Locale.Tr "repo.settings.admin_indexer_unindexed"}} + {{end}} + +
    + +
    +
    + {{end}} +

    {{ctx.Locale.Tr "repo.settings.admin_stats_indexer"}}

    +
    + {{if and .StatsIndexerStatus .StatsIndexerStatus.CommitSha}} + + {{end}} + + {{if and .StatsIndexerStatus .StatsIndexerStatus.CommitSha}} + + {{ShortSha .StatsIndexerStatus.CommitSha}} + + {{else}} + {{ctx.Locale.Tr "repo.settings.admin_indexer_unindexed"}} + {{end}} + +
    + +
    +
    +
    +
    + {{end}} + + {{if .Permission.IsOwner}} +

    + {{ctx.Locale.Tr "repo.settings.danger_zone"}} +

    +
    +
    + {{if .Repository.IsMirror}} +
    +
    +
    {{ctx.Locale.Tr "repo.settings.convert"}}
    +
    {{ctx.Locale.Tr "repo.settings.convert_desc"}}
    +
    +
    + +
    +
    + {{end}} + {{if and .Repository.IsFork .Repository.Owner.CanCreateRepo}} +
    +
    +
    {{ctx.Locale.Tr "repo.settings.convert_fork"}}
    +
    {{ctx.Locale.Tr "repo.settings.convert_fork_desc"}}
    +
    +
    + +
    +
    + {{end}} +
    +
    +
    {{ctx.Locale.Tr "repo.settings.transfer"}}
    +
    + {{if .RepoTransfer}} + {{ctx.Locale.Tr "repo.settings.transfer_started" .RepoTransfer.Recipient.DisplayName}} + {{else}} + {{ctx.Locale.Tr "repo.settings.transfer_desc"}} + {{end}} +
    +
    +
    + {{if .RepoTransfer}} +
    + {{.CsrfTokenHtml}} + + +
    + {{else}} + + {{end}} +
    +
    + {{if .Permission.CanRead ctx.Consts.RepoUnitTypeWiki}} +
    +
    +
    {{ctx.Locale.Tr "repo.settings.wiki_delete"}}
    +
    {{ctx.Locale.Tr "repo.settings.wiki_delete_desc"}}
    +
    +
    + +
    +
    + {{end}} +
    +
    +
    {{ctx.Locale.Tr "repo.settings.delete"}}
    +
    {{ctx.Locale.Tr "repo.settings.delete_desc"}}
    +
    +
    + +
    +
    + {{if not .Repository.IsMirror}} +
    +
    + {{if .Repository.IsArchived}} +
    {{ctx.Locale.Tr "repo.settings.unarchive.header"}}
    +
    {{ctx.Locale.Tr "repo.settings.unarchive.text"}}
    + {{else}} +
    {{ctx.Locale.Tr "repo.settings.archive.header"}}
    +
    {{ctx.Locale.Tr "repo.settings.archive.text"}}
    + {{end}} +
    +
    + +
    +
    + {{end}} +
    +
    + {{end}} +
    +{{template "repo/settings/layout_footer" .}} + +{{if .Permission.IsOwner}} + {{if .Repository.IsMirror}} + + {{end}} + {{if and .Repository.IsFork .Repository.Owner.CanCreateRepo}} + + {{end}} + + + + + {{if .Repository.UnitEnabled $.Context ctx.Consts.RepoUnitTypeWiki}} + + {{end}} + + {{if not .Repository.IsMirror}} + + {{end}} +{{end}} + +{{template "repo/settings/push_mirror_sync_modal" .}} diff --git a/data/gitea/templates/repo/settings/protected_branch.tmpl b/data/gitea/templates/repo/settings/protected_branch.tmpl new file mode 100644 index 0000000..fec4d7c --- /dev/null +++ b/data/gitea/templates/repo/settings/protected_branch.tmpl @@ -0,0 +1,271 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings branches")}} +
    +
    +

    + {{ctx.Locale.Tr "repo.settings.branch_protection" .Rule.RuleName}} +

    +
    +
    {{ctx.Locale.Tr "repo.settings.protect_patterns"}}
    +
    + + + +

    {{ctx.Locale.Tr "repo.settings.protect_branch_name_pattern_desc"}}

    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_protected_file_patterns_desc"}}

    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_unprotected_file_patterns_desc"}}

    +
    + + {{.CsrfTokenHtml}} +
    {{ctx.Locale.Tr "repo.settings.event_push"}}
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_disable_push_desc"}}

    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_enable_push_desc"}}

    +
    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_whitelist_committers_desc"}}

    +
    +
    +
    +
    + + +
    + {{if .Owner.IsOrganization}} +
    + + +
    + {{end}} +
    +
    + + +
    +
    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.require_signed_commits_desc"}}

    +
    +
    +
    {{ctx.Locale.Tr "repo.settings.event_pull_request_approvals"}}
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_required_approvals_desc"}}

    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_approvals_whitelist_enabled_desc"}}

    +
    +
    +
    +
    + + +
    + {{if .Owner.IsOrganization}} +
    + + +
    + {{end}} +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.dismiss_stale_approvals_desc"}}

    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.ignore_stale_approvals_desc"}}

    +
    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_check_status_contexts_desc"}}

    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_status_check_patterns_desc"}}

    + + + + + + + + {{range $.recent_status_checks}} + + + + {{else}} + + {{end}} + +
    {{ctx.Locale.Tr "repo.settings.protect_check_status_contexts_list"}}
    + {{.}} + {{ctx.Locale.Tr "repo.settings.protect_status_check_matched"}} +
    -
    +
    +
    +
    {{ctx.Locale.Tr "repo.settings.event_pull_request_merge"}}
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_enable_merge_desc"}}

    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.protect_merge_whitelist_committers_desc"}}

    +
    +
    +
    +
    + + +
    + {{if .Owner.IsOrganization}} +
    + + +
    + {{end}} +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.block_rejected_reviews_desc"}}

    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.block_on_official_review_requests_desc"}}

    +
    +
    +
    +
    + + +

    {{ctx.Locale.Tr "repo.settings.block_outdated_branch_desc"}}

    +
    +
    +
    + +
    + +
    +
    +
    +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/push_mirror_sync_modal.tmpl b/data/gitea/templates/repo/settings/push_mirror_sync_modal.tmpl new file mode 100644 index 0000000..e8dad61 --- /dev/null +++ b/data/gitea/templates/repo/settings/push_mirror_sync_modal.tmpl @@ -0,0 +1,32 @@ + diff --git a/data/gitea/templates/repo/settings/runner_edit.tmpl b/data/gitea/templates/repo/settings/runner_edit.tmpl new file mode 100644 index 0000000..8b76aea --- /dev/null +++ b/data/gitea/templates/repo/settings/runner_edit.tmpl @@ -0,0 +1,5 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings runners")}} +
    + {{template "shared/actions/runner_edit" .}} +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/secrets.tmpl b/data/gitea/templates/repo/settings/secrets.tmpl new file mode 100644 index 0000000..0b89639 --- /dev/null +++ b/data/gitea/templates/repo/settings/secrets.tmpl @@ -0,0 +1,5 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings")}} +
    + {{template "shared/secrets/add_list" .}} +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/tags.tmpl b/data/gitea/templates/repo/settings/tags.tmpl new file mode 100644 index 0000000..c9efb7b --- /dev/null +++ b/data/gitea/templates/repo/settings/tags.tmpl @@ -0,0 +1,126 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings edit")}} +
    + {{if .Repository.IsArchived}} +
    + {{ctx.Locale.Tr "repo.settings.archive.tagsettings_unavailable"}} +
    + {{else}} +

    + {{ctx.Locale.Tr "repo.settings.tags.protection"}} +

    + +
    +
    +
    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    + {{if .Owner.IsOrganization}} +
    + + +
    + {{end}} +
    + {{if .PageIsEditProtectedTag}} + + + {{ctx.Locale.Tr "cancel"}} + + {{else}} + + {{end}} +
    +
    +
    +
    + +
    + + + + + + + + {{range .ProtectedTags}} + + + + + + {{else}} + + {{end}} + +
    {{ctx.Locale.Tr "repo.settings.tags.protection.pattern"}}{{ctx.Locale.Tr "repo.settings.tags.protection.allowed"}}
    {{.NamePattern}}
    + {{if or .AllowlistUserIDs (and $.Owner.IsOrganization .AllowlistTeamIDs)}} + {{$userIDs := .AllowlistUserIDs}} + {{range $.Users}} + {{if SliceUtils.Contains $userIDs .ID}} + {{ctx.AvatarUtils.Avatar . 26}} {{.GetDisplayName}} + {{end}} + {{end}} + {{if $.Owner.IsOrganization}} + {{$teamIDs := .AllowlistTeamIDs}} + {{range $.Teams}} + {{if SliceUtils.Contains $teamIDs .ID}} + {{.Name}} + {{end}} + {{end}} + {{end}} + {{else}} + {{ctx.Locale.Tr "repo.settings.tags.protection.allowed.noone"}} + {{end}} + + {{ctx.Locale.Tr "edit"}} +
    + {{$.CsrfTokenHtml}} + + +
    +
    {{ctx.Locale.Tr "repo.settings.tags.protection.none"}}
    +
    +
    +
    + {{end}} +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/webhook/base.tmpl b/data/gitea/templates/repo/settings/webhook/base.tmpl new file mode 100644 index 0000000..d524722 --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/base.tmpl @@ -0,0 +1,5 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings webhooks")}} +
    + {{template "repo/settings/webhook/list" .}} +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/webhook/base_list.tmpl b/data/gitea/templates/repo/settings/webhook/base_list.tmpl new file mode 100644 index 0000000..36e75a7 --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/base_list.tmpl @@ -0,0 +1,26 @@ +

    + {{.Title}} +
    + +
    +

    +
    +
    +
    + {{.Description}} +
    + {{range .Webhooks}} +
    + {{svg "octicon-dot-fill" 22}} +
    + {{.URL}} +
    + {{svg "octicon-pencil"}} + {{svg "octicon-trash"}} +
    + {{end}} +
    +
    diff --git a/data/gitea/templates/repo/settings/webhook/delete_modal.tmpl b/data/gitea/templates/repo/settings/webhook/delete_modal.tmpl new file mode 100644 index 0000000..9955ed3 --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/delete_modal.tmpl @@ -0,0 +1,10 @@ + diff --git a/data/gitea/templates/repo/settings/webhook/dingtalk.tmpl b/data/gitea/templates/repo/settings/webhook/dingtalk.tmpl new file mode 100644 index 0000000..0ba99e9 --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/dingtalk.tmpl @@ -0,0 +1,11 @@ +{{if eq .HookType "dingtalk"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://dingtalk.com" (ctx.Locale.Tr "repo.settings.web_hook_name_dingtalk")}}

    +
    + {{.CsrfTokenHtml}} +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/discord.tmpl b/data/gitea/templates/repo/settings/webhook/discord.tmpl new file mode 100644 index 0000000..104346e --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/discord.tmpl @@ -0,0 +1,19 @@ +{{if eq .HookType "discord"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://discord.com" (ctx.Locale.Tr "repo.settings.web_hook_name_discord")}}

    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/feishu.tmpl b/data/gitea/templates/repo/settings/webhook/feishu.tmpl new file mode 100644 index 0000000..d80deab --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/feishu.tmpl @@ -0,0 +1,12 @@ +{{if eq .HookType "feishu"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://feishu.cn" (ctx.Locale.Tr "repo.settings.web_hook_name_feishu")}}

    +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://larksuite.com" (ctx.Locale.Tr "repo.settings.web_hook_name_larksuite")}}

    +
    + {{.CsrfTokenHtml}} +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/gitea.tmpl b/data/gitea/templates/repo/settings/webhook/gitea.tmpl new file mode 100644 index 0000000..e6eb61e --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/gitea.tmpl @@ -0,0 +1,40 @@ +{{if eq .HookType "gitea"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://docs.gitea.com/usage/webhooks" (ctx.Locale.Tr "repo.settings.web_hook_name_gitea")}}

    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/gogs.tmpl b/data/gitea/templates/repo/settings/webhook/gogs.tmpl new file mode 100644 index 0000000..e91a327 --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/gogs.tmpl @@ -0,0 +1,28 @@ +{{if eq .HookType "gogs"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://docs.gitea.com/usage/webhooks" (ctx.Locale.Tr "repo.settings.web_hook_name_gogs")}}

    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/history.tmpl b/data/gitea/templates/repo/settings/webhook/history.tmpl new file mode 100644 index 0000000..0e03b8e --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/history.tmpl @@ -0,0 +1,92 @@ +{{$isNew:=or .PageIsSettingsHooksNew .PageIsAdminDefaultHooksNew .PageIsAdminSystemHooksNew}} +{{if .PageIsSettingsHooksEdit}} +

    + {{ctx.Locale.Tr "repo.settings.recent_deliveries"}} + {{if .Permission.IsAdmin}} +
    + + + + +
    + {{end}} +

    +
    +
    + {{range .History}} +
    +
    +
    + {{if .IsSucceed}} + {{svg "octicon-check"}} + {{else if not .IsDelivered}} + {{svg "octicon-stopwatch"}} + {{else}} + {{svg "octicon-alert"}} + {{end}} + {{.UUID}} +
    + + {{TimeSince .Delivered.AsTime ctx.Locale}} + +
    +
    + +
    + {{if .RequestInfo}} +
    {{ctx.Locale.Tr "repo.settings.webhook.headers"}}
    +
    Request URL: {{.RequestInfo.URL}}
    +Request method: {{if .RequestInfo.HTTPMethod}}{{.RequestInfo.HTTPMethod}}{{else}}POST{{end}}
    +{{range $key, $val := .RequestInfo.Headers}}{{$key}}: {{$val}}
    +{{end}}
    +
    {{ctx.Locale.Tr "repo.settings.webhook.payload"}}
    +
    {{or .RequestInfo.Body .PayloadContent}}
    + {{else}} + - + {{end}} +
    +
    + {{if .ResponseInfo}} +
    {{ctx.Locale.Tr "repo.settings.webhook.headers"}}
    +
    {{range $key, $val := .ResponseInfo.Headers}}{{$key}}: {{$val}}
    +{{end}}
    +
    {{ctx.Locale.Tr "repo.settings.webhook.body"}}
    +
    {{.ResponseInfo.Body}}
    + {{else}} + - + {{end}} +
    +
    +
    + {{end}} +
    +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/link_menu.tmpl b/data/gitea/templates/repo/settings/webhook/link_menu.tmpl new file mode 100644 index 0000000..e2c86dc --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/link_menu.tmpl @@ -0,0 +1,50 @@ +{{$size := 20}} +{{if .Size}} + {{$size = .Size}} +{{end}} + diff --git a/data/gitea/templates/repo/settings/webhook/list.tmpl b/data/gitea/templates/repo/settings/webhook/list.tmpl new file mode 100644 index 0000000..b24159f --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/list.tmpl @@ -0,0 +1,4 @@ + +{{template "repo/settings/webhook/base_list" .}} + +{{template "repo/settings/webhook/delete_modal" .}} diff --git a/data/gitea/templates/repo/settings/webhook/matrix.tmpl b/data/gitea/templates/repo/settings/webhook/matrix.tmpl new file mode 100644 index 0000000..7f1c9f0 --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/matrix.tmpl @@ -0,0 +1,27 @@ +{{if eq .HookType "matrix"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://matrix.org/" (ctx.Locale.Tr "repo.settings.web_hook_name_matrix")}}

    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/msteams.tmpl b/data/gitea/templates/repo/settings/webhook/msteams.tmpl new file mode 100644 index 0000000..62ea24e --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/msteams.tmpl @@ -0,0 +1,11 @@ +{{if eq .HookType "msteams"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://teams.microsoft.com" (ctx.Locale.Tr "repo.settings.web_hook_name_msteams")}}

    +
    + {{.CsrfTokenHtml}} +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/new.tmpl b/data/gitea/templates/repo/settings/webhook/new.tmpl new file mode 100644 index 0000000..b04a442 --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/new.tmpl @@ -0,0 +1,7 @@ +{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings new webhook")}} +
    + {{$CustomHeaderTitle := ctx.Locale.Tr "repo.settings.update_webhook"}} + {{if .PageIsSettingsHooksNew}}{{$CustomHeaderTitle = ctx.Locale.Tr "repo.settings.add_webhook"}}{{end}} + {{template "webhook/new" (dict "ctxData" . "CustomHeaderTitle" $CustomHeaderTitle)}} +
    +{{template "repo/settings/layout_footer" .}} diff --git a/data/gitea/templates/repo/settings/webhook/packagist.tmpl b/data/gitea/templates/repo/settings/webhook/packagist.tmpl new file mode 100644 index 0000000..25aba2a --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/packagist.tmpl @@ -0,0 +1,19 @@ +{{if eq .HookType "packagist"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://packagist.org" (ctx.Locale.Tr "repo.settings.web_hook_name_packagist")}}

    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/settings.tmpl b/data/gitea/templates/repo/settings/webhook/settings.tmpl new file mode 100644 index 0000000..6862ce5 --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/settings.tmpl @@ -0,0 +1,288 @@ +{{$isNew:=or .PageIsSettingsHooksNew .PageIsAdminDefaultHooksNew .PageIsAdminSystemHooksNew}} +
    +

    {{ctx.Locale.Tr "repo.settings.event_desc"}}

    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    + +
    + +
    + +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_create_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_delete_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_fork_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_push_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_repository_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_release_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_package_desc"}} +
    +
    +
    + + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_wiki_desc"}} +
    +
    +
    + + +
    + +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_issues_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_issue_assign_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_issue_label_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_issue_milestone_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_issue_comment_desc"}} +
    +
    +
    + + +
    + +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_pull_request_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_pull_request_assign_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_pull_request_label_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_pull_request_milestone_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_pull_request_comment_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_pull_request_review_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_pull_request_sync_desc"}} +
    +
    +
    + +
    +
    +
    + + + {{ctx.Locale.Tr "repo.settings.event_pull_request_review_request_desc"}} +
    +
    +
    +
    +
    + + +
    + + + {{ctx.Locale.Tr "repo.settings.branch_filter_desc"}} +
    + + +
    + + + {{if ne .HookType "matrix"}}{{/* Matrix doesn't make the authorization optional but it is implied by the help string, should be changed.*/}} + {{ctx.Locale.Tr "repo.settings.authorization_header_desc" ("Bearer token123456, Basic YWxhZGRpbjpvcGVuc2VzYW1l" | SafeHTML)}} + {{end}} +
    + +
    + +
    +
    + + + {{ctx.Locale.Tr "repo.settings.active_helper"}} +
    +
    +
    + {{if $isNew}} + + {{else}} + + {{ctx.Locale.Tr "repo.settings.delete_webhook"}} + {{end}} +
    + +{{template "repo/settings/webhook/delete_modal" .}} diff --git a/data/gitea/templates/repo/settings/webhook/slack.tmpl b/data/gitea/templates/repo/settings/webhook/slack.tmpl new file mode 100644 index 0000000..e7cae92 --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/slack.tmpl @@ -0,0 +1,28 @@ +{{if eq .HookType "slack"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://slack.com" (ctx.Locale.Tr "repo.settings.web_hook_name_slack")}}

    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    + +
    + + +
    +
    + + +
    +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/telegram.tmpl b/data/gitea/templates/repo/settings/webhook/telegram.tmpl new file mode 100644 index 0000000..f92c2be --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/telegram.tmpl @@ -0,0 +1,19 @@ +{{if eq .HookType "telegram"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://core.telegram.org/bots" (ctx.Locale.Tr "repo.settings.web_hook_name_telegram")}}

    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/settings/webhook/wechatwork.tmpl b/data/gitea/templates/repo/settings/webhook/wechatwork.tmpl new file mode 100644 index 0000000..78a1617 --- /dev/null +++ b/data/gitea/templates/repo/settings/webhook/wechatwork.tmpl @@ -0,0 +1,11 @@ +{{if eq .HookType "wechatwork"}} +

    {{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://work.weixin.qq.com" (ctx.Locale.Tr "repo.settings.web_hook_name_wechatwork")}}

    +
    + {{.CsrfTokenHtml}} +
    + + +
    + {{template "repo/settings/webhook/settings" .}} +
    +{{end}} diff --git a/data/gitea/templates/repo/shabox_badge.tmpl b/data/gitea/templates/repo/shabox_badge.tmpl new file mode 100644 index 0000000..939292b --- /dev/null +++ b/data/gitea/templates/repo/shabox_badge.tmpl @@ -0,0 +1,15 @@ +
    + {{if .verification.Verified}} +
    + {{if ne .verification.SigningUser.ID 0}} + {{svg "gitea-lock"}} + {{ctx.AvatarUtils.Avatar .verification.SigningUser 28 "signature"}} + {{else}} + {{svg "gitea-lock-cog"}} + {{ctx.AvatarUtils.AvatarByEmail .verification.SigningEmail "" 28 "signature"}} + {{end}} +
    + {{else}} + {{svg "gitea-unlock"}} + {{end}} +
    diff --git a/data/gitea/templates/repo/star_unstar.tmpl b/data/gitea/templates/repo/star_unstar.tmpl new file mode 100644 index 0000000..0f09d8b --- /dev/null +++ b/data/gitea/templates/repo/star_unstar.tmpl @@ -0,0 +1,13 @@ +
    +
    + {{$buttonText := ctx.Locale.Tr "repo.star"}} + {{if $.IsStaringRepo}}{{$buttonText = ctx.Locale.Tr "repo.unstar"}}{{end}} + + + {{CountFmt .Repository.NumStars}} + +
    +
    diff --git a/data/gitea/templates/repo/sub_menu.tmpl b/data/gitea/templates/repo/sub_menu.tmpl new file mode 100644 index 0000000..87d2110 --- /dev/null +++ b/data/gitea/templates/repo/sub_menu.tmpl @@ -0,0 +1,46 @@ +{{if and (not .HideRepoInfo) (not .IsBlame)}} +
    + + {{if and (.Permission.CanRead ctx.Consts.RepoUnitTypeCode) (not .IsEmptyRepo) .LanguageStats}} + + + {{range .LanguageStats}} +
    + {{end}} +
    + {{end}} +
    +{{end}} diff --git a/data/gitea/templates/repo/tag/list.tmpl b/data/gitea/templates/repo/tag/list.tmpl new file mode 100644 index 0000000..354808e --- /dev/null +++ b/data/gitea/templates/repo/tag/list.tmpl @@ -0,0 +1,80 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} + {{template "repo/release_tag_header" .}} + {{if .Releases}} +

    +
    + {{svg "octicon-tag" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.release.tags"}} +
    +

    + {{$canReadReleases := $.Permission.CanRead ctx.Consts.RepoUnitTypeReleases}} +
    + + + {{range $idx, $release := .Releases}} + + + + {{end}} + +
    +

    + {{if $canReadReleases}} + {{.TagName}} + {{else}} + {{.TagName}} + {{end}} +

    +
    + {{if $.Permission.CanRead ctx.Consts.RepoUnitTypeCode}} + {{if .CreatedUnix}} + {{svg "octicon-clock" 16 "tw-mr-1"}}{{TimeSinceUnix .CreatedUnix ctx.Locale}} + {{end}} + + {{svg "octicon-git-commit" 16 "tw-mr-1"}}{{ShortSha .Sha1}} + + {{if not $.DisableDownloadSourceArchives}} + {{svg "octicon-file-zip" 16 "tw-mr-1"}}ZIP + {{svg "octicon-file-zip" 16 "tw-mr-1"}}TAR.GZ + {{end}} + + {{if (and $canReadReleases $.CanCreateRelease $release.IsTag)}} + {{svg "octicon-tag" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.release.new_release"}} + {{end}} + + {{if (and ($.Permission.CanWrite ctx.Consts.RepoUnitTypeCode) $release.IsTag)}} + + {{svg "octicon-trash" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.release.delete_tag"}} + + {{end}} + + {{if and $canReadReleases (not $release.IsTag)}} + {{svg "octicon-tag" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.release.detail"}} + {{end}} + {{end}} +
    +
    +
    + {{end}} + + {{template "base/paginate" .}} +
    +
    + +{{if $.Permission.CanWrite ctx.Consts.RepoUnitTypeCode}} + +{{end}} + +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/unicode_escape_prompt.tmpl b/data/gitea/templates/repo/unicode_escape_prompt.tmpl new file mode 100644 index 0000000..8bceafa --- /dev/null +++ b/data/gitea/templates/repo/unicode_escape_prompt.tmpl @@ -0,0 +1,22 @@ +{{if .EscapeStatus}} + {{if .EscapeStatus.HasInvisible}} +
    + +
    + {{ctx.Locale.Tr "repo.invisible_runes_header"}} +
    +

    {{ctx.Locale.Tr "repo.invisible_runes_description"}}

    + {{if .EscapeStatus.HasAmbiguous}} +

    {{ctx.Locale.Tr "repo.ambiguous_runes_description"}}

    + {{end}} +
    + {{else if .EscapeStatus.HasAmbiguous}} +
    + +
    + {{ctx.Locale.Tr "repo.ambiguous_runes_header"}} +
    +

    {{ctx.Locale.Tr "repo.ambiguous_runes_description"}}

    +
    + {{end}} +{{end}} diff --git a/data/gitea/templates/repo/upload.tmpl b/data/gitea/templates/repo/upload.tmpl new file mode 100644 index 0000000..eef5199 --- /dev/null +++ b/data/gitea/templates/repo/upload.tmpl @@ -0,0 +1,15 @@ +
    +
    +
    diff --git a/data/gitea/templates/repo/user_cards.tmpl b/data/gitea/templates/repo/user_cards.tmpl new file mode 100644 index 0000000..5accc2c --- /dev/null +++ b/data/gitea/templates/repo/user_cards.tmpl @@ -0,0 +1,29 @@ +
    + {{if .CardsTitle}} +

    + {{.CardsTitle}} +

    + {{end}} +
      + {{range .Cards}} +
    • + + {{ctx.AvatarUtils.Avatar .}} + +

      {{.DisplayName}}

      + +
      + {{if .Website}} + {{svg "octicon-link"}} {{.Website}} + {{else if .Location}} + {{svg "octicon-location"}} {{.Location}} + {{else}} + {{svg "octicon-calendar"}} {{ctx.Locale.Tr "user.joined_on" (DateTime "short" .CreatedUnix)}} + {{end}} +
      +
    • + {{end}} +
    + + {{template "base/paginate" .}} +
    diff --git a/data/gitea/templates/repo/view_file.tmpl b/data/gitea/templates/repo/view_file.tmpl new file mode 100644 index 0000000..08833f9 --- /dev/null +++ b/data/gitea/templates/repo/view_file.tmpl @@ -0,0 +1,151 @@ +{{ if false }} +
    +{{ end }} + {{- if .FileError}} +
    +
    {{.FileError}}
    +
    + {{end}} + {{- if .FileWarning}} +
    +
    {{.FileWarning}}
    +
    + {{end}} + + {{if not .ReadmeInList}} +
    +
    + {{template "repo/latest_commit" .}} +
    + {{if .LatestCommit}} + {{if .LatestCommit.Committer}} +
    + {{TimeSince .LatestCommit.Committer.When ctx.Locale}} +
    + {{end}} + {{end}} +
    + {{end}} + + {{ if false }} +

    + {{ end }} + {{ if false }} +
    + {{if .ReadmeInList}} + {{svg "octicon-book" 16 "tw-mr-2"}} + {{.FileName}} + {{else}} + {{template "repo/file_info" .}} + {{end}} +
    + {{ end }} +
    + {{if .HasSourceRenderedToggle}} + + {{end}} + {{if not .ReadmeInList}} +
    + {{ctx.Locale.Tr "repo.file_raw"}} + {{if not .IsViewCommit}} + {{ctx.Locale.Tr "repo.file_permalink"}} + {{end}} + {{if .IsRepresentableAsText}} + {{ctx.Locale.Tr "repo.blame"}} + {{end}} + {{ctx.Locale.Tr "repo.file_history"}} + {{if .EscapeStatus.Escaped}} + + + {{end}} +
    + {{svg "octicon-download"}} + {{svg "octicon-copy" 14}} + {{if .EnableFeed}} + + {{svg "octicon-rss" 14}} + + {{end}} + {{if .Repository.CanEnableEditor}} + {{if .CanEditFile}} + {{svg "octicon-pencil"}} + {{else}} + {{svg "octicon-pencil"}} + {{end}} + {{if .CanDeleteFile}} + {{svg "octicon-trash"}} + {{else}} + {{svg "octicon-trash"}} + {{end}} + {{end}} + {{else if and false .EscapeStatus.Escaped}} + + + {{end}} + {{if and .ReadmeInList .CanEditReadmeFile}} + {{svg "octicon-pencil"}} + {{end}} +
    + {{ if false }} +

    + {{end}} +
    + {{if not (or .IsMarkup .IsRenderedHTML)}} + {{template "repo/unicode_escape_prompt" dict "EscapeStatus" .EscapeStatus "root" $}} + {{end}} +
    + {{if .IsFileTooLarge}} + {{template "shared/filetoolarge" dict "RawFileLink" .RawFileLink}} + {{else if .IsMarkup}} + {{if .FileContent}}{{.FileContent}}{{end}} + {{else if .IsPlainText}} +
    {{if .FileContent}}{{.FileContent}}{{end}}
    + {{else if not .IsTextSource}} +
    + {{if .IsImageFile}} + + {{else if .IsVideoFile}} + + {{else if .IsAudioFile}} + + {{else if .IsPDFFile}} +
    + {{else}} + {{ctx.Locale.Tr "repo.file_view_raw"}} + {{end}} +
    + {{else if .FileSize}} + + + {{range $idx, $code := .FileContent}} + {{$line := Eval $idx "+" 1}} + + + {{if $.EscapeStatus.Escaped}} + + {{end}} + + + {{end}} + +
    {{if (index $.LineEscapeStatus $idx).Escaped}}{{end}}{{$code}}
    + + {{end}} +
    +
    +{{ if false }} +
    +{{end }} diff --git a/data/gitea/templates/repo/view_list.tmpl b/data/gitea/templates/repo/view_list.tmpl new file mode 100644 index 0000000..c9a43ed --- /dev/null +++ b/data/gitea/templates/repo/view_list.tmpl @@ -0,0 +1,74 @@ +{{if and .ReadmeExist (or .IsMarkup .IsPlainText)}} + {{template "repo/view_file" .}} +{{end}} + + + + + + + + + {{if .HasParentPath}} + + + + {{end}} + {{range $item := .Files}} + {{$entry := $item.Entry}} + {{$commit := $item.Commit}} + {{$subModuleFile := $item.SubModuleFile}} + + + + + + {{end}} + +
    +
    +
    + {{template "repo/latest_commit" .}} +
    +
    +
    {{if .LatestCommit}}{{if .LatestCommit.Committer}}{{TimeSince .LatestCommit.Committer.When ctx.Locale}}{{end}}{{end}}
    {{svg "octicon-reply"}}..
    + + {{if $entry.IsSubModule}} + {{svg "octicon-file-submodule"}} + {{$refURL := $subModuleFile.RefURL AppUrl $.Repository.FullName $.SSHDomain}} {{/* FIXME: the usage of AppUrl seems incorrect, it would be fixed in the future, use AppSubUrl instead */}} + {{if $refURL}} + {{$entry.Name}}@{{ShortSha $subModuleFile.RefID}} + {{else}} + {{$entry.Name}}@{{ShortSha $subModuleFile.RefID}} + {{end}} + {{else}} + {{if $entry.IsDir}} + {{$subJumpablePathName := $entry.GetSubJumpablePathName}} + {{svg "octicon-file-directory-fill"}} + + {{$subJumpablePathFields := StringUtils.Split $subJumpablePathName "/"}} + {{$subJumpablePathFieldLast := (Eval (len $subJumpablePathFields) "-" 1)}} + {{if eq $subJumpablePathFieldLast 0}} + {{$subJumpablePathName}} + {{else}} + {{$subJumpablePathPrefixes := slice $subJumpablePathFields 0 $subJumpablePathFieldLast}} + {{StringUtils.Join $subJumpablePathPrefixes "/"}}/{{index $subJumpablePathFields $subJumpablePathFieldLast}} + {{end}} + + {{else}} + {{svg (printf "octicon-%s" (EntryIcon $entry))}} + {{$entry.Name}} + {{end}} + {{end}} + + + + {{if $commit}} + {{$commitLink := printf "%s/commit/%s" $.RepoLink (PathEscape $commit.ID.String)}} + {{RenderCommitMessageLinkSubject $.Context $commit.Message $commitLink ($.Repository.ComposeMetas ctx)}} + {{else}} +
    + {{end}} +
    +
    {{if $commit}}{{TimeSince $commit.Committer.When ctx.Locale}}{{end}}
    + diff --git a/data/gitea/templates/repo/watch_unwatch.tmpl b/data/gitea/templates/repo/watch_unwatch.tmpl new file mode 100644 index 0000000..465cd91 --- /dev/null +++ b/data/gitea/templates/repo/watch_unwatch.tmpl @@ -0,0 +1,13 @@ +
    +
    + {{$buttonText := ctx.Locale.Tr "repo.watch"}} + {{if $.IsWatchingRepo}}{{$buttonText = ctx.Locale.Tr "repo.unwatch"}}{{end}} + + + {{CountFmt .Repository.NumWatches}} + +
    +
    diff --git a/data/gitea/templates/repo/watchers.tmpl b/data/gitea/templates/repo/watchers.tmpl new file mode 100644 index 0000000..1828544 --- /dev/null +++ b/data/gitea/templates/repo/watchers.tmpl @@ -0,0 +1,8 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "repo/user_cards" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/wiki/new.tmpl b/data/gitea/templates/repo/wiki/new.tmpl new file mode 100644 index 0000000..0f10e60 --- /dev/null +++ b/data/gitea/templates/repo/wiki/new.tmpl @@ -0,0 +1,45 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    + {{template "base/alert" .}} +
    + {{ctx.Locale.Tr "repo.wiki.new_page"}} + {{if .PageIsWikiEdit}} + {{ctx.Locale.Tr "repo.wiki.new_page_button"}} + {{end}} +
    +
    + {{.CsrfTokenHtml}} +
    + +
    +
    + {{ctx.Locale.Tr "repo.wiki.page_name_desc"}} +
    + + {{$content := .content}} + {{if not .PageIsWikiEdit}} + {{$content = ctx.Locale.Tr "repo.wiki.welcome"}} + {{end}} + {{template "shared/combomarkdowneditor" (dict + "MarkdownPreviewUrl" (print .Repository.Link "/markup") + "MarkdownPreviewContext" .RepoLink + "TextareaName" "content" + "TextareaPlaceholder" (ctx.Locale.Tr "repo.wiki.page_content") + "TextareaAriaLabel" (ctx.Locale.Tr "repo.wiki.page_content") + "TextareaContent" $content + )}} + +
    + +
    +
    +
    + {{ctx.Locale.Tr "cancel"}} + +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/wiki/pages.tmpl b/data/gitea/templates/repo/wiki/pages.tmpl new file mode 100644 index 0000000..52bf165 --- /dev/null +++ b/data/gitea/templates/repo/wiki/pages.tmpl @@ -0,0 +1,31 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +

    + {{ctx.Locale.Tr "repo.wiki.pages"}} + + {{if and .CanWriteWiki (not .Repository.IsMirror)}} + {{ctx.Locale.Tr "repo.wiki.new_page_button"}} + {{end}} + +

    + {{if .IsRepositoryAdmin}}
    {{ctx.Locale.Tr "repo.default_branch"}}: {{.Repository.DefaultWikiBranch}}
    {{end}} + + + {{range .Pages}} + + + {{$timeSince := TimeSinceUnix .UpdatedUnix ctx.Locale}} + + + {{end}} + +
    + {{svg "octicon-file"}} + {{.Name}} + {{svg "octicon-chevron-right"}} + {{ctx.Locale.Tr "repo.wiki.last_updated" $timeSince}}
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/wiki/revision.tmpl b/data/gitea/templates/repo/wiki/revision.tmpl new file mode 100644 index 0000000..8e0060d --- /dev/null +++ b/data/gitea/templates/repo/wiki/revision.tmpl @@ -0,0 +1,40 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} + {{$title := .title}} +
    +
    +
    +
    + {{.revision}} {{svg "octicon-home"}} + {{$title}} +
    + {{$timeSince := TimeSince .Author.When ctx.Locale}} + {{ctx.Locale.Tr "repo.wiki.last_commit_info" .Author.Name $timeSince}} +
    +
    +
    +
    +
    + {{template "repo/clone_buttons" .}} + {{template "repo/clone_script" .}} +
    +
    +
    +

    {{ctx.Locale.Tr "repo.wiki.wiki_page_revisions"}}

    +
    +

    +
    +
    + {{.CommitCount}} {{ctx.Locale.Tr "repo.commits.commits"}} +
    +
    +

    + {{if and .Commits (gt .CommitCount 0)}} + {{template "repo/commits_list" .}} + {{end}} + {{template "base/paginate" .}} +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/wiki/start.tmpl b/data/gitea/templates/repo/wiki/start.tmpl new file mode 100644 index 0000000..1b3c3d5 --- /dev/null +++ b/data/gitea/templates/repo/wiki/start.tmpl @@ -0,0 +1,15 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} +
    +
    + {{svg "octicon-book" 48}} +

    {{ctx.Locale.Tr "repo.wiki.welcome"}}

    +

    {{ctx.Locale.Tr "repo.wiki.welcome_desc"}}

    + {{if and .CanWriteWiki (not .Repository.IsMirror)}} + {{ctx.Locale.Tr "repo.wiki.create_first_page"}} + {{end}} +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/repo/wiki/view.tmpl b/data/gitea/templates/repo/wiki/view.tmpl new file mode 100644 index 0000000..409de3f --- /dev/null +++ b/data/gitea/templates/repo/wiki/view.tmpl @@ -0,0 +1,115 @@ +{{template "base/head" .}} +
    + {{template "repo/header" .}} + {{$title := .title}} +
    +
    +
    + +
    +
    + {{template "repo/clone_buttons" .}} + {{template "repo/clone_script" .}} +
    +
    +
    +
    +
    + {{.CommitCount}} {{svg "octicon-history"}} + {{$title}} +
    + {{$timeSince := TimeSince .Author.When ctx.Locale}} + {{ctx.Locale.Tr "repo.wiki.last_commit_info" .Author.Name $timeSince}} +
    +
    + +
    +
    + {{if .FormatWarning}} +
    +

    {{.FormatWarning}}

    +
    + {{end}} + +
    + {{if .sidebarTocContent}} + + {{end}} + +
    + {{template "repo/unicode_escape_prompt" dict "EscapeStatus" .EscapeStatus "root" $}} + {{.content | SafeHTML}} +
    + + {{if .sidebarPresent}} + + {{end}} + +
    + + {{if .footerPresent}} + + {{end}} +
    +
    +
    + + + +{{template "base/footer" .}} diff --git a/data/gitea/templates/shared/actions/runner_badge.tmpl b/data/gitea/templates/shared/actions/runner_badge.tmpl new file mode 100644 index 0000000..816e87e --- /dev/null +++ b/data/gitea/templates/shared/actions/runner_badge.tmpl @@ -0,0 +1,25 @@ + + {{.Badge.Label.Text}}: {{.Badge.Message.Text}} + + + + + + + + + + + + + + + {{.Badge.Label.Text}}{{.Badge.Message.Text}} + diff --git a/data/gitea/templates/shared/actions/runner_edit.tmpl b/data/gitea/templates/shared/actions/runner_edit.tmpl new file mode 100644 index 0000000..d60f10b --- /dev/null +++ b/data/gitea/templates/shared/actions/runner_edit.tmpl @@ -0,0 +1,96 @@ +
    +

    + {{ctx.Locale.Tr "actions.runners.runner_title"}} {{.Runner.ID}} {{.Runner.Name}} +

    +
    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} +
    +
    + + {{.Runner.StatusLocaleName ctx.Locale}} +
    +
    + + {{if .Runner.LastOnline}}{{TimeSinceUnix .Runner.LastOnline ctx.Locale}}{{else}}{{ctx.Locale.Tr "never"}}{{end}} +
    +
    + + + {{range .Runner.AgentLabels}} + {{.}} + {{end}} + +
    +
    + + {{.Runner.BelongsToOwnerType.LocaleString ctx.Locale}} +
    +
    + +
    + +
    + + +
    + +
    + +
    + + +
    +
    +
    + +

    + {{ctx.Locale.Tr "actions.runners.task_list"}} +

    +
    + + + + + + + + + + + + {{range .Tasks}} + + + + + + + + {{end}} + {{if not .Tasks}} + + + + {{end}} + +
    {{ctx.Locale.Tr "actions.runners.task_list.run"}}{{ctx.Locale.Tr "actions.runners.task_list.status"}}{{ctx.Locale.Tr "actions.runners.task_list.repository"}}{{ctx.Locale.Tr "actions.runners.task_list.commit"}}{{ctx.Locale.Tr "actions.runners.task_list.done_at"}}
    {{.ID}}{{.Status.LocaleString ctx.Locale}}{{.GetRepoName}} + {{ShortSha .CommitSHA}} + {{if .IsStopped}} + {{TimeSinceUnix .Stopped ctx.Locale}} + {{else}}-{{end}}
    {{ctx.Locale.Tr "actions.runners.task_list.no_tasks"}}
    + {{template "base/paginate" .}} +
    + +
    diff --git a/data/gitea/templates/shared/actions/runner_list.tmpl b/data/gitea/templates/shared/actions/runner_list.tmpl new file mode 100644 index 0000000..d3a86fe --- /dev/null +++ b/data/gitea/templates/shared/actions/runner_list.tmpl @@ -0,0 +1,95 @@ +
    + +

    + {{ctx.Locale.Tr "actions.runners.runner_manage_panel"}} ({{ctx.Locale.Tr "admin.total" .Total}}) +
    + + +
    +

    +
    +
    + {{template "shared/search/combo" dict "Value" .Keyword "Placeholder" (ctx.Locale.Tr "search.runner_kind")}} +
    +
    +
    + + + + + + + + + + + + + + + {{if .Runners}} + {{range .Runners}} + + + + + + + + + + + {{end}} + {{else}} + + + + {{end}} + +
    + {{ctx.Locale.Tr "actions.runners.status"}} + {{SortArrow "online" "offline" .SortType false}} + + {{ctx.Locale.Tr "actions.runners.id"}} + {{SortArrow "oldest" "newest" .SortType false}} + + {{ctx.Locale.Tr "actions.runners.name"}} + {{SortArrow "alphabetically" "reversealphabetically" .SortType false}} + {{ctx.Locale.Tr "actions.runners.version"}}{{ctx.Locale.Tr "actions.runners.owner_type"}}{{ctx.Locale.Tr "actions.runners.labels"}}{{ctx.Locale.Tr "actions.runners.last_online"}}{{ctx.Locale.Tr "edit"}}
    + {{.StatusLocaleName ctx.Locale}} + {{.ID}}

    {{.Name}}

    {{if .Version}}{{.Version}}{{else}}{{ctx.Locale.Tr "unknown"}}{{end}}{{.BelongsToOwnerType.LocaleString ctx.Locale}} + {{range .AgentLabels}}{{.}}{{end}} + {{if .LastOnline}}{{TimeSinceUnix .LastOnline ctx.Locale}}{{else}}{{ctx.Locale.Tr "never"}}{{end}} + {{if .Editable $.RunnerOwnerID $.RunnerRepoID}} + {{svg "octicon-pencil"}} + {{end}} +
    {{ctx.Locale.Tr "actions.runners.none"}}
    +
    + + {{template "base/paginate" .}} + +
    diff --git a/data/gitea/templates/shared/combomarkdowneditor.tmpl b/data/gitea/templates/shared/combomarkdowneditor.tmpl new file mode 100644 index 0000000..a0145ab --- /dev/null +++ b/data/gitea/templates/shared/combomarkdowneditor.tmpl @@ -0,0 +1,59 @@ +{{/* +Template Attributes: +* ContainerId: id attribute for the container element +* ContainerClasses: additional classes for the container element +* MarkdownPreviewUrl: preview url for the preview tab +* MarkdownPreviewContext: preview context for the preview tab +* TextareaName: name attribute for the textarea +* TextareaContent: content for the textarea +* TextareaPlaceholder: placeholder attribute for the textarea +* TextareaAriaLabel: aria-label attribute for the textarea +* DropzoneParentContainer: container for file upload (leave it empty if no upload) +* DisableAutosize: whether to disable automatic height resizing +*/}} +
    + {{if .MarkdownPreviewUrl}} + + {{end}} +
    + +
    + {{svg "octicon-heading"}} + {{svg "octicon-bold"}} + {{svg "octicon-italic"}} +
    +
    + {{svg "octicon-quote"}} + {{svg "octicon-code"}} + {{svg "octicon-link"}} +
    +
    + {{svg "octicon-list-unordered"}} + {{svg "octicon-list-ordered"}} + {{svg "octicon-tasklist"}} +
    +
    + {{svg "octicon-mention"}} + {{svg "octicon-cross-reference"}} +
    +
    + + +
    +
    + + + + +
    +
    + {{ctx.Locale.Tr "loading"}} +
    +
    diff --git a/data/gitea/templates/shared/filetoolarge.tmpl b/data/gitea/templates/shared/filetoolarge.tmpl new file mode 100644 index 0000000..8842fb1 --- /dev/null +++ b/data/gitea/templates/shared/filetoolarge.tmpl @@ -0,0 +1,4 @@ +
    + {{ctx.Locale.Tr "repo.file_too_large"}} + {{if .RawFileLink}}{{ctx.Locale.Tr "repo.file_view_raw"}}{{end}} +
    diff --git a/data/gitea/templates/shared/issueicon.tmpl b/data/gitea/templates/shared/issueicon.tmpl new file mode 100644 index 0000000..a62714e --- /dev/null +++ b/data/gitea/templates/shared/issueicon.tmpl @@ -0,0 +1,25 @@ +{{if .IsPull}} + {{if not .PullRequest}} + No PullRequest + {{else}} + {{if .IsClosed}} + {{if .PullRequest.HasMerged}} + {{svg "octicon-git-merge" 16 "text purple"}} + {{else}} + {{svg "octicon-git-pull-request" 16 "text red"}} + {{end}} + {{else}} + {{if .PullRequest.IsWorkInProgress ctx}} + {{svg "octicon-git-pull-request-draft" 16 "text grey"}} + {{else}} + {{svg "octicon-git-pull-request" 16 "text green"}} + {{end}} + {{end}} + {{end}} +{{else}} + {{if .IsClosed}} + {{svg "octicon-issue-closed" 16 "text red"}} + {{else}} + {{svg "octicon-issue-opened" 16 "text green"}} + {{end}} +{{end}} diff --git a/data/gitea/templates/shared/issuelist.tmpl b/data/gitea/templates/shared/issuelist.tmpl new file mode 100644 index 0000000..16c650e --- /dev/null +++ b/data/gitea/templates/shared/issuelist.tmpl @@ -0,0 +1,163 @@ +
    + {{$approvalCounts := .ApprovalCounts}} + {{range .Issues}} +
    + +
    + {{if $.CanWriteIssuesOrPulls}} + + {{end}} + {{template "shared/issueicon" .}} +
    + +
    +
    +
    + {{RenderEmoji $.Context .Title | RenderCodeBlock}} + {{if .IsPull}} + {{if (index $.CommitStatuses .PullRequest.ID)}} + {{template "repo/commit_statuses" dict "Status" (index $.CommitLastStatus .PullRequest.ID) "Statuses" (index $.CommitStatuses .PullRequest.ID)}} + {{end}} + {{end}} + + {{range .Labels}} + {{RenderLabel $.Context ctx.Locale .}} + {{end}} + +
    + {{if or .TotalTrackedTime .Assignees .NumComments}} +
    + {{if .TotalTrackedTime}} +
    + {{svg "octicon-clock" 16}} + {{.TotalTrackedTime | Sec2Time}} +
    + {{end}} + {{if .Assignees}} +
    + {{range .Assignees}} + + {{ctx.AvatarUtils.Avatar . 20}} + + {{end}} +
    + {{end}} + {{if .NumComments}} + + {{end}} +
    + {{end}} +
    +
    + + {{if eq $.listType "dashboard"}} + {{.Repo.FullName}}#{{.Index}} + {{else}} + #{{.Index}} + {{end}} + + {{$timeStr := TimeSinceUnix .GetLastEventTimestamp ctx.Locale}} + {{if .OriginalAuthor}} + {{ctx.Locale.Tr .GetLastEventLabelFake $timeStr .OriginalAuthor}} + {{else if gt .Poster.ID 0}} + {{ctx.Locale.Tr .GetLastEventLabel $timeStr .Poster.HomeLink .Poster.GetDisplayName}} + {{else}} + {{ctx.Locale.Tr .GetLastEventLabelFake $timeStr .Poster.GetDisplayName}} + {{end}} + {{if .IsPull}} + + {{end}} + {{if and .Milestone (ne $.listType "milestone")}} + + {{svg "octicon-milestone" 14}} + {{.Milestone.Name}} + + {{end}} + {{if .Project}} + + {{svg .Project.IconName 14}} + {{.Project.Title}} + + {{end}} + {{if .Ref}} + + {{svg "octicon-git-branch" 14}} + {{index $.IssueRefEndNames .ID}} + + {{end}} + {{$tasks := .GetTasks}} + {{if gt $tasks 0}} + {{$tasksDone := .GetTasksDone}} + + {{svg "octicon-checklist" 14}}{{$tasksDone}} / {{$tasks}} + + + {{end}} + {{if ne .DeadlineUnix 0}} + + + {{svg "octicon-calendar" 14}} + {{DateTime "short" (.DeadlineUnix.FormatDate)}} + + + {{end}} + {{if .IsPull}} + {{$approveOfficial := call $approvalCounts .ID "approve"}} + {{$rejectOfficial := call $approvalCounts .ID "reject"}} + {{$waitingOfficial := call $approvalCounts .ID "waiting"}} + {{if gt $approveOfficial 0}} + + {{svg "octicon-check" 14}} + {{ctx.Locale.TrN $approveOfficial "repo.pulls.approve_count_1" "repo.pulls.approve_count_n" $approveOfficial}} + + {{end}} + {{if gt $rejectOfficial 0}} + + {{svg "octicon-diff" 14}} + {{ctx.Locale.TrN $rejectOfficial "repo.pulls.reject_count_1" "repo.pulls.reject_count_n" $rejectOfficial}} + + {{end}} + {{if gt $waitingOfficial 0}} + + {{svg "octicon-eye" 14}} + {{ctx.Locale.TrN $waitingOfficial "repo.pulls.waiting_count_1" "repo.pulls.waiting_count_n" $waitingOfficial}} + + {{end}} + {{if and (not .PullRequest.HasMerged) .PullRequest.ConflictedFiles}} + + {{svg "octicon-x" 14}} + {{ctx.Locale.TrN (len .PullRequest.ConflictedFiles) "repo.pulls.num_conflicting_files_1" "repo.pulls.num_conflicting_files_n" (len .PullRequest.ConflictedFiles)}} + + {{end}} + {{end}} +
    +
    +
    + {{end}} + {{if .IssueIndexerUnavailable}} +
    +

    {{ctx.Locale.Tr "search.keyword_search_unavailable"}}

    +
    + {{end}} +
    +{{template "base/paginate" .}} diff --git a/data/gitea/templates/shared/misc/tabtitle.tmpl b/data/gitea/templates/shared/misc/tabtitle.tmpl new file mode 100644 index 0000000..dea9d4d --- /dev/null +++ b/data/gitea/templates/shared/misc/tabtitle.tmpl @@ -0,0 +1 @@ +{{.}} diff --git a/data/gitea/templates/shared/repo_search.tmpl b/data/gitea/templates/shared/repo_search.tmpl new file mode 100644 index 0000000..7fcb5d2 --- /dev/null +++ b/data/gitea/templates/shared/repo_search.tmpl @@ -0,0 +1,64 @@ + +{{if and .PageIsExploreRepositories .OnlyShowRelevant}} +
    + + {{ctx.Locale.Tr "explore.relevant_repositories" (printf "?only_show_relevant=0&sort=%s&q=%s&language=%s" $.SortType (QueryEscape $.Keyword) (QueryEscape $.Language))}} + +
    +{{end}} +
    diff --git a/data/gitea/templates/shared/search/button.tmpl b/data/gitea/templates/shared/search/button.tmpl new file mode 100644 index 0000000..7bb1662 --- /dev/null +++ b/data/gitea/templates/shared/search/button.tmpl @@ -0,0 +1,3 @@ +{{/* Disable (optional) - if search button has to be disabled */}} +{{/* Tooltip (optional) - a tooltip to be displayed on hover */}} + diff --git a/data/gitea/templates/shared/search/code/results.tmpl b/data/gitea/templates/shared/search/code/results.tmpl new file mode 100644 index 0000000..a98a662 --- /dev/null +++ b/data/gitea/templates/shared/search/code/results.tmpl @@ -0,0 +1,36 @@ +
    + {{range $term := .SearchResultLanguages}} + + + {{$term.Language}} +
    {{$term.Count}}
    +
    + {{end}} +
    + +{{template "base/paginate" .}} diff --git a/data/gitea/templates/shared/search/code/search.tmpl b/data/gitea/templates/shared/search/code/search.tmpl new file mode 100644 index 0000000..e49ea47 --- /dev/null +++ b/data/gitea/templates/shared/search/code/search.tmpl @@ -0,0 +1,22 @@ +
    + {{template "shared/search/combo_fuzzy" dict "Value" .Keyword "Disabled" .CodeIndexerUnavailable "IsFuzzy" .IsFuzzy "Placeholder" (ctx.Locale.Tr "search.code_kind")}} +
    +
    +
    + {{if .CodeIndexerUnavailable}} +
    +

    {{ctx.Locale.Tr "search.code_search_unavailable"}}

    +
    + {{else}} + {{if not .IsRepoIndexerEnabled}} +
    +

    {{ctx.Locale.Tr "search.code_search_by_git_grep"}}

    +
    + {{end}} + {{if .SearchResults}} + {{template "shared/search/code/results" .}} + {{else if .Keyword}} +
    {{ctx.Locale.Tr "search.no_results"}}
    + {{end}} + {{end}} +
    diff --git a/data/gitea/templates/shared/search/combo.tmpl b/data/gitea/templates/shared/search/combo.tmpl new file mode 100644 index 0000000..788db95 --- /dev/null +++ b/data/gitea/templates/shared/search/combo.tmpl @@ -0,0 +1,8 @@ +{{/* Value - value of the search field (for search results page) */}} +{{/* Disabled (optional) - if search field/button has to be disabled */}} +{{/* Placeholder (optional) - placeholder text to be used */}} +{{/* Tooltip (optional) - a tooltip to be displayed on button hover */}} +
    + {{template "shared/search/input" dict "Value" .Value "Disabled" .Disabled "Placeholder" .Placeholder}} + {{template "shared/search/button" dict "Disabled" .Disabled "Tooltip" .Tooltip}} +
    diff --git a/data/gitea/templates/shared/search/combo_fuzzy.tmpl b/data/gitea/templates/shared/search/combo_fuzzy.tmpl new file mode 100644 index 0000000..3540a89 --- /dev/null +++ b/data/gitea/templates/shared/search/combo_fuzzy.tmpl @@ -0,0 +1,10 @@ +{{/* Value - value of the search field (for search results page) */}} +{{/* Disabled (optional) - if search field/button has to be disabled */}} +{{/* Placeholder (optional) - placeholder text to be used */}} +{{/* IsFuzzy - state of the fuzzy search toggle */}} +{{/* Tooltip (optional) - a tooltip to be displayed on button hover */}} +
    + {{template "shared/search/input" dict "Value" .Value "Disabled" .Disabled "Placeholder" .Placeholder}} + {{template "shared/search/fuzzy" dict "Disabled" .Disabled "IsFuzzy" .IsFuzzy}} + {{template "shared/search/button" dict "Disabled" .Disabled "Tooltip" .Tooltip}} +
    diff --git a/data/gitea/templates/shared/search/fuzzy.tmpl b/data/gitea/templates/shared/search/fuzzy.tmpl new file mode 100644 index 0000000..5c09d3c --- /dev/null +++ b/data/gitea/templates/shared/search/fuzzy.tmpl @@ -0,0 +1,10 @@ +{{/* Disabled (optional) - if dropdown has to be disabled */}} +{{/* IsFuzzy - state of the fuzzy search toggle */}} + diff --git a/data/gitea/templates/shared/search/input.tmpl b/data/gitea/templates/shared/search/input.tmpl new file mode 100644 index 0000000..75bed07 --- /dev/null +++ b/data/gitea/templates/shared/search/input.tmpl @@ -0,0 +1,4 @@ +{{/* Value - value of the search field (for search results page) */}} +{{/* Disabled (optional) - if search field has to be disabled */}} +{{/* Placeholder (optional) - placeholder text to be used */}} + diff --git a/data/gitea/templates/shared/searchbottom.tmpl b/data/gitea/templates/shared/searchbottom.tmpl new file mode 100644 index 0000000..bee0397 --- /dev/null +++ b/data/gitea/templates/shared/searchbottom.tmpl @@ -0,0 +1,14 @@ +{{if or .result.Language (not .result.UpdatedUnix.IsZero)}} +
    +
    + {{if .result.Language}} + {{.result.Language}} + {{end}} +
    +
    + {{if not .result.UpdatedUnix.IsZero}} + {{ctx.Locale.Tr "explore.code_last_indexed_at" (TimeSinceUnix .result.UpdatedUnix ctx.Locale)}} + {{end}} +
    +
    +{{end}} diff --git a/data/gitea/templates/shared/searchfile.tmpl b/data/gitea/templates/shared/searchfile.tmpl new file mode 100644 index 0000000..280584e --- /dev/null +++ b/data/gitea/templates/shared/searchfile.tmpl @@ -0,0 +1,14 @@ +
    + + + {{range .SearchResult.Lines}} + + + + + {{end}} + +
    + {{.Num}} + {{.FormattedContent}}
    +
    diff --git a/data/gitea/templates/shared/secrets/add_list.tmpl b/data/gitea/templates/shared/secrets/add_list.tmpl new file mode 100644 index 0000000..ea59459 --- /dev/null +++ b/data/gitea/templates/shared/secrets/add_list.tmpl @@ -0,0 +1,81 @@ +

    + {{ctx.Locale.Tr "secrets.management"}} +
    + +
    +

    +
    + {{if .Secrets}} +
    + {{range .Secrets}} +
    +
    + {{svg "octicon-key" 32}} +
    +
    +
    + {{.Name}} +
    +
    + ****** +
    +
    +
    + + {{ctx.Locale.Tr "settings.added_on" (DateTime "short" .CreatedUnix)}} + + +
    +
    + {{end}} +
    + {{else}} + {{ctx.Locale.Tr "secrets.none"}} + {{end}} +
    + +{{/* Add secret dialog */}} + diff --git a/data/gitea/templates/shared/user/authorlink.tmpl b/data/gitea/templates/shared/user/authorlink.tmpl new file mode 100644 index 0000000..d57a635 --- /dev/null +++ b/data/gitea/templates/shared/user/authorlink.tmpl @@ -0,0 +1 @@ +{{.GetDisplayName}}{{if .IsBot}}bot{{end}} diff --git a/data/gitea/templates/shared/user/avatarlink.tmpl b/data/gitea/templates/shared/user/avatarlink.tmpl new file mode 100644 index 0000000..5e3ed7a --- /dev/null +++ b/data/gitea/templates/shared/user/avatarlink.tmpl @@ -0,0 +1 @@ +{{ctx.AvatarUtils.Avatar .user}} diff --git a/data/gitea/templates/shared/user/block_user_dialog.tmpl b/data/gitea/templates/shared/user/block_user_dialog.tmpl new file mode 100644 index 0000000..c6db4ca --- /dev/null +++ b/data/gitea/templates/shared/user/block_user_dialog.tmpl @@ -0,0 +1,23 @@ + diff --git a/data/gitea/templates/shared/user/blocked_users.tmpl b/data/gitea/templates/shared/user/blocked_users.tmpl new file mode 100644 index 0000000..e83a039 --- /dev/null +++ b/data/gitea/templates/shared/user/blocked_users.tmpl @@ -0,0 +1,83 @@ +

    + {{ctx.Locale.Tr "user.block.title"}} +

    +
    +

    {{ctx.Locale.Tr "user.block.info_1"}}

    +
      +
    • {{ctx.Locale.Tr "user.block.info_2"}}
    • +
    • {{ctx.Locale.Tr "user.block.info_3"}}
    • +
    • {{ctx.Locale.Tr "user.block.info_4"}}
    • +
    • {{ctx.Locale.Tr "user.block.info_5"}}
    • +
    • {{ctx.Locale.Tr "user.block.info_6"}}
    • +
    • {{ctx.Locale.Tr "user.block.info_7"}}
    • +
    +
    +
    +
    + {{.CsrfTokenHtml}} + + +
    + + +

    {{ctx.Locale.Tr "user.block.note.info"}}

    +
    +
    +
    +

    + {{ctx.Locale.Tr "user.block.list"}} +

    +
    +
    + {{range .UserBlocks}} +
    +
    + {{ctx.AvatarUtils.Avatar .Blockee}} +
    +
    + + {{if .Note}} +
    + {{ctx.Locale.Tr "user.block.note"}}: {{.Note}} +
    + {{end}} +
    +
    + +
    + {{$.CsrfTokenHtml}} + + + +
    +
    +
    + {{else}} +
    {{ctx.Locale.Tr "user.block.list.none"}}
    + {{end}} +
    +
    + diff --git a/data/gitea/templates/shared/user/name.tmpl b/data/gitea/templates/shared/user/name.tmpl new file mode 100644 index 0000000..896349f --- /dev/null +++ b/data/gitea/templates/shared/user/name.tmpl @@ -0,0 +1 @@ +{{.Name}}{{if .FullName}} ({{.FullName}}){{end}} diff --git a/data/gitea/templates/shared/user/namelink.tmpl b/data/gitea/templates/shared/user/namelink.tmpl new file mode 100644 index 0000000..a122f4f --- /dev/null +++ b/data/gitea/templates/shared/user/namelink.tmpl @@ -0,0 +1 @@ +{{.GetDisplayName}} diff --git a/data/gitea/templates/shared/user/org_profile_avatar.tmpl b/data/gitea/templates/shared/user/org_profile_avatar.tmpl new file mode 100644 index 0000000..d67f133 --- /dev/null +++ b/data/gitea/templates/shared/user/org_profile_avatar.tmpl @@ -0,0 +1,16 @@ +{{with .ContextUser}} +
    +
    +
    +
    + {{ctx.AvatarUtils.Avatar . 100}} + {{.DisplayName}} + + {{if .Visibility.IsLimited}}
    {{ctx.Locale.Tr "org.settings.visibility.limited_shortname"}}
    {{end}} + {{if .Visibility.IsPrivate}}
    {{ctx.Locale.Tr "org.settings.visibility.private_shortname"}}
    {{end}} +
    +
    +
    +
    +
    +{{end}} diff --git a/data/gitea/templates/shared/user/profile_big_avatar.tmpl b/data/gitea/templates/shared/user/profile_big_avatar.tmpl new file mode 100644 index 0000000..868f8d5 --- /dev/null +++ b/data/gitea/templates/shared/user/profile_big_avatar.tmpl @@ -0,0 +1,143 @@ +
    + +
    + {{if .ContextUser.FullName}}{{.ContextUser.FullName}}{{end}} + {{.ContextUser.Name}} {{if .IsAdmin}} + + {{svg "octicon-gear" 18}} + + {{end}} + +
    +
    +
      + {{if .UserBlocking}} +
    • {{svg "octicon-circle-slash"}} {{ctx.Locale.Tr "user.block.blocked"}}
    • + {{if .UserBlocking.Note}} +
    • {{ctx.Locale.Tr "user.block.note"}}: {{.UserBlocking.Note}}
    • + {{end}} + {{end}} + {{if .ContextUser.Location}} +
    • + {{svg "octicon-location"}} + {{.ContextUser.Location}} + {{if .ContextUserLocationMapURL}} + + {{svg "octicon-link-external"}} + + {{end}} +
    • + {{end}} + {{if (eq .SignedUserID .ContextUser.ID)}} +
    • + {{svg "octicon-mail"}} + {{.ContextUser.Email}} + + {{if .ShowUserEmail}} + + {{svg "octicon-unlock"}} + + {{else}} + + {{svg "octicon-lock"}} + + {{end}} + +
    • + {{else}} + {{if .ShowUserEmail}} +
    • + {{svg "octicon-mail"}} + {{.ContextUser.Email}} +
    • + {{end}} + {{end}} + {{if .ContextUser.Website}} +
    • + {{svg "octicon-link"}} + {{.ContextUser.Website}} +
    • + {{end}} + {{if $.RenderedDescription}} +
    • +
      {{$.RenderedDescription}}
      +
    • + {{end}} + {{range .OpenIDs}} + {{if .Show}} +
    • + {{svg "fontawesome-openid"}} + {{.URI}} +
    • + {{end}} + {{end}} +
    • {{svg "octicon-calendar"}} {{ctx.Locale.Tr "user.joined_on" (DateTime "short" .ContextUser.CreatedUnix)}}
    • + {{if and .Orgs .HasOrgsVisible}} +
    • +
        + {{range .Orgs}} + {{if (or .Visibility.IsPublic (and ($.SignedUser) (or .Visibility.IsLimited (and (.HasMemberWithUserID ctx $.SignedUserID) .Visibility.IsPrivate) ($.IsAdmin))))}} +
      • + + {{ctx.AvatarUtils.Avatar .}} + +
      • + {{end}} + {{end}} +
      +
    • + {{end}} + {{if .Badges}} +
    • +
        + {{range .Badges}} +
      • + {{.Description}} +
      • + {{end}} +
      +
    • + {{end}} + {{if and .IsSigned (ne .SignedUserID .ContextUser.ID)}} + {{if not .UserBlocking}} + + {{end}} +
    • + {{if not .UserBlocking}} + {{ctx.Locale.Tr "user.block.block.user"}} + {{else}} + {{ctx.Locale.Tr "user.block.unblock"}} + {{end}} +
    • + {{end}} +
    +
    +
    + +{{template "shared/user/block_user_dialog" .}} diff --git a/data/gitea/templates/shared/variables/variable_list.tmpl b/data/gitea/templates/shared/variables/variable_list.tmpl new file mode 100644 index 0000000..06c71c0 --- /dev/null +++ b/data/gitea/templates/shared/variables/variable_list.tmpl @@ -0,0 +1,92 @@ +

    + {{ctx.Locale.Tr "actions.variables.management"}} +
    + +
    +

    +
    + {{if .Variables}} +
    + {{range .Variables}} +
    +
    + {{svg "octicon-pencil" 32}} +
    +
    +
    + {{.Name}} +
    +
    + {{.Data}} +
    +
    +
    + + {{ctx.Locale.Tr "settings.added_on" (DateTime "short" .CreatedUnix)}} + + + +
    +
    + {{end}} +
    + {{else}} + {{ctx.Locale.Tr "actions.variables.none"}} + {{end}} +
    + +{{/** Edit variable dialog */}} + + diff --git a/data/gitea/templates/shared/webhook/icon.tmpl b/data/gitea/templates/shared/webhook/icon.tmpl new file mode 100644 index 0000000..0f80787 --- /dev/null +++ b/data/gitea/templates/shared/webhook/icon.tmpl @@ -0,0 +1,27 @@ +{{$size := 26}} +{{if .Size}} + {{$size = .Size}} +{{end}} +{{if eq .HookType "gitea"}} + {{svg "gitea-gitea" $size "img"}} +{{else if eq .HookType "gogs"}} + +{{else if eq .HookType "slack"}} + +{{else if eq .HookType "discord"}} + +{{else if eq .HookType "dingtalk"}} + +{{else if eq .HookType "telegram"}} + +{{else if eq .HookType "msteams"}} + +{{else if eq .HookType "feishu"}} + +{{else if eq .HookType "matrix"}} + {{svg "gitea-matrix" $size "img"}} +{{else if eq .HookType "wechatwork"}} + +{{else if eq .HookType "packagist"}} + +{{end}} diff --git a/data/gitea/templates/status/404.tmpl b/data/gitea/templates/status/404.tmpl new file mode 100644 index 0000000..78f149e --- /dev/null +++ b/data/gitea/templates/status/404.tmpl @@ -0,0 +1,10 @@ +{{template "base/head" .}} +
    + {{if .IsRepo}}{{template "repo/header" .}}{{end}} +
    + 404 +

    {{if .NotFoundPrompt}}{{.NotFoundPrompt}}{{else}}{{ctx.Locale.Tr "error404"}}{{end}}

    + {{if .NotFoundGoBackURL}}{{ctx.Locale.Tr "go_back"}}{{end}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/status/500.tmpl b/data/gitea/templates/status/500.tmpl new file mode 100644 index 0000000..566fddc --- /dev/null +++ b/data/gitea/templates/status/500.tmpl @@ -0,0 +1,68 @@ +{{/* This page should only depend the minimal template functions/variables, to avoid triggering new panics. +* base template functions: AppName, AssetUrlPrefix, AssetVersion, AppSubUrl, UserThemeName +* ctx.Locale +* .Flash +* .ErrorMsg +* .SignedUser (optional) +*/}} + + + + + Internal Server Error - {{AppName}} + + + {{template "base/head_style" .}} + + +
    + +
    +
    +
    + + {{template "base/alert" .}} +
    +

    Internal Server Error

    +
    +
    + {{if .ErrorMsg}} +

    {{ctx.Locale.Tr "error.occurred"}}:

    +
    {{.ErrorMsg}}
    + {{end}} +
    + {{if or .SignedUser.IsAdmin .ShowFooterVersion}}

    {{ctx.Locale.Tr "admin.config.app_ver"}}: {{AppVer}}

    {{end}} + {{if .SignedUser.IsAdmin}}

    {{ctx.Locale.Tr "error.report_message"}}

    {{end}} +
    +
    +
    +
    + + {{/* When a sub-template triggers an 500 error, its parent template has been partially rendered, then the 500 page + will be rendered after that partially rendered page, the HTML/JS are totally broken. Use this inline script to try to move it to main viewport. + And this page shouldn't include any other JS file, avoid duplicate JS execution (still due to the partial rendering).*/}} + + + diff --git a/data/gitea/templates/swagger/ui.tmpl b/data/gitea/templates/swagger/ui.tmpl new file mode 100644 index 0000000..9935ab9 --- /dev/null +++ b/data/gitea/templates/swagger/ui.tmpl @@ -0,0 +1,12 @@ + + + + Gitea API + + + + {{svg "octicon-reply"}}{{ctx.Locale.Tr "return_to_gitea"}} +
    + + + diff --git a/data/gitea/templates/swagger/v1_json.tmpl b/data/gitea/templates/swagger/v1_json.tmpl new file mode 100644 index 0000000..d5c0097 --- /dev/null +++ b/data/gitea/templates/swagger/v1_json.tmpl @@ -0,0 +1,25728 @@ +{ + "consumes": [ + "application/json", + "text/plain" + ], + "produces": [ + "application/json", + "text/html" + ], + "schemes": [ + "https", + "http" + ], + "swagger": "2.0", + "info": { + "description": "This documentation describes the Gitea API.", + "title": "Gitea API", + "license": { + "name": "MIT", + "url": "http://opensource.org/licenses/MIT" + }, + "version": "{{AppVer | JSEscape}}" + }, + "basePath": "{{AppSubUrl | JSEscape}}/api/v1", + "paths": { + "/activitypub/user-id/{user-id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "activitypub" + ], + "summary": "Returns the Person actor for a user", + "operationId": "activitypubPerson", + "parameters": [ + { + "type": "integer", + "description": "user ID of the user", + "name": "user-id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/ActivityPub" + } + } + } + }, + "/activitypub/user-id/{user-id}/inbox": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "activitypub" + ], + "summary": "Send to the inbox", + "operationId": "activitypubPersonInbox", + "parameters": [ + { + "type": "integer", + "description": "user ID of the user", + "name": "user-id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + } + } + } + }, + "/admin/cron": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "List cron tasks", + "operationId": "adminCronList", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/CronList" + }, + "403": { + "$ref": "#/responses/forbidden" + } + } + } + }, + "/admin/cron/{task}": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Run cron task", + "operationId": "adminCronRun", + "parameters": [ + { + "type": "string", + "description": "task to run", + "name": "task", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/admin/emails": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "List all emails", + "operationId": "adminGetAllEmails", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/EmailList" + }, + "403": { + "$ref": "#/responses/forbidden" + } + } + } + }, + "/admin/emails/search": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Search all emails", + "operationId": "adminSearchEmails", + "parameters": [ + { + "type": "string", + "description": "keyword", + "name": "q", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/EmailList" + }, + "403": { + "$ref": "#/responses/forbidden" + } + } + } + }, + "/admin/hooks": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "List system's webhooks", + "operationId": "adminListHooks", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/HookList" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Create a hook", + "operationId": "adminCreateHook", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateHookOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Hook" + } + } + } + }, + "/admin/hooks/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Get a hook", + "operationId": "adminGetHook", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the hook to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Hook" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Delete a hook", + "operationId": "adminDeleteHook", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the hook to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Update a hook", + "operationId": "adminEditHook", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the hook to update", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditHookOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Hook" + } + } + } + }, + "/admin/orgs": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "List all organizations", + "operationId": "adminGetAllOrgs", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/OrganizationList" + }, + "403": { + "$ref": "#/responses/forbidden" + } + } + } + }, + "/admin/runners/registration-token": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Get an global actions runner registration token", + "operationId": "adminGetRunnerRegistrationToken", + "responses": { + "200": { + "$ref": "#/responses/RegistrationToken" + } + } + } + }, + "/admin/unadopted": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "List unadopted repositories", + "operationId": "adminUnadoptedList", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + }, + { + "type": "string", + "description": "pattern of repositories to search for", + "name": "pattern", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/StringSlice" + }, + "403": { + "$ref": "#/responses/forbidden" + } + } + } + }, + "/admin/unadopted/{owner}/{repo}": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Adopt unadopted files as a repository", + "operationId": "adminAdoptRepository", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Delete unadopted files", + "operationId": "adminDeleteUnadoptedRepository", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + } + } + } + }, + "/admin/users": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Search users according filter conditions", + "operationId": "adminSearchUsers", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "ID of the user's login source to search for", + "name": "source_id", + "in": "query" + }, + { + "type": "string", + "description": "user's login name to search for", + "name": "login_name", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "403": { + "$ref": "#/responses/forbidden" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Create a user", + "operationId": "adminCreateUser", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateUserOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/User" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/admin/users/{username}": { + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Delete a user", + "operationId": "adminDeleteUser", + "parameters": [ + { + "type": "string", + "description": "username of user to delete", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "boolean", + "description": "purge the user from the system completely", + "name": "purge", + "in": "query" + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Edit an existing user", + "operationId": "adminEditUser", + "parameters": [ + { + "type": "string", + "description": "username of user to edit", + "name": "username", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditUserOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/User" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/admin/users/{username}/badges": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "List a user's badges", + "operationId": "adminListUserBadges", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/BadgeList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Add a badge to a user", + "operationId": "adminAddUserBadges", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/UserBadgeOption" + } + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Remove a badge from a user", + "operationId": "adminDeleteUserBadges", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/UserBadgeOption" + } + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/admin/users/{username}/keys": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Add a public key on behalf of a user", + "operationId": "adminCreatePublicKey", + "parameters": [ + { + "type": "string", + "description": "username of the user", + "name": "username", + "in": "path", + "required": true + }, + { + "name": "key", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateKeyOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/PublicKey" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/admin/users/{username}/keys/{id}": { + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Delete a user's public key", + "operationId": "adminDeleteUserPublicKey", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the key to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/admin/users/{username}/orgs": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Create an organization", + "operationId": "adminCreateOrg", + "parameters": [ + { + "type": "string", + "description": "username of the user that will own the created organization", + "name": "username", + "in": "path", + "required": true + }, + { + "name": "organization", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateOrgOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Organization" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/admin/users/{username}/rename": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Rename a user", + "operationId": "adminRenameUser", + "parameters": [ + { + "type": "string", + "description": "existing username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RenameUserOption" + } + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/admin/users/{username}/repos": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "admin" + ], + "summary": "Create a repository on behalf of a user", + "operationId": "adminCreateRepo", + "parameters": [ + { + "type": "string", + "description": "username of the user. This user will own the created repository", + "name": "username", + "in": "path", + "required": true + }, + { + "name": "repository", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateRepoOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Repository" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "$ref": "#/responses/error" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/gitignore/templates": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Returns a list of all gitignore templates", + "operationId": "listGitignoresTemplates", + "responses": { + "200": { + "$ref": "#/responses/GitignoreTemplateList" + } + } + } + }, + "/gitignore/templates/{name}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Returns information about a gitignore template", + "operationId": "getGitignoreTemplateInfo", + "parameters": [ + { + "type": "string", + "description": "name of the template", + "name": "name", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/GitignoreTemplateInfo" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/label/templates": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Returns a list of all label templates", + "operationId": "listLabelTemplates", + "responses": { + "200": { + "$ref": "#/responses/LabelTemplateList" + } + } + } + }, + "/label/templates/{name}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Returns all labels in a template", + "operationId": "getLabelTemplateInfo", + "parameters": [ + { + "type": "string", + "description": "name of the template", + "name": "name", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/LabelTemplateInfo" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/licenses": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Returns a list of all license templates", + "operationId": "listLicenseTemplates", + "responses": { + "200": { + "$ref": "#/responses/LicenseTemplateList" + } + } + } + }, + "/licenses/{name}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Returns information about a license template", + "operationId": "getLicenseTemplateInfo", + "parameters": [ + { + "type": "string", + "description": "name of the license", + "name": "name", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/LicenseTemplateInfo" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/markdown": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "text/html" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Render a markdown document as HTML", + "operationId": "renderMarkdown", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/MarkdownOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/MarkdownRender" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/markdown/raw": { + "post": { + "consumes": [ + "text/plain" + ], + "produces": [ + "text/html" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Render raw markdown as HTML", + "operationId": "renderMarkdownRaw", + "parameters": [ + { + "description": "Request body to render", + "name": "body", + "in": "body", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/MarkdownRender" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/markup": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "text/html" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Render a markup document as HTML", + "operationId": "renderMarkup", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/MarkupOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/MarkupRender" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/nodeinfo": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Returns the nodeinfo of the Gitea application", + "operationId": "getNodeInfo", + "responses": { + "200": { + "$ref": "#/responses/NodeInfo" + } + } + } + }, + "/notifications": { + "get": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "notification" + ], + "summary": "List users's notification threads", + "operationId": "notifyGetList", + "parameters": [ + { + "type": "boolean", + "description": "If true, show notifications marked as read. Default value is false", + "name": "all", + "in": "query" + }, + { + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "description": "Show notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread \u0026 pinned.", + "name": "status-types", + "in": "query" + }, + { + "type": "array", + "items": { + "enum": [ + "issue", + "pull", + "commit", + "repository" + ], + "type": "string" + }, + "collectionFormat": "multi", + "description": "filter notifications by subject type", + "name": "subject-type", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show notifications updated after the given time. This is a timestamp in RFC 3339 format", + "name": "since", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show notifications updated before the given time. This is a timestamp in RFC 3339 format", + "name": "before", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/NotificationThreadList" + } + } + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "notification" + ], + "summary": "Mark notification threads as read, pinned or unread", + "operationId": "notifyReadList", + "parameters": [ + { + "type": "string", + "format": "date-time", + "description": "Describes the last point that notifications were checked. Anything updated since this time will not be updated.", + "name": "last_read_at", + "in": "query" + }, + { + "type": "string", + "description": "If true, mark all notifications on this repo. Default value is false", + "name": "all", + "in": "query" + }, + { + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "description": "Mark notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread.", + "name": "status-types", + "in": "query" + }, + { + "type": "string", + "description": "Status to mark notifications as, Defaults to read.", + "name": "to-status", + "in": "query" + } + ], + "responses": { + "205": { + "$ref": "#/responses/NotificationThreadList" + } + } + } + }, + "/notifications/new": { + "get": { + "tags": [ + "notification" + ], + "summary": "Check if unread notifications exist", + "operationId": "notifyNewAvailable", + "responses": { + "200": { + "$ref": "#/responses/NotificationCount" + } + } + } + }, + "/notifications/threads/{id}": { + "get": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "notification" + ], + "summary": "Get notification thread by ID", + "operationId": "notifyGetThread", + "parameters": [ + { + "type": "string", + "description": "id of notification thread", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/NotificationThread" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "notification" + ], + "summary": "Mark notification thread as read by ID", + "operationId": "notifyReadThread", + "parameters": [ + { + "type": "string", + "description": "id of notification thread", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "default": "read", + "description": "Status to mark notifications as", + "name": "to-status", + "in": "query" + } + ], + "responses": { + "205": { + "$ref": "#/responses/NotificationThread" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/org/{org}/repos": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Create a repository in an organization", + "operationId": "createOrgRepoDeprecated", + "deprecated": true, + "parameters": [ + { + "type": "string", + "description": "name of organization", + "name": "org", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateRepoOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Repository" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/orgs": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Get list of organizations", + "operationId": "orgGetAll", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/OrganizationList" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Create an organization", + "operationId": "orgCreate", + "parameters": [ + { + "name": "organization", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateOrgOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Organization" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/orgs/{org}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Get an organization", + "operationId": "orgGet", + "parameters": [ + { + "type": "string", + "description": "name of the organization to get", + "name": "org", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Organization" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Delete an organization", + "operationId": "orgDelete", + "parameters": [ + { + "type": "string", + "description": "organization that is to be deleted", + "name": "org", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Edit an organization", + "operationId": "orgEdit", + "parameters": [ + { + "type": "string", + "description": "name of the organization to edit", + "name": "org", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EditOrgOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Organization" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/actions/runners/registration-token": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Get an organization's actions runner registration token", + "operationId": "orgGetRunnerRegistrationToken", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/RegistrationToken" + } + } + } + }, + "/orgs/{org}/actions/secrets": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List an organization's actions secrets", + "operationId": "orgListActionsSecrets", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/SecretList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/actions/secrets/{secretname}": { + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Create or Update a secret value in an organization", + "operationId": "updateOrgSecret", + "parameters": [ + { + "type": "string", + "description": "name of organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the secret", + "name": "secretname", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateOrUpdateSecretOption" + } + } + ], + "responses": { + "201": { + "description": "response when creating a secret" + }, + "204": { + "description": "response when updating a secret" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Delete a secret in an organization", + "operationId": "deleteOrgSecret", + "parameters": [ + { + "type": "string", + "description": "name of organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the secret", + "name": "secretname", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "description": "delete one secret of the organization" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/actions/variables": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Get an org-level variables list", + "operationId": "getOrgVariablesList", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/VariableList" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/actions/variables/{variablename}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Get an org-level variable", + "operationId": "getOrgVariable", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/ActionVariable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Update an org-level variable", + "operationId": "updateOrgVariable", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/UpdateVariableOption" + } + } + ], + "responses": { + "201": { + "description": "response when updating an org-level variable" + }, + "204": { + "description": "response when updating an org-level variable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Create an org-level variable", + "operationId": "createOrgVariable", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateVariableOption" + } + } + ], + "responses": { + "201": { + "description": "response when creating an org-level variable" + }, + "204": { + "description": "response when creating an org-level variable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Delete an org-level variable", + "operationId": "deleteOrgVariable", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/ActionVariable" + }, + "201": { + "description": "response when deleting a variable" + }, + "204": { + "description": "response when deleting a variable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/activities/feeds": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List an organization's activity feeds", + "operationId": "orgListActivityFeeds", + "parameters": [ + { + "type": "string", + "description": "name of the org", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "format": "date", + "description": "the date of the activities to be found", + "name": "date", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/ActivityFeedsList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/avatar": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Update Avatar", + "operationId": "orgUpdateAvatar", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/UpdateUserAvatarOption" + } + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Delete Avatar", + "operationId": "orgDeleteAvatar", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/blocks": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List users blocked by the organization", + "operationId": "organizationListBlocks", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + } + } + } + }, + "/orgs/{org}/blocks/{username}": { + "get": { + "tags": [ + "organization" + ], + "summary": "Check if a user is blocked by the organization", + "operationId": "organizationCheckUserBlock", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "user to check", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "tags": [ + "organization" + ], + "summary": "Block a user", + "operationId": "organizationBlockUser", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "user to block", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "optional note for the block", + "name": "note", + "in": "query" + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + }, + "delete": { + "tags": [ + "organization" + ], + "summary": "Unblock a user", + "operationId": "organizationUnblockUser", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "user to unblock", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/orgs/{org}/hooks": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List an organization's webhooks", + "operationId": "orgListHooks", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/HookList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Create a hook", + "operationId": "orgCreateHook", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateHookOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Hook" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/hooks/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Get a hook", + "operationId": "orgGetHook", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the hook to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Hook" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Delete a hook", + "operationId": "orgDeleteHook", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the hook to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Update a hook", + "operationId": "orgEditHook", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the hook to update", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditHookOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Hook" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/labels": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List an organization's labels", + "operationId": "orgListLabels", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/LabelList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Create a label for an organization", + "operationId": "orgCreateLabel", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateLabelOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Label" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/orgs/{org}/labels/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Get a single label", + "operationId": "orgGetLabel", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the label to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Label" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "organization" + ], + "summary": "Delete a label", + "operationId": "orgDeleteLabel", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the label to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Update a label", + "operationId": "orgEditLabel", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the label to edit", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditLabelOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Label" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/orgs/{org}/members": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List an organization's members", + "operationId": "orgListMembers", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/members/{username}": { + "get": { + "tags": [ + "organization" + ], + "summary": "Check if a user is a member of an organization", + "operationId": "orgIsMember", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the user", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "description": "user is a member" + }, + "303": { + "description": "redirection to /orgs/{org}/public_members/{username}" + }, + "404": { + "description": "user is not a member" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Remove a member from an organization", + "operationId": "orgDeleteMember", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the user", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "description": "member removed" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/public_members": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List an organization's public members", + "operationId": "orgListPublicMembers", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/public_members/{username}": { + "get": { + "tags": [ + "organization" + ], + "summary": "Check if a user is a public member of an organization", + "operationId": "orgIsPublicMember", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the user", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "description": "user is a public member" + }, + "404": { + "description": "user is not a public member" + } + } + }, + "put": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Publicize a user's membership", + "operationId": "orgPublicizeMember", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the user", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "description": "membership publicized" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Conceal a user's membership", + "operationId": "orgConcealMember", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the user", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/repos": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List an organization's repos", + "operationId": "orgListRepos", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepositoryList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Create a repository in an organization", + "operationId": "createOrgRepo", + "parameters": [ + { + "type": "string", + "description": "name of organization", + "name": "org", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateRepoOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Repository" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/orgs/{org}/teams": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List an organization's teams", + "operationId": "orgListTeams", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/TeamList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Create a team", + "operationId": "orgCreateTeam", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateTeamOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Team" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/orgs/{org}/teams/search": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Search for teams within an organization", + "operationId": "teamSearch", + "parameters": [ + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "keywords to search", + "name": "q", + "in": "query" + }, + { + "type": "boolean", + "description": "include search within team description (defaults to true)", + "name": "include_desc", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "description": "SearchResults of a successful search", + "schema": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/definitions/Team" + } + }, + "ok": { + "type": "boolean" + } + } + } + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/packages/{owner}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "package" + ], + "summary": "Gets all packages of an owner", + "operationId": "listPackages", + "parameters": [ + { + "type": "string", + "description": "owner of the packages", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + }, + { + "enum": [ + "alpine", + "cargo", + "chef", + "composer", + "conan", + "conda", + "container", + "cran", + "debian", + "generic", + "go", + "helm", + "maven", + "npm", + "nuget", + "pub", + "pypi", + "rpm", + "rubygems", + "swift", + "vagrant" + ], + "type": "string", + "description": "package type filter", + "name": "type", + "in": "query" + }, + { + "type": "string", + "description": "name filter", + "name": "q", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/PackageList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/packages/{owner}/{type}/{name}/{version}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "package" + ], + "summary": "Gets a package", + "operationId": "getPackage", + "parameters": [ + { + "type": "string", + "description": "owner of the package", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "type of the package", + "name": "type", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the package", + "name": "name", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "version of the package", + "name": "version", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Package" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "package" + ], + "summary": "Delete a package", + "operationId": "deletePackage", + "parameters": [ + { + "type": "string", + "description": "owner of the package", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "type of the package", + "name": "type", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the package", + "name": "name", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "version of the package", + "name": "version", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/packages/{owner}/{type}/{name}/{version}/files": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "package" + ], + "summary": "Gets all files of a package", + "operationId": "listPackageFiles", + "parameters": [ + { + "type": "string", + "description": "owner of the package", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "type of the package", + "name": "type", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the package", + "name": "name", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "version of the package", + "name": "version", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/PackageFileList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/issues/search": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Search for issues across the repositories that the user has access to", + "operationId": "issueSearchIssues", + "parameters": [ + { + "type": "string", + "description": "whether issue is open or closed", + "name": "state", + "in": "query" + }, + { + "type": "string", + "description": "comma separated list of labels. Fetch only issues that have any of this labels. Non existent labels are discarded", + "name": "labels", + "in": "query" + }, + { + "type": "string", + "description": "comma separated list of milestone names. Fetch only issues that have any of this milestones. Non existent are discarded", + "name": "milestones", + "in": "query" + }, + { + "type": "string", + "description": "search string", + "name": "q", + "in": "query" + }, + { + "type": "integer", + "format": "int64", + "description": "repository to prioritize in the results", + "name": "priority_repo_id", + "in": "query" + }, + { + "type": "string", + "description": "filter by type (issues / pulls) if set", + "name": "type", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show notifications updated after the given time. This is a timestamp in RFC 3339 format", + "name": "since", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show notifications updated before the given time. This is a timestamp in RFC 3339 format", + "name": "before", + "in": "query" + }, + { + "type": "boolean", + "description": "filter (issues / pulls) assigned to you, default is false", + "name": "assigned", + "in": "query" + }, + { + "type": "boolean", + "description": "filter (issues / pulls) created by you, default is false", + "name": "created", + "in": "query" + }, + { + "type": "boolean", + "description": "filter (issues / pulls) mentioning you, default is false", + "name": "mentioned", + "in": "query" + }, + { + "type": "boolean", + "description": "filter pulls requesting your review, default is false", + "name": "review_requested", + "in": "query" + }, + { + "type": "boolean", + "description": "filter pulls reviewed by you, default is false", + "name": "reviewed", + "in": "query" + }, + { + "type": "string", + "description": "filter by owner", + "name": "owner", + "in": "query" + }, + { + "type": "string", + "description": "filter by team (requires organization owner parameter to be provided)", + "name": "team", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/IssueList" + } + } + } + }, + "/repos/migrate": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Migrate a remote git repository", + "operationId": "repoMigrate", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/MigrateRepoOptions" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Repository" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "409": { + "description": "The repository with the same name already exists." + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/search": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Search for repositories", + "operationId": "repoSearch", + "parameters": [ + { + "type": "string", + "description": "keyword", + "name": "q", + "in": "query" + }, + { + "type": "boolean", + "description": "Limit search to repositories with keyword as topic", + "name": "topic", + "in": "query" + }, + { + "type": "boolean", + "description": "include search of keyword within repository description", + "name": "includeDesc", + "in": "query" + }, + { + "type": "integer", + "format": "int64", + "description": "search only for repos that the user with the given id owns or contributes to", + "name": "uid", + "in": "query" + }, + { + "type": "integer", + "format": "int64", + "description": "repo owner to prioritize in the results", + "name": "priority_owner_id", + "in": "query" + }, + { + "type": "integer", + "format": "int64", + "description": "search only for repos that belong to the given team id", + "name": "team_id", + "in": "query" + }, + { + "type": "integer", + "format": "int64", + "description": "search only for repos that the user with the given id has starred", + "name": "starredBy", + "in": "query" + }, + { + "type": "boolean", + "description": "include private repositories this user has access to (defaults to true)", + "name": "private", + "in": "query" + }, + { + "type": "boolean", + "description": "show only pubic, private or all repositories (defaults to all)", + "name": "is_private", + "in": "query" + }, + { + "type": "boolean", + "description": "include template repositories this user has access to (defaults to true)", + "name": "template", + "in": "query" + }, + { + "type": "boolean", + "description": "show only archived, non-archived or all repositories (defaults to all)", + "name": "archived", + "in": "query" + }, + { + "type": "string", + "description": "type of repository to search for. Supported values are \"fork\", \"source\", \"mirror\" and \"collaborative\"", + "name": "mode", + "in": "query" + }, + { + "type": "boolean", + "description": "if `uid` is given, search only for repos that the user owns", + "name": "exclusive", + "in": "query" + }, + { + "type": "string", + "description": "sort repos by attribute. Supported values are \"alpha\", \"created\", \"updated\", \"size\", and \"id\". Default is \"alpha\"", + "name": "sort", + "in": "query" + }, + { + "type": "string", + "description": "sort order, either \"asc\" (ascending) or \"desc\" (descending). Default is \"asc\", ignored if \"sort\" is not specified.", + "name": "order", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/SearchResults" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a repository", + "operationId": "repoGet", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Repository" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a repository", + "operationId": "repoDelete", + "parameters": [ + { + "type": "string", + "description": "owner of the repo to delete", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to delete", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Edit a repository's properties. Only fields that are set will be changed.", + "operationId": "repoEdit", + "parameters": [ + { + "type": "string", + "description": "owner of the repo to edit", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to edit", + "name": "repo", + "in": "path", + "required": true + }, + { + "description": "Properties of a repo that you can edit", + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditRepoOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Repository" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/actions/runners/registration-token": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a repository's actions runner registration token", + "operationId": "repoGetRunnerRegistrationToken", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/RegistrationToken" + } + } + } + }, + "/repos/{owner}/{repo}/actions/secrets": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List an repo's actions secrets", + "operationId": "repoListActionsSecrets", + "parameters": [ + { + "type": "string", + "description": "owner of the repository", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repository", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/SecretList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/actions/secrets/{secretname}": { + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create or Update a secret value in a repository", + "operationId": "updateRepoSecret", + "parameters": [ + { + "type": "string", + "description": "owner of the repository", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repository", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the secret", + "name": "secretname", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateOrUpdateSecretOption" + } + } + ], + "responses": { + "201": { + "description": "response when creating a secret" + }, + "204": { + "description": "response when updating a secret" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a secret in a repository", + "operationId": "deleteRepoSecret", + "parameters": [ + { + "type": "string", + "description": "owner of the repository", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repository", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the secret", + "name": "secretname", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "description": "delete one secret of the organization" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/actions/variables": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get repo-level variables list", + "operationId": "getRepoVariablesList", + "parameters": [ + { + "type": "string", + "description": "name of the owner", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repository", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/VariableList" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/actions/variables/{variablename}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a repo-level variable", + "operationId": "getRepoVariable", + "parameters": [ + { + "type": "string", + "description": "name of the owner", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repository", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/ActionVariable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Update a repo-level variable", + "operationId": "updateRepoVariable", + "parameters": [ + { + "type": "string", + "description": "name of the owner", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repository", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/UpdateVariableOption" + } + } + ], + "responses": { + "201": { + "description": "response when updating a repo-level variable" + }, + "204": { + "description": "response when updating a repo-level variable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a repo-level variable", + "operationId": "createRepoVariable", + "parameters": [ + { + "type": "string", + "description": "name of the owner", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repository", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateVariableOption" + } + } + ], + "responses": { + "201": { + "description": "response when creating a repo-level variable" + }, + "204": { + "description": "response when creating a repo-level variable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a repo-level variable", + "operationId": "deleteRepoVariable", + "parameters": [ + { + "type": "string", + "description": "name of the owner", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repository", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/ActionVariable" + }, + "201": { + "description": "response when deleting a variable" + }, + "204": { + "description": "response when deleting a variable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/activities/feeds": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repository's activity feeds", + "operationId": "repoListActivityFeeds", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "format": "date", + "description": "the date of the activities to be found", + "name": "date", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/ActivityFeedsList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/archive/{archive}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get an archive of a repository", + "operationId": "repoGetArchive", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "the git reference for download with attached archive format (e.g. master.zip)", + "name": "archive", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "description": "success" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/assignees": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Return all users that have write access and can be assigned to issues", + "operationId": "repoGetAssignees", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/avatar": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Update avatar", + "operationId": "repoUpdateAvatar", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/UpdateRepoAvatarOption" + } + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete avatar", + "operationId": "repoDeleteAvatar", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/branch_protections": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List branch protections for a repository", + "operationId": "repoListBranchProtection", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/BranchProtectionList" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a branch protections for a repository", + "operationId": "repoCreateBranchProtection", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateBranchProtectionOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/BranchProtection" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/branch_protections/{name}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a specific branch protection for the repository", + "operationId": "repoGetBranchProtection", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of protected branch", + "name": "name", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/BranchProtection" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a specific branch protection for the repository", + "operationId": "repoDeleteBranchProtection", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of protected branch", + "name": "name", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Edit a branch protections for a repository. Only fields that are set will be changed", + "operationId": "repoEditBranchProtection", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of protected branch", + "name": "name", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditBranchProtectionOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/BranchProtection" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/branches": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repository's branches", + "operationId": "repoListBranches", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/BranchList" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a branch", + "operationId": "repoCreateBranch", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateBranchRepoOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Branch" + }, + "403": { + "description": "The branch is archived or a mirror." + }, + "404": { + "description": "The old branch does not exist." + }, + "409": { + "description": "The branch with the same name already exists." + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/branches/{branch}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Retrieve a specific branch from a repository, including its effective branch protection", + "operationId": "repoGetBranch", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "branch to get", + "name": "branch", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Branch" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a specific branch from a repository", + "operationId": "repoDeleteBranch", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "branch to delete", + "name": "branch", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/collaborators": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repository's collaborators", + "operationId": "repoListCollaborators", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/collaborators/{collaborator}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Check if a user is a collaborator of a repository", + "operationId": "repoCheckCollaborator", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the collaborator", + "name": "collaborator", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + }, + "put": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Add a collaborator to a repository", + "operationId": "repoAddCollaborator", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the collaborator to add", + "name": "collaborator", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/AddCollaboratorOption" + } + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a collaborator from a repository", + "operationId": "repoDeleteCollaborator", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the collaborator to delete", + "name": "collaborator", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/collaborators/{collaborator}/permission": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get repository permissions for a user", + "operationId": "repoGetRepoPermissions", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the collaborator", + "name": "collaborator", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepoCollaboratorPermission" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/commits": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a list of all commits from a repository", + "operationId": "repoGetAllCommits", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "SHA or branch to start listing commits from (usually 'master')", + "name": "sha", + "in": "query" + }, + { + "type": "string", + "description": "filepath of a file/dir", + "name": "path", + "in": "query" + }, + { + "type": "boolean", + "description": "include diff stats for every commit (disable for speedup, default 'true')", + "name": "stat", + "in": "query" + }, + { + "type": "boolean", + "description": "include verification for every commit (disable for speedup, default 'true')", + "name": "verification", + "in": "query" + }, + { + "type": "boolean", + "description": "include a list of affected files for every commit (disable for speedup, default 'true')", + "name": "files", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results (ignored if used with 'path')", + "name": "limit", + "in": "query" + }, + { + "type": "string", + "description": "commits that match the given specifier will not be listed.", + "name": "not", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/CommitList" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "$ref": "#/responses/EmptyRepository" + } + } + } + }, + "/repos/{owner}/{repo}/commits/{ref}/status": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a commit's combined status, by branch/tag/commit reference", + "operationId": "repoGetCombinedStatusByRef", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of branch/tag/commit", + "name": "ref", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/CombinedStatus" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/commits/{ref}/statuses": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a commit's statuses, by branch/tag/commit reference", + "operationId": "repoListStatusesByRef", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of branch/tag/commit", + "name": "ref", + "in": "path", + "required": true + }, + { + "enum": [ + "oldest", + "recentupdate", + "leastupdate", + "leastindex", + "highestindex" + ], + "type": "string", + "description": "type of sort", + "name": "sort", + "in": "query" + }, + { + "enum": [ + "pending", + "success", + "error", + "failure", + "warning" + ], + "type": "string", + "description": "type of state", + "name": "state", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/CommitStatusList" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/commits/{sha}/pull": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get the merged pull request of the commit", + "operationId": "repoGetCommitPullRequest", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "SHA of the commit to get", + "name": "sha", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullRequest" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/compare/{basehead}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get commit comparison information", + "operationId": "repoCompareDiff", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "compare two branches or commits", + "name": "basehead", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Compare" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/contents": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Gets the metadata of all the entries of the root dir", + "operationId": "repoGetContentsList", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "The name of the commit/branch/tag. Default the repository’s default branch (usually master)", + "name": "ref", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/ContentsListResponse" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Modify multiple files in a repository", + "operationId": "repoChangeFiles", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ChangeFilesOptions" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/FilesResponse" + }, + "403": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/error" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/contents/{filepath}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Gets the metadata and contents (if a file) of an entry in a repository, or a list of entries if a dir", + "operationId": "repoGetContents", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "path of the dir, file, symlink or submodule in the repo", + "name": "filepath", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "The name of the commit/branch/tag. Default the repository’s default branch (usually master)", + "name": "ref", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/ContentsResponse" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Update a file in a repository", + "operationId": "repoUpdateFile", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "path of the file to update", + "name": "filepath", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateFileOptions" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/FileResponse" + }, + "403": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/error" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a file in a repository", + "operationId": "repoCreateFile", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "path of the file to create", + "name": "filepath", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateFileOptions" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/FileResponse" + }, + "403": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/error" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + }, + "delete": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a file in a repository", + "operationId": "repoDeleteFile", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "path of the file to delete", + "name": "filepath", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeleteFileOptions" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/FileDeleteResponse" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/error" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/diffpatch": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Apply diff patch to repository", + "operationId": "repoApplyDiffPatch", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateFileOptions" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/FileResponse" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/editorconfig/{filepath}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get the EditorConfig definitions of a file in a repository", + "operationId": "repoGetEditorConfig", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "filepath of file to get", + "name": "filepath", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "The name of the commit/branch/tag. Default the repository’s default branch (usually master)", + "name": "ref", + "in": "query" + } + ], + "responses": { + "200": { + "description": "success" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/forks": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repository's forks", + "operationId": "listForks", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepositoryList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Fork a repository", + "operationId": "createFork", + "parameters": [ + { + "type": "string", + "description": "owner of the repo to fork", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to fork", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateForkOption" + } + } + ], + "responses": { + "202": { + "$ref": "#/responses/Repository" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "description": "The repository with the same name already exists." + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/git/blobs/{sha}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Gets the blob of a repository.", + "operationId": "GetBlob", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "sha of the commit", + "name": "sha", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/GitBlobResponse" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/git/commits/{sha}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a single commit from a repository", + "operationId": "repoGetSingleCommit", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "a git ref or commit sha", + "name": "sha", + "in": "path", + "required": true + }, + { + "type": "boolean", + "description": "include diff stats for every commit (disable for speedup, default 'true')", + "name": "stat", + "in": "query" + }, + { + "type": "boolean", + "description": "include verification for every commit (disable for speedup, default 'true')", + "name": "verification", + "in": "query" + }, + { + "type": "boolean", + "description": "include a list of affected files for every commit (disable for speedup, default 'true')", + "name": "files", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/Commit" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/git/commits/{sha}.{diffType}": { + "get": { + "produces": [ + "text/plain" + ], + "tags": [ + "repository" + ], + "summary": "Get a commit's diff or patch", + "operationId": "repoDownloadCommitDiffOrPatch", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "SHA of the commit to get", + "name": "sha", + "in": "path", + "required": true + }, + { + "enum": [ + "diff", + "patch" + ], + "type": "string", + "description": "whether the output is diff or patch", + "name": "diffType", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/string" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/git/notes/{sha}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a note corresponding to a single commit from a repository", + "operationId": "repoGetNote", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "a git ref or commit sha", + "name": "sha", + "in": "path", + "required": true + }, + { + "type": "boolean", + "description": "include verification for every commit (disable for speedup, default 'true')", + "name": "verification", + "in": "query" + }, + { + "type": "boolean", + "description": "include a list of affected files for every commit (disable for speedup, default 'true')", + "name": "files", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/Note" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/git/refs": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get specified ref or filtered repository's refs", + "operationId": "repoListAllGitRefs", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/ReferenceList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/git/refs/{ref}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get specified ref or filtered repository's refs", + "operationId": "repoListGitRefs", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "part or full name of the ref", + "name": "ref", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/ReferenceList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/git/tags/{sha}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Gets the tag object of an annotated tag (not lightweight tags)", + "operationId": "GetAnnotatedTag", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "sha of the tag. The Git tags API only supports annotated tag objects, not lightweight tags.", + "name": "sha", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/AnnotatedTag" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/git/trees/{sha}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Gets the tree of a repository.", + "operationId": "GetTree", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "sha of the commit", + "name": "sha", + "in": "path", + "required": true + }, + { + "type": "boolean", + "description": "show all directories and files", + "name": "recursive", + "in": "query" + }, + { + "type": "integer", + "description": "page number; the 'truncated' field in the response will be true if there are still more items after this page, false if the last page", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "number of items per page", + "name": "per_page", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/GitTreeResponse" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/hooks": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List the hooks in a repository", + "operationId": "repoListHooks", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/HookList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a hook", + "operationId": "repoCreateHook", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateHookOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Hook" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/hooks/git": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List the Git hooks in a repository", + "operationId": "repoListGitHooks", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/GitHookList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/hooks/git/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a Git hook", + "operationId": "repoGetGitHook", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "id of the hook to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/GitHook" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a Git hook in a repository", + "operationId": "repoDeleteGitHook", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "id of the hook to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Edit a Git hook in a repository", + "operationId": "repoEditGitHook", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "id of the hook to get", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditGitHookOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/GitHook" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/hooks/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a hook", + "operationId": "repoGetHook", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the hook to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Hook" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a hook in a repository", + "operationId": "repoDeleteHook", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the hook to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Edit a hook in a repository", + "operationId": "repoEditHook", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the hook", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditHookOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Hook" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/hooks/{id}/tests": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Test a push webhook", + "operationId": "repoTestHook", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the hook to test", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "The name of the commit/branch/tag, indicates which commit will be loaded to the webhook payload.", + "name": "ref", + "in": "query" + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issue_config": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Returns the issue config for a repo", + "operationId": "repoGetIssueConfig", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepoIssueConfig" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issue_config/validate": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Returns the validation information for a issue config", + "operationId": "repoValidateIssueConfig", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepoIssueConfigValidation" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issue_templates": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get available issue templates for a repository", + "operationId": "repoGetIssueTemplates", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/IssueTemplates" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "List a repository's issues", + "operationId": "issueListIssues", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "enum": [ + "closed", + "open", + "all" + ], + "type": "string", + "description": "whether issue is open or closed", + "name": "state", + "in": "query" + }, + { + "type": "string", + "description": "comma separated list of labels. Fetch only issues that have any of this labels. Non existent labels are discarded", + "name": "labels", + "in": "query" + }, + { + "type": "string", + "description": "search string", + "name": "q", + "in": "query" + }, + { + "enum": [ + "issues", + "pulls" + ], + "type": "string", + "description": "filter by type (issues / pulls) if set", + "name": "type", + "in": "query" + }, + { + "type": "string", + "description": "comma separated list of milestone names or ids. It uses names and fall back to ids. Fetch only issues that have any of this milestones. Non existent milestones are discarded", + "name": "milestones", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show items updated after the given time. This is a timestamp in RFC 3339 format", + "name": "since", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show items updated before the given time. This is a timestamp in RFC 3339 format", + "name": "before", + "in": "query" + }, + { + "type": "string", + "description": "Only show items which were created by the given user", + "name": "created_by", + "in": "query" + }, + { + "type": "string", + "description": "Only show items for which the given user is assigned", + "name": "assigned_by", + "in": "query" + }, + { + "type": "string", + "description": "Only show items in which the given user was mentioned", + "name": "mentioned_by", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/IssueList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Create an issue. If using deadline only the date will be taken into account, and time of day ignored.", + "operationId": "issueCreateIssue", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateIssueOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Issue" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "412": { + "$ref": "#/responses/error" + }, + "422": { + "$ref": "#/responses/validationError" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/issues/comments": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "List all comments in a repository", + "operationId": "issueGetRepoComments", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "format": "date-time", + "description": "if provided, only comments updated since the provided time are returned.", + "name": "since", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "if provided, only comments updated before the provided time are returned.", + "name": "before", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/CommentList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/comments/{id}": { + "get": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get a comment", + "operationId": "issueGetComment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Comment" + }, + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "issue" + ], + "summary": "Delete a comment", + "operationId": "issueDeleteComment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of comment to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Edit a comment", + "operationId": "issueEditComment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment to edit", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditIssueCommentOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Comment" + }, + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/issues/comments/{id}/assets": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "List comment's attachments", + "operationId": "issueListIssueCommentAttachments", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/AttachmentList" + }, + "404": { + "$ref": "#/responses/error" + } + } + }, + "post": { + "consumes": [ + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Create a comment attachment", + "operationId": "issueCreateIssueCommentAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the attachment", + "name": "name", + "in": "query" + }, + { + "type": "file", + "description": "attachment to upload", + "name": "attachment", + "in": "formData", + "required": true + } + ], + "responses": { + "201": { + "$ref": "#/responses/Attachment" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/error" + }, + "422": { + "$ref": "#/responses/validationError" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/issues/comments/{id}/assets/{attachment_id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get a comment attachment", + "operationId": "issueGetIssueCommentAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the attachment to get", + "name": "attachment_id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Attachment" + }, + "404": { + "$ref": "#/responses/error" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Delete a comment attachment", + "operationId": "issueDeleteIssueCommentAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the attachment to delete", + "name": "attachment_id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/error" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Edit a comment attachment", + "operationId": "issueEditIssueCommentAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the attachment to edit", + "name": "attachment_id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditAttachmentOptions" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Attachment" + }, + "404": { + "$ref": "#/responses/error" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/issues/comments/{id}/reactions": { + "get": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get a list of reactions from a comment of an issue", + "operationId": "issueGetCommentReactions", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment to edit", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/ReactionList" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Add a reaction to a comment of an issue", + "operationId": "issuePostCommentReaction", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment to edit", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "content", + "in": "body", + "schema": { + "$ref": "#/definitions/EditReactionOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Reaction" + }, + "201": { + "$ref": "#/responses/Reaction" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Remove a reaction from a comment of an issue", + "operationId": "issueDeleteCommentReaction", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment to edit", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "content", + "in": "body", + "schema": { + "$ref": "#/definitions/EditReactionOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/pinned": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repo's pinned issues", + "operationId": "repoListPinnedIssues", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/IssueList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get an issue", + "operationId": "issueGetIssue", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue to get", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Issue" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "issue" + ], + "summary": "Delete an issue", + "operationId": "issueDelete", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of issue to delete", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Edit an issue. If using deadline only the date will be taken into account, and time of day ignored.", + "operationId": "issueEditIssue", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue to edit", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditIssueOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Issue" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "412": { + "$ref": "#/responses/error" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/assets": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "List issue's attachments", + "operationId": "issueListIssueAttachments", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/AttachmentList" + }, + "404": { + "$ref": "#/responses/error" + } + } + }, + "post": { + "consumes": [ + "multipart/form-data" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Create an issue attachment", + "operationId": "issueCreateIssueAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the attachment", + "name": "name", + "in": "query" + }, + { + "type": "file", + "description": "attachment to upload", + "name": "attachment", + "in": "formData", + "required": true + } + ], + "responses": { + "201": { + "$ref": "#/responses/Attachment" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/error" + }, + "422": { + "$ref": "#/responses/validationError" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/assets/{attachment_id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get an issue attachment", + "operationId": "issueGetIssueAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the attachment to get", + "name": "attachment_id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Attachment" + }, + "404": { + "$ref": "#/responses/error" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Delete an issue attachment", + "operationId": "issueDeleteIssueAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the attachment to delete", + "name": "attachment_id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/error" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Edit an issue attachment", + "operationId": "issueEditIssueAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the attachment to edit", + "name": "attachment_id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditAttachmentOptions" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Attachment" + }, + "404": { + "$ref": "#/responses/error" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/blocks": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "List issues that are blocked by this issue", + "operationId": "issueListBlocks", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/IssueList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Block the issue given in the body by the issue in path", + "operationId": "issueCreateIssueBlocking", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/IssueMeta" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Issue" + }, + "404": { + "description": "the issue does not exist" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Unblock the issue given in the body by the issue in path", + "operationId": "issueRemoveIssueBlocking", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/IssueMeta" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Issue" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/comments": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "List all comments on an issue", + "operationId": "issueGetComments", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "string", + "format": "date-time", + "description": "if provided, only comments updated since the specified time are returned.", + "name": "since", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "if provided, only comments updated before the provided time are returned.", + "name": "before", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/CommentList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Add a comment to an issue", + "operationId": "issueCreateComment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateIssueCommentOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Comment" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/comments/{id}": { + "delete": { + "tags": [ + "issue" + ], + "summary": "Delete a comment", + "operationId": "issueDeleteCommentDeprecated", + "deprecated": true, + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "this parameter is ignored", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of comment to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Edit a comment", + "operationId": "issueEditCommentDeprecated", + "deprecated": true, + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "this parameter is ignored", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the comment to edit", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditIssueCommentOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Comment" + }, + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/deadline": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Set an issue deadline. If set to null, the deadline is deleted. If using deadline only the date will be taken into account, and time of day ignored.", + "operationId": "issueEditIssueDeadline", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue to create or update a deadline on", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditDeadlineOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/IssueDeadline" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/dependencies": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "List an issue's dependencies, i.e all issues that block this issue.", + "operationId": "issueListIssueDependencies", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/IssueList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Make the issue in the url depend on the issue in the form.", + "operationId": "issueCreateIssueDependencies", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/IssueMeta" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Issue" + }, + "404": { + "description": "the issue does not exist" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Remove an issue dependency", + "operationId": "issueRemoveIssueDependencies", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/IssueMeta" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Issue" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/labels": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get an issue's labels", + "operationId": "issueGetLabels", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/LabelList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Replace an issue's labels", + "operationId": "issueReplaceLabels", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/IssueLabelsOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/LabelList" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Add a label to an issue", + "operationId": "issueAddLabel", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/IssueLabelsOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/LabelList" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Remove all labels from an issue", + "operationId": "issueClearLabels", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/labels/{id}": { + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Remove a label from an issue", + "operationId": "issueRemoveLabel", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the label to remove", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/pin": { + "post": { + "tags": [ + "issue" + ], + "summary": "Pin an Issue", + "operationId": "pinIssue", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of issue to pin", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "issue" + ], + "summary": "Unpin an Issue", + "operationId": "unpinIssue", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of issue to unpin", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/pin/{position}": { + "patch": { + "tags": [ + "issue" + ], + "summary": "Moves the Pin to the given Position", + "operationId": "moveIssuePin", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "the new position", + "name": "position", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/reactions": { + "get": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get a list reactions of an issue", + "operationId": "issueGetIssueReactions", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/ReactionList" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Add a reaction to an issue", + "operationId": "issuePostIssueReaction", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "content", + "in": "body", + "schema": { + "$ref": "#/definitions/EditReactionOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Reaction" + }, + "201": { + "$ref": "#/responses/Reaction" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Remove a reaction from an issue", + "operationId": "issueDeleteIssueReaction", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "content", + "in": "body", + "schema": { + "$ref": "#/definitions/EditReactionOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/stopwatch/delete": { + "delete": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Delete an issue's existing stopwatch.", + "operationId": "issueDeleteStopWatch", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue to stop the stopwatch on", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "description": "Not repo writer, user does not have rights to toggle stopwatch" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "description": "Cannot cancel a non existent stopwatch" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/stopwatch/start": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Start stopwatch on an issue.", + "operationId": "issueStartStopWatch", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue to create the stopwatch on", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "201": { + "$ref": "#/responses/empty" + }, + "403": { + "description": "Not repo writer, user does not have rights to toggle stopwatch" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "description": "Cannot start a stopwatch again if it already exists" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/stopwatch/stop": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Stop an issue's existing stopwatch.", + "operationId": "issueStopStopWatch", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue to stop the stopwatch on", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "201": { + "$ref": "#/responses/empty" + }, + "403": { + "description": "Not repo writer, user does not have rights to toggle stopwatch" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "description": "Cannot stop a non existent stopwatch" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/subscriptions": { + "get": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get users who subscribed on an issue.", + "operationId": "issueSubscriptions", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/subscriptions/check": { + "get": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Check if user is subscribed to an issue", + "operationId": "issueCheckSubscription", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/WatchInfo" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/subscriptions/{user}": { + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Subscribe user to issue", + "operationId": "issueAddSubscription", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "user to subscribe", + "name": "user", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "description": "Already subscribed" + }, + "201": { + "description": "Successfully Subscribed" + }, + "304": { + "description": "User can only subscribe itself if he is no admin" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Unsubscribe user from issue", + "operationId": "issueDeleteSubscription", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "user witch unsubscribe", + "name": "user", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "description": "Already unsubscribed" + }, + "201": { + "description": "Successfully Unsubscribed" + }, + "304": { + "description": "User can only subscribe itself if he is no admin" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/timeline": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "List all comments and events on an issue", + "operationId": "issueGetCommentsAndTimeline", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "string", + "format": "date-time", + "description": "if provided, only comments updated since the specified time are returned.", + "name": "since", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "if provided, only comments updated before the provided time are returned.", + "name": "before", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/TimelineList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/times": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "List an issue's tracked times", + "operationId": "issueTrackedTimes", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "optional filter by user (available for issue managers)", + "name": "user", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format", + "name": "since", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format", + "name": "before", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/TrackedTimeList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Add tracked time to a issue", + "operationId": "issueAddTime", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/AddTimeOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/TrackedTime" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Reset a tracked time of an issue", + "operationId": "issueResetTime", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue to add tracked time to", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/issues/{index}/times/{id}": { + "delete": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Delete specific tracked time", + "operationId": "issueDeleteTime", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the issue", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of time to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/keys": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repository's keys", + "operationId": "repoListKeys", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "the key_id to search for", + "name": "key_id", + "in": "query" + }, + { + "type": "string", + "description": "fingerprint of the key", + "name": "fingerprint", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/DeployKeyList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Add a key to a repository", + "operationId": "repoCreateKey", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateKeyOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/DeployKey" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/keys/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a repository's key by id", + "operationId": "repoGetKey", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the key to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/DeployKey" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "repository" + ], + "summary": "Delete a key from a repository", + "operationId": "repoDeleteKey", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the key to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/labels": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get all of a repository's labels", + "operationId": "issueListLabels", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/LabelList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Create a label", + "operationId": "issueCreateLabel", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateLabelOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Label" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/labels/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get a single label", + "operationId": "issueGetLabel", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the label to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Label" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "issue" + ], + "summary": "Delete a label", + "operationId": "issueDeleteLabel", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the label to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Update a label", + "operationId": "issueEditLabel", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the label to edit", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditLabelOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Label" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/languages": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get languages and number of bytes of code written", + "operationId": "repoGetLanguages", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/LanguageStatistics" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/media/{filepath}": { + "get": { + "tags": [ + "repository" + ], + "summary": "Get a file or it's LFS object from a repository", + "operationId": "repoGetRawFileOrLFS", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "filepath of the file to get", + "name": "filepath", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "The name of the commit/branch/tag. Default the repository’s default branch (usually master)", + "name": "ref", + "in": "query" + } + ], + "responses": { + "200": { + "description": "Returns raw file content." + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/milestones": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get all of a repository's opened milestones", + "operationId": "issueGetMilestonesList", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "Milestone state, Recognized values are open, closed and all. Defaults to \"open\"", + "name": "state", + "in": "query" + }, + { + "type": "string", + "description": "filter by milestone name", + "name": "name", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/MilestoneList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Create a milestone", + "operationId": "issueCreateMilestone", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateMilestoneOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Milestone" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/milestones/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Get a milestone", + "operationId": "issueGetMilestone", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "the milestone to get, identified by ID and if not available by name", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Milestone" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "issue" + ], + "summary": "Delete a milestone", + "operationId": "issueDeleteMilestone", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "the milestone to delete, identified by ID and if not available by name", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "issue" + ], + "summary": "Update a milestone", + "operationId": "issueEditMilestone", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "the milestone to edit, identified by ID and if not available by name", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditMilestoneOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Milestone" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/mirror-sync": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Sync a mirrored repository", + "operationId": "repoMirrorSync", + "parameters": [ + { + "type": "string", + "description": "owner of the repo to sync", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to sync", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/new_pin_allowed": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Returns if new Issue Pins are allowed", + "operationId": "repoNewPinAllowed", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepoNewIssuePinsAllowed" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/notifications": { + "get": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "notification" + ], + "summary": "List users's notification threads on a specific repo", + "operationId": "notifyGetRepoList", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "boolean", + "description": "If true, show notifications marked as read. Default value is false", + "name": "all", + "in": "query" + }, + { + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "description": "Show notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread \u0026 pinned", + "name": "status-types", + "in": "query" + }, + { + "type": "array", + "items": { + "enum": [ + "issue", + "pull", + "commit", + "repository" + ], + "type": "string" + }, + "collectionFormat": "multi", + "description": "filter notifications by subject type", + "name": "subject-type", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show notifications updated after the given time. This is a timestamp in RFC 3339 format", + "name": "since", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show notifications updated before the given time. This is a timestamp in RFC 3339 format", + "name": "before", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/NotificationThreadList" + } + } + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "notification" + ], + "summary": "Mark notification threads as read, pinned or unread on a specific repo", + "operationId": "notifyReadRepoList", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "If true, mark all notifications on this repo. Default value is false", + "name": "all", + "in": "query" + }, + { + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "description": "Mark notifications with the provided status types. Options are: unread, read and/or pinned. Defaults to unread.", + "name": "status-types", + "in": "query" + }, + { + "type": "string", + "description": "Status to mark notifications as. Defaults to read.", + "name": "to-status", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Describes the last point that notifications were checked. Anything updated since this time will not be updated.", + "name": "last_read_at", + "in": "query" + } + ], + "responses": { + "205": { + "$ref": "#/responses/NotificationThreadList" + } + } + } + }, + "/repos/{owner}/{repo}/pulls": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repo's pull requests", + "operationId": "repoListPullRequests", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "enum": [ + "closed", + "open", + "all" + ], + "type": "string", + "description": "State of pull request: open or closed (optional)", + "name": "state", + "in": "query" + }, + { + "enum": [ + "oldest", + "recentupdate", + "leastupdate", + "mostcomment", + "leastcomment", + "priority" + ], + "type": "string", + "description": "Type of sort", + "name": "sort", + "in": "query" + }, + { + "type": "integer", + "format": "int64", + "description": "ID of the milestone", + "name": "milestone", + "in": "query" + }, + { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "collectionFormat": "multi", + "description": "Label IDs", + "name": "labels", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullRequestList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a pull request", + "operationId": "repoCreatePullRequest", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreatePullRequestOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/PullRequest" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "$ref": "#/responses/error" + }, + "422": { + "$ref": "#/responses/validationError" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/pinned": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repo's pinned pull requests", + "operationId": "repoListPinnedPullRequests", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullRequestList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{base}/{head}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a pull request by base and head", + "operationId": "repoGetPullRequestByBaseHead", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "base of the pull request to get", + "name": "base", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "head of the pull request to get", + "name": "head", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullRequest" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a pull request", + "operationId": "repoGetPullRequest", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request to get", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullRequest" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Update a pull request. If using deadline only the date will be taken into account, and time of day ignored.", + "operationId": "repoEditPullRequest", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request to edit", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditPullRequestOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/PullRequest" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "$ref": "#/responses/error" + }, + "412": { + "$ref": "#/responses/error" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}.{diffType}": { + "get": { + "produces": [ + "text/plain" + ], + "tags": [ + "repository" + ], + "summary": "Get a pull request diff or patch", + "operationId": "repoDownloadPullDiffOrPatch", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request to get", + "name": "index", + "in": "path", + "required": true + }, + { + "enum": [ + "diff", + "patch" + ], + "type": "string", + "description": "whether the output is diff or patch", + "name": "diffType", + "in": "path", + "required": true + }, + { + "type": "boolean", + "description": "whether to include binary file changes. if true, the diff is applicable with `git apply`", + "name": "binary", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/string" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}/commits": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get commits for a pull request", + "operationId": "repoGetPullRequestCommits", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request to get", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + }, + { + "type": "boolean", + "description": "include verification for every commit (disable for speedup, default 'true')", + "name": "verification", + "in": "query" + }, + { + "type": "boolean", + "description": "include a list of affected files for every commit (disable for speedup, default 'true')", + "name": "files", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/CommitList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}/files": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get changed files for a pull request", + "operationId": "repoGetPullRequestFiles", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request to get", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "skip to given file", + "name": "skip-to", + "in": "query" + }, + { + "enum": [ + "ignore-all", + "ignore-change", + "ignore-eol", + "show-all" + ], + "type": "string", + "description": "whitespace behavior", + "name": "whitespace", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/ChangedFileList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}/merge": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Check if a pull request has been merged", + "operationId": "repoPullRequestIsMerged", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "description": "pull request has been merged" + }, + "404": { + "description": "pull request has not been merged" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Merge a pull request", + "operationId": "repoMergePullRequest", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request to merge", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/MergePullRequestOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "405": { + "$ref": "#/responses/empty" + }, + "409": { + "$ref": "#/responses/error" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Cancel the scheduled auto merge for the given pull request", + "operationId": "repoCancelScheduledAutoMerge", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request to merge", + "name": "index", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}/requested_reviewers": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "create review requests for a pull request", + "operationId": "repoCreatePullReviewRequests", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PullReviewRequestOptions" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/PullReviewList" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "cancel review requests for a pull request", + "operationId": "repoDeletePullReviewRequests", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PullReviewRequestOptions" + } + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}/reviews": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List all reviews for a pull request", + "operationId": "repoListPullReviews", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullReviewList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a review to an pull request", + "operationId": "repoCreatePullReview", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreatePullReviewOptions" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullReview" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a specific review for a pull request", + "operationId": "repoGetPullReview", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the review", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullReview" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Submit a pending review to an pull request", + "operationId": "repoSubmitPullReview", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the review", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SubmitPullReviewOptions" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullReview" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a specific review from a pull request", + "operationId": "repoDeletePullReview", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the review", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}/comments": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a specific review for a pull request", + "operationId": "repoGetPullReviewComments", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the review", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullReviewCommentList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}/dismissals": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Dismiss a review for a pull request", + "operationId": "repoDismissPullReview", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the review", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DismissPullReviewOptions" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullReview" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}/reviews/{id}/undismissals": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Cancel to dismiss a review for a pull request", + "operationId": "repoUnDismissPullReview", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request", + "name": "index", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the review", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/PullReview" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/pulls/{index}/update": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Merge PR's baseBranch into headBranch", + "operationId": "repoUpdatePullRequest", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "index of the pull request to get", + "name": "index", + "in": "path", + "required": true + }, + { + "enum": [ + "merge", + "rebase" + ], + "type": "string", + "description": "how to update pull request", + "name": "style", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "$ref": "#/responses/error" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/push_mirrors": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get all push mirrors of the repository", + "operationId": "repoListPushMirrors", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/PushMirrorList" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "add a push mirror to the repository", + "operationId": "repoAddPushMirror", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreatePushMirrorOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/PushMirror" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/push_mirrors-sync": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Sync all push mirrored repository", + "operationId": "repoPushMirrorSync", + "parameters": [ + { + "type": "string", + "description": "owner of the repo to sync", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to sync", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/empty" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/push_mirrors/{name}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get push mirror of the repository by remoteName", + "operationId": "repoGetPushMirrorByRemoteName", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "remote name of push mirror", + "name": "name", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/PushMirror" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "deletes a push mirror from a repository by remoteName", + "operationId": "repoDeletePushMirror", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "remote name of the pushMirror", + "name": "name", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/raw/{filepath}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a file from a repository", + "operationId": "repoGetRawFile", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "filepath of the file to get", + "name": "filepath", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "The name of the commit/branch/tag. Default the repository’s default branch (usually master)", + "name": "ref", + "in": "query" + } + ], + "responses": { + "200": { + "description": "Returns raw file content." + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/releases": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repo's releases", + "operationId": "repoListReleases", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "boolean", + "description": "filter (exclude / include) drafts, if you dont have repo write access none will show", + "name": "draft", + "in": "query" + }, + { + "type": "boolean", + "description": "filter (exclude / include) pre-releases", + "name": "pre-release", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/ReleaseList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a release", + "operationId": "repoCreateRelease", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateReleaseOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Release" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "$ref": "#/responses/error" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/releases/latest": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Gets the most recent non-prerelease, non-draft release of a repository, sorted by created_at", + "operationId": "repoGetLatestRelease", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Release" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/releases/tags/{tag}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a release by tag name", + "operationId": "repoGetReleaseByTag", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "tag name of the release to get", + "name": "tag", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Release" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "repository" + ], + "summary": "Delete a release by tag name", + "operationId": "repoDeleteReleaseByTag", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "tag name of the release to delete", + "name": "tag", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/releases/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a release", + "operationId": "repoGetRelease", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the release to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Release" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "repository" + ], + "summary": "Delete a release", + "operationId": "repoDeleteRelease", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the release to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Update a release", + "operationId": "repoEditRelease", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the release to edit", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditReleaseOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Release" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/releases/{id}/assets": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List release's attachments", + "operationId": "repoListReleaseAttachments", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the release", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/AttachmentList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "multipart/form-data", + "application/octet-stream" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a release attachment", + "operationId": "repoCreateReleaseAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the release", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the attachment", + "name": "name", + "in": "query" + }, + { + "type": "file", + "description": "attachment to upload", + "name": "attachment", + "in": "formData" + } + ], + "responses": { + "201": { + "$ref": "#/responses/Attachment" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/releases/{id}/assets/{attachment_id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a release attachment", + "operationId": "repoGetReleaseAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the release", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the attachment to get", + "name": "attachment_id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Attachment" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a release attachment", + "operationId": "repoDeleteReleaseAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the release", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the attachment to delete", + "name": "attachment_id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Edit a release attachment", + "operationId": "repoEditReleaseAttachment", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the release", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "integer", + "format": "int64", + "description": "id of the attachment to edit", + "name": "attachment_id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditAttachmentOptions" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Attachment" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/reviewers": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Return all users that can be requested to review in this repo", + "operationId": "repoGetReviewers", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/signing-key.gpg": { + "get": { + "produces": [ + "text/plain" + ], + "tags": [ + "repository" + ], + "summary": "Get signing-key.gpg for given repository", + "operationId": "repoSigningKey", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "description": "GPG armored public key", + "schema": { + "type": "string" + } + } + } + } + }, + "/repos/{owner}/{repo}/stargazers": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repo's stargazers", + "operationId": "repoListStargazers", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/statuses/{sha}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a commit's statuses", + "operationId": "repoListStatuses", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "sha of the commit", + "name": "sha", + "in": "path", + "required": true + }, + { + "enum": [ + "oldest", + "recentupdate", + "leastupdate", + "leastindex", + "highestindex" + ], + "type": "string", + "description": "type of sort", + "name": "sort", + "in": "query" + }, + { + "enum": [ + "pending", + "success", + "error", + "failure", + "warning" + ], + "type": "string", + "description": "type of state", + "name": "state", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/CommitStatusList" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a commit status", + "operationId": "repoCreateStatus", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "sha of the commit", + "name": "sha", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateStatusOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/CommitStatus" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/subscribers": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repo's watchers", + "operationId": "repoListSubscribers", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/subscription": { + "get": { + "tags": [ + "repository" + ], + "summary": "Check if the current user is watching a repo", + "operationId": "userCurrentCheckSubscription", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/WatchInfo" + }, + "404": { + "description": "User is not watching this repo or repo do not exist" + } + } + }, + "put": { + "tags": [ + "repository" + ], + "summary": "Watch a repo", + "operationId": "userCurrentPutSubscription", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/WatchInfo" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "repository" + ], + "summary": "Unwatch a repo", + "operationId": "userCurrentDeleteSubscription", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/tags": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repository's tags", + "operationId": "repoListTags", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results, default maximum page size is 50", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/TagList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a new git tag in a repository", + "operationId": "repoCreateTag", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateTagOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Tag" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "405": { + "$ref": "#/responses/empty" + }, + "409": { + "$ref": "#/responses/conflict" + }, + "422": { + "$ref": "#/responses/validationError" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/tags/{tag}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get the tag of a repository by tag name", + "operationId": "repoGetTag", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of tag", + "name": "tag", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Tag" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a repository's tag by name", + "operationId": "repoDeleteTag", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of tag to delete", + "name": "tag", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "405": { + "$ref": "#/responses/empty" + }, + "409": { + "$ref": "#/responses/conflict" + }, + "422": { + "$ref": "#/responses/validationError" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/teams": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repository's teams", + "operationId": "repoListTeams", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/TeamList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/teams/{team}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Check if a team is assigned to a repository", + "operationId": "repoCheckTeam", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "team name", + "name": "team", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Team" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "405": { + "$ref": "#/responses/error" + } + } + }, + "put": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Add a team to a repository", + "operationId": "repoAddTeam", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "team name", + "name": "team", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "405": { + "$ref": "#/responses/error" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a team from a repository", + "operationId": "repoDeleteTeam", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "team name", + "name": "team", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "405": { + "$ref": "#/responses/error" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/times": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a repo's tracked times", + "operationId": "repoTrackedTimes", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "optional filter by user (available for issue managers)", + "name": "user", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format", + "name": "since", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format", + "name": "before", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/TrackedTimeList" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/times/{user}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "List a user's tracked times in a repo", + "operationId": "userTrackedTimes", + "deprecated": true, + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of user", + "name": "user", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/TrackedTimeList" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/topics": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get list of topics that a repository has", + "operationId": "repoListTopics", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/TopicNames" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Replace list of topics for a repository", + "operationId": "repoUpdateTopics", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/RepoTopicOptions" + } + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/invalidTopicsError" + } + } + } + }, + "/repos/{owner}/{repo}/topics/{topic}": { + "put": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Add a topic to a repository", + "operationId": "repoAddTopic", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the topic to add", + "name": "topic", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/invalidTopicsError" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Delete a topic from a repository", + "operationId": "repoDeleteTopic", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the topic to delete", + "name": "topic", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/invalidTopicsError" + } + } + } + }, + "/repos/{owner}/{repo}/transfer": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Transfer a repo ownership", + "operationId": "repoTransfer", + "parameters": [ + { + "type": "string", + "description": "owner of the repo to transfer", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to transfer", + "name": "repo", + "in": "path", + "required": true + }, + { + "description": "Transfer Options", + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TransferRepoOption" + } + } + ], + "responses": { + "202": { + "$ref": "#/responses/Repository" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repos/{owner}/{repo}/transfer/accept": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Accept a repo transfer", + "operationId": "acceptRepoTransfer", + "parameters": [ + { + "type": "string", + "description": "owner of the repo to transfer", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to transfer", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "202": { + "$ref": "#/responses/Repository" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/transfer/reject": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Reject a repo transfer", + "operationId": "rejectRepoTransfer", + "parameters": [ + { + "type": "string", + "description": "owner of the repo to transfer", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to transfer", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Repository" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/wiki/new": { + "post": { + "consumes": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a wiki page", + "operationId": "repoCreateWikiPage", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateWikiPageOptions" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/WikiPage" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/wiki/page/{pageName}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a wiki page", + "operationId": "repoGetWikiPage", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the page", + "name": "pageName", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/WikiPage" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "repository" + ], + "summary": "Delete a wiki page", + "operationId": "repoDeleteWikiPage", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the page", + "name": "pageName", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Edit a wiki page", + "operationId": "repoEditWikiPage", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the page", + "name": "pageName", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateWikiPageOptions" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/WikiPage" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "423": { + "$ref": "#/responses/repoArchivedError" + } + } + } + }, + "/repos/{owner}/{repo}/wiki/pages": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get all wiki pages", + "operationId": "repoGetWikiPages", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/WikiPageList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{owner}/{repo}/wiki/revisions/{pageName}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get revisions of a wiki page", + "operationId": "repoGetWikiPageRevisions", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the page", + "name": "pageName", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/WikiCommitList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/repos/{template_owner}/{template_repo}/generate": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Create a repository using a template", + "operationId": "generateRepo", + "parameters": [ + { + "type": "string", + "description": "name of the template repository owner", + "name": "template_owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the template repository", + "name": "template_repo", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/GenerateRepoOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Repository" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "409": { + "description": "The repository with the same name already exists." + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/repositories/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "Get a repository by id", + "operationId": "repoGetByID", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the repo to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Repository" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/settings/api": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "settings" + ], + "summary": "Get instance's global settings for api", + "operationId": "getGeneralAPISettings", + "responses": { + "200": { + "$ref": "#/responses/GeneralAPISettings" + } + } + } + }, + "/settings/attachment": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "settings" + ], + "summary": "Get instance's global settings for Attachment", + "operationId": "getGeneralAttachmentSettings", + "responses": { + "200": { + "$ref": "#/responses/GeneralAttachmentSettings" + } + } + } + }, + "/settings/repository": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "settings" + ], + "summary": "Get instance's global settings for repositories", + "operationId": "getGeneralRepositorySettings", + "responses": { + "200": { + "$ref": "#/responses/GeneralRepoSettings" + } + } + } + }, + "/settings/ui": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "settings" + ], + "summary": "Get instance's global settings for ui", + "operationId": "getGeneralUISettings", + "responses": { + "200": { + "$ref": "#/responses/GeneralUISettings" + } + } + } + }, + "/signing-key.gpg": { + "get": { + "produces": [ + "text/plain" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Get default signing-key.gpg", + "operationId": "getSigningKey", + "responses": { + "200": { + "description": "GPG armored public key", + "schema": { + "type": "string" + } + } + } + } + }, + "/teams/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Get a team", + "operationId": "orgGetTeam", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Team" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "organization" + ], + "summary": "Delete a team", + "operationId": "orgDeleteTeam", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "description": "team deleted" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Edit a team", + "operationId": "orgEditTeam", + "parameters": [ + { + "type": "integer", + "description": "id of the team to edit", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditTeamOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Team" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/teams/{id}/activities/feeds": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List a team's activity feeds", + "operationId": "orgListTeamActivityFeeds", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "format": "date", + "description": "the date of the activities to be found", + "name": "date", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/ActivityFeedsList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/teams/{id}/members": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List a team's members", + "operationId": "orgListTeamMembers", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/teams/{id}/members/{username}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List a particular member of team", + "operationId": "orgListTeamMember", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the member to list", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/User" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Add a team member", + "operationId": "orgAddTeamMember", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the user to add", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Remove a team member", + "operationId": "orgRemoveTeamMember", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of the user to remove", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/teams/{id}/repos": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List a team's repos", + "operationId": "orgListTeamRepos", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepositoryList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/teams/{id}/repos/{org}/{repo}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List a particular repo of team", + "operationId": "orgListTeamRepo", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "organization that owns the repo to list", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to list", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Repository" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Add a repository to a team", + "operationId": "orgAddTeamRepository", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "organization that owns the repo to add", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to add", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "description": "This does not delete the repository, it only removes the repository from the team.", + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Remove a repository from a team", + "operationId": "orgRemoveTeamRepository", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the team", + "name": "id", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "organization that owns the repo to remove", + "name": "org", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to remove", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/topics/search": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "repository" + ], + "summary": "search topics via keyword", + "operationId": "topicSearch", + "parameters": [ + { + "type": "string", + "description": "keywords to search", + "name": "q", + "in": "query", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/TopicListResponse" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get the authenticated user", + "operationId": "userGetCurrent", + "responses": { + "200": { + "$ref": "#/responses/User" + } + } + } + }, + "/user/actions/runners/registration-token": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get an user's actions runner registration token", + "operationId": "userGetRunnerRegistrationToken", + "responses": { + "200": { + "$ref": "#/responses/RegistrationToken" + } + } + } + }, + "/user/actions/secrets/{secretname}": { + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Create or Update a secret value in a user scope", + "operationId": "updateUserSecret", + "parameters": [ + { + "type": "string", + "description": "name of the secret", + "name": "secretname", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateOrUpdateSecretOption" + } + } + ], + "responses": { + "201": { + "description": "response when creating a secret" + }, + "204": { + "description": "response when updating a secret" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Delete a secret in a user scope", + "operationId": "deleteUserSecret", + "parameters": [ + { + "type": "string", + "description": "name of the secret", + "name": "secretname", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "description": "delete one secret of the user" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/actions/variables": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get the user-level list of variables which is created by current doer", + "operationId": "getUserVariablesList", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/VariableList" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/actions/variables/{variablename}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get a user-level variable which is created by current doer", + "operationId": "getUserVariable", + "parameters": [ + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/ActionVariable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Update a user-level variable which is created by current doer", + "operationId": "updateUserVariable", + "parameters": [ + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/UpdateVariableOption" + } + } + ], + "responses": { + "201": { + "description": "response when updating a variable" + }, + "204": { + "description": "response when updating a variable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Create a user-level variable", + "operationId": "createUserVariable", + "parameters": [ + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateVariableOption" + } + } + ], + "responses": { + "201": { + "description": "response when creating a variable" + }, + "204": { + "description": "response when creating a variable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Delete a user-level variable which is created by current doer", + "operationId": "deleteUserVariable", + "parameters": [ + { + "type": "string", + "description": "name of the variable", + "name": "variablename", + "in": "path", + "required": true + } + ], + "responses": { + "201": { + "description": "response when deleting a variable" + }, + "204": { + "description": "response when deleting a variable" + }, + "400": { + "$ref": "#/responses/error" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/applications/oauth2": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the authenticated user's oauth2 applications", + "operationId": "userGetOauth2Application", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/OAuth2ApplicationList" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "creates a new OAuth2 application", + "operationId": "userCreateOAuth2Application", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateOAuth2ApplicationOptions" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/OAuth2Application" + }, + "400": { + "$ref": "#/responses/error" + } + } + } + }, + "/user/applications/oauth2/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "get an OAuth2 Application", + "operationId": "userGetOAuth2Application", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "Application ID to be found", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/OAuth2Application" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "delete an OAuth2 Application", + "operationId": "userDeleteOAuth2Application", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "token to be deleted", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "patch": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "update an OAuth2 Application, this includes regenerating the client secret", + "operationId": "userUpdateOAuth2Application", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "application to be updated", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateOAuth2ApplicationOptions" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/OAuth2Application" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/avatar": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Update Avatar", + "operationId": "userUpdateAvatar", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/UpdateUserAvatarOption" + } + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Delete Avatar", + "operationId": "userDeleteAvatar", + "responses": { + "204": { + "$ref": "#/responses/empty" + } + } + } + }, + "/user/blocks": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List users blocked by the authenticated user", + "operationId": "userListBlocks", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + } + } + } + }, + "/user/blocks/{username}": { + "get": { + "tags": [ + "user" + ], + "summary": "Check if a user is blocked by the authenticated user", + "operationId": "userCheckUserBlock", + "parameters": [ + { + "type": "string", + "description": "user to check", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "tags": [ + "user" + ], + "summary": "Block a user", + "operationId": "userBlockUser", + "parameters": [ + { + "type": "string", + "description": "user to block", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "optional note for the block", + "name": "note", + "in": "query" + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + }, + "delete": { + "tags": [ + "user" + ], + "summary": "Unblock a user", + "operationId": "userUnblockUser", + "parameters": [ + { + "type": "string", + "description": "user to unblock", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/user/emails": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the authenticated user's email addresses", + "operationId": "userListEmails", + "responses": { + "200": { + "$ref": "#/responses/EmailList" + } + } + }, + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Add email addresses", + "operationId": "userAddEmail", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateEmailOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/EmailList" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Delete email addresses", + "operationId": "userDeleteEmail", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/DeleteEmailOption" + } + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/followers": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the authenticated user's followers", + "operationId": "userCurrentListFollowers", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + } + } + } + }, + "/user/following": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the users that the authenticated user is following", + "operationId": "userCurrentListFollowing", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + } + } + } + }, + "/user/following/{username}": { + "get": { + "tags": [ + "user" + ], + "summary": "Check whether a user is followed by the authenticated user", + "operationId": "userCurrentCheckFollowing", + "parameters": [ + { + "type": "string", + "description": "username of followed user", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "tags": [ + "user" + ], + "summary": "Follow a user", + "operationId": "userCurrentPutFollow", + "parameters": [ + { + "type": "string", + "description": "username of user to follow", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "user" + ], + "summary": "Unfollow a user", + "operationId": "userCurrentDeleteFollow", + "parameters": [ + { + "type": "string", + "description": "username of user to unfollow", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/gpg_key_token": { + "get": { + "produces": [ + "text/plain" + ], + "tags": [ + "user" + ], + "summary": "Get a Token to verify", + "operationId": "getVerificationToken", + "responses": { + "200": { + "$ref": "#/responses/string" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/gpg_key_verify": { + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Verify a GPG key", + "operationId": "userVerifyGPGKey", + "responses": { + "201": { + "$ref": "#/responses/GPGKey" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/user/gpg_keys": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the authenticated user's GPG keys", + "operationId": "userCurrentListGPGKeys", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/GPGKeyList" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Create a GPG key", + "operationId": "userCurrentPostGPGKey", + "parameters": [ + { + "name": "Form", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateGPGKeyOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/GPGKey" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/user/gpg_keys/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get a GPG key", + "operationId": "userCurrentGetGPGKey", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of key to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/GPGKey" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Remove a GPG key", + "operationId": "userCurrentDeleteGPGKey", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of key to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/hooks": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the authenticated user's webhooks", + "operationId": "userListHooks", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/HookList" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Create a hook", + "operationId": "userCreateHook", + "parameters": [ + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateHookOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Hook" + } + } + } + }, + "/user/hooks/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get a hook", + "operationId": "userGetHook", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the hook to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/Hook" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Delete a hook", + "operationId": "userDeleteHook", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the hook to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + } + } + }, + "patch": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Update a hook", + "operationId": "userEditHook", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of the hook to update", + "name": "id", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/EditHookOption" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/Hook" + } + } + } + }, + "/user/keys": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the authenticated user's public keys", + "operationId": "userCurrentListKeys", + "parameters": [ + { + "type": "string", + "description": "fingerprint of the key", + "name": "fingerprint", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/PublicKeyList" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Create a public key", + "operationId": "userCurrentPostKey", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateKeyOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/PublicKey" + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/user/keys/{id}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get a public key", + "operationId": "userCurrentGetKey", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of key to get", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/PublicKey" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Delete a public key", + "operationId": "userCurrentDeleteKey", + "parameters": [ + { + "type": "integer", + "format": "int64", + "description": "id of key to delete", + "name": "id", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/orgs": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List the current user's organizations", + "operationId": "orgListCurrentUserOrgs", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/OrganizationList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/repos": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the repos that the authenticated user owns", + "operationId": "userCurrentListRepos", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepositoryList" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "repository", + "user" + ], + "summary": "Create a repository", + "operationId": "createCurrentUserRepo", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateRepoOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/Repository" + }, + "400": { + "$ref": "#/responses/error" + }, + "409": { + "description": "The repository with the same name already exists." + }, + "422": { + "$ref": "#/responses/validationError" + } + } + } + }, + "/user/settings": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get user settings", + "operationId": "getUserSettings", + "responses": { + "200": { + "$ref": "#/responses/UserSettings" + } + } + }, + "patch": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Update user settings", + "operationId": "updateUserSettings", + "parameters": [ + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/UserSettingsOptions" + } + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserSettings" + } + } + } + }, + "/user/starred": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "The repos that the authenticated user has starred", + "operationId": "userCurrentListStarred", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepositoryList" + } + } + } + }, + "/user/starred/{owner}/{repo}": { + "get": { + "tags": [ + "user" + ], + "summary": "Whether the authenticated is starring the repo", + "operationId": "userCurrentCheckStarring", + "parameters": [ + { + "type": "string", + "description": "owner of the repo", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "put": { + "tags": [ + "user" + ], + "summary": "Star the given repo", + "operationId": "userCurrentPutStar", + "parameters": [ + { + "type": "string", + "description": "owner of the repo to star", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to star", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + }, + "delete": { + "tags": [ + "user" + ], + "summary": "Unstar the given repo", + "operationId": "userCurrentDeleteStar", + "parameters": [ + { + "type": "string", + "description": "owner of the repo to unstar", + "name": "owner", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the repo to unstar", + "name": "repo", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/user/stopwatches": { + "get": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get list of all existing stopwatches", + "operationId": "userGetStopWatches", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/StopWatchList" + } + } + } + }, + "/user/subscriptions": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List repositories watched by the authenticated user", + "operationId": "userCurrentListSubscriptions", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepositoryList" + } + } + } + }, + "/user/teams": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List all the teams a user belongs to", + "operationId": "userListTeams", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/TeamList" + } + } + } + }, + "/user/times": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the current user's tracked times", + "operationId": "userCurrentTrackedTimes", + "parameters": [ + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show times updated after the given time. This is a timestamp in RFC 3339 format", + "name": "since", + "in": "query" + }, + { + "type": "string", + "format": "date-time", + "description": "Only show times updated before the given time. This is a timestamp in RFC 3339 format", + "name": "before", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/TrackedTimeList" + } + } + } + }, + "/users/search": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Search for users", + "operationId": "userSearch", + "parameters": [ + { + "type": "string", + "description": "keyword", + "name": "q", + "in": "query" + }, + { + "type": "integer", + "format": "int64", + "description": "ID of the user to search for", + "name": "uid", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "description": "SearchResults of a successful search", + "schema": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/definitions/User" + } + }, + "ok": { + "type": "boolean" + } + } + } + } + } + } + }, + "/users/{username}": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get a user", + "operationId": "userGet", + "parameters": [ + { + "type": "string", + "description": "username of user to get", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/User" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/activities/feeds": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List a user's activity feeds", + "operationId": "userListActivityFeeds", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "boolean", + "description": "if true, only show actions performed by the requested user", + "name": "only-performed-by", + "in": "query" + }, + { + "type": "string", + "format": "date", + "description": "the date of the activities to be found", + "name": "date", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/ActivityFeedsList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/followers": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the given user's followers", + "operationId": "userListFollowers", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/following": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the users that the given user is following", + "operationId": "userListFollowing", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/following/{target}": { + "get": { + "tags": [ + "user" + ], + "summary": "Check if one user is following another user", + "operationId": "userCheckFollowing", + "parameters": [ + { + "type": "string", + "description": "username of following user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "username of followed user", + "name": "target", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/gpg_keys": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the given user's GPG keys", + "operationId": "userListGPGKeys", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/GPGKeyList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/heatmap": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Get a user's heatmap", + "operationId": "userGetHeatmapData", + "parameters": [ + { + "type": "string", + "description": "username of user to get", + "name": "username", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/UserHeatmapData" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/keys": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the given user's public keys", + "operationId": "userListKeys", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "fingerprint of the key", + "name": "fingerprint", + "in": "query" + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/PublicKeyList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/orgs": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "List a user's organizations", + "operationId": "orgListUserOrgs", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/OrganizationList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/orgs/{org}/permissions": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "organization" + ], + "summary": "Get user permissions in organization", + "operationId": "orgGetUserPermissions", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "name of the organization", + "name": "org", + "in": "path", + "required": true + } + ], + "responses": { + "200": { + "$ref": "#/responses/OrganizationPermissions" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/repos": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the repos owned by the given user", + "operationId": "userListRepos", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepositoryList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/starred": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "The repos that the given user has starred", + "operationId": "userListStarred", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepositoryList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/subscriptions": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the repositories watched by a user", + "operationId": "userListSubscriptions", + "parameters": [ + { + "type": "string", + "description": "username of the user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/RepositoryList" + }, + "404": { + "$ref": "#/responses/notFound" + } + } + } + }, + "/users/{username}/tokens": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "List the authenticated user's access tokens", + "operationId": "userGetTokens", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "integer", + "description": "page number of results to return (1-based)", + "name": "page", + "in": "query" + }, + { + "type": "integer", + "description": "page size of results", + "name": "limit", + "in": "query" + } + ], + "responses": { + "200": { + "$ref": "#/responses/AccessTokenList" + }, + "403": { + "$ref": "#/responses/forbidden" + } + } + }, + "post": { + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "Create an access token", + "operationId": "userCreateToken", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "name": "body", + "in": "body", + "schema": { + "$ref": "#/definitions/CreateAccessTokenOption" + } + } + ], + "responses": { + "201": { + "$ref": "#/responses/AccessToken" + }, + "400": { + "$ref": "#/responses/error" + }, + "403": { + "$ref": "#/responses/forbidden" + } + } + } + }, + "/users/{username}/tokens/{token}": { + "delete": { + "produces": [ + "application/json" + ], + "tags": [ + "user" + ], + "summary": "delete an access token", + "operationId": "userDeleteAccessToken", + "parameters": [ + { + "type": "string", + "description": "username of user", + "name": "username", + "in": "path", + "required": true + }, + { + "type": "string", + "description": "token to be deleted, identified by ID and if not available by name", + "name": "token", + "in": "path", + "required": true + } + ], + "responses": { + "204": { + "$ref": "#/responses/empty" + }, + "403": { + "$ref": "#/responses/forbidden" + }, + "404": { + "$ref": "#/responses/notFound" + }, + "422": { + "$ref": "#/responses/error" + } + } + } + }, + "/version": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "miscellaneous" + ], + "summary": "Returns the version of the Gitea application", + "operationId": "getVersion", + "responses": { + "200": { + "$ref": "#/responses/ServerVersion" + } + } + } + } + }, + "definitions": { + "APIError": { + "description": "APIError is an api error with a message", + "type": "object", + "properties": { + "message": { + "type": "string", + "x-go-name": "Message" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "AccessToken": { + "type": "object", + "title": "AccessToken represents an API access token.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "scopes": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Scopes" + }, + "sha1": { + "type": "string", + "x-go-name": "Token" + }, + "token_last_eight": { + "type": "string", + "x-go-name": "TokenLastEight" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "ActionVariable": { + "description": "ActionVariable return value of the query API", + "type": "object", + "properties": { + "data": { + "description": "the value of the variable", + "type": "string", + "x-go-name": "Data" + }, + "name": { + "description": "the name of the variable", + "type": "string", + "x-go-name": "Name" + }, + "owner_id": { + "description": "the owner to which the variable belongs", + "type": "integer", + "format": "int64", + "x-go-name": "OwnerID" + }, + "repo_id": { + "description": "the repository to which the variable belongs", + "type": "integer", + "format": "int64", + "x-go-name": "RepoID" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Activity": { + "type": "object", + "properties": { + "act_user": { + "$ref": "#/definitions/User" + }, + "act_user_id": { + "type": "integer", + "format": "int64", + "x-go-name": "ActUserID" + }, + "comment": { + "$ref": "#/definitions/Comment" + }, + "comment_id": { + "type": "integer", + "format": "int64", + "x-go-name": "CommentID" + }, + "content": { + "type": "string", + "x-go-name": "Content" + }, + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "is_private": { + "type": "boolean", + "x-go-name": "IsPrivate" + }, + "op_type": { + "type": "string", + "x-go-name": "OpType" + }, + "ref_name": { + "type": "string", + "x-go-name": "RefName" + }, + "repo": { + "$ref": "#/definitions/Repository" + }, + "repo_id": { + "type": "integer", + "format": "int64", + "x-go-name": "RepoID" + }, + "user_id": { + "type": "integer", + "format": "int64", + "x-go-name": "UserID" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "ActivityPub": { + "description": "ActivityPub type", + "type": "object", + "properties": { + "@context": { + "type": "string", + "x-go-name": "Context" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "AddCollaboratorOption": { + "description": "AddCollaboratorOption options when adding a user as a collaborator of a repository", + "type": "object", + "properties": { + "permission": { + "type": "string", + "x-go-name": "Permission" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "AddTimeOption": { + "description": "AddTimeOption options for adding time to an issue", + "type": "object", + "required": [ + "time" + ], + "properties": { + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "time": { + "description": "time in seconds", + "type": "integer", + "format": "int64", + "x-go-name": "Time" + }, + "user_name": { + "description": "User who spent the time (optional)", + "type": "string", + "x-go-name": "User" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "AnnotatedTag": { + "description": "AnnotatedTag represents an annotated tag", + "type": "object", + "properties": { + "message": { + "type": "string", + "x-go-name": "Message" + }, + "object": { + "$ref": "#/definitions/AnnotatedTagObject" + }, + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "tag": { + "type": "string", + "x-go-name": "Tag" + }, + "tagger": { + "$ref": "#/definitions/CommitUser" + }, + "url": { + "type": "string", + "x-go-name": "URL" + }, + "verification": { + "$ref": "#/definitions/PayloadCommitVerification" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "AnnotatedTagObject": { + "description": "AnnotatedTagObject contains meta information of the tag object", + "type": "object", + "properties": { + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "type": { + "type": "string", + "x-go-name": "Type" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Attachment": { + "description": "Attachment a generic attachment", + "type": "object", + "properties": { + "browser_download_url": { + "type": "string", + "x-go-name": "DownloadURL" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "download_count": { + "type": "integer", + "format": "int64", + "x-go-name": "DownloadCount" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "size": { + "type": "integer", + "format": "int64", + "x-go-name": "Size" + }, + "uuid": { + "type": "string", + "x-go-name": "UUID" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Badge": { + "description": "Badge represents a user badge", + "type": "object", + "properties": { + "description": { + "type": "string", + "x-go-name": "Description" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "image_url": { + "type": "string", + "x-go-name": "ImageURL" + }, + "slug": { + "type": "string", + "x-go-name": "Slug" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Branch": { + "description": "Branch represents a repository branch", + "type": "object", + "properties": { + "commit": { + "$ref": "#/definitions/PayloadCommit" + }, + "effective_branch_protection_name": { + "type": "string", + "x-go-name": "EffectiveBranchProtectionName" + }, + "enable_status_check": { + "type": "boolean", + "x-go-name": "EnableStatusCheck" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "protected": { + "type": "boolean", + "x-go-name": "Protected" + }, + "required_approvals": { + "type": "integer", + "format": "int64", + "x-go-name": "RequiredApprovals" + }, + "status_check_contexts": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "StatusCheckContexts" + }, + "user_can_merge": { + "type": "boolean", + "x-go-name": "UserCanMerge" + }, + "user_can_push": { + "type": "boolean", + "x-go-name": "UserCanPush" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "BranchProtection": { + "description": "BranchProtection represents a branch protection for a repository", + "type": "object", + "properties": { + "approvals_whitelist_teams": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "ApprovalsWhitelistTeams" + }, + "approvals_whitelist_username": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "ApprovalsWhitelistUsernames" + }, + "block_on_official_review_requests": { + "type": "boolean", + "x-go-name": "BlockOnOfficialReviewRequests" + }, + "block_on_outdated_branch": { + "type": "boolean", + "x-go-name": "BlockOnOutdatedBranch" + }, + "block_on_rejected_reviews": { + "type": "boolean", + "x-go-name": "BlockOnRejectedReviews" + }, + "branch_name": { + "description": "Deprecated: true", + "type": "string", + "x-go-name": "BranchName" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "dismiss_stale_approvals": { + "type": "boolean", + "x-go-name": "DismissStaleApprovals" + }, + "enable_approvals_whitelist": { + "type": "boolean", + "x-go-name": "EnableApprovalsWhitelist" + }, + "enable_merge_whitelist": { + "type": "boolean", + "x-go-name": "EnableMergeWhitelist" + }, + "enable_push": { + "type": "boolean", + "x-go-name": "EnablePush" + }, + "enable_push_whitelist": { + "type": "boolean", + "x-go-name": "EnablePushWhitelist" + }, + "enable_status_check": { + "type": "boolean", + "x-go-name": "EnableStatusCheck" + }, + "ignore_stale_approvals": { + "type": "boolean", + "x-go-name": "IgnoreStaleApprovals" + }, + "merge_whitelist_teams": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "MergeWhitelistTeams" + }, + "merge_whitelist_usernames": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "MergeWhitelistUsernames" + }, + "protected_file_patterns": { + "type": "string", + "x-go-name": "ProtectedFilePatterns" + }, + "push_whitelist_deploy_keys": { + "type": "boolean", + "x-go-name": "PushWhitelistDeployKeys" + }, + "push_whitelist_teams": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "PushWhitelistTeams" + }, + "push_whitelist_usernames": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "PushWhitelistUsernames" + }, + "require_signed_commits": { + "type": "boolean", + "x-go-name": "RequireSignedCommits" + }, + "required_approvals": { + "type": "integer", + "format": "int64", + "x-go-name": "RequiredApprovals" + }, + "rule_name": { + "type": "string", + "x-go-name": "RuleName" + }, + "status_check_contexts": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "StatusCheckContexts" + }, + "unprotected_file_patterns": { + "type": "string", + "x-go-name": "UnprotectedFilePatterns" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "ChangeFileOperation": { + "description": "ChangeFileOperation for creating, updating or deleting a file", + "type": "object", + "required": [ + "operation", + "path" + ], + "properties": { + "content": { + "description": "new or updated file content, must be base64 encoded", + "type": "string", + "x-go-name": "ContentBase64" + }, + "from_path": { + "description": "old path of the file to move", + "type": "string", + "x-go-name": "FromPath" + }, + "operation": { + "description": "indicates what to do with the file", + "type": "string", + "enum": [ + "create", + "update", + "delete" + ], + "x-go-name": "Operation" + }, + "path": { + "description": "path to the existing or new file", + "type": "string", + "x-go-name": "Path" + }, + "sha": { + "description": "sha is the SHA for the file that already exists, required for update or delete", + "type": "string", + "x-go-name": "SHA" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "ChangeFilesOptions": { + "description": "ChangeFilesOptions options for creating, updating or deleting multiple files\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)", + "type": "object", + "required": [ + "files" + ], + "properties": { + "author": { + "$ref": "#/definitions/Identity" + }, + "branch": { + "description": "branch (optional) to base this file from. if not given, the default branch is used", + "type": "string", + "x-go-name": "BranchName" + }, + "committer": { + "$ref": "#/definitions/Identity" + }, + "dates": { + "$ref": "#/definitions/CommitDateOptions" + }, + "files": { + "description": "list of file operations", + "type": "array", + "items": { + "$ref": "#/definitions/ChangeFileOperation" + }, + "x-go-name": "Files" + }, + "message": { + "description": "message (optional) for the commit of this file. if not supplied, a default message will be used", + "type": "string", + "x-go-name": "Message" + }, + "new_branch": { + "description": "new_branch (optional) will make a new branch from `branch` before creating the file", + "type": "string", + "x-go-name": "NewBranchName" + }, + "signoff": { + "description": "Add a Signed-off-by trailer by the committer at the end of the commit log message.", + "type": "boolean", + "x-go-name": "Signoff" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "ChangedFile": { + "description": "ChangedFile store information about files affected by the pull request", + "type": "object", + "properties": { + "additions": { + "type": "integer", + "format": "int64", + "x-go-name": "Additions" + }, + "changes": { + "type": "integer", + "format": "int64", + "x-go-name": "Changes" + }, + "contents_url": { + "type": "string", + "x-go-name": "ContentsURL" + }, + "deletions": { + "type": "integer", + "format": "int64", + "x-go-name": "Deletions" + }, + "filename": { + "type": "string", + "x-go-name": "Filename" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "previous_filename": { + "type": "string", + "x-go-name": "PreviousFilename" + }, + "raw_url": { + "type": "string", + "x-go-name": "RawURL" + }, + "status": { + "type": "string", + "x-go-name": "Status" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CombinedStatus": { + "description": "CombinedStatus holds the combined state of several statuses for a single commit", + "type": "object", + "properties": { + "commit_url": { + "type": "string", + "x-go-name": "CommitURL" + }, + "repository": { + "$ref": "#/definitions/Repository" + }, + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "state": { + "$ref": "#/definitions/CommitStatusState" + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/CommitStatus" + }, + "x-go-name": "Statuses" + }, + "total_count": { + "type": "integer", + "format": "int64", + "x-go-name": "TotalCount" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Comment": { + "description": "Comment represents a comment on a commit or issue", + "type": "object", + "properties": { + "assets": { + "type": "array", + "items": { + "$ref": "#/definitions/Attachment" + }, + "x-go-name": "Attachments" + }, + "body": { + "type": "string", + "x-go-name": "Body" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "issue_url": { + "type": "string", + "x-go-name": "IssueURL" + }, + "original_author": { + "type": "string", + "x-go-name": "OriginalAuthor" + }, + "original_author_id": { + "type": "integer", + "format": "int64", + "x-go-name": "OriginalAuthorID" + }, + "pull_request_url": { + "type": "string", + "x-go-name": "PRURL" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + }, + "user": { + "$ref": "#/definitions/User" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Commit": { + "type": "object", + "title": "Commit contains information generated from a Git commit.", + "properties": { + "author": { + "$ref": "#/definitions/User" + }, + "commit": { + "$ref": "#/definitions/RepoCommit" + }, + "committer": { + "$ref": "#/definitions/User" + }, + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "files": { + "type": "array", + "items": { + "$ref": "#/definitions/CommitAffectedFiles" + }, + "x-go-name": "Files" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "parents": { + "type": "array", + "items": { + "$ref": "#/definitions/CommitMeta" + }, + "x-go-name": "Parents" + }, + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "stats": { + "$ref": "#/definitions/CommitStats" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CommitAffectedFiles": { + "description": "CommitAffectedFiles store information about files affected by the commit", + "type": "object", + "properties": { + "filename": { + "type": "string", + "x-go-name": "Filename" + }, + "status": { + "type": "string", + "x-go-name": "Status" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CommitDateOptions": { + "description": "CommitDateOptions store dates for GIT_AUTHOR_DATE and GIT_COMMITTER_DATE", + "type": "object", + "properties": { + "author": { + "type": "string", + "format": "date-time", + "x-go-name": "Author" + }, + "committer": { + "type": "string", + "format": "date-time", + "x-go-name": "Committer" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CommitMeta": { + "type": "object", + "title": "CommitMeta contains meta information of a commit in terms of API.", + "properties": { + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CommitStats": { + "description": "CommitStats is statistics for a RepoCommit", + "type": "object", + "properties": { + "additions": { + "type": "integer", + "format": "int64", + "x-go-name": "Additions" + }, + "deletions": { + "type": "integer", + "format": "int64", + "x-go-name": "Deletions" + }, + "total": { + "type": "integer", + "format": "int64", + "x-go-name": "Total" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CommitStatus": { + "description": "CommitStatus holds a single status of a single Commit", + "type": "object", + "properties": { + "context": { + "type": "string", + "x-go-name": "Context" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "creator": { + "$ref": "#/definitions/User" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "status": { + "$ref": "#/definitions/CommitStatusState" + }, + "target_url": { + "type": "string", + "x-go-name": "TargetURL" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CommitStatusState": { + "description": "CommitStatusState holds the state of a CommitStatus\nIt can be \"pending\", \"success\", \"error\" and \"failure\"", + "type": "string", + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CommitUser": { + "type": "object", + "title": "CommitUser contains information of a user in the context of a commit.", + "properties": { + "date": { + "type": "string", + "x-go-name": "Date" + }, + "email": { + "type": "string", + "format": "email", + "x-go-name": "Email" + }, + "name": { + "type": "string", + "x-go-name": "Name" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Compare": { + "type": "object", + "title": "Compare represents a comparison between two commits.", + "properties": { + "commits": { + "type": "array", + "items": { + "$ref": "#/definitions/Commit" + }, + "x-go-name": "Commits" + }, + "total_commits": { + "type": "integer", + "format": "int64", + "x-go-name": "TotalCommits" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "ContentsResponse": { + "description": "ContentsResponse contains information about a repo's entry's (dir, file, symlink, submodule) metadata and content", + "type": "object", + "properties": { + "_links": { + "$ref": "#/definitions/FileLinksResponse" + }, + "content": { + "description": "`content` is populated when `type` is `file`, otherwise null", + "type": "string", + "x-go-name": "Content" + }, + "download_url": { + "type": "string", + "x-go-name": "DownloadURL" + }, + "encoding": { + "description": "`encoding` is populated when `type` is `file`, otherwise null", + "type": "string", + "x-go-name": "Encoding" + }, + "git_url": { + "type": "string", + "x-go-name": "GitURL" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "last_commit_sha": { + "type": "string", + "x-go-name": "LastCommitSHA" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "path": { + "type": "string", + "x-go-name": "Path" + }, + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "size": { + "type": "integer", + "format": "int64", + "x-go-name": "Size" + }, + "submodule_git_url": { + "description": "`submodule_git_url` is populated when `type` is `submodule`, otherwise null", + "type": "string", + "x-go-name": "SubmoduleGitURL" + }, + "target": { + "description": "`target` is populated when `type` is `symlink`, otherwise null", + "type": "string", + "x-go-name": "Target" + }, + "type": { + "description": "`type` will be `file`, `dir`, `symlink`, or `submodule`", + "type": "string", + "x-go-name": "Type" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateAccessTokenOption": { + "description": "CreateAccessTokenOption options when create access token", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "x-go-name": "Name" + }, + "scopes": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Scopes" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateBranchProtectionOption": { + "description": "CreateBranchProtectionOption options for creating a branch protection", + "type": "object", + "properties": { + "approvals_whitelist_teams": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "ApprovalsWhitelistTeams" + }, + "approvals_whitelist_username": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "ApprovalsWhitelistUsernames" + }, + "block_on_official_review_requests": { + "type": "boolean", + "x-go-name": "BlockOnOfficialReviewRequests" + }, + "block_on_outdated_branch": { + "type": "boolean", + "x-go-name": "BlockOnOutdatedBranch" + }, + "block_on_rejected_reviews": { + "type": "boolean", + "x-go-name": "BlockOnRejectedReviews" + }, + "branch_name": { + "description": "Deprecated: true", + "type": "string", + "x-go-name": "BranchName" + }, + "dismiss_stale_approvals": { + "type": "boolean", + "x-go-name": "DismissStaleApprovals" + }, + "enable_approvals_whitelist": { + "type": "boolean", + "x-go-name": "EnableApprovalsWhitelist" + }, + "enable_merge_whitelist": { + "type": "boolean", + "x-go-name": "EnableMergeWhitelist" + }, + "enable_push": { + "type": "boolean", + "x-go-name": "EnablePush" + }, + "enable_push_whitelist": { + "type": "boolean", + "x-go-name": "EnablePushWhitelist" + }, + "enable_status_check": { + "type": "boolean", + "x-go-name": "EnableStatusCheck" + }, + "ignore_stale_approvals": { + "type": "boolean", + "x-go-name": "IgnoreStaleApprovals" + }, + "merge_whitelist_teams": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "MergeWhitelistTeams" + }, + "merge_whitelist_usernames": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "MergeWhitelistUsernames" + }, + "protected_file_patterns": { + "type": "string", + "x-go-name": "ProtectedFilePatterns" + }, + "push_whitelist_deploy_keys": { + "type": "boolean", + "x-go-name": "PushWhitelistDeployKeys" + }, + "push_whitelist_teams": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "PushWhitelistTeams" + }, + "push_whitelist_usernames": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "PushWhitelistUsernames" + }, + "require_signed_commits": { + "type": "boolean", + "x-go-name": "RequireSignedCommits" + }, + "required_approvals": { + "type": "integer", + "format": "int64", + "x-go-name": "RequiredApprovals" + }, + "rule_name": { + "type": "string", + "x-go-name": "RuleName" + }, + "status_check_contexts": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "StatusCheckContexts" + }, + "unprotected_file_patterns": { + "type": "string", + "x-go-name": "UnprotectedFilePatterns" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateBranchRepoOption": { + "description": "CreateBranchRepoOption options when creating a branch in a repository", + "type": "object", + "required": [ + "new_branch_name" + ], + "properties": { + "new_branch_name": { + "description": "Name of the branch to create", + "type": "string", + "uniqueItems": true, + "x-go-name": "BranchName" + }, + "old_branch_name": { + "description": "Deprecated: true\nName of the old branch to create from", + "type": "string", + "uniqueItems": true, + "x-go-name": "OldBranchName" + }, + "old_ref_name": { + "description": "Name of the old branch/tag/commit to create from", + "type": "string", + "uniqueItems": true, + "x-go-name": "OldRefName" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateEmailOption": { + "description": "CreateEmailOption options when creating email addresses", + "type": "object", + "properties": { + "emails": { + "description": "email addresses to add", + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Emails" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateFileOptions": { + "description": "CreateFileOptions options for creating files\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)", + "type": "object", + "required": [ + "content" + ], + "properties": { + "author": { + "$ref": "#/definitions/Identity" + }, + "branch": { + "description": "branch (optional) to base this file from. if not given, the default branch is used", + "type": "string", + "x-go-name": "BranchName" + }, + "committer": { + "$ref": "#/definitions/Identity" + }, + "content": { + "description": "content must be base64 encoded", + "type": "string", + "x-go-name": "ContentBase64" + }, + "dates": { + "$ref": "#/definitions/CommitDateOptions" + }, + "message": { + "description": "message (optional) for the commit of this file. if not supplied, a default message will be used", + "type": "string", + "x-go-name": "Message" + }, + "new_branch": { + "description": "new_branch (optional) will make a new branch from `branch` before creating the file", + "type": "string", + "x-go-name": "NewBranchName" + }, + "signoff": { + "description": "Add a Signed-off-by trailer by the committer at the end of the commit log message.", + "type": "boolean", + "x-go-name": "Signoff" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateForkOption": { + "description": "CreateForkOption options for creating a fork", + "type": "object", + "properties": { + "name": { + "description": "name of the forked repository", + "type": "string", + "x-go-name": "Name" + }, + "organization": { + "description": "organization name, if forking into an organization", + "type": "string", + "x-go-name": "Organization" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateGPGKeyOption": { + "description": "CreateGPGKeyOption options create user GPG key", + "type": "object", + "required": [ + "armored_public_key" + ], + "properties": { + "armored_public_key": { + "description": "An armored GPG key to add", + "type": "string", + "uniqueItems": true, + "x-go-name": "ArmoredKey" + }, + "armored_signature": { + "type": "string", + "x-go-name": "Signature" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateHookOption": { + "description": "CreateHookOption options when create a hook", + "type": "object", + "required": [ + "type", + "config" + ], + "properties": { + "active": { + "type": "boolean", + "default": false, + "x-go-name": "Active" + }, + "authorization_header": { + "type": "string", + "x-go-name": "AuthorizationHeader" + }, + "branch_filter": { + "type": "string", + "x-go-name": "BranchFilter" + }, + "config": { + "$ref": "#/definitions/CreateHookOptionConfig" + }, + "events": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Events" + }, + "type": { + "type": "string", + "enum": [ + "dingtalk", + "discord", + "gitea", + "gogs", + "msteams", + "slack", + "telegram", + "feishu", + "wechatwork", + "packagist" + ], + "x-go-name": "Type" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateHookOptionConfig": { + "description": "CreateHookOptionConfig has all config options in it\nrequired are \"content_type\" and \"url\" Required", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateIssueCommentOption": { + "description": "CreateIssueCommentOption options for creating a comment on an issue", + "type": "object", + "required": [ + "body" + ], + "properties": { + "body": { + "type": "string", + "x-go-name": "Body" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateIssueOption": { + "description": "CreateIssueOption options to create one issue", + "type": "object", + "required": [ + "title" + ], + "properties": { + "assignee": { + "description": "deprecated", + "type": "string", + "x-go-name": "Assignee" + }, + "assignees": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Assignees" + }, + "body": { + "type": "string", + "x-go-name": "Body" + }, + "closed": { + "type": "boolean", + "x-go-name": "Closed" + }, + "due_date": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + }, + "labels": { + "description": "list of label ids", + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "x-go-name": "Labels" + }, + "milestone": { + "description": "milestone id", + "type": "integer", + "format": "int64", + "x-go-name": "Milestone" + }, + "ref": { + "type": "string", + "x-go-name": "Ref" + }, + "title": { + "type": "string", + "x-go-name": "Title" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateKeyOption": { + "description": "CreateKeyOption options when creating a key", + "type": "object", + "required": [ + "title", + "key" + ], + "properties": { + "key": { + "description": "An armored SSH key to add", + "type": "string", + "uniqueItems": true, + "x-go-name": "Key" + }, + "read_only": { + "description": "Describe if the key has only read access or read/write", + "type": "boolean", + "x-go-name": "ReadOnly" + }, + "title": { + "description": "Title of the key to add", + "type": "string", + "uniqueItems": true, + "x-go-name": "Title" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateLabelOption": { + "description": "CreateLabelOption options for creating a label", + "type": "object", + "required": [ + "name", + "color" + ], + "properties": { + "color": { + "type": "string", + "x-go-name": "Color", + "example": "#00aabb" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "exclusive": { + "type": "boolean", + "x-go-name": "Exclusive", + "example": false + }, + "is_archived": { + "type": "boolean", + "x-go-name": "IsArchived", + "example": false + }, + "name": { + "type": "string", + "x-go-name": "Name" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateMilestoneOption": { + "description": "CreateMilestoneOption options for creating a milestone", + "type": "object", + "properties": { + "description": { + "type": "string", + "x-go-name": "Description" + }, + "due_on": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ], + "x-go-name": "State" + }, + "title": { + "type": "string", + "x-go-name": "Title" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateOAuth2ApplicationOptions": { + "description": "CreateOAuth2ApplicationOptions holds options to create an oauth2 application", + "type": "object", + "properties": { + "confidential_client": { + "type": "boolean", + "x-go-name": "ConfidentialClient" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "redirect_uris": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "RedirectURIs" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateOrUpdateSecretOption": { + "description": "CreateOrUpdateSecretOption options when creating or updating secret", + "type": "object", + "required": [ + "data" + ], + "properties": { + "data": { + "description": "Data of the secret to update", + "type": "string", + "x-go-name": "Data" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateOrgOption": { + "description": "CreateOrgOption options for creating an organization", + "type": "object", + "required": [ + "username" + ], + "properties": { + "description": { + "type": "string", + "x-go-name": "Description" + }, + "email": { + "type": "string", + "x-go-name": "Email" + }, + "full_name": { + "type": "string", + "x-go-name": "FullName" + }, + "location": { + "type": "string", + "x-go-name": "Location" + }, + "repo_admin_change_team_access": { + "type": "boolean", + "x-go-name": "RepoAdminChangeTeamAccess" + }, + "username": { + "type": "string", + "x-go-name": "UserName" + }, + "visibility": { + "description": "possible values are `public` (default), `limited` or `private`", + "type": "string", + "enum": [ + "public", + "limited", + "private" + ], + "x-go-name": "Visibility" + }, + "website": { + "type": "string", + "x-go-name": "Website" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreatePullRequestOption": { + "description": "CreatePullRequestOption options when creating a pull request", + "type": "object", + "properties": { + "assignee": { + "type": "string", + "x-go-name": "Assignee" + }, + "assignees": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Assignees" + }, + "base": { + "type": "string", + "x-go-name": "Base" + }, + "body": { + "type": "string", + "x-go-name": "Body" + }, + "due_date": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + }, + "head": { + "type": "string", + "x-go-name": "Head" + }, + "labels": { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "x-go-name": "Labels" + }, + "milestone": { + "type": "integer", + "format": "int64", + "x-go-name": "Milestone" + }, + "title": { + "type": "string", + "x-go-name": "Title" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreatePullReviewComment": { + "description": "CreatePullReviewComment represent a review comment for creation api", + "type": "object", + "properties": { + "body": { + "type": "string", + "x-go-name": "Body" + }, + "new_position": { + "description": "if comment to new file line or 0", + "type": "integer", + "format": "int64", + "x-go-name": "NewLineNum" + }, + "old_position": { + "description": "if comment to old file line or 0", + "type": "integer", + "format": "int64", + "x-go-name": "OldLineNum" + }, + "path": { + "description": "the tree path", + "type": "string", + "x-go-name": "Path" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreatePullReviewOptions": { + "description": "CreatePullReviewOptions are options to create a pull review", + "type": "object", + "properties": { + "body": { + "type": "string", + "x-go-name": "Body" + }, + "comments": { + "type": "array", + "items": { + "$ref": "#/definitions/CreatePullReviewComment" + }, + "x-go-name": "Comments" + }, + "commit_id": { + "type": "string", + "x-go-name": "CommitID" + }, + "event": { + "$ref": "#/definitions/ReviewStateType" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreatePushMirrorOption": { + "type": "object", + "title": "CreatePushMirrorOption represents need information to create a push mirror of a repository.", + "properties": { + "interval": { + "type": "string", + "x-go-name": "Interval" + }, + "remote_address": { + "type": "string", + "x-go-name": "RemoteAddress" + }, + "remote_password": { + "type": "string", + "x-go-name": "RemotePassword" + }, + "remote_username": { + "type": "string", + "x-go-name": "RemoteUsername" + }, + "sync_on_commit": { + "type": "boolean", + "x-go-name": "SyncOnCommit" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateReleaseOption": { + "description": "CreateReleaseOption options when creating a release", + "type": "object", + "required": [ + "tag_name" + ], + "properties": { + "body": { + "type": "string", + "x-go-name": "Note" + }, + "draft": { + "type": "boolean", + "x-go-name": "IsDraft" + }, + "name": { + "type": "string", + "x-go-name": "Title" + }, + "prerelease": { + "type": "boolean", + "x-go-name": "IsPrerelease" + }, + "tag_name": { + "type": "string", + "x-go-name": "TagName" + }, + "target_commitish": { + "type": "string", + "x-go-name": "Target" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateRepoOption": { + "description": "CreateRepoOption options when creating repository", + "type": "object", + "required": [ + "name" + ], + "properties": { + "auto_init": { + "description": "Whether the repository should be auto-initialized?", + "type": "boolean", + "x-go-name": "AutoInit" + }, + "default_branch": { + "description": "DefaultBranch of the repository (used when initializes and in template)", + "type": "string", + "x-go-name": "DefaultBranch" + }, + "description": { + "description": "Description of the repository to create", + "type": "string", + "x-go-name": "Description" + }, + "gitignores": { + "description": "Gitignores to use", + "type": "string", + "x-go-name": "Gitignores" + }, + "issue_labels": { + "description": "Label-Set to use", + "type": "string", + "x-go-name": "IssueLabels" + }, + "license": { + "description": "License to use", + "type": "string", + "x-go-name": "License" + }, + "name": { + "description": "Name of the repository to create", + "type": "string", + "uniqueItems": true, + "x-go-name": "Name" + }, + "object_format_name": { + "description": "ObjectFormatName of the underlying git repository", + "type": "string", + "enum": [ + "sha1", + "sha256" + ], + "x-go-name": "ObjectFormatName" + }, + "private": { + "description": "Whether the repository is private", + "type": "boolean", + "x-go-name": "Private" + }, + "readme": { + "description": "Readme of the repository to create", + "type": "string", + "x-go-name": "Readme" + }, + "template": { + "description": "Whether the repository is template", + "type": "boolean", + "x-go-name": "Template" + }, + "trust_model": { + "description": "TrustModel of the repository", + "type": "string", + "enum": [ + "default", + "collaborator", + "committer", + "collaboratorcommitter" + ], + "x-go-name": "TrustModel" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateStatusOption": { + "description": "CreateStatusOption holds the information needed to create a new CommitStatus for a Commit", + "type": "object", + "properties": { + "context": { + "type": "string", + "x-go-name": "Context" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "state": { + "$ref": "#/definitions/CommitStatusState" + }, + "target_url": { + "type": "string", + "x-go-name": "TargetURL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateTagOption": { + "description": "CreateTagOption options when creating a tag", + "type": "object", + "required": [ + "tag_name" + ], + "properties": { + "message": { + "type": "string", + "x-go-name": "Message" + }, + "tag_name": { + "type": "string", + "x-go-name": "TagName" + }, + "target": { + "type": "string", + "x-go-name": "Target" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateTeamOption": { + "description": "CreateTeamOption options for creating a team", + "type": "object", + "required": [ + "name" + ], + "properties": { + "can_create_org_repo": { + "type": "boolean", + "x-go-name": "CanCreateOrgRepo" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "includes_all_repositories": { + "type": "boolean", + "x-go-name": "IncludesAllRepositories" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "permission": { + "type": "string", + "enum": [ + "read", + "write", + "admin" + ], + "x-go-name": "Permission" + }, + "units": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Units", + "example": [ + "repo.actions", + "repo.code", + "repo.issues", + "repo.ext_issues", + "repo.wiki", + "repo.ext_wiki", + "repo.pulls", + "repo.releases", + "repo.projects", + "repo.ext_wiki" + ] + }, + "units_map": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-go-name": "UnitsMap", + "example": "{\"repo.actions\",\"repo.packages\",\"repo.code\":\"read\",\"repo.issues\":\"write\",\"repo.ext_issues\":\"none\",\"repo.wiki\":\"admin\",\"repo.pulls\":\"owner\",\"repo.releases\":\"none\",\"repo.projects\":\"none\",\"repo.ext_wiki\":\"none\"}" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateUserOption": { + "description": "CreateUserOption create user options", + "type": "object", + "required": [ + "username", + "email" + ], + "properties": { + "created_at": { + "description": "For explicitly setting the user creation timestamp. Useful when users are\nmigrated from other systems. When omitted, the user's creation timestamp\nwill be set to \"now\".", + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "email": { + "type": "string", + "format": "email", + "x-go-name": "Email" + }, + "full_name": { + "type": "string", + "x-go-name": "FullName" + }, + "login_name": { + "type": "string", + "x-go-name": "LoginName" + }, + "must_change_password": { + "type": "boolean", + "x-go-name": "MustChangePassword" + }, + "password": { + "type": "string", + "x-go-name": "Password" + }, + "restricted": { + "type": "boolean", + "x-go-name": "Restricted" + }, + "send_notify": { + "type": "boolean", + "x-go-name": "SendNotify" + }, + "source_id": { + "type": "integer", + "format": "int64", + "x-go-name": "SourceID" + }, + "username": { + "type": "string", + "x-go-name": "Username" + }, + "visibility": { + "type": "string", + "x-go-name": "Visibility" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateVariableOption": { + "description": "CreateVariableOption the option when creating variable", + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "description": "Value of the variable to create", + "type": "string", + "x-go-name": "Value" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "CreateWikiPageOptions": { + "description": "CreateWikiPageOptions form for creating wiki", + "type": "object", + "properties": { + "content_base64": { + "description": "content must be base64 encoded", + "type": "string", + "x-go-name": "ContentBase64" + }, + "message": { + "description": "optional commit message summarizing the change", + "type": "string", + "x-go-name": "Message" + }, + "title": { + "description": "page title. leave empty to keep unchanged", + "type": "string", + "x-go-name": "Title" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Cron": { + "description": "Cron represents a Cron task", + "type": "object", + "properties": { + "exec_times": { + "type": "integer", + "format": "int64", + "x-go-name": "ExecTimes" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "next": { + "type": "string", + "format": "date-time", + "x-go-name": "Next" + }, + "prev": { + "type": "string", + "format": "date-time", + "x-go-name": "Prev" + }, + "schedule": { + "type": "string", + "x-go-name": "Schedule" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "DeleteEmailOption": { + "description": "DeleteEmailOption options when deleting email addresses", + "type": "object", + "properties": { + "emails": { + "description": "email addresses to delete", + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Emails" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "DeleteFileOptions": { + "description": "DeleteFileOptions options for deleting files (used for other File structs below)\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)", + "type": "object", + "required": [ + "sha" + ], + "properties": { + "author": { + "$ref": "#/definitions/Identity" + }, + "branch": { + "description": "branch (optional) to base this file from. if not given, the default branch is used", + "type": "string", + "x-go-name": "BranchName" + }, + "committer": { + "$ref": "#/definitions/Identity" + }, + "dates": { + "$ref": "#/definitions/CommitDateOptions" + }, + "message": { + "description": "message (optional) for the commit of this file. if not supplied, a default message will be used", + "type": "string", + "x-go-name": "Message" + }, + "new_branch": { + "description": "new_branch (optional) will make a new branch from `branch` before creating the file", + "type": "string", + "x-go-name": "NewBranchName" + }, + "sha": { + "description": "sha is the SHA for the file that already exists", + "type": "string", + "x-go-name": "SHA" + }, + "signoff": { + "description": "Add a Signed-off-by trailer by the committer at the end of the commit log message.", + "type": "boolean", + "x-go-name": "Signoff" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "DeployKey": { + "description": "DeployKey a deploy key", + "type": "object", + "properties": { + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "fingerprint": { + "type": "string", + "x-go-name": "Fingerprint" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "key": { + "type": "string", + "x-go-name": "Key" + }, + "key_id": { + "type": "integer", + "format": "int64", + "x-go-name": "KeyID" + }, + "read_only": { + "type": "boolean", + "x-go-name": "ReadOnly" + }, + "repository": { + "$ref": "#/definitions/Repository" + }, + "title": { + "type": "string", + "x-go-name": "Title" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "DismissPullReviewOptions": { + "description": "DismissPullReviewOptions are options to dismiss a pull review", + "type": "object", + "properties": { + "message": { + "type": "string", + "x-go-name": "Message" + }, + "priors": { + "type": "boolean", + "x-go-name": "Priors" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditAttachmentOptions": { + "description": "EditAttachmentOptions options for editing attachments", + "type": "object", + "properties": { + "name": { + "type": "string", + "x-go-name": "Name" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditBranchProtectionOption": { + "description": "EditBranchProtectionOption options for editing a branch protection", + "type": "object", + "properties": { + "approvals_whitelist_teams": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "ApprovalsWhitelistTeams" + }, + "approvals_whitelist_username": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "ApprovalsWhitelistUsernames" + }, + "block_on_official_review_requests": { + "type": "boolean", + "x-go-name": "BlockOnOfficialReviewRequests" + }, + "block_on_outdated_branch": { + "type": "boolean", + "x-go-name": "BlockOnOutdatedBranch" + }, + "block_on_rejected_reviews": { + "type": "boolean", + "x-go-name": "BlockOnRejectedReviews" + }, + "dismiss_stale_approvals": { + "type": "boolean", + "x-go-name": "DismissStaleApprovals" + }, + "enable_approvals_whitelist": { + "type": "boolean", + "x-go-name": "EnableApprovalsWhitelist" + }, + "enable_merge_whitelist": { + "type": "boolean", + "x-go-name": "EnableMergeWhitelist" + }, + "enable_push": { + "type": "boolean", + "x-go-name": "EnablePush" + }, + "enable_push_whitelist": { + "type": "boolean", + "x-go-name": "EnablePushWhitelist" + }, + "enable_status_check": { + "type": "boolean", + "x-go-name": "EnableStatusCheck" + }, + "ignore_stale_approvals": { + "type": "boolean", + "x-go-name": "IgnoreStaleApprovals" + }, + "merge_whitelist_teams": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "MergeWhitelistTeams" + }, + "merge_whitelist_usernames": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "MergeWhitelistUsernames" + }, + "protected_file_patterns": { + "type": "string", + "x-go-name": "ProtectedFilePatterns" + }, + "push_whitelist_deploy_keys": { + "type": "boolean", + "x-go-name": "PushWhitelistDeployKeys" + }, + "push_whitelist_teams": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "PushWhitelistTeams" + }, + "push_whitelist_usernames": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "PushWhitelistUsernames" + }, + "require_signed_commits": { + "type": "boolean", + "x-go-name": "RequireSignedCommits" + }, + "required_approvals": { + "type": "integer", + "format": "int64", + "x-go-name": "RequiredApprovals" + }, + "status_check_contexts": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "StatusCheckContexts" + }, + "unprotected_file_patterns": { + "type": "string", + "x-go-name": "UnprotectedFilePatterns" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditDeadlineOption": { + "description": "EditDeadlineOption options for creating a deadline", + "type": "object", + "required": [ + "due_date" + ], + "properties": { + "due_date": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditGitHookOption": { + "description": "EditGitHookOption options when modifying one Git hook", + "type": "object", + "properties": { + "content": { + "type": "string", + "x-go-name": "Content" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditHookOption": { + "description": "EditHookOption options when modify one hook", + "type": "object", + "properties": { + "active": { + "type": "boolean", + "x-go-name": "Active" + }, + "authorization_header": { + "type": "string", + "x-go-name": "AuthorizationHeader" + }, + "branch_filter": { + "type": "string", + "x-go-name": "BranchFilter" + }, + "config": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-go-name": "Config" + }, + "events": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Events" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditIssueCommentOption": { + "description": "EditIssueCommentOption options for editing a comment", + "type": "object", + "required": [ + "body" + ], + "properties": { + "body": { + "type": "string", + "x-go-name": "Body" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditIssueOption": { + "description": "EditIssueOption options for editing an issue", + "type": "object", + "properties": { + "assignee": { + "description": "deprecated", + "type": "string", + "x-go-name": "Assignee" + }, + "assignees": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Assignees" + }, + "body": { + "type": "string", + "x-go-name": "Body" + }, + "due_date": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + }, + "milestone": { + "type": "integer", + "format": "int64", + "x-go-name": "Milestone" + }, + "ref": { + "type": "string", + "x-go-name": "Ref" + }, + "state": { + "type": "string", + "x-go-name": "State" + }, + "title": { + "type": "string", + "x-go-name": "Title" + }, + "unset_due_date": { + "type": "boolean", + "x-go-name": "RemoveDeadline" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditLabelOption": { + "description": "EditLabelOption options for editing a label", + "type": "object", + "properties": { + "color": { + "type": "string", + "x-go-name": "Color", + "example": "#00aabb" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "exclusive": { + "type": "boolean", + "x-go-name": "Exclusive", + "example": false + }, + "is_archived": { + "type": "boolean", + "x-go-name": "IsArchived", + "example": false + }, + "name": { + "type": "string", + "x-go-name": "Name" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditMilestoneOption": { + "description": "EditMilestoneOption options for editing a milestone", + "type": "object", + "properties": { + "description": { + "type": "string", + "x-go-name": "Description" + }, + "due_on": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + }, + "state": { + "type": "string", + "x-go-name": "State" + }, + "title": { + "type": "string", + "x-go-name": "Title" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditOrgOption": { + "description": "EditOrgOption options for editing an organization", + "type": "object", + "properties": { + "description": { + "type": "string", + "x-go-name": "Description" + }, + "email": { + "type": "string", + "x-go-name": "Email" + }, + "full_name": { + "type": "string", + "x-go-name": "FullName" + }, + "location": { + "type": "string", + "x-go-name": "Location" + }, + "repo_admin_change_team_access": { + "type": "boolean", + "x-go-name": "RepoAdminChangeTeamAccess" + }, + "visibility": { + "description": "possible values are `public`, `limited` or `private`", + "type": "string", + "enum": [ + "public", + "limited", + "private" + ], + "x-go-name": "Visibility" + }, + "website": { + "type": "string", + "x-go-name": "Website" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditPullRequestOption": { + "description": "EditPullRequestOption options when modify pull request", + "type": "object", + "properties": { + "allow_maintainer_edit": { + "type": "boolean", + "x-go-name": "AllowMaintainerEdit" + }, + "assignee": { + "type": "string", + "x-go-name": "Assignee" + }, + "assignees": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Assignees" + }, + "base": { + "type": "string", + "x-go-name": "Base" + }, + "body": { + "type": "string", + "x-go-name": "Body" + }, + "due_date": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + }, + "labels": { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "x-go-name": "Labels" + }, + "milestone": { + "type": "integer", + "format": "int64", + "x-go-name": "Milestone" + }, + "state": { + "type": "string", + "x-go-name": "State" + }, + "title": { + "type": "string", + "x-go-name": "Title" + }, + "unset_due_date": { + "type": "boolean", + "x-go-name": "RemoveDeadline" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditReactionOption": { + "description": "EditReactionOption contain the reaction type", + "type": "object", + "properties": { + "content": { + "type": "string", + "x-go-name": "Reaction" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditReleaseOption": { + "description": "EditReleaseOption options when editing a release", + "type": "object", + "properties": { + "body": { + "type": "string", + "x-go-name": "Note" + }, + "draft": { + "type": "boolean", + "x-go-name": "IsDraft" + }, + "name": { + "type": "string", + "x-go-name": "Title" + }, + "prerelease": { + "type": "boolean", + "x-go-name": "IsPrerelease" + }, + "tag_name": { + "type": "string", + "x-go-name": "TagName" + }, + "target_commitish": { + "type": "string", + "x-go-name": "Target" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditRepoOption": { + "description": "EditRepoOption options when editing a repository's properties", + "type": "object", + "properties": { + "allow_fast_forward_only_merge": { + "description": "either `true` to allow fast-forward-only merging pull requests, or `false` to prevent fast-forward-only merging.", + "type": "boolean", + "x-go-name": "AllowFastForwardOnly" + }, + "allow_manual_merge": { + "description": "either `true` to allow mark pr as merged manually, or `false` to prevent it.", + "type": "boolean", + "x-go-name": "AllowManualMerge" + }, + "allow_merge_commits": { + "description": "either `true` to allow merging pull requests with a merge commit, or `false` to prevent merging pull requests with merge commits.", + "type": "boolean", + "x-go-name": "AllowMerge" + }, + "allow_rebase": { + "description": "either `true` to allow rebase-merging pull requests, or `false` to prevent rebase-merging.", + "type": "boolean", + "x-go-name": "AllowRebase" + }, + "allow_rebase_explicit": { + "description": "either `true` to allow rebase with explicit merge commits (--no-ff), or `false` to prevent rebase with explicit merge commits.", + "type": "boolean", + "x-go-name": "AllowRebaseMerge" + }, + "allow_rebase_update": { + "description": "either `true` to allow updating pull request branch by rebase, or `false` to prevent it.", + "type": "boolean", + "x-go-name": "AllowRebaseUpdate" + }, + "allow_squash_merge": { + "description": "either `true` to allow squash-merging pull requests, or `false` to prevent squash-merging.", + "type": "boolean", + "x-go-name": "AllowSquash" + }, + "archived": { + "description": "set to `true` to archive this repository.", + "type": "boolean", + "x-go-name": "Archived" + }, + "autodetect_manual_merge": { + "description": "either `true` to enable AutodetectManualMerge, or `false` to prevent it. Note: In some special cases, misjudgments can occur.", + "type": "boolean", + "x-go-name": "AutodetectManualMerge" + }, + "default_allow_maintainer_edit": { + "description": "set to `true` to allow edits from maintainers by default", + "type": "boolean", + "x-go-name": "DefaultAllowMaintainerEdit" + }, + "default_branch": { + "description": "sets the default branch for this repository.", + "type": "string", + "x-go-name": "DefaultBranch" + }, + "default_delete_branch_after_merge": { + "description": "set to `true` to delete pr branch after merge by default", + "type": "boolean", + "x-go-name": "DefaultDeleteBranchAfterMerge" + }, + "default_merge_style": { + "description": "set to a merge style to be used by this repository: \"merge\", \"rebase\", \"rebase-merge\", \"squash\", or \"fast-forward-only\".", + "type": "string", + "x-go-name": "DefaultMergeStyle" + }, + "description": { + "description": "a short description of the repository.", + "type": "string", + "x-go-name": "Description" + }, + "enable_prune": { + "description": "enable prune - remove obsolete remote-tracking references when mirroring", + "type": "boolean", + "x-go-name": "EnablePrune" + }, + "external_tracker": { + "$ref": "#/definitions/ExternalTracker" + }, + "external_wiki": { + "$ref": "#/definitions/ExternalWiki" + }, + "has_actions": { + "description": "either `true` to enable actions unit, or `false` to disable them.", + "type": "boolean", + "x-go-name": "HasActions" + }, + "has_issues": { + "description": "either `true` to enable issues for this repository or `false` to disable them.", + "type": "boolean", + "x-go-name": "HasIssues" + }, + "has_packages": { + "description": "either `true` to enable packages unit, or `false` to disable them.", + "type": "boolean", + "x-go-name": "HasPackages" + }, + "has_projects": { + "description": "either `true` to enable project unit, or `false` to disable them.", + "type": "boolean", + "x-go-name": "HasProjects" + }, + "has_pull_requests": { + "description": "either `true` to allow pull requests, or `false` to prevent pull request.", + "type": "boolean", + "x-go-name": "HasPullRequests" + }, + "has_releases": { + "description": "either `true` to enable releases unit, or `false` to disable them.", + "type": "boolean", + "x-go-name": "HasReleases" + }, + "has_wiki": { + "description": "either `true` to enable the wiki for this repository or `false` to disable it.", + "type": "boolean", + "x-go-name": "HasWiki" + }, + "ignore_whitespace_conflicts": { + "description": "either `true` to ignore whitespace for conflicts, or `false` to not ignore whitespace.", + "type": "boolean", + "x-go-name": "IgnoreWhitespaceConflicts" + }, + "internal_tracker": { + "$ref": "#/definitions/InternalTracker" + }, + "mirror_interval": { + "description": "set to a string like `8h30m0s` to set the mirror interval time", + "type": "string", + "x-go-name": "MirrorInterval" + }, + "name": { + "description": "name of the repository", + "type": "string", + "uniqueItems": true, + "x-go-name": "Name" + }, + "private": { + "description": "either `true` to make the repository private or `false` to make it public.\nNote: you will get a 422 error if the organization restricts changing repository visibility to organization\nowners and a non-owner tries to change the value of private.", + "type": "boolean", + "x-go-name": "Private" + }, + "projects_mode": { + "description": "`repo` to only allow repo-level projects, `owner` to only allow owner projects, `all` to allow both.", + "type": "string", + "x-go-name": "ProjectsMode" + }, + "template": { + "description": "either `true` to make this repository a template or `false` to make it a normal repository", + "type": "boolean", + "x-go-name": "Template" + }, + "website": { + "description": "a URL with more information about the repository.", + "type": "string", + "x-go-name": "Website" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditTeamOption": { + "description": "EditTeamOption options for editing a team", + "type": "object", + "required": [ + "name" + ], + "properties": { + "can_create_org_repo": { + "type": "boolean", + "x-go-name": "CanCreateOrgRepo" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "includes_all_repositories": { + "type": "boolean", + "x-go-name": "IncludesAllRepositories" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "permission": { + "type": "string", + "enum": [ + "read", + "write", + "admin" + ], + "x-go-name": "Permission" + }, + "units": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Units", + "example": [ + "repo.code", + "repo.issues", + "repo.ext_issues", + "repo.wiki", + "repo.pulls", + "repo.releases", + "repo.projects", + "repo.ext_wiki" + ] + }, + "units_map": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-go-name": "UnitsMap", + "example": { + "repo.code": "read", + "repo.ext_issues": "none", + "repo.ext_wiki": "none", + "repo.issues": "write", + "repo.projects": "none", + "repo.pulls": "owner", + "repo.releases": "none", + "repo.wiki": "admin" + } + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "EditUserOption": { + "description": "EditUserOption edit user options", + "type": "object", + "required": [ + "source_id", + "login_name" + ], + "properties": { + "active": { + "type": "boolean", + "x-go-name": "Active" + }, + "admin": { + "type": "boolean", + "x-go-name": "Admin" + }, + "allow_create_organization": { + "type": "boolean", + "x-go-name": "AllowCreateOrganization" + }, + "allow_git_hook": { + "type": "boolean", + "x-go-name": "AllowGitHook" + }, + "allow_import_local": { + "type": "boolean", + "x-go-name": "AllowImportLocal" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "email": { + "type": "string", + "format": "email", + "x-go-name": "Email" + }, + "full_name": { + "type": "string", + "x-go-name": "FullName" + }, + "location": { + "type": "string", + "x-go-name": "Location" + }, + "login_name": { + "type": "string", + "x-go-name": "LoginName" + }, + "max_repo_creation": { + "type": "integer", + "format": "int64", + "x-go-name": "MaxRepoCreation" + }, + "must_change_password": { + "type": "boolean", + "x-go-name": "MustChangePassword" + }, + "password": { + "type": "string", + "x-go-name": "Password" + }, + "prohibit_login": { + "type": "boolean", + "x-go-name": "ProhibitLogin" + }, + "restricted": { + "type": "boolean", + "x-go-name": "Restricted" + }, + "source_id": { + "type": "integer", + "format": "int64", + "x-go-name": "SourceID" + }, + "visibility": { + "type": "string", + "x-go-name": "Visibility" + }, + "website": { + "type": "string", + "x-go-name": "Website" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Email": { + "description": "Email an email address belonging to a user", + "type": "object", + "properties": { + "email": { + "type": "string", + "format": "email", + "x-go-name": "Email" + }, + "primary": { + "type": "boolean", + "x-go-name": "Primary" + }, + "user_id": { + "type": "integer", + "format": "int64", + "x-go-name": "UserID" + }, + "username": { + "type": "string", + "x-go-name": "UserName" + }, + "verified": { + "type": "boolean", + "x-go-name": "Verified" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "ExternalTracker": { + "description": "ExternalTracker represents settings for external tracker", + "type": "object", + "properties": { + "external_tracker_format": { + "description": "External Issue Tracker URL Format. Use the placeholders {user}, {repo} and {index} for the username, repository name and issue index.", + "type": "string", + "x-go-name": "ExternalTrackerFormat" + }, + "external_tracker_regexp_pattern": { + "description": "External Issue Tracker issue regular expression", + "type": "string", + "x-go-name": "ExternalTrackerRegexpPattern" + }, + "external_tracker_style": { + "description": "External Issue Tracker Number Format, either `numeric`, `alphanumeric`, or `regexp`", + "type": "string", + "x-go-name": "ExternalTrackerStyle" + }, + "external_tracker_url": { + "description": "URL of external issue tracker.", + "type": "string", + "x-go-name": "ExternalTrackerURL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "ExternalWiki": { + "description": "ExternalWiki represents setting for external wiki", + "type": "object", + "properties": { + "external_wiki_url": { + "description": "URL of external wiki.", + "type": "string", + "x-go-name": "ExternalWikiURL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "FileCommitResponse": { + "type": "object", + "title": "FileCommitResponse contains information generated from a Git commit for a repo's file.", + "properties": { + "author": { + "$ref": "#/definitions/CommitUser" + }, + "committer": { + "$ref": "#/definitions/CommitUser" + }, + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "message": { + "type": "string", + "x-go-name": "Message" + }, + "parents": { + "type": "array", + "items": { + "$ref": "#/definitions/CommitMeta" + }, + "x-go-name": "Parents" + }, + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "tree": { + "$ref": "#/definitions/CommitMeta" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "FileDeleteResponse": { + "description": "FileDeleteResponse contains information about a repo's file that was deleted", + "type": "object", + "properties": { + "commit": { + "$ref": "#/definitions/FileCommitResponse" + }, + "content": { + "x-go-name": "Content" + }, + "verification": { + "$ref": "#/definitions/PayloadCommitVerification" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "FileLinksResponse": { + "description": "FileLinksResponse contains the links for a repo's file", + "type": "object", + "properties": { + "git": { + "type": "string", + "x-go-name": "GitURL" + }, + "html": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "self": { + "type": "string", + "x-go-name": "Self" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "FileResponse": { + "description": "FileResponse contains information about a repo's file", + "type": "object", + "properties": { + "commit": { + "$ref": "#/definitions/FileCommitResponse" + }, + "content": { + "$ref": "#/definitions/ContentsResponse" + }, + "verification": { + "$ref": "#/definitions/PayloadCommitVerification" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "FilesResponse": { + "description": "FilesResponse contains information about multiple files from a repo", + "type": "object", + "properties": { + "commit": { + "$ref": "#/definitions/FileCommitResponse" + }, + "files": { + "type": "array", + "items": { + "$ref": "#/definitions/ContentsResponse" + }, + "x-go-name": "Files" + }, + "verification": { + "$ref": "#/definitions/PayloadCommitVerification" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GPGKey": { + "description": "GPGKey a user GPG key to sign commit and tag in repository", + "type": "object", + "properties": { + "can_certify": { + "type": "boolean", + "x-go-name": "CanCertify" + }, + "can_encrypt_comms": { + "type": "boolean", + "x-go-name": "CanEncryptComms" + }, + "can_encrypt_storage": { + "type": "boolean", + "x-go-name": "CanEncryptStorage" + }, + "can_sign": { + "type": "boolean", + "x-go-name": "CanSign" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "emails": { + "type": "array", + "items": { + "$ref": "#/definitions/GPGKeyEmail" + }, + "x-go-name": "Emails" + }, + "expires_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Expires" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "key_id": { + "type": "string", + "x-go-name": "KeyID" + }, + "primary_key_id": { + "type": "string", + "x-go-name": "PrimaryKeyID" + }, + "public_key": { + "type": "string", + "x-go-name": "PublicKey" + }, + "subkeys": { + "type": "array", + "items": { + "$ref": "#/definitions/GPGKey" + }, + "x-go-name": "SubsKey" + }, + "verified": { + "type": "boolean", + "x-go-name": "Verified" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GPGKeyEmail": { + "description": "GPGKeyEmail an email attached to a GPGKey", + "type": "object", + "properties": { + "email": { + "type": "string", + "x-go-name": "Email" + }, + "verified": { + "type": "boolean", + "x-go-name": "Verified" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GeneralAPISettings": { + "description": "GeneralAPISettings contains global api settings exposed by it", + "type": "object", + "properties": { + "default_git_trees_per_page": { + "type": "integer", + "format": "int64", + "x-go-name": "DefaultGitTreesPerPage" + }, + "default_max_blob_size": { + "type": "integer", + "format": "int64", + "x-go-name": "DefaultMaxBlobSize" + }, + "default_paging_num": { + "type": "integer", + "format": "int64", + "x-go-name": "DefaultPagingNum" + }, + "max_response_items": { + "type": "integer", + "format": "int64", + "x-go-name": "MaxResponseItems" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GeneralAttachmentSettings": { + "description": "GeneralAttachmentSettings contains global Attachment settings exposed by API", + "type": "object", + "properties": { + "allowed_types": { + "type": "string", + "x-go-name": "AllowedTypes" + }, + "enabled": { + "type": "boolean", + "x-go-name": "Enabled" + }, + "max_files": { + "type": "integer", + "format": "int64", + "x-go-name": "MaxFiles" + }, + "max_size": { + "type": "integer", + "format": "int64", + "x-go-name": "MaxSize" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GeneralRepoSettings": { + "description": "GeneralRepoSettings contains global repository settings exposed by API", + "type": "object", + "properties": { + "http_git_disabled": { + "type": "boolean", + "x-go-name": "HTTPGitDisabled" + }, + "lfs_disabled": { + "type": "boolean", + "x-go-name": "LFSDisabled" + }, + "migrations_disabled": { + "type": "boolean", + "x-go-name": "MigrationsDisabled" + }, + "mirrors_disabled": { + "type": "boolean", + "x-go-name": "MirrorsDisabled" + }, + "stars_disabled": { + "type": "boolean", + "x-go-name": "StarsDisabled" + }, + "time_tracking_disabled": { + "type": "boolean", + "x-go-name": "TimeTrackingDisabled" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GeneralUISettings": { + "description": "GeneralUISettings contains global ui settings exposed by API", + "type": "object", + "properties": { + "allowed_reactions": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "AllowedReactions" + }, + "custom_emojis": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "CustomEmojis" + }, + "default_theme": { + "type": "string", + "x-go-name": "DefaultTheme" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GenerateRepoOption": { + "description": "GenerateRepoOption options when creating repository using a template", + "type": "object", + "required": [ + "owner", + "name" + ], + "properties": { + "avatar": { + "description": "include avatar of the template repo", + "type": "boolean", + "x-go-name": "Avatar" + }, + "default_branch": { + "description": "Default branch of the new repository", + "type": "string", + "x-go-name": "DefaultBranch" + }, + "description": { + "description": "Description of the repository to create", + "type": "string", + "x-go-name": "Description" + }, + "git_content": { + "description": "include git content of default branch in template repo", + "type": "boolean", + "x-go-name": "GitContent" + }, + "git_hooks": { + "description": "include git hooks in template repo", + "type": "boolean", + "x-go-name": "GitHooks" + }, + "labels": { + "description": "include labels in template repo", + "type": "boolean", + "x-go-name": "Labels" + }, + "name": { + "description": "Name of the repository to create", + "type": "string", + "uniqueItems": true, + "x-go-name": "Name" + }, + "owner": { + "description": "The organization or person who will own the new repository", + "type": "string", + "x-go-name": "Owner" + }, + "private": { + "description": "Whether the repository is private", + "type": "boolean", + "x-go-name": "Private" + }, + "protected_branch": { + "description": "include protected branches in template repo", + "type": "boolean", + "x-go-name": "ProtectedBranch" + }, + "topics": { + "description": "include topics in template repo", + "type": "boolean", + "x-go-name": "Topics" + }, + "webhooks": { + "description": "include webhooks in template repo", + "type": "boolean", + "x-go-name": "Webhooks" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GitBlobResponse": { + "description": "GitBlobResponse represents a git blob", + "type": "object", + "properties": { + "content": { + "type": "string", + "x-go-name": "Content" + }, + "encoding": { + "type": "string", + "x-go-name": "Encoding" + }, + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "size": { + "type": "integer", + "format": "int64", + "x-go-name": "Size" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GitEntry": { + "description": "GitEntry represents a git tree", + "type": "object", + "properties": { + "mode": { + "type": "string", + "x-go-name": "Mode" + }, + "path": { + "type": "string", + "x-go-name": "Path" + }, + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "size": { + "type": "integer", + "format": "int64", + "x-go-name": "Size" + }, + "type": { + "type": "string", + "x-go-name": "Type" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GitHook": { + "description": "GitHook represents a Git repository hook", + "type": "object", + "properties": { + "content": { + "type": "string", + "x-go-name": "Content" + }, + "is_active": { + "type": "boolean", + "x-go-name": "IsActive" + }, + "name": { + "type": "string", + "x-go-name": "Name" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GitObject": { + "type": "object", + "title": "GitObject represents a Git object.", + "properties": { + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "type": { + "type": "string", + "x-go-name": "Type" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GitTreeResponse": { + "description": "GitTreeResponse returns a git tree", + "type": "object", + "properties": { + "page": { + "type": "integer", + "format": "int64", + "x-go-name": "Page" + }, + "sha": { + "type": "string", + "x-go-name": "SHA" + }, + "total_count": { + "type": "integer", + "format": "int64", + "x-go-name": "TotalCount" + }, + "tree": { + "type": "array", + "items": { + "$ref": "#/definitions/GitEntry" + }, + "x-go-name": "Entries" + }, + "truncated": { + "type": "boolean", + "x-go-name": "Truncated" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "GitignoreTemplateInfo": { + "description": "GitignoreTemplateInfo name and text of a gitignore template", + "type": "object", + "properties": { + "name": { + "type": "string", + "x-go-name": "Name" + }, + "source": { + "type": "string", + "x-go-name": "Source" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Hook": { + "description": "Hook a hook is a web hook when one repository changed", + "type": "object", + "properties": { + "active": { + "type": "boolean", + "x-go-name": "Active" + }, + "authorization_header": { + "type": "string", + "x-go-name": "AuthorizationHeader" + }, + "branch_filter": { + "type": "string", + "x-go-name": "BranchFilter" + }, + "config": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-go-name": "Config" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "events": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Events" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "type": { + "type": "string", + "x-go-name": "Type" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Identity": { + "description": "Identity for a person's identity like an author or committer", + "type": "object", + "properties": { + "email": { + "type": "string", + "format": "email", + "x-go-name": "Email" + }, + "name": { + "type": "string", + "x-go-name": "Name" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "InternalTracker": { + "description": "InternalTracker represents settings for internal tracker", + "type": "object", + "properties": { + "allow_only_contributors_to_track_time": { + "description": "Let only contributors track time (Built-in issue tracker)", + "type": "boolean", + "x-go-name": "AllowOnlyContributorsToTrackTime" + }, + "enable_issue_dependencies": { + "description": "Enable dependencies for issues and pull requests (Built-in issue tracker)", + "type": "boolean", + "x-go-name": "EnableIssueDependencies" + }, + "enable_time_tracker": { + "description": "Enable time tracking (Built-in issue tracker)", + "type": "boolean", + "x-go-name": "EnableTimeTracker" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Issue": { + "description": "Issue represents an issue in a repository", + "type": "object", + "properties": { + "assets": { + "type": "array", + "items": { + "$ref": "#/definitions/Attachment" + }, + "x-go-name": "Attachments" + }, + "assignee": { + "$ref": "#/definitions/User" + }, + "assignees": { + "type": "array", + "items": { + "$ref": "#/definitions/User" + }, + "x-go-name": "Assignees" + }, + "body": { + "type": "string", + "x-go-name": "Body" + }, + "closed_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Closed" + }, + "comments": { + "type": "integer", + "format": "int64", + "x-go-name": "Comments" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "due_date": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "is_locked": { + "type": "boolean", + "x-go-name": "IsLocked" + }, + "labels": { + "type": "array", + "items": { + "$ref": "#/definitions/Label" + }, + "x-go-name": "Labels" + }, + "milestone": { + "$ref": "#/definitions/Milestone" + }, + "number": { + "type": "integer", + "format": "int64", + "x-go-name": "Index" + }, + "original_author": { + "type": "string", + "x-go-name": "OriginalAuthor" + }, + "original_author_id": { + "type": "integer", + "format": "int64", + "x-go-name": "OriginalAuthorID" + }, + "pin_order": { + "type": "integer", + "format": "int64", + "x-go-name": "PinOrder" + }, + "pull_request": { + "$ref": "#/definitions/PullRequestMeta" + }, + "ref": { + "type": "string", + "x-go-name": "Ref" + }, + "repository": { + "$ref": "#/definitions/RepositoryMeta" + }, + "state": { + "$ref": "#/definitions/StateType" + }, + "title": { + "type": "string", + "x-go-name": "Title" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + }, + "url": { + "type": "string", + "x-go-name": "URL" + }, + "user": { + "$ref": "#/definitions/User" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueConfig": { + "type": "object", + "properties": { + "blank_issues_enabled": { + "type": "boolean", + "x-go-name": "BlankIssuesEnabled" + }, + "contact_links": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueConfigContactLink" + }, + "x-go-name": "ContactLinks" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueConfigContactLink": { + "type": "object", + "properties": { + "about": { + "type": "string", + "x-go-name": "About" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueConfigValidation": { + "type": "object", + "properties": { + "message": { + "type": "string", + "x-go-name": "Message" + }, + "valid": { + "type": "boolean", + "x-go-name": "Valid" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueDeadline": { + "description": "IssueDeadline represents an issue deadline", + "type": "object", + "properties": { + "due_date": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueFormField": { + "description": "IssueFormField represents a form field", + "type": "object", + "properties": { + "attributes": { + "type": "object", + "additionalProperties": {}, + "x-go-name": "Attributes" + }, + "id": { + "type": "string", + "x-go-name": "ID" + }, + "type": { + "$ref": "#/definitions/IssueFormFieldType" + }, + "validations": { + "type": "object", + "additionalProperties": {}, + "x-go-name": "Validations" + }, + "visible": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueFormFieldVisible" + }, + "x-go-name": "Visible" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueFormFieldType": { + "type": "string", + "title": "IssueFormFieldType defines issue form field type, can be \"markdown\", \"textarea\", \"input\", \"dropdown\" or \"checkboxes\"", + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueFormFieldVisible": { + "description": "IssueFormFieldVisible defines issue form field visible", + "type": "string", + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueLabelsOption": { + "description": "IssueLabelsOption a collection of labels", + "type": "object", + "properties": { + "labels": { + "description": "Labels can be a list of integers representing label IDs\nor a list of strings representing label names", + "type": "array", + "items": {}, + "x-go-name": "Labels" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueMeta": { + "description": "IssueMeta basic issue information", + "type": "object", + "properties": { + "index": { + "type": "integer", + "format": "int64", + "x-go-name": "Index" + }, + "owner": { + "type": "string", + "x-go-name": "Owner" + }, + "repo": { + "type": "string", + "x-go-name": "Name" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueTemplate": { + "description": "IssueTemplate represents an issue template for a repository", + "type": "object", + "properties": { + "about": { + "type": "string", + "x-go-name": "About" + }, + "body": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueFormField" + }, + "x-go-name": "Fields" + }, + "content": { + "type": "string", + "x-go-name": "Content" + }, + "file_name": { + "type": "string", + "x-go-name": "FileName" + }, + "labels": { + "$ref": "#/definitions/IssueTemplateLabels" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "ref": { + "type": "string", + "x-go-name": "Ref" + }, + "title": { + "type": "string", + "x-go-name": "Title" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "IssueTemplateLabels": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Label": { + "description": "Label a label to an issue or a pr", + "type": "object", + "properties": { + "color": { + "type": "string", + "x-go-name": "Color", + "example": "00aabb" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "exclusive": { + "type": "boolean", + "x-go-name": "Exclusive", + "example": false + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "is_archived": { + "type": "boolean", + "x-go-name": "IsArchived", + "example": false + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "LabelTemplate": { + "description": "LabelTemplate info of a Label template", + "type": "object", + "properties": { + "color": { + "type": "string", + "x-go-name": "Color", + "example": "00aabb" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "exclusive": { + "type": "boolean", + "x-go-name": "Exclusive", + "example": false + }, + "name": { + "type": "string", + "x-go-name": "Name" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "LicenseTemplateInfo": { + "description": "LicensesInfo contains information about a License", + "type": "object", + "properties": { + "body": { + "type": "string", + "x-go-name": "Body" + }, + "implementation": { + "type": "string", + "x-go-name": "Implementation" + }, + "key": { + "type": "string", + "x-go-name": "Key" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "LicensesTemplateListEntry": { + "description": "LicensesListEntry is used for the API", + "type": "object", + "properties": { + "key": { + "type": "string", + "x-go-name": "Key" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "MarkdownOption": { + "description": "MarkdownOption markdown options", + "type": "object", + "properties": { + "Context": { + "description": "URL path for rendering issue, media and file links\nExpected format: /subpath/{user}/{repo}/src/{branch, commit, tag}/{identifier/path}/{file/dir}\n\nin: body", + "type": "string" + }, + "Mode": { + "description": "Mode to render (comment, gfm, markdown)\n\nin: body", + "type": "string" + }, + "Text": { + "description": "Text markdown to render\n\nin: body", + "type": "string" + }, + "Wiki": { + "description": "Is it a wiki page ?\n\nin: body", + "type": "boolean" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "MarkupOption": { + "description": "MarkupOption markup options", + "type": "object", + "properties": { + "Context": { + "description": "URL path for rendering issue, media and file links\nExpected format: /subpath/{user}/{repo}/src/{branch, commit, tag}/{identifier/path}/{file/dir}\n\nin: body", + "type": "string" + }, + "FilePath": { + "description": "File path for detecting extension in file mode\n\nin: body", + "type": "string" + }, + "Mode": { + "description": "Mode to render (comment, gfm, markdown, file)\n\nin: body", + "type": "string" + }, + "Text": { + "description": "Text markup to render\n\nin: body", + "type": "string" + }, + "Wiki": { + "description": "Is it a wiki page ?\n\nin: body", + "type": "boolean" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "MergePullRequestOption": { + "description": "MergePullRequestForm form for merging Pull Request", + "type": "object", + "required": [ + "Do" + ], + "properties": { + "Do": { + "type": "string", + "enum": [ + "merge", + "rebase", + "rebase-merge", + "squash", + "fast-forward-only", + "manually-merged" + ] + }, + "MergeCommitID": { + "type": "string" + }, + "MergeMessageField": { + "type": "string" + }, + "MergeTitleField": { + "type": "string" + }, + "delete_branch_after_merge": { + "type": "boolean", + "x-go-name": "DeleteBranchAfterMerge" + }, + "force_merge": { + "type": "boolean", + "x-go-name": "ForceMerge" + }, + "head_commit_id": { + "type": "string", + "x-go-name": "HeadCommitID" + }, + "merge_when_checks_succeed": { + "type": "boolean", + "x-go-name": "MergeWhenChecksSucceed" + } + }, + "x-go-name": "MergePullRequestForm", + "x-go-package": "code.gitea.io/gitea/services/forms" + }, + "MigrateRepoOptions": { + "description": "MigrateRepoOptions options for migrating repository's\nthis is used to interact with api v1", + "type": "object", + "required": [ + "clone_addr", + "repo_name" + ], + "properties": { + "auth_password": { + "type": "string", + "x-go-name": "AuthPassword" + }, + "auth_token": { + "type": "string", + "x-go-name": "AuthToken" + }, + "auth_username": { + "type": "string", + "x-go-name": "AuthUsername" + }, + "clone_addr": { + "type": "string", + "x-go-name": "CloneAddr" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "issues": { + "type": "boolean", + "x-go-name": "Issues" + }, + "labels": { + "type": "boolean", + "x-go-name": "Labels" + }, + "lfs": { + "type": "boolean", + "x-go-name": "LFS" + }, + "lfs_endpoint": { + "type": "string", + "x-go-name": "LFSEndpoint" + }, + "milestones": { + "type": "boolean", + "x-go-name": "Milestones" + }, + "mirror": { + "type": "boolean", + "x-go-name": "Mirror" + }, + "mirror_interval": { + "type": "string", + "x-go-name": "MirrorInterval" + }, + "private": { + "type": "boolean", + "x-go-name": "Private" + }, + "pull_requests": { + "type": "boolean", + "x-go-name": "PullRequests" + }, + "releases": { + "type": "boolean", + "x-go-name": "Releases" + }, + "repo_name": { + "type": "string", + "x-go-name": "RepoName" + }, + "repo_owner": { + "description": "Name of User or Organisation who will own Repo after migration", + "type": "string", + "x-go-name": "RepoOwner" + }, + "service": { + "type": "string", + "enum": [ + "git", + "github", + "gitea", + "gitlab", + "gogs", + "onedev", + "gitbucket", + "codebase" + ], + "x-go-name": "Service" + }, + "uid": { + "description": "deprecated (only for backwards compatibility)", + "type": "integer", + "format": "int64", + "x-go-name": "RepoOwnerID" + }, + "wiki": { + "type": "boolean", + "x-go-name": "Wiki" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Milestone": { + "description": "Milestone milestone is a collection of issues on one repository", + "type": "object", + "properties": { + "closed_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Closed" + }, + "closed_issues": { + "type": "integer", + "format": "int64", + "x-go-name": "ClosedIssues" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "due_on": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "open_issues": { + "type": "integer", + "format": "int64", + "x-go-name": "OpenIssues" + }, + "state": { + "$ref": "#/definitions/StateType" + }, + "title": { + "type": "string", + "x-go-name": "Title" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "NewIssuePinsAllowed": { + "description": "NewIssuePinsAllowed represents an API response that says if new Issue Pins are allowed", + "type": "object", + "properties": { + "issues": { + "type": "boolean", + "x-go-name": "Issues" + }, + "pull_requests": { + "type": "boolean", + "x-go-name": "PullRequests" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "NodeInfo": { + "description": "NodeInfo contains standardized way of exposing metadata about a server running one of the distributed social networks", + "type": "object", + "properties": { + "metadata": { + "type": "object", + "x-go-name": "Metadata" + }, + "openRegistrations": { + "type": "boolean", + "x-go-name": "OpenRegistrations" + }, + "protocols": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Protocols" + }, + "services": { + "$ref": "#/definitions/NodeInfoServices" + }, + "software": { + "$ref": "#/definitions/NodeInfoSoftware" + }, + "usage": { + "$ref": "#/definitions/NodeInfoUsage" + }, + "version": { + "type": "string", + "x-go-name": "Version" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "NodeInfoServices": { + "description": "NodeInfoServices contains the third party sites this server can connect to via their application API", + "type": "object", + "properties": { + "inbound": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Inbound" + }, + "outbound": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Outbound" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "NodeInfoSoftware": { + "description": "NodeInfoSoftware contains Metadata about server software in use", + "type": "object", + "properties": { + "homepage": { + "type": "string", + "x-go-name": "Homepage" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "repository": { + "type": "string", + "x-go-name": "Repository" + }, + "version": { + "type": "string", + "x-go-name": "Version" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "NodeInfoUsage": { + "description": "NodeInfoUsage contains usage statistics for this server", + "type": "object", + "properties": { + "localComments": { + "type": "integer", + "format": "int64", + "x-go-name": "LocalComments" + }, + "localPosts": { + "type": "integer", + "format": "int64", + "x-go-name": "LocalPosts" + }, + "users": { + "$ref": "#/definitions/NodeInfoUsageUsers" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "NodeInfoUsageUsers": { + "description": "NodeInfoUsageUsers contains statistics about the users of this server", + "type": "object", + "properties": { + "activeHalfyear": { + "type": "integer", + "format": "int64", + "x-go-name": "ActiveHalfyear" + }, + "activeMonth": { + "type": "integer", + "format": "int64", + "x-go-name": "ActiveMonth" + }, + "total": { + "type": "integer", + "format": "int64", + "x-go-name": "Total" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Note": { + "description": "Note contains information related to a git note", + "type": "object", + "properties": { + "commit": { + "$ref": "#/definitions/Commit" + }, + "message": { + "type": "string", + "x-go-name": "Message" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "NotificationCount": { + "description": "NotificationCount number of unread notifications", + "type": "object", + "properties": { + "new": { + "type": "integer", + "format": "int64", + "x-go-name": "New" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "NotificationSubject": { + "description": "NotificationSubject contains the notification subject (Issue/Pull/Commit)", + "type": "object", + "properties": { + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "latest_comment_html_url": { + "type": "string", + "x-go-name": "LatestCommentHTMLURL" + }, + "latest_comment_url": { + "type": "string", + "x-go-name": "LatestCommentURL" + }, + "state": { + "$ref": "#/definitions/StateType" + }, + "title": { + "type": "string", + "x-go-name": "Title" + }, + "type": { + "$ref": "#/definitions/NotifySubjectType" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "NotificationThread": { + "description": "NotificationThread expose Notification on API", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "pinned": { + "type": "boolean", + "x-go-name": "Pinned" + }, + "repository": { + "$ref": "#/definitions/Repository" + }, + "subject": { + "$ref": "#/definitions/NotificationSubject" + }, + "unread": { + "type": "boolean", + "x-go-name": "Unread" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "UpdatedAt" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "NotifySubjectType": { + "description": "NotifySubjectType represent type of notification subject", + "type": "string", + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "OAuth2Application": { + "type": "object", + "title": "OAuth2Application represents an OAuth2 application.", + "properties": { + "client_id": { + "type": "string", + "x-go-name": "ClientID" + }, + "client_secret": { + "type": "string", + "x-go-name": "ClientSecret" + }, + "confidential_client": { + "type": "boolean", + "x-go-name": "ConfidentialClient" + }, + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "redirect_uris": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "RedirectURIs" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Organization": { + "description": "Organization represents an organization", + "type": "object", + "properties": { + "avatar_url": { + "type": "string", + "x-go-name": "AvatarURL" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "email": { + "type": "string", + "x-go-name": "Email" + }, + "full_name": { + "type": "string", + "x-go-name": "FullName" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "location": { + "type": "string", + "x-go-name": "Location" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "repo_admin_change_team_access": { + "type": "boolean", + "x-go-name": "RepoAdminChangeTeamAccess" + }, + "username": { + "description": "deprecated", + "type": "string", + "x-go-name": "UserName" + }, + "visibility": { + "type": "string", + "x-go-name": "Visibility" + }, + "website": { + "type": "string", + "x-go-name": "Website" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "OrganizationPermissions": { + "description": "OrganizationPermissions list different users permissions on an organization", + "type": "object", + "properties": { + "can_create_repository": { + "type": "boolean", + "x-go-name": "CanCreateRepository" + }, + "can_read": { + "type": "boolean", + "x-go-name": "CanRead" + }, + "can_write": { + "type": "boolean", + "x-go-name": "CanWrite" + }, + "is_admin": { + "type": "boolean", + "x-go-name": "IsAdmin" + }, + "is_owner": { + "type": "boolean", + "x-go-name": "IsOwner" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PRBranchInfo": { + "description": "PRBranchInfo information about a branch", + "type": "object", + "properties": { + "label": { + "type": "string", + "x-go-name": "Name" + }, + "ref": { + "type": "string", + "x-go-name": "Ref" + }, + "repo": { + "$ref": "#/definitions/Repository" + }, + "repo_id": { + "type": "integer", + "format": "int64", + "x-go-name": "RepoID" + }, + "sha": { + "type": "string", + "x-go-name": "Sha" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Package": { + "description": "Package represents a package", + "type": "object", + "properties": { + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "CreatedAt" + }, + "creator": { + "$ref": "#/definitions/User" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "owner": { + "$ref": "#/definitions/User" + }, + "repository": { + "$ref": "#/definitions/Repository" + }, + "type": { + "type": "string", + "x-go-name": "Type" + }, + "version": { + "type": "string", + "x-go-name": "Version" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PackageFile": { + "description": "PackageFile represents a package file", + "type": "object", + "properties": { + "Size": { + "type": "integer", + "format": "int64" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "md5": { + "type": "string", + "x-go-name": "HashMD5" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "sha1": { + "type": "string", + "x-go-name": "HashSHA1" + }, + "sha256": { + "type": "string", + "x-go-name": "HashSHA256" + }, + "sha512": { + "type": "string", + "x-go-name": "HashSHA512" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PayloadCommit": { + "description": "PayloadCommit represents a commit", + "type": "object", + "properties": { + "added": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Added" + }, + "author": { + "$ref": "#/definitions/PayloadUser" + }, + "committer": { + "$ref": "#/definitions/PayloadUser" + }, + "id": { + "description": "sha1 hash of the commit", + "type": "string", + "x-go-name": "ID" + }, + "message": { + "type": "string", + "x-go-name": "Message" + }, + "modified": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Modified" + }, + "removed": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Removed" + }, + "timestamp": { + "type": "string", + "format": "date-time", + "x-go-name": "Timestamp" + }, + "url": { + "type": "string", + "x-go-name": "URL" + }, + "verification": { + "$ref": "#/definitions/PayloadCommitVerification" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PayloadCommitVerification": { + "description": "PayloadCommitVerification represents the GPG verification of a commit", + "type": "object", + "properties": { + "payload": { + "type": "string", + "x-go-name": "Payload" + }, + "reason": { + "type": "string", + "x-go-name": "Reason" + }, + "signature": { + "type": "string", + "x-go-name": "Signature" + }, + "signer": { + "$ref": "#/definitions/PayloadUser" + }, + "verified": { + "type": "boolean", + "x-go-name": "Verified" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PayloadUser": { + "description": "PayloadUser represents the author or committer of a commit", + "type": "object", + "properties": { + "email": { + "type": "string", + "format": "email", + "x-go-name": "Email" + }, + "name": { + "description": "Full name of the commit author", + "type": "string", + "x-go-name": "Name" + }, + "username": { + "type": "string", + "x-go-name": "UserName" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Permission": { + "description": "Permission represents a set of permissions", + "type": "object", + "properties": { + "admin": { + "type": "boolean", + "x-go-name": "Admin" + }, + "pull": { + "type": "boolean", + "x-go-name": "Pull" + }, + "push": { + "type": "boolean", + "x-go-name": "Push" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PublicKey": { + "description": "PublicKey publickey is a user key to push code to repository", + "type": "object", + "properties": { + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "fingerprint": { + "type": "string", + "x-go-name": "Fingerprint" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "key": { + "type": "string", + "x-go-name": "Key" + }, + "key_type": { + "type": "string", + "x-go-name": "KeyType" + }, + "read_only": { + "type": "boolean", + "x-go-name": "ReadOnly" + }, + "title": { + "type": "string", + "x-go-name": "Title" + }, + "url": { + "type": "string", + "x-go-name": "URL" + }, + "user": { + "$ref": "#/definitions/User" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PullRequest": { + "description": "PullRequest represents a pull request", + "type": "object", + "properties": { + "additions": { + "type": "integer", + "format": "int64", + "x-go-name": "Additions" + }, + "allow_maintainer_edit": { + "type": "boolean", + "x-go-name": "AllowMaintainerEdit" + }, + "assignee": { + "$ref": "#/definitions/User" + }, + "assignees": { + "type": "array", + "items": { + "$ref": "#/definitions/User" + }, + "x-go-name": "Assignees" + }, + "base": { + "$ref": "#/definitions/PRBranchInfo" + }, + "body": { + "type": "string", + "x-go-name": "Body" + }, + "changed_files": { + "type": "integer", + "format": "int64", + "x-go-name": "ChangedFiles" + }, + "closed_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Closed" + }, + "comments": { + "type": "integer", + "format": "int64", + "x-go-name": "Comments" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "deletions": { + "type": "integer", + "format": "int64", + "x-go-name": "Deletions" + }, + "diff_url": { + "type": "string", + "x-go-name": "DiffURL" + }, + "draft": { + "type": "boolean", + "x-go-name": "Draft" + }, + "due_date": { + "type": "string", + "format": "date-time", + "x-go-name": "Deadline" + }, + "head": { + "$ref": "#/definitions/PRBranchInfo" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "is_locked": { + "type": "boolean", + "x-go-name": "IsLocked" + }, + "labels": { + "type": "array", + "items": { + "$ref": "#/definitions/Label" + }, + "x-go-name": "Labels" + }, + "merge_base": { + "type": "string", + "x-go-name": "MergeBase" + }, + "merge_commit_sha": { + "type": "string", + "x-go-name": "MergedCommitID" + }, + "mergeable": { + "type": "boolean", + "x-go-name": "Mergeable" + }, + "merged": { + "type": "boolean", + "x-go-name": "HasMerged" + }, + "merged_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Merged" + }, + "merged_by": { + "$ref": "#/definitions/User" + }, + "milestone": { + "$ref": "#/definitions/Milestone" + }, + "number": { + "type": "integer", + "format": "int64", + "x-go-name": "Index" + }, + "patch_url": { + "type": "string", + "x-go-name": "PatchURL" + }, + "pin_order": { + "type": "integer", + "format": "int64", + "x-go-name": "PinOrder" + }, + "requested_reviewers": { + "type": "array", + "items": { + "$ref": "#/definitions/User" + }, + "x-go-name": "RequestedReviewers" + }, + "review_comments": { + "description": "number of review comments made on the diff of a PR review (not including comments on commits or issues in a PR)", + "type": "integer", + "format": "int64", + "x-go-name": "ReviewComments" + }, + "state": { + "$ref": "#/definitions/StateType" + }, + "title": { + "type": "string", + "x-go-name": "Title" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + }, + "url": { + "type": "string", + "x-go-name": "URL" + }, + "user": { + "$ref": "#/definitions/User" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PullRequestMeta": { + "description": "PullRequestMeta PR info if an issue is a PR", + "type": "object", + "properties": { + "draft": { + "type": "boolean", + "x-go-name": "IsWorkInProgress" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "merged": { + "type": "boolean", + "x-go-name": "HasMerged" + }, + "merged_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Merged" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PullReview": { + "description": "PullReview represents a pull request review", + "type": "object", + "properties": { + "body": { + "type": "string", + "x-go-name": "Body" + }, + "comments_count": { + "type": "integer", + "format": "int64", + "x-go-name": "CodeCommentsCount" + }, + "commit_id": { + "type": "string", + "x-go-name": "CommitID" + }, + "dismissed": { + "type": "boolean", + "x-go-name": "Dismissed" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "official": { + "type": "boolean", + "x-go-name": "Official" + }, + "pull_request_url": { + "type": "string", + "x-go-name": "HTMLPullURL" + }, + "stale": { + "type": "boolean", + "x-go-name": "Stale" + }, + "state": { + "$ref": "#/definitions/ReviewStateType" + }, + "submitted_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Submitted" + }, + "team": { + "$ref": "#/definitions/Team" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + }, + "user": { + "$ref": "#/definitions/User" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PullReviewComment": { + "description": "PullReviewComment represents a comment on a pull request review", + "type": "object", + "properties": { + "body": { + "type": "string", + "x-go-name": "Body" + }, + "commit_id": { + "type": "string", + "x-go-name": "CommitID" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "diff_hunk": { + "type": "string", + "x-go-name": "DiffHunk" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "original_commit_id": { + "type": "string", + "x-go-name": "OrigCommitID" + }, + "original_position": { + "type": "integer", + "format": "uint64", + "x-go-name": "OldLineNum" + }, + "path": { + "type": "string", + "x-go-name": "Path" + }, + "position": { + "type": "integer", + "format": "uint64", + "x-go-name": "LineNum" + }, + "pull_request_review_id": { + "type": "integer", + "format": "int64", + "x-go-name": "ReviewID" + }, + "pull_request_url": { + "type": "string", + "x-go-name": "HTMLPullURL" + }, + "resolver": { + "$ref": "#/definitions/User" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + }, + "user": { + "$ref": "#/definitions/User" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PullReviewRequestOptions": { + "description": "PullReviewRequestOptions are options to add or remove pull review requests", + "type": "object", + "properties": { + "reviewers": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Reviewers" + }, + "team_reviewers": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "TeamReviewers" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "PushMirror": { + "description": "PushMirror represents information of a push mirror", + "type": "object", + "properties": { + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "CreatedUnix" + }, + "interval": { + "type": "string", + "x-go-name": "Interval" + }, + "last_error": { + "type": "string", + "x-go-name": "LastError" + }, + "last_update": { + "type": "string", + "format": "date-time", + "x-go-name": "LastUpdateUnix" + }, + "remote_address": { + "type": "string", + "x-go-name": "RemoteAddress" + }, + "remote_name": { + "type": "string", + "x-go-name": "RemoteName" + }, + "repo_name": { + "type": "string", + "x-go-name": "RepoName" + }, + "sync_on_commit": { + "type": "boolean", + "x-go-name": "SyncOnCommit" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Reaction": { + "description": "Reaction contain one reaction", + "type": "object", + "properties": { + "content": { + "type": "string", + "x-go-name": "Reaction" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "user": { + "$ref": "#/definitions/User" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Reference": { + "type": "object", + "title": "Reference represents a Git reference.", + "properties": { + "object": { + "$ref": "#/definitions/GitObject" + }, + "ref": { + "type": "string", + "x-go-name": "Ref" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Release": { + "description": "Release represents a repository release", + "type": "object", + "properties": { + "assets": { + "type": "array", + "items": { + "$ref": "#/definitions/Attachment" + }, + "x-go-name": "Attachments" + }, + "author": { + "$ref": "#/definitions/User" + }, + "body": { + "type": "string", + "x-go-name": "Note" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "CreatedAt" + }, + "draft": { + "type": "boolean", + "x-go-name": "IsDraft" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "name": { + "type": "string", + "x-go-name": "Title" + }, + "prerelease": { + "type": "boolean", + "x-go-name": "IsPrerelease" + }, + "published_at": { + "type": "string", + "format": "date-time", + "x-go-name": "PublishedAt" + }, + "tag_name": { + "type": "string", + "x-go-name": "TagName" + }, + "tarball_url": { + "type": "string", + "x-go-name": "TarURL" + }, + "target_commitish": { + "type": "string", + "x-go-name": "Target" + }, + "upload_url": { + "type": "string", + "x-go-name": "UploadURL" + }, + "url": { + "type": "string", + "x-go-name": "URL" + }, + "zipball_url": { + "type": "string", + "x-go-name": "ZipURL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "RenameUserOption": { + "description": "RenameUserOption options when renaming a user", + "type": "object", + "required": [ + "new_username" + ], + "properties": { + "new_username": { + "description": "New username for this user. This name cannot be in use yet by any other user.", + "type": "string", + "uniqueItems": true, + "x-go-name": "NewName" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "RepoCollaboratorPermission": { + "description": "RepoCollaboratorPermission to get repository permission for a collaborator", + "type": "object", + "properties": { + "permission": { + "type": "string", + "x-go-name": "Permission" + }, + "role_name": { + "type": "string", + "x-go-name": "RoleName" + }, + "user": { + "$ref": "#/definitions/User" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "RepoCommit": { + "type": "object", + "title": "RepoCommit contains information of a commit in the context of a repository.", + "properties": { + "author": { + "$ref": "#/definitions/CommitUser" + }, + "committer": { + "$ref": "#/definitions/CommitUser" + }, + "message": { + "type": "string", + "x-go-name": "Message" + }, + "tree": { + "$ref": "#/definitions/CommitMeta" + }, + "url": { + "type": "string", + "x-go-name": "URL" + }, + "verification": { + "$ref": "#/definitions/PayloadCommitVerification" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "RepoTopicOptions": { + "description": "RepoTopicOptions a collection of repo topic names", + "type": "object", + "properties": { + "topics": { + "description": "list of topic names", + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Topics" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "RepoTransfer": { + "description": "RepoTransfer represents a pending repo transfer", + "type": "object", + "properties": { + "doer": { + "$ref": "#/definitions/User" + }, + "recipient": { + "$ref": "#/definitions/User" + }, + "teams": { + "type": "array", + "items": { + "$ref": "#/definitions/Team" + }, + "x-go-name": "Teams" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Repository": { + "description": "Repository represents a repository", + "type": "object", + "properties": { + "allow_fast_forward_only_merge": { + "type": "boolean", + "x-go-name": "AllowFastForwardOnly" + }, + "allow_merge_commits": { + "type": "boolean", + "x-go-name": "AllowMerge" + }, + "allow_rebase": { + "type": "boolean", + "x-go-name": "AllowRebase" + }, + "allow_rebase_explicit": { + "type": "boolean", + "x-go-name": "AllowRebaseMerge" + }, + "allow_rebase_update": { + "type": "boolean", + "x-go-name": "AllowRebaseUpdate" + }, + "allow_squash_merge": { + "type": "boolean", + "x-go-name": "AllowSquash" + }, + "archived": { + "type": "boolean", + "x-go-name": "Archived" + }, + "archived_at": { + "type": "string", + "format": "date-time", + "x-go-name": "ArchivedAt" + }, + "avatar_url": { + "type": "string", + "x-go-name": "AvatarURL" + }, + "clone_url": { + "type": "string", + "x-go-name": "CloneURL" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "default_allow_maintainer_edit": { + "type": "boolean", + "x-go-name": "DefaultAllowMaintainerEdit" + }, + "default_branch": { + "type": "string", + "x-go-name": "DefaultBranch" + }, + "default_delete_branch_after_merge": { + "type": "boolean", + "x-go-name": "DefaultDeleteBranchAfterMerge" + }, + "default_merge_style": { + "type": "string", + "x-go-name": "DefaultMergeStyle" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "empty": { + "type": "boolean", + "x-go-name": "Empty" + }, + "external_tracker": { + "$ref": "#/definitions/ExternalTracker" + }, + "external_wiki": { + "$ref": "#/definitions/ExternalWiki" + }, + "fork": { + "type": "boolean", + "x-go-name": "Fork" + }, + "forks_count": { + "type": "integer", + "format": "int64", + "x-go-name": "Forks" + }, + "full_name": { + "type": "string", + "x-go-name": "FullName" + }, + "has_actions": { + "type": "boolean", + "x-go-name": "HasActions" + }, + "has_issues": { + "type": "boolean", + "x-go-name": "HasIssues" + }, + "has_packages": { + "type": "boolean", + "x-go-name": "HasPackages" + }, + "has_projects": { + "type": "boolean", + "x-go-name": "HasProjects" + }, + "has_pull_requests": { + "type": "boolean", + "x-go-name": "HasPullRequests" + }, + "has_releases": { + "type": "boolean", + "x-go-name": "HasReleases" + }, + "has_wiki": { + "type": "boolean", + "x-go-name": "HasWiki" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "ignore_whitespace_conflicts": { + "type": "boolean", + "x-go-name": "IgnoreWhitespaceConflicts" + }, + "internal": { + "type": "boolean", + "x-go-name": "Internal" + }, + "internal_tracker": { + "$ref": "#/definitions/InternalTracker" + }, + "language": { + "type": "string", + "x-go-name": "Language" + }, + "languages_url": { + "type": "string", + "x-go-name": "LanguagesURL" + }, + "link": { + "type": "string", + "x-go-name": "Link" + }, + "mirror": { + "type": "boolean", + "x-go-name": "Mirror" + }, + "mirror_interval": { + "type": "string", + "x-go-name": "MirrorInterval" + }, + "mirror_updated": { + "type": "string", + "format": "date-time", + "x-go-name": "MirrorUpdated" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "object_format_name": { + "description": "ObjectFormatName of the underlying git repository", + "type": "string", + "enum": [ + "sha1", + "sha256" + ], + "x-go-name": "ObjectFormatName" + }, + "open_issues_count": { + "type": "integer", + "format": "int64", + "x-go-name": "OpenIssues" + }, + "open_pr_counter": { + "type": "integer", + "format": "int64", + "x-go-name": "OpenPulls" + }, + "original_url": { + "type": "string", + "x-go-name": "OriginalURL" + }, + "owner": { + "$ref": "#/definitions/User" + }, + "parent": { + "$ref": "#/definitions/Repository" + }, + "permissions": { + "$ref": "#/definitions/Permission" + }, + "private": { + "type": "boolean", + "x-go-name": "Private" + }, + "projects_mode": { + "type": "string", + "x-go-name": "ProjectsMode" + }, + "release_counter": { + "type": "integer", + "format": "int64", + "x-go-name": "Releases" + }, + "repo_transfer": { + "$ref": "#/definitions/RepoTransfer" + }, + "size": { + "type": "integer", + "format": "int64", + "x-go-name": "Size" + }, + "ssh_url": { + "type": "string", + "x-go-name": "SSHURL" + }, + "stars_count": { + "type": "integer", + "format": "int64", + "x-go-name": "Stars" + }, + "template": { + "type": "boolean", + "x-go-name": "Template" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + }, + "url": { + "type": "string", + "x-go-name": "URL" + }, + "watchers_count": { + "type": "integer", + "format": "int64", + "x-go-name": "Watchers" + }, + "website": { + "type": "string", + "x-go-name": "Website" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "RepositoryMeta": { + "description": "RepositoryMeta basic repository information", + "type": "object", + "properties": { + "full_name": { + "type": "string", + "x-go-name": "FullName" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "owner": { + "type": "string", + "x-go-name": "Owner" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "ReviewStateType": { + "description": "ReviewStateType review state type", + "type": "string", + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "SearchResults": { + "description": "SearchResults results of a successful search", + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/definitions/Repository" + }, + "x-go-name": "Data" + }, + "ok": { + "type": "boolean", + "x-go-name": "OK" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Secret": { + "description": "Secret represents a secret", + "type": "object", + "properties": { + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "name": { + "description": "the secret's name", + "type": "string", + "x-go-name": "Name" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "ServerVersion": { + "description": "ServerVersion wraps the version of the server", + "type": "object", + "properties": { + "version": { + "type": "string", + "x-go-name": "Version" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "StateType": { + "description": "StateType issue state type", + "type": "string", + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "StopWatch": { + "description": "StopWatch represent a running stopwatch", + "type": "object", + "properties": { + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "duration": { + "type": "string", + "x-go-name": "Duration" + }, + "issue_index": { + "type": "integer", + "format": "int64", + "x-go-name": "IssueIndex" + }, + "issue_title": { + "type": "string", + "x-go-name": "IssueTitle" + }, + "repo_name": { + "type": "string", + "x-go-name": "RepoName" + }, + "repo_owner_name": { + "type": "string", + "x-go-name": "RepoOwnerName" + }, + "seconds": { + "type": "integer", + "format": "int64", + "x-go-name": "Seconds" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "SubmitPullReviewOptions": { + "description": "SubmitPullReviewOptions are options to submit a pending pull review", + "type": "object", + "properties": { + "body": { + "type": "string", + "x-go-name": "Body" + }, + "event": { + "$ref": "#/definitions/ReviewStateType" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Tag": { + "description": "Tag represents a repository tag", + "type": "object", + "properties": { + "commit": { + "$ref": "#/definitions/CommitMeta" + }, + "id": { + "type": "string", + "x-go-name": "ID" + }, + "message": { + "type": "string", + "x-go-name": "Message" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "tarball_url": { + "type": "string", + "x-go-name": "TarballURL" + }, + "zipball_url": { + "type": "string", + "x-go-name": "ZipballURL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "Team": { + "description": "Team represents a team in an organization", + "type": "object", + "properties": { + "can_create_org_repo": { + "type": "boolean", + "x-go-name": "CanCreateOrgRepo" + }, + "description": { + "type": "string", + "x-go-name": "Description" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "includes_all_repositories": { + "type": "boolean", + "x-go-name": "IncludesAllRepositories" + }, + "name": { + "type": "string", + "x-go-name": "Name" + }, + "organization": { + "$ref": "#/definitions/Organization" + }, + "permission": { + "type": "string", + "enum": [ + "none", + "read", + "write", + "admin", + "owner" + ], + "x-go-name": "Permission" + }, + "units": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "Units", + "example": [ + "repo.code", + "repo.issues", + "repo.ext_issues", + "repo.wiki", + "repo.pulls", + "repo.releases", + "repo.projects", + "repo.ext_wiki" + ] + }, + "units_map": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-go-name": "UnitsMap", + "example": { + "repo.code": "read", + "repo.ext_issues": "none", + "repo.ext_wiki": "none", + "repo.issues": "write", + "repo.projects": "none", + "repo.pulls": "owner", + "repo.releases": "none", + "repo.wiki": "admin" + } + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "TimeStamp": { + "description": "TimeStamp defines a timestamp", + "type": "integer", + "format": "int64", + "x-go-package": "code.gitea.io/gitea/modules/timeutil" + }, + "TimelineComment": { + "description": "TimelineComment represents a timeline comment (comment of any type) on a commit or issue", + "type": "object", + "properties": { + "assignee": { + "$ref": "#/definitions/User" + }, + "assignee_team": { + "$ref": "#/definitions/Team" + }, + "body": { + "type": "string", + "x-go-name": "Body" + }, + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "dependent_issue": { + "$ref": "#/definitions/Issue" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "issue_url": { + "type": "string", + "x-go-name": "IssueURL" + }, + "label": { + "$ref": "#/definitions/Label" + }, + "milestone": { + "$ref": "#/definitions/Milestone" + }, + "new_ref": { + "type": "string", + "x-go-name": "NewRef" + }, + "new_title": { + "type": "string", + "x-go-name": "NewTitle" + }, + "old_milestone": { + "$ref": "#/definitions/Milestone" + }, + "old_project_id": { + "type": "integer", + "format": "int64", + "x-go-name": "OldProjectID" + }, + "old_ref": { + "type": "string", + "x-go-name": "OldRef" + }, + "old_title": { + "type": "string", + "x-go-name": "OldTitle" + }, + "project_id": { + "type": "integer", + "format": "int64", + "x-go-name": "ProjectID" + }, + "pull_request_url": { + "type": "string", + "x-go-name": "PRURL" + }, + "ref_action": { + "type": "string", + "x-go-name": "RefAction" + }, + "ref_comment": { + "$ref": "#/definitions/Comment" + }, + "ref_commit_sha": { + "description": "commit SHA where issue/PR was referenced", + "type": "string", + "x-go-name": "RefCommitSHA" + }, + "ref_issue": { + "$ref": "#/definitions/Issue" + }, + "removed_assignee": { + "description": "whether the assignees were removed or added", + "type": "boolean", + "x-go-name": "RemovedAssignee" + }, + "resolve_doer": { + "$ref": "#/definitions/User" + }, + "review_id": { + "type": "integer", + "format": "int64", + "x-go-name": "ReviewID" + }, + "tracked_time": { + "$ref": "#/definitions/TrackedTime" + }, + "type": { + "type": "string", + "x-go-name": "Type" + }, + "updated_at": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + }, + "user": { + "$ref": "#/definitions/User" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "TopicName": { + "description": "TopicName a list of repo topic names", + "type": "object", + "properties": { + "topics": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "TopicNames" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "TopicResponse": { + "description": "TopicResponse for returning topics", + "type": "object", + "properties": { + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "repo_count": { + "type": "integer", + "format": "int64", + "x-go-name": "RepoCount" + }, + "topic_name": { + "type": "string", + "x-go-name": "Name" + }, + "updated": { + "type": "string", + "format": "date-time", + "x-go-name": "Updated" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "TrackedTime": { + "description": "TrackedTime worked time for an issue / pr", + "type": "object", + "properties": { + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "id": { + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "issue": { + "$ref": "#/definitions/Issue" + }, + "issue_id": { + "description": "deprecated (only for backwards compatibility)", + "type": "integer", + "format": "int64", + "x-go-name": "IssueID" + }, + "time": { + "description": "Time in seconds", + "type": "integer", + "format": "int64", + "x-go-name": "Time" + }, + "user_id": { + "description": "deprecated (only for backwards compatibility)", + "type": "integer", + "format": "int64", + "x-go-name": "UserID" + }, + "user_name": { + "type": "string", + "x-go-name": "UserName" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "TransferRepoOption": { + "description": "TransferRepoOption options when transfer a repository's ownership", + "type": "object", + "required": [ + "new_owner" + ], + "properties": { + "new_owner": { + "type": "string", + "x-go-name": "NewOwner" + }, + "team_ids": { + "description": "ID of the team or teams to add to the repository. Teams can only be added to organization-owned repositories.", + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "x-go-name": "TeamIDs" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "UpdateFileOptions": { + "description": "UpdateFileOptions options for updating files\nNote: `author` and `committer` are optional (if only one is given, it will be used for the other, otherwise the authenticated user will be used)", + "type": "object", + "required": [ + "sha", + "content" + ], + "properties": { + "author": { + "$ref": "#/definitions/Identity" + }, + "branch": { + "description": "branch (optional) to base this file from. if not given, the default branch is used", + "type": "string", + "x-go-name": "BranchName" + }, + "committer": { + "$ref": "#/definitions/Identity" + }, + "content": { + "description": "content must be base64 encoded", + "type": "string", + "x-go-name": "ContentBase64" + }, + "dates": { + "$ref": "#/definitions/CommitDateOptions" + }, + "from_path": { + "description": "from_path (optional) is the path of the original file which will be moved/renamed to the path in the URL", + "type": "string", + "x-go-name": "FromPath" + }, + "message": { + "description": "message (optional) for the commit of this file. if not supplied, a default message will be used", + "type": "string", + "x-go-name": "Message" + }, + "new_branch": { + "description": "new_branch (optional) will make a new branch from `branch` before creating the file", + "type": "string", + "x-go-name": "NewBranchName" + }, + "sha": { + "description": "sha is the SHA for the file that already exists", + "type": "string", + "x-go-name": "SHA" + }, + "signoff": { + "description": "Add a Signed-off-by trailer by the committer at the end of the commit log message.", + "type": "boolean", + "x-go-name": "Signoff" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "UpdateRepoAvatarOption": { + "description": "UpdateRepoAvatarUserOption options when updating the repo avatar", + "type": "object", + "properties": { + "image": { + "description": "image must be base64 encoded", + "type": "string", + "x-go-name": "Image" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "UpdateUserAvatarOption": { + "description": "UpdateUserAvatarUserOption options when updating the user avatar", + "type": "object", + "properties": { + "image": { + "description": "image must be base64 encoded", + "type": "string", + "x-go-name": "Image" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "UpdateVariableOption": { + "description": "UpdateVariableOption the option when updating variable", + "type": "object", + "required": [ + "value" + ], + "properties": { + "name": { + "description": "New name for the variable. If the field is empty, the variable name won't be updated.", + "type": "string", + "x-go-name": "Name" + }, + "value": { + "description": "Value of the variable to update", + "type": "string", + "x-go-name": "Value" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "User": { + "description": "User represents a user", + "type": "object", + "properties": { + "active": { + "description": "Is user active", + "type": "boolean", + "x-go-name": "IsActive" + }, + "avatar_url": { + "description": "URL to the user's avatar", + "type": "string", + "x-go-name": "AvatarURL" + }, + "created": { + "type": "string", + "format": "date-time", + "x-go-name": "Created" + }, + "description": { + "description": "the user's description", + "type": "string", + "x-go-name": "Description" + }, + "email": { + "type": "string", + "format": "email", + "x-go-name": "Email" + }, + "followers_count": { + "description": "user counts", + "type": "integer", + "format": "int64", + "x-go-name": "Followers" + }, + "following_count": { + "type": "integer", + "format": "int64", + "x-go-name": "Following" + }, + "full_name": { + "description": "the user's full name", + "type": "string", + "x-go-name": "FullName" + }, + "html_url": { + "description": "URL to the user's gitea page", + "type": "string", + "x-go-name": "HTMLURL" + }, + "id": { + "description": "the user's id", + "type": "integer", + "format": "int64", + "x-go-name": "ID" + }, + "is_admin": { + "description": "Is the user an administrator", + "type": "boolean", + "x-go-name": "IsAdmin" + }, + "language": { + "description": "User locale", + "type": "string", + "x-go-name": "Language" + }, + "last_login": { + "type": "string", + "format": "date-time", + "x-go-name": "LastLogin" + }, + "location": { + "description": "the user's location", + "type": "string", + "x-go-name": "Location" + }, + "login": { + "description": "the user's username", + "type": "string", + "x-go-name": "UserName" + }, + "login_name": { + "description": "the user's authentication sign-in name.", + "type": "string", + "default": "empty", + "x-go-name": "LoginName" + }, + "prohibit_login": { + "description": "Is user login prohibited", + "type": "boolean", + "x-go-name": "ProhibitLogin" + }, + "restricted": { + "description": "Is user restricted", + "type": "boolean", + "x-go-name": "Restricted" + }, + "source_id": { + "description": "The ID of the user's Authentication Source", + "type": "integer", + "format": "int64", + "x-go-name": "SourceID" + }, + "starred_repos_count": { + "type": "integer", + "format": "int64", + "x-go-name": "StarredRepos" + }, + "visibility": { + "description": "User visibility level option: public, limited, private", + "type": "string", + "x-go-name": "Visibility" + }, + "website": { + "description": "the user's website", + "type": "string", + "x-go-name": "Website" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "UserBadgeOption": { + "description": "UserBadgeOption options for link between users and badges", + "type": "object", + "properties": { + "badge_slugs": { + "type": "array", + "items": { + "type": "string" + }, + "x-go-name": "BadgeSlugs", + "example": [ + "badge1", + "badge2" + ] + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "UserHeatmapData": { + "description": "UserHeatmapData represents the data needed to create a heatmap", + "type": "object", + "properties": { + "contributions": { + "type": "integer", + "format": "int64", + "x-go-name": "Contributions" + }, + "timestamp": { + "$ref": "#/definitions/TimeStamp" + } + }, + "x-go-package": "code.gitea.io/gitea/models/activities" + }, + "UserSettings": { + "description": "UserSettings represents user settings", + "type": "object", + "properties": { + "description": { + "type": "string", + "x-go-name": "Description" + }, + "diff_view_style": { + "type": "string", + "x-go-name": "DiffViewStyle" + }, + "full_name": { + "type": "string", + "x-go-name": "FullName" + }, + "hide_activity": { + "type": "boolean", + "x-go-name": "HideActivity" + }, + "hide_email": { + "description": "Privacy", + "type": "boolean", + "x-go-name": "HideEmail" + }, + "language": { + "type": "string", + "x-go-name": "Language" + }, + "location": { + "type": "string", + "x-go-name": "Location" + }, + "theme": { + "type": "string", + "x-go-name": "Theme" + }, + "website": { + "type": "string", + "x-go-name": "Website" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "UserSettingsOptions": { + "description": "UserSettingsOptions represents options to change user settings", + "type": "object", + "properties": { + "description": { + "type": "string", + "x-go-name": "Description" + }, + "diff_view_style": { + "type": "string", + "x-go-name": "DiffViewStyle" + }, + "full_name": { + "type": "string", + "x-go-name": "FullName" + }, + "hide_activity": { + "type": "boolean", + "x-go-name": "HideActivity" + }, + "hide_email": { + "description": "Privacy", + "type": "boolean", + "x-go-name": "HideEmail" + }, + "language": { + "type": "string", + "x-go-name": "Language" + }, + "location": { + "type": "string", + "x-go-name": "Location" + }, + "theme": { + "type": "string", + "x-go-name": "Theme" + }, + "website": { + "type": "string", + "x-go-name": "Website" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "WatchInfo": { + "description": "WatchInfo represents an API watch status of one repository", + "type": "object", + "properties": { + "created_at": { + "type": "string", + "format": "date-time", + "x-go-name": "CreatedAt" + }, + "ignored": { + "type": "boolean", + "x-go-name": "Ignored" + }, + "reason": { + "x-go-name": "Reason" + }, + "repository_url": { + "type": "string", + "x-go-name": "RepositoryURL" + }, + "subscribed": { + "type": "boolean", + "x-go-name": "Subscribed" + }, + "url": { + "type": "string", + "x-go-name": "URL" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "WikiCommit": { + "description": "WikiCommit page commit/revision", + "type": "object", + "properties": { + "author": { + "$ref": "#/definitions/CommitUser" + }, + "commiter": { + "$ref": "#/definitions/CommitUser" + }, + "message": { + "type": "string", + "x-go-name": "Message" + }, + "sha": { + "type": "string", + "x-go-name": "ID" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "WikiCommitList": { + "description": "WikiCommitList commit/revision list", + "type": "object", + "properties": { + "commits": { + "type": "array", + "items": { + "$ref": "#/definitions/WikiCommit" + }, + "x-go-name": "WikiCommits" + }, + "count": { + "type": "integer", + "format": "int64", + "x-go-name": "Count" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "WikiPage": { + "description": "WikiPage a wiki page", + "type": "object", + "properties": { + "commit_count": { + "type": "integer", + "format": "int64", + "x-go-name": "CommitCount" + }, + "content_base64": { + "description": "Page content, base64 encoded", + "type": "string", + "x-go-name": "ContentBase64" + }, + "footer": { + "type": "string", + "x-go-name": "Footer" + }, + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "last_commit": { + "$ref": "#/definitions/WikiCommit" + }, + "sidebar": { + "type": "string", + "x-go-name": "Sidebar" + }, + "sub_url": { + "type": "string", + "x-go-name": "SubURL" + }, + "title": { + "type": "string", + "x-go-name": "Title" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + }, + "WikiPageMetaData": { + "description": "WikiPageMetaData wiki page meta information", + "type": "object", + "properties": { + "html_url": { + "type": "string", + "x-go-name": "HTMLURL" + }, + "last_commit": { + "$ref": "#/definitions/WikiCommit" + }, + "sub_url": { + "type": "string", + "x-go-name": "SubURL" + }, + "title": { + "type": "string", + "x-go-name": "Title" + } + }, + "x-go-package": "code.gitea.io/gitea/modules/structs" + } + }, + "responses": { + "AccessToken": { + "description": "AccessToken represents an API access token.", + "schema": { + "$ref": "#/definitions/AccessToken" + } + }, + "AccessTokenList": { + "description": "AccessTokenList represents a list of API access token.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessToken" + } + } + }, + "ActionVariable": { + "description": "ActionVariable", + "schema": { + "$ref": "#/definitions/ActionVariable" + } + }, + "ActivityFeedsList": { + "description": "ActivityFeedsList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Activity" + } + } + }, + "ActivityPub": { + "description": "ActivityPub", + "schema": { + "$ref": "#/definitions/ActivityPub" + } + }, + "AnnotatedTag": { + "description": "AnnotatedTag", + "schema": { + "$ref": "#/definitions/AnnotatedTag" + } + }, + "Attachment": { + "description": "Attachment", + "schema": { + "$ref": "#/definitions/Attachment" + } + }, + "AttachmentList": { + "description": "AttachmentList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Attachment" + } + } + }, + "BadgeList": { + "description": "BadgeList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Badge" + } + } + }, + "Branch": { + "description": "Branch", + "schema": { + "$ref": "#/definitions/Branch" + } + }, + "BranchList": { + "description": "BranchList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Branch" + } + } + }, + "BranchProtection": { + "description": "BranchProtection", + "schema": { + "$ref": "#/definitions/BranchProtection" + } + }, + "BranchProtectionList": { + "description": "BranchProtectionList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/BranchProtection" + } + } + }, + "ChangedFileList": { + "description": "ChangedFileList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/ChangedFile" + } + }, + "headers": { + "X-HasMore": { + "type": "boolean", + "description": "True if there is another page" + }, + "X-Page": { + "type": "integer", + "format": "int64", + "description": "The current page" + }, + "X-PageCount": { + "type": "integer", + "format": "int64", + "description": "Total number of pages" + }, + "X-PerPage": { + "type": "integer", + "format": "int64", + "description": "Commits per page" + }, + "X-Total": { + "type": "integer", + "format": "int64", + "description": "Total commit count" + } + } + }, + "CombinedStatus": { + "description": "CombinedStatus", + "schema": { + "$ref": "#/definitions/CombinedStatus" + } + }, + "Comment": { + "description": "Comment", + "schema": { + "$ref": "#/definitions/Comment" + } + }, + "CommentList": { + "description": "CommentList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Comment" + } + } + }, + "Commit": { + "description": "Commit", + "schema": { + "$ref": "#/definitions/Commit" + } + }, + "CommitList": { + "description": "CommitList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Commit" + } + }, + "headers": { + "X-HasMore": { + "type": "boolean", + "description": "True if there is another page" + }, + "X-Page": { + "type": "integer", + "format": "int64", + "description": "The current page" + }, + "X-PageCount": { + "type": "integer", + "format": "int64", + "description": "Total number of pages" + }, + "X-PerPage": { + "type": "integer", + "format": "int64", + "description": "Commits per page" + }, + "X-Total": { + "type": "integer", + "format": "int64", + "description": "Total commit count" + } + } + }, + "CommitStatus": { + "description": "CommitStatus", + "schema": { + "$ref": "#/definitions/CommitStatus" + } + }, + "CommitStatusList": { + "description": "CommitStatusList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/CommitStatus" + } + } + }, + "Compare": { + "description": "", + "schema": { + "$ref": "#/definitions/Compare" + } + }, + "ContentsListResponse": { + "description": "ContentsListResponse", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/ContentsResponse" + } + } + }, + "ContentsResponse": { + "description": "ContentsResponse", + "schema": { + "$ref": "#/definitions/ContentsResponse" + } + }, + "CronList": { + "description": "CronList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Cron" + } + } + }, + "DeployKey": { + "description": "DeployKey", + "schema": { + "$ref": "#/definitions/DeployKey" + } + }, + "DeployKeyList": { + "description": "DeployKeyList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/DeployKey" + } + } + }, + "EmailList": { + "description": "EmailList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Email" + } + } + }, + "EmptyRepository": { + "description": "EmptyRepository", + "schema": { + "$ref": "#/definitions/APIError" + } + }, + "FileDeleteResponse": { + "description": "FileDeleteResponse", + "schema": { + "$ref": "#/definitions/FileDeleteResponse" + } + }, + "FileResponse": { + "description": "FileResponse", + "schema": { + "$ref": "#/definitions/FileResponse" + } + }, + "FilesResponse": { + "description": "FilesResponse", + "schema": { + "$ref": "#/definitions/FilesResponse" + } + }, + "GPGKey": { + "description": "GPGKey", + "schema": { + "$ref": "#/definitions/GPGKey" + } + }, + "GPGKeyList": { + "description": "GPGKeyList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/GPGKey" + } + } + }, + "GeneralAPISettings": { + "description": "GeneralAPISettings", + "schema": { + "$ref": "#/definitions/GeneralAPISettings" + } + }, + "GeneralAttachmentSettings": { + "description": "GeneralAttachmentSettings", + "schema": { + "$ref": "#/definitions/GeneralAttachmentSettings" + } + }, + "GeneralRepoSettings": { + "description": "GeneralRepoSettings", + "schema": { + "$ref": "#/definitions/GeneralRepoSettings" + } + }, + "GeneralUISettings": { + "description": "GeneralUISettings", + "schema": { + "$ref": "#/definitions/GeneralUISettings" + } + }, + "GitBlobResponse": { + "description": "GitBlobResponse", + "schema": { + "$ref": "#/definitions/GitBlobResponse" + } + }, + "GitHook": { + "description": "GitHook", + "schema": { + "$ref": "#/definitions/GitHook" + } + }, + "GitHookList": { + "description": "GitHookList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/GitHook" + } + } + }, + "GitTreeResponse": { + "description": "GitTreeResponse", + "schema": { + "$ref": "#/definitions/GitTreeResponse" + } + }, + "GitignoreTemplateInfo": { + "description": "GitignoreTemplateInfo", + "schema": { + "$ref": "#/definitions/GitignoreTemplateInfo" + } + }, + "GitignoreTemplateList": { + "description": "GitignoreTemplateList", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "Hook": { + "description": "Hook", + "schema": { + "$ref": "#/definitions/Hook" + } + }, + "HookList": { + "description": "HookList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Hook" + } + } + }, + "Issue": { + "description": "Issue", + "schema": { + "$ref": "#/definitions/Issue" + } + }, + "IssueDeadline": { + "description": "IssueDeadline", + "schema": { + "$ref": "#/definitions/IssueDeadline" + } + }, + "IssueList": { + "description": "IssueList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Issue" + } + } + }, + "IssueTemplates": { + "description": "IssueTemplates", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueTemplate" + } + } + }, + "Label": { + "description": "Label", + "schema": { + "$ref": "#/definitions/Label" + } + }, + "LabelList": { + "description": "LabelList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Label" + } + } + }, + "LabelTemplateInfo": { + "description": "LabelTemplateInfo", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/LabelTemplate" + } + } + }, + "LabelTemplateList": { + "description": "LabelTemplateList", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "LanguageStatistics": { + "description": "LanguageStatistics", + "schema": { + "type": "object", + "additionalProperties": { + "type": "integer", + "format": "int64" + } + } + }, + "LicenseTemplateInfo": { + "description": "LicenseTemplateInfo", + "schema": { + "$ref": "#/definitions/LicenseTemplateInfo" + } + }, + "LicenseTemplateList": { + "description": "LicenseTemplateList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/LicensesTemplateListEntry" + } + } + }, + "MarkdownRender": { + "description": "MarkdownRender is a rendered markdown document", + "schema": { + "type": "string" + } + }, + "MarkupRender": { + "description": "MarkupRender is a rendered markup document", + "schema": { + "type": "string" + } + }, + "Milestone": { + "description": "Milestone", + "schema": { + "$ref": "#/definitions/Milestone" + } + }, + "MilestoneList": { + "description": "MilestoneList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Milestone" + } + } + }, + "NodeInfo": { + "description": "NodeInfo", + "schema": { + "$ref": "#/definitions/NodeInfo" + } + }, + "Note": { + "description": "Note", + "schema": { + "$ref": "#/definitions/Note" + } + }, + "NotificationCount": { + "description": "Number of unread notifications", + "schema": { + "$ref": "#/definitions/NotificationCount" + } + }, + "NotificationThread": { + "description": "NotificationThread", + "schema": { + "$ref": "#/definitions/NotificationThread" + } + }, + "NotificationThreadList": { + "description": "NotificationThreadList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NotificationThread" + } + } + }, + "OAuth2Application": { + "description": "OAuth2Application", + "schema": { + "$ref": "#/definitions/OAuth2Application" + } + }, + "OAuth2ApplicationList": { + "description": "OAuth2ApplicationList represents a list of OAuth2 applications.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/OAuth2Application" + } + } + }, + "Organization": { + "description": "Organization", + "schema": { + "$ref": "#/definitions/Organization" + } + }, + "OrganizationList": { + "description": "OrganizationList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Organization" + } + } + }, + "OrganizationPermissions": { + "description": "OrganizationPermissions", + "schema": { + "$ref": "#/definitions/OrganizationPermissions" + } + }, + "Package": { + "description": "Package", + "schema": { + "$ref": "#/definitions/Package" + } + }, + "PackageFileList": { + "description": "PackageFileList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/PackageFile" + } + } + }, + "PackageList": { + "description": "PackageList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Package" + } + } + }, + "PublicKey": { + "description": "PublicKey", + "schema": { + "$ref": "#/definitions/PublicKey" + } + }, + "PublicKeyList": { + "description": "PublicKeyList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicKey" + } + } + }, + "PullRequest": { + "description": "PullRequest", + "schema": { + "$ref": "#/definitions/PullRequest" + } + }, + "PullRequestList": { + "description": "PullRequestList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/PullRequest" + } + } + }, + "PullReview": { + "description": "PullReview", + "schema": { + "$ref": "#/definitions/PullReview" + } + }, + "PullReviewComment": { + "description": "PullComment", + "schema": { + "$ref": "#/definitions/PullReviewComment" + } + }, + "PullReviewCommentList": { + "description": "PullCommentList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/PullReviewComment" + } + } + }, + "PullReviewList": { + "description": "PullReviewList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/PullReview" + } + } + }, + "PushMirror": { + "description": "PushMirror", + "schema": { + "$ref": "#/definitions/PushMirror" + } + }, + "PushMirrorList": { + "description": "PushMirrorList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/PushMirror" + } + } + }, + "Reaction": { + "description": "Reaction", + "schema": { + "$ref": "#/definitions/Reaction" + } + }, + "ReactionList": { + "description": "ReactionList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Reaction" + } + } + }, + "Reference": { + "description": "Reference", + "schema": { + "$ref": "#/definitions/Reference" + } + }, + "ReferenceList": { + "description": "ReferenceList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Reference" + } + } + }, + "RegistrationToken": { + "description": "RegistrationToken is response related to registration token", + "headers": { + "token": { + "type": "string" + } + } + }, + "Release": { + "description": "Release", + "schema": { + "$ref": "#/definitions/Release" + } + }, + "ReleaseList": { + "description": "ReleaseList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Release" + } + } + }, + "RepoCollaboratorPermission": { + "description": "RepoCollaboratorPermission", + "schema": { + "$ref": "#/definitions/RepoCollaboratorPermission" + } + }, + "RepoIssueConfig": { + "description": "RepoIssueConfig", + "schema": { + "$ref": "#/definitions/IssueConfig" + } + }, + "RepoIssueConfigValidation": { + "description": "RepoIssueConfigValidation", + "schema": { + "$ref": "#/definitions/IssueConfigValidation" + } + }, + "RepoNewIssuePinsAllowed": { + "description": "RepoNewIssuePinsAllowed", + "schema": { + "$ref": "#/definitions/NewIssuePinsAllowed" + } + }, + "Repository": { + "description": "Repository", + "schema": { + "$ref": "#/definitions/Repository" + } + }, + "RepositoryList": { + "description": "RepositoryList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Repository" + } + } + }, + "SearchResults": { + "description": "SearchResults", + "schema": { + "$ref": "#/definitions/SearchResults" + } + }, + "Secret": { + "description": "Secret", + "schema": { + "$ref": "#/definitions/Secret" + } + }, + "SecretList": { + "description": "SecretList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Secret" + } + } + }, + "ServerVersion": { + "description": "ServerVersion", + "schema": { + "$ref": "#/definitions/ServerVersion" + } + }, + "StopWatch": { + "description": "StopWatch", + "schema": { + "$ref": "#/definitions/StopWatch" + } + }, + "StopWatchList": { + "description": "StopWatchList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/StopWatch" + } + } + }, + "StringSlice": { + "description": "StringSlice", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "Tag": { + "description": "Tag", + "schema": { + "$ref": "#/definitions/Tag" + } + }, + "TagList": { + "description": "TagList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + } + } + }, + "Team": { + "description": "Team", + "schema": { + "$ref": "#/definitions/Team" + } + }, + "TeamList": { + "description": "TeamList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Team" + } + } + }, + "TimelineList": { + "description": "TimelineList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/TimelineComment" + } + } + }, + "TopicListResponse": { + "description": "TopicListResponse", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/TopicResponse" + } + } + }, + "TopicNames": { + "description": "TopicNames", + "schema": { + "$ref": "#/definitions/TopicName" + } + }, + "TrackedTime": { + "description": "TrackedTime", + "schema": { + "$ref": "#/definitions/TrackedTime" + } + }, + "TrackedTimeList": { + "description": "TrackedTimeList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/TrackedTime" + } + } + }, + "User": { + "description": "User", + "schema": { + "$ref": "#/definitions/User" + } + }, + "UserHeatmapData": { + "description": "UserHeatmapData", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/UserHeatmapData" + } + } + }, + "UserList": { + "description": "UserList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/User" + } + } + }, + "UserSettings": { + "description": "UserSettings", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/UserSettings" + } + } + }, + "VariableList": { + "description": "VariableList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/ActionVariable" + } + } + }, + "WatchInfo": { + "description": "WatchInfo", + "schema": { + "$ref": "#/definitions/WatchInfo" + } + }, + "WikiCommitList": { + "description": "WikiCommitList", + "schema": { + "$ref": "#/definitions/WikiCommitList" + } + }, + "WikiPage": { + "description": "WikiPage", + "schema": { + "$ref": "#/definitions/WikiPage" + } + }, + "WikiPageList": { + "description": "WikiPageList", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/WikiPageMetaData" + } + } + }, + "conflict": { + "description": "APIConflict is a conflict empty response" + }, + "empty": { + "description": "APIEmpty is an empty response" + }, + "error": { + "description": "APIError is error format response", + "headers": { + "message": { + "type": "string" + }, + "url": { + "type": "string" + } + } + }, + "forbidden": { + "description": "APIForbiddenError is a forbidden error response", + "headers": { + "message": { + "type": "string" + }, + "url": { + "type": "string" + } + } + }, + "invalidTopicsError": { + "description": "APIInvalidTopicsError is error format response to invalid topics", + "headers": { + "invalidTopics": { + "type": "array", + "items": { + "type": "string" + } + }, + "message": { + "type": "string" + } + } + }, + "notFound": { + "description": "APINotFound is a not found empty response" + }, + "parameterBodies": { + "description": "parameterBodies", + "schema": { + "$ref": "#/definitions/UpdateVariableOption" + } + }, + "redirect": { + "description": "APIRedirect is a redirect response" + }, + "repoArchivedError": { + "description": "APIRepoArchivedError is an error that is raised when an archived repo should be modified", + "headers": { + "message": { + "type": "string" + }, + "url": { + "type": "string" + } + } + }, + "string": { + "description": "APIString is a string response", + "schema": { + "type": "string" + } + }, + "validationError": { + "description": "APIValidationError is error format response related to input validation", + "headers": { + "message": { + "type": "string" + }, + "url": { + "type": "string" + } + } + } + }, + "securityDefinitions": { + "AccessToken": { + "description": "This authentication option is deprecated for removal in Gitea 1.23. Please use AuthorizationHeaderToken instead.", + "type": "apiKey", + "name": "access_token", + "in": "query" + }, + "AuthorizationHeaderToken": { + "description": "API tokens must be prepended with \"token\" followed by a space.", + "type": "apiKey", + "name": "Authorization", + "in": "header" + }, + "BasicAuth": { + "type": "basic" + }, + "SudoHeader": { + "description": "Sudo API request as the user provided as the key. Admin privileges are required.", + "type": "apiKey", + "name": "Sudo", + "in": "header" + }, + "SudoParam": { + "description": "Sudo API request as the user provided as the key. Admin privileges are required.", + "type": "apiKey", + "name": "sudo", + "in": "query" + }, + "TOTPHeader": { + "description": "Must be used in combination with BasicAuth if two-factor authentication is enabled.", + "type": "apiKey", + "name": "X-GITEA-OTP", + "in": "header" + }, + "Token": { + "description": "This authentication option is deprecated for removal in Gitea 1.23. Please use AuthorizationHeaderToken instead.", + "type": "apiKey", + "name": "token", + "in": "query" + } + }, + "security": [ + { + "BasicAuth": [] + }, + { + "Token": [] + }, + { + "AccessToken": [] + }, + { + "AuthorizationHeaderToken": [] + }, + { + "SudoParam": [] + }, + { + "SudoHeader": [] + }, + { + "TOTPHeader": [] + } + ] +} diff --git a/data/gitea/templates/user/auth/activate.tmpl b/data/gitea/templates/user/auth/activate.tmpl new file mode 100644 index 0000000..7f8ff0e --- /dev/null +++ b/data/gitea/templates/user/auth/activate.tmpl @@ -0,0 +1,40 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "auth.active_your_account"}} +

    +
    + {{template "base/alert" .}} + {{if .NeedVerifyLocalPassword}} +
    + + +
    +
    + +
    + + {{else}} +

    {{ctx.Locale.Tr "auth.has_unconfirmed_mail" .SignedUser.Name .SignedUser.Email}}

    +
    + {{ctx.Locale.Tr "auth.change_unconfirmed_mail_address"}} +
    + + +
    +
    +
    +
    + +
    + {{end}} +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/activate_prompt.tmpl b/data/gitea/templates/user/auth/activate_prompt.tmpl new file mode 100644 index 0000000..237244d --- /dev/null +++ b/data/gitea/templates/user/auth/activate_prompt.tmpl @@ -0,0 +1,15 @@ +{{template "base/head" .}} +
    +
    +
    +

    + {{ctx.Locale.Tr "auth.active_your_account"}} +

    +
    + {{template "base/alert" .}} +

    {{.ActivationPromptMessage}}

    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/captcha.tmpl b/data/gitea/templates/user/auth/captcha.tmpl new file mode 100644 index 0000000..0e9c2b9 --- /dev/null +++ b/data/gitea/templates/user/auth/captcha.tmpl @@ -0,0 +1,30 @@ +{{if .EnableCaptcha}}{{if eq .CaptchaType "image"}} +
    + {{.Captcha.CreateHTML}} +
    +
    + + +
    +{{else if eq .CaptchaType "recaptcha"}} +
    +
    +
    + +{{else if eq .CaptchaType "hcaptcha"}} +
    +
    +
    + +{{else if eq .CaptchaType "mcaptcha"}} +
    + +
    +
    +
    +{{else if eq .CaptchaType "cfturnstile"}} +
    +
    +
    + +{{end}}{{end}} diff --git a/data/gitea/templates/user/auth/change_passwd.tmpl b/data/gitea/templates/user/auth/change_passwd.tmpl new file mode 100644 index 0000000..e05f46f --- /dev/null +++ b/data/gitea/templates/user/auth/change_passwd.tmpl @@ -0,0 +1,7 @@ +{{template "base/head" .}} +
    +
    + {{template "user/auth/change_passwd_inner" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/change_passwd_inner.tmpl b/data/gitea/templates/user/auth/change_passwd_inner.tmpl new file mode 100644 index 0000000..01bbf50 --- /dev/null +++ b/data/gitea/templates/user/auth/change_passwd_inner.tmpl @@ -0,0 +1,22 @@ + {{if or (not .LinkAccountMode) (and .LinkAccountMode .LinkAccountModeSignIn)}} + {{template "base/alert" .}} + {{end}} +

    + {{ctx.Locale.Tr "settings.change_password"}} +

    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    + +
    +
    +
    diff --git a/data/gitea/templates/user/auth/finalize_openid.tmpl b/data/gitea/templates/user/auth/finalize_openid.tmpl new file mode 100644 index 0000000..1c1dcdb --- /dev/null +++ b/data/gitea/templates/user/auth/finalize_openid.tmpl @@ -0,0 +1,47 @@ +{{template "base/head" .}} + +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/forgot_passwd.tmpl b/data/gitea/templates/user/auth/forgot_passwd.tmpl new file mode 100644 index 0000000..55bcf63 --- /dev/null +++ b/data/gitea/templates/user/auth/forgot_passwd.tmpl @@ -0,0 +1,39 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +

    + {{ctx.Locale.Tr "auth.forgot_password_title"}} +

    +
    + {{template "base/alert" .}} + {{if .IsResetSent}} +

    {{ctx.Locale.Tr "auth.reset_password_mail_sent_prompt" .Email .ResetPwdCodeLives}}

    + {{else if .IsResetRequest}} +
    + + +
    +
    +
    + +
    + {{else if .IsResetDisable}} +

    + {{if $.IsAdmin}} + {{ctx.Locale.Tr "auth.disable_forgot_password_mail_admin"}} + {{else}} + {{ctx.Locale.Tr "auth.disable_forgot_password_mail"}} + {{end}} +

    + {{else if .ResendLimited}} +

    {{ctx.Locale.Tr "auth.resent_limit_prompt"}}

    + {{end}} +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/grant.tmpl b/data/gitea/templates/user/auth/grant.tmpl new file mode 100644 index 0000000..a18a3bd --- /dev/null +++ b/data/gitea/templates/user/auth/grant.tmpl @@ -0,0 +1,33 @@ +{{template "base/head" .}} +
    +
    +
    +

    + {{ctx.Locale.Tr "auth.authorize_title" .Application.Name}} +

    +
    + {{template "base/alert" .}} +

    + {{ctx.Locale.Tr "auth.authorize_application_description"}}
    + {{ctx.Locale.Tr "auth.authorize_application_created_by" .ApplicationCreatorLinkHTML}} +

    +
    +
    +

    {{ctx.Locale.Tr "auth.authorize_redirect_notice" .ApplicationRedirectDomainHTML}}

    +
    +
    +
    + {{.CsrfTokenHtml}} + + + + + + + +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/grant_error.tmpl b/data/gitea/templates/user/auth/grant_error.tmpl new file mode 100644 index 0000000..b2e0779 --- /dev/null +++ b/data/gitea/templates/user/auth/grant_error.tmpl @@ -0,0 +1,16 @@ +{{template "base/head" .}} +
    + {{if .IsRepo}}{{template "repo/header" .}}{{end}} +
    +
    +

    + {{ctx.Locale.Tr "auth.authorization_failed"}} +

    +

    {{.Error.ErrorDescription}}

    +
    +

    {{ctx.Locale.Tr "auth.authorization_failed_desc"}}

    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/link_account.tmpl b/data/gitea/templates/user/auth/link_account.tmpl new file mode 100644 index 0000000..a99e172 --- /dev/null +++ b/data/gitea/templates/user/auth/link_account.tmpl @@ -0,0 +1,31 @@ +{{template "base/head" .}} + + +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/oidc_wellknown.tmpl b/data/gitea/templates/user/auth/oidc_wellknown.tmpl new file mode 100644 index 0000000..54bb4a7 --- /dev/null +++ b/data/gitea/templates/user/auth/oidc_wellknown.tmpl @@ -0,0 +1,49 @@ +{ + "issuer": "{{AppUrl | JSEscape}}", + "authorization_endpoint": "{{AppUrl | JSEscape}}login/oauth/authorize", + "token_endpoint": "{{AppUrl | JSEscape}}login/oauth/access_token", + "jwks_uri": "{{AppUrl | JSEscape}}login/oauth/keys", + "userinfo_endpoint": "{{AppUrl | JSEscape}}login/oauth/userinfo", + "introspection_endpoint": "{{AppUrl | JSEscape}}login/oauth/introspect", + "response_types_supported": [ + "code", + "id_token" + ], + "id_token_signing_alg_values_supported": [ + "{{.SigningKey.SigningMethod.Alg | JSEscape}}" + ], + "subject_types_supported": [ + "public" + ], + "scopes_supported": [ + "openid", + "profile", + "email", + "groups" + ], + "claims_supported": [ + "aud", + "exp", + "iat", + "iss", + "sub", + "name", + "preferred_username", + "profile", + "picture", + "website", + "locale", + "updated_at", + "email", + "email_verified", + "groups" + ], + "code_challenge_methods_supported": [ + "plain", + "S256" + ], + "grant_types_supported": [ + "authorization_code", + "refresh_token" + ] +} diff --git a/data/gitea/templates/user/auth/prohibit_login.tmpl b/data/gitea/templates/user/auth/prohibit_login.tmpl new file mode 100644 index 0000000..962ddfa --- /dev/null +++ b/data/gitea/templates/user/auth/prohibit_login.tmpl @@ -0,0 +1,16 @@ +{{template "base/head" .}} +
    +
    +
    +
    +

    + {{ctx.Locale.Tr "auth.prohibit_login"}} +

    +
    +

    {{ctx.Locale.Tr "auth.prohibit_login_desc"}}

    +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/reset_passwd.tmpl b/data/gitea/templates/user/auth/reset_passwd.tmpl new file mode 100644 index 0000000..f8303fe --- /dev/null +++ b/data/gitea/templates/user/auth/reset_passwd.tmpl @@ -0,0 +1,65 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} + +

    + {{ctx.Locale.Tr "auth.reset_password"}} +

    +
    + {{template "base/alert" .}} + {{if .user_email}} +
    + + +
    + {{end}} + {{if .IsResetForm}} +
    + + +
    + {{if not .user_signed_in}} +
    +
    + + +
    +
    + {{end}} + {{if .has_two_factor}} +

    + {{ctx.Locale.Tr "twofa"}} +

    +
    {{ctx.Locale.Tr "settings.twofa_is_enrolled"}}
    + {{if .scratch_code}} +
    + + +
    + + {{else}} +
    + + +
    + {{end}} + {{end}} +
    +
    + + {{if and .has_two_factor (not .scratch_code)}} + {{ctx.Locale.Tr "auth.use_scratch_code"}} + {{end}} +
    + {{else}} +

    {{ctx.Locale.Tr "auth.invalid_code_forgot_password" (printf "%s/user/forgot_password" AppSubUrl)}}

    + {{end}} +
    +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/signin.tmpl b/data/gitea/templates/user/auth/signin.tmpl new file mode 100644 index 0000000..b0e9ce8 --- /dev/null +++ b/data/gitea/templates/user/auth/signin.tmpl @@ -0,0 +1,10 @@ +{{template "base/head" .}} +
    + {{template "user/auth/signin_navbar" .}} +
    +
    + {{template "user/auth/signin_inner" .}} +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/signin_inner.tmpl b/data/gitea/templates/user/auth/signin_inner.tmpl new file mode 100644 index 0000000..9872096 --- /dev/null +++ b/data/gitea/templates/user/auth/signin_inner.tmpl @@ -0,0 +1,70 @@ +{{if or (not .LinkAccountMode) (and .LinkAccountMode .LinkAccountModeSignIn)}} +{{template "base/alert" .}} +{{end}} +

    + {{if .LinkAccountMode}} + {{ctx.Locale.Tr "auth.oauth_signin_title"}} + {{else}} + {{ctx.Locale.Tr "auth.login_userpass"}} + {{end}} +

    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    + {{if or (not .DisablePassword) .LinkAccountMode}} +
    + + +
    + {{end}} + {{if not .LinkAccountMode}} +
    +
    + + +
    +
    + {{end}} + + {{template "user/auth/captcha" .}} + +
    + + {{ctx.Locale.Tr "auth.forgot_password"}} +
    + + {{if .ShowRegistrationButton}} + + {{end}} + + {{if .OAuth2Providers}} +
    + {{ctx.Locale.Tr "sign_in_or"}} +
    + + {{end}} +
    +
    diff --git a/data/gitea/templates/user/auth/signin_navbar.tmpl b/data/gitea/templates/user/auth/signin_navbar.tmpl new file mode 100644 index 0000000..7f52185 --- /dev/null +++ b/data/gitea/templates/user/auth/signin_navbar.tmpl @@ -0,0 +1,24 @@ +{{if or .EnableOpenIDSignIn .EnableSSPI}} + + + +{{end}} diff --git a/data/gitea/templates/user/auth/signin_openid.tmpl b/data/gitea/templates/user/auth/signin_openid.tmpl new file mode 100644 index 0000000..c1f392d --- /dev/null +++ b/data/gitea/templates/user/auth/signin_openid.tmpl @@ -0,0 +1,36 @@ +{{template "base/head" .}} + +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/signup.tmpl b/data/gitea/templates/user/auth/signup.tmpl new file mode 100644 index 0000000..f238413 --- /dev/null +++ b/data/gitea/templates/user/auth/signup.tmpl @@ -0,0 +1,8 @@ +{{template "base/head" .}} +
    + {{template "user/auth/signin_navbar" .}} +
    + {{template "user/auth/signup_inner" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/signup_inner.tmpl b/data/gitea/templates/user/auth/signup_inner.tmpl new file mode 100644 index 0000000..bdb691d --- /dev/null +++ b/data/gitea/templates/user/auth/signup_inner.tmpl @@ -0,0 +1,76 @@ +
    +

    + {{if .LinkAccountMode}} + {{ctx.Locale.Tr "auth.oauth_signup_title"}} + {{else}} + {{ctx.Locale.Tr "sign_up"}} + {{end}} +

    +
    +
    + {{.CsrfTokenHtml}} + {{if or (not .LinkAccountMode) (and .LinkAccountMode .LinkAccountModeRegister)}} + {{template "base/alert" .}} + {{end}} + {{if .DisableRegistration}} +

    {{ctx.Locale.Tr "auth.disable_register_prompt"}}

    + {{else}} +
    + + +
    +
    + + +
    + + {{if not .DisablePassword}} +
    + + +
    +
    + + +
    + {{end}} + + {{template "user/auth/captcha" .}} + +
    + +
    + + {{if not .LinkAccountMode}} + + {{end}} + {{end}} + + {{if .OAuth2Providers}} +
    + {{ctx.Locale.Tr "sign_in_or"}} +
    + + {{end}} +
    +
    +
    diff --git a/data/gitea/templates/user/auth/signup_openid_connect.tmpl b/data/gitea/templates/user/auth/signup_openid_connect.tmpl new file mode 100644 index 0000000..e4b7936 --- /dev/null +++ b/data/gitea/templates/user/auth/signup_openid_connect.tmpl @@ -0,0 +1,36 @@ +{{template "base/head" .}} + +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/signup_openid_navbar.tmpl b/data/gitea/templates/user/auth/signup_openid_navbar.tmpl new file mode 100644 index 0000000..89068dd --- /dev/null +++ b/data/gitea/templates/user/auth/signup_openid_navbar.tmpl @@ -0,0 +1,12 @@ + +
    + + {{ctx.Locale.Tr "auth.openid_connect_title"}} + + {{if and .EnableOpenIDSignUp (not .AllowOnlyInternalRegistration)}} + + {{ctx.Locale.Tr "auth.openid_register_title"}} + + {{end}} +
    +
    diff --git a/data/gitea/templates/user/auth/signup_openid_register.tmpl b/data/gitea/templates/user/auth/signup_openid_register.tmpl new file mode 100644 index 0000000..c017a0e --- /dev/null +++ b/data/gitea/templates/user/auth/signup_openid_register.tmpl @@ -0,0 +1,37 @@ +{{template "base/head" .}} + +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/twofa.tmpl b/data/gitea/templates/user/auth/twofa.tmpl new file mode 100644 index 0000000..d245239 --- /dev/null +++ b/data/gitea/templates/user/auth/twofa.tmpl @@ -0,0 +1,26 @@ +{{template "base/head" .}} + +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/twofa_scratch.tmpl b/data/gitea/templates/user/auth/twofa_scratch.tmpl new file mode 100644 index 0000000..23ad77f --- /dev/null +++ b/data/gitea/templates/user/auth/twofa_scratch.tmpl @@ -0,0 +1,25 @@ +{{template "base/head" .}} + +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/webauthn.tmpl b/data/gitea/templates/user/auth/webauthn.tmpl new file mode 100644 index 0000000..1b84765 --- /dev/null +++ b/data/gitea/templates/user/auth/webauthn.tmpl @@ -0,0 +1,25 @@ +{{template "base/head" .}} + +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/auth/webauthn_error.tmpl b/data/gitea/templates/user/auth/webauthn_error.tmpl new file mode 100644 index 0000000..511ff7c --- /dev/null +++ b/data/gitea/templates/user/auth/webauthn_error.tmpl @@ -0,0 +1,13 @@ +
    +
    {{ctx.Locale.Tr "webauthn_error"}}
    +
    +
    +
    {{ctx.Locale.Tr "webauthn_unsupported_browser"}}
    +
    {{ctx.Locale.Tr "webauthn_error_unknown"}}
    +
    {{ctx.Locale.Tr "webauthn_error_insecure"}}
    +
    {{ctx.Locale.Tr "webauthn_error_unable_to_process"}}
    +
    {{ctx.Locale.Tr "webauthn_error_duplicated"}}
    +
    {{ctx.Locale.Tr "webauthn_error_empty"}}
    +
    {{ctx.Locale.Tr "webauthn_error_timeout"}}
    +
    +
    diff --git a/data/gitea/templates/user/code.tmpl b/data/gitea/templates/user/code.tmpl new file mode 100644 index 0000000..ff6c69d --- /dev/null +++ b/data/gitea/templates/user/code.tmpl @@ -0,0 +1,24 @@ +{{template "base/head" .}} +{{if .ContextUser.IsOrganization}} +
    + {{template "org/header" .}} +
    + {{template "shared/search/code/search" .}} +
    +
    +{{else}} +
    +
    +
    +
    + {{template "shared/user/profile_big_avatar" .}} +
    +
    + {{template "user/overview/header" .}} + {{template "shared/search/code/search" .}} +
    +
    +
    +
    +{{end}} +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/dashboard/dashboard.tmpl b/data/gitea/templates/user/dashboard/dashboard.tmpl new file mode 100644 index 0000000..5dc46dc --- /dev/null +++ b/data/gitea/templates/user/dashboard/dashboard.tmpl @@ -0,0 +1,13 @@ +{{template "base/head" .}} +
    + {{template "user/dashboard/navbar" .}} +
    +
    + {{template "base/alert" .}} + {{template "user/heatmap" .}} + {{template "user/dashboard/feeds" .}} +
    + {{template "user/dashboard/repolist" .}} +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/dashboard/feeds.tmpl b/data/gitea/templates/user/dashboard/feeds.tmpl new file mode 100644 index 0000000..60aa194 --- /dev/null +++ b/data/gitea/templates/user/dashboard/feeds.tmpl @@ -0,0 +1,127 @@ +
    + {{range .Feeds}} +
    +
    + {{ctx.AvatarUtils.AvatarByAction .}} +
    +
    +
    + {{if gt .ActUser.ID 0}} + {{.GetActDisplayName ctx}} + {{else}} + {{.ShortActUserName ctx}} + {{end}} + {{if .GetOpType.InActions "create_repo"}} + {{ctx.Locale.Tr "action.create_repo" (.GetRepoLink ctx) (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "rename_repo"}} + {{ctx.Locale.Tr "action.rename_repo" .GetContent (.GetRepoLink ctx) (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "commit_repo"}} + {{if .Content}} + {{ctx.Locale.Tr "action.commit_repo" (.GetRepoLink ctx) (.GetRefLink ctx) .GetBranch (.ShortRepoPath ctx)}} + {{else}} + {{ctx.Locale.Tr "action.create_branch" (.GetRepoLink ctx) (.GetRefLink ctx) .GetBranch (.ShortRepoPath ctx)}} + {{end}} + {{else if .GetOpType.InActions "create_issue"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.create_issue" (printf "%s/issues/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "create_pull_request"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.create_pull_request" (printf "%s/pulls/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "transfer_repo"}} + {{ctx.Locale.Tr "action.transfer_repo" .GetContent (.GetRepoLink ctx) (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "push_tag"}} + {{ctx.Locale.Tr "action.push_tag" (.GetRepoLink ctx) (.GetRefLink ctx) .GetTag (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "comment_issue"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.comment_issue" (printf "%s/issues/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "merge_pull_request"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.merge_pull_request" (printf "%s/pulls/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "close_issue"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.close_issue" (printf "%s/issues/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "reopen_issue"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.reopen_issue" (printf "%s/issues/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "close_pull_request"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.close_pull_request" (printf "%s/pulls/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "reopen_pull_request"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.reopen_pull_request" (printf "%s/pulls/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "delete_tag"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.delete_tag" (.GetRepoLink ctx) .GetTag (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "delete_branch"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.delete_branch" (.GetRepoLink ctx) .GetBranch (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "mirror_sync_push"}} + {{ctx.Locale.Tr "action.mirror_sync_push" (.GetRepoLink ctx) (.GetRefLink ctx) .GetBranch (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "mirror_sync_create"}} + {{ctx.Locale.Tr "action.mirror_sync_create" (.GetRepoLink ctx) (.GetRefLink ctx) .GetBranch (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "mirror_sync_delete"}} + {{ctx.Locale.Tr "action.mirror_sync_delete" (.GetRepoLink ctx) .GetBranch (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "approve_pull_request"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.approve_pull_request" (printf "%s/pulls/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "reject_pull_request"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.reject_pull_request" (printf "%s/pulls/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "comment_pull"}} + {{$index := index .GetIssueInfos 0}} + {{ctx.Locale.Tr "action.comment_pull" (printf "%s/pulls/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx)}} + {{else if .GetOpType.InActions "publish_release"}} + {{$linkText := .Content | RenderEmoji $.Context}} + {{ctx.Locale.Tr "action.publish_release" (.GetRepoLink ctx) (printf "%s/releases/tag/%s" (.GetRepoLink ctx) .GetTag) (.ShortRepoPath ctx) $linkText}} + {{else if .GetOpType.InActions "review_dismissed"}} + {{$index := index .GetIssueInfos 0}} + {{$reviewer := index .GetIssueInfos 1}} + {{ctx.Locale.Tr "action.review_dismissed" (printf "%s/pulls/%s" (.GetRepoLink ctx) $index) $index (.ShortRepoPath ctx) $reviewer}} + {{end}} + {{TimeSince .GetCreate ctx.Locale}} +
    + {{if .GetOpType.InActions "commit_repo" "mirror_sync_push"}} + {{$push := ActionContent2Commits .}} + {{$repoLink := (.GetRepoLink ctx)}} + {{$repo := .Repo}} +
    + {{range $push.Commits}} + {{$commitLink := printf "%s/commit/%s" $repoLink .Sha1}} +
    + + {{ShortSha .Sha1}} + + {{RenderCommitMessage $.Context .Message ($repo.ComposeMetas ctx)}} + +
    + {{end}} +
    + {{if and (gt $push.Len 1) $push.CompareURL}} + {{ctx.Locale.Tr "action.compare_commits" $push.Len}} » + {{end}} + {{else if .GetOpType.InActions "create_issue"}} + {{index .GetIssueInfos 1 | RenderEmoji $.Context | RenderCodeBlock}} + {{else if .GetOpType.InActions "create_pull_request"}} + {{index .GetIssueInfos 1 | RenderEmoji $.Context | RenderCodeBlock}} + {{else if .GetOpType.InActions "comment_issue" "approve_pull_request" "reject_pull_request" "comment_pull"}} + {{(.GetIssueTitle ctx) | RenderEmoji $.Context | RenderCodeBlock}} + {{$comment := index .GetIssueInfos 1}} + {{if $comment}} +
    {{RenderMarkdownToHtml ctx $comment}}
    + {{end}} + {{else if .GetOpType.InActions "merge_pull_request"}} +
    {{index .GetIssueInfos 1}}
    + {{else if .GetOpType.InActions "close_issue" "reopen_issue" "close_pull_request" "reopen_pull_request"}} + {{(.GetIssueTitle ctx) | RenderEmoji $.Context | RenderCodeBlock}} + {{else if .GetOpType.InActions "pull_review_dismissed"}} +
    {{ctx.Locale.Tr "action.review_dismissed_reason"}}
    +
    {{index .GetIssueInfos 2 | RenderEmoji $.Context}}
    + {{end}} +
    +
    + {{svg (printf "octicon-%s" (ActionIcon .GetOpType)) 32 "text grey tw-mr-1"}} +
    +
    + {{end}} + {{template "base/paginate" .}} +
    diff --git a/data/gitea/templates/user/dashboard/issues.tmpl b/data/gitea/templates/user/dashboard/issues.tmpl new file mode 100644 index 0000000..b47a21e --- /dev/null +++ b/data/gitea/templates/user/dashboard/issues.tmpl @@ -0,0 +1,80 @@ +{{template "base/head" .}} +
    + {{template "user/dashboard/navbar" .}} +
    + {{template "base/alert" .}} +
    + + +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/dashboard/milestones.tmpl b/data/gitea/templates/user/dashboard/milestones.tmpl new file mode 100644 index 0000000..0f1e866 --- /dev/null +++ b/data/gitea/templates/user/dashboard/milestones.tmpl @@ -0,0 +1,154 @@ +{{template "base/head" .}} +
    + {{template "user/dashboard/navbar" .}} +
    +
    +
    + +
    +
    + +
    + {{range .Milestones}} +
  • +
    +

    + + {{.Repo.FullName}} + + {{svg "octicon-milestone" 16}} + {{.Name}} +

    +
    + {{.Completeness}}% + +
    +
    +
    +
    +
    + {{svg "octicon-issue-opened" 14}} + {{ctx.Locale.PrettyNumber .NumOpenIssues}} {{ctx.Locale.Tr "repo.issues.open_title"}} +
    +
    + {{svg "octicon-check" 14}} + {{ctx.Locale.PrettyNumber .NumClosedIssues}} {{ctx.Locale.Tr "repo.issues.closed_title"}} +
    + {{if .TotalTrackedTime}} +
    + {{svg "octicon-clock"}} + {{.TotalTrackedTime|Sec2Time}} +
    + {{end}} + {{if .UpdatedUnix}} +
    + {{svg "octicon-clock"}} + {{ctx.Locale.Tr "repo.milestones.update_ago" (TimeSinceUnix .UpdatedUnix ctx.Locale)}} +
    + {{end}} +
    + {{if .IsClosed}} + {{$closedDate:= TimeSinceUnix .ClosedDateUnix ctx.Locale}} + {{svg "octicon-clock" 14}} + {{ctx.Locale.Tr "repo.milestones.closed" $closedDate}} + {{else}} + {{if .DeadlineString}} + + {{svg "octicon-calendar" 14}} + {{DateTime "short" .DeadlineString}} + + {{else}} + {{svg "octicon-calendar" 14}} + {{ctx.Locale.Tr "repo.milestones.no_due_date"}} + {{end}} + {{end}} +
    +
    + {{if and (or $.CanWriteIssues $.CanWritePulls) (not $.Repository.IsArchived)}} + + {{end}} +
    + {{if .Content}} +
    + {{.RenderedContent}} +
    + {{end}} +
  • + {{end}} + + {{template "base/paginate" .}} +
    + +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/dashboard/navbar.tmpl b/data/gitea/templates/user/dashboard/navbar.tmpl new file mode 100644 index 0000000..4642282 --- /dev/null +++ b/data/gitea/templates/user/dashboard/navbar.tmpl @@ -0,0 +1,107 @@ +
    + +
    diff --git a/data/gitea/templates/user/dashboard/repolist.tmpl b/data/gitea/templates/user/dashboard/repolist.tmpl new file mode 100644 index 0000000..be71067 --- /dev/null +++ b/data/gitea/templates/user/dashboard/repolist.tmpl @@ -0,0 +1,59 @@ + + +
    diff --git a/data/gitea/templates/user/heatmap.tmpl b/data/gitea/templates/user/heatmap.tmpl new file mode 100644 index 0000000..b604b92 --- /dev/null +++ b/data/gitea/templates/user/heatmap.tmpl @@ -0,0 +1,10 @@ +{{if .HeatmapData}} +
    +
    +{{end}} diff --git a/data/gitea/templates/user/notification/notification.tmpl b/data/gitea/templates/user/notification/notification.tmpl new file mode 100644 index 0000000..b483c15 --- /dev/null +++ b/data/gitea/templates/user/notification/notification.tmpl @@ -0,0 +1,3 @@ +{{template "base/head" .}} +{{template "user/notification/notification_div" .}} +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/notification/notification_div.tmpl b/data/gitea/templates/user/notification/notification_div.tmpl new file mode 100644 index 0000000..9790a70 --- /dev/null +++ b/data/gitea/templates/user/notification/notification_div.tmpl @@ -0,0 +1,125 @@ +
    +
    + {{$notificationUnreadCount := call .NotificationUnreadCount}} +
    + + {{if and (eq .Status 1)}} +
    + {{$.CsrfTokenHtml}} +
    + +
    +
    + {{end}} +
    +
    +
    + {{if not .Notifications}} +
    + {{svg "octicon-inbox" 56 "tw-mb-4"}} + {{if eq .Status 1}} + {{ctx.Locale.Tr "notification.no_unread"}} + {{else}} + {{ctx.Locale.Tr "notification.no_read"}} + {{end}} +
    + {{else}} + {{range $notification := .Notifications}} +
    +
    + {{if .Issue}} + {{template "shared/issueicon" .Issue}} + {{else}} + {{svg "octicon-repo" 16 "text grey"}} + {{end}} +
    + +
    + {{.Repository.FullName}} {{if .Issue}}#{{.Issue.Index}}{{end}} + {{if eq .Status 3}} + {{svg "octicon-pin" 13 "text blue tw-mt-0.5 tw-ml-1"}} + {{end}} +
    +
    + + {{if .Issue}} + {{.Issue.Title | RenderEmoji $.Context | RenderCodeBlock}} + {{else}} + {{.Repository.FullName}} + {{end}} + +
    +
    +
    + {{if .Issue}} + {{TimeSinceUnix .Issue.UpdatedUnix ctx.Locale}} + {{else}} + {{TimeSinceUnix .UpdatedUnix ctx.Locale}} + {{end}} +
    +
    + {{if ne .Status 3}} +
    + {{$.CsrfTokenHtml}} + + + +
    + {{end}} + {{if or (eq .Status 1) (eq .Status 3)}} +
    + {{$.CsrfTokenHtml}} + + + + +
    + {{else if eq .Status 2}} +
    + {{$.CsrfTokenHtml}} + + + + +
    + {{end}} +
    +
    + {{end}} + {{end}} +
    +
    + {{template "base/paginate" .}} +
    +
    diff --git a/data/gitea/templates/user/notification/notification_subscriptions.tmpl b/data/gitea/templates/user/notification/notification_subscriptions.tmpl new file mode 100644 index 0000000..b92a32a --- /dev/null +++ b/data/gitea/templates/user/notification/notification_subscriptions.tmpl @@ -0,0 +1,79 @@ +{{template "base/head" .}} +
    +
    + +
    + {{if eq .Status 1}} + +
    + {{if not .Issues}} + {{ctx.Locale.Tr "notification.no_subscriptions"}} + {{else}} + {{template "shared/issuelist" dict "." . "listType" "dashboard"}} + {{end}} + {{else}} + {{template "shared/repo_search" .}} + {{template "explore/repo_list" .}} + {{template "base/paginate" .}} + {{end}} +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/overview/header.tmpl b/data/gitea/templates/user/overview/header.tmpl new file mode 100644 index 0000000..275c4e2 --- /dev/null +++ b/data/gitea/templates/user/overview/header.tmpl @@ -0,0 +1,50 @@ + + + diff --git a/data/gitea/templates/user/overview/package_versions.tmpl b/data/gitea/templates/user/overview/package_versions.tmpl new file mode 100644 index 0000000..0ac2db0 --- /dev/null +++ b/data/gitea/templates/user/overview/package_versions.tmpl @@ -0,0 +1,24 @@ +{{template "base/head" .}} +{{if .ContextUser.IsOrganization}} +
    + {{template "org/header" .}} +
    + {{template "package/shared/versionlist" .}} +
    +
    +{{else}} +
    +
    +
    +
    + {{template "shared/user/profile_big_avatar" .}} +
    +
    + {{template "user/overview/header" .}} + {{template "package/shared/versionlist" .}} +
    +
    +
    +
    +{{end}} +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/overview/packages.tmpl b/data/gitea/templates/user/overview/packages.tmpl new file mode 100644 index 0000000..bb2238b --- /dev/null +++ b/data/gitea/templates/user/overview/packages.tmpl @@ -0,0 +1,24 @@ +{{template "base/head" .}} +{{if .ContextUser.IsOrganization}} +
    + {{template "org/header" .}} +
    + {{template "package/shared/list" .}} +
    +
    +{{else}} +
    +
    +
    +
    + {{template "shared/user/profile_big_avatar" .}} +
    +
    + {{template "user/overview/header" .}} + {{template "package/shared/list" .}} +
    +
    +
    +
    +{{end}} +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/profile.tmpl b/data/gitea/templates/user/profile.tmpl new file mode 100644 index 0000000..cf61bb9 --- /dev/null +++ b/data/gitea/templates/user/profile.tmpl @@ -0,0 +1,39 @@ +{{template "base/head" .}} +
    +
    +
    +
    + {{template "shared/user/profile_big_avatar" .}} +
    +
    + {{template "user/overview/header" .}} + {{if eq .TabName "activity"}} + {{if .ContextUser.KeepActivityPrivate}} +
    +

    {{ctx.Locale.Tr "user.disabled_public_activity"}}

    +
    + {{end}} + {{template "user/heatmap" .}} + {{template "user/dashboard/feeds" .}} + {{else if eq .TabName "stars"}} +
    + {{template "shared/repo_search" .}} + {{template "explore/repo_list" .}} + {{template "base/paginate" .}} +
    + {{else if eq .TabName "following"}} + {{template "repo/user_cards" .}} + {{else if eq .TabName "followers"}} + {{template "repo/user_cards" .}} + {{else if eq .TabName "overview"}} +
    {{.ProfileReadme}}
    + {{else}} + {{template "shared/repo_search" .}} + {{template "explore/repo_list" .}} + {{template "base/paginate" .}} + {{end}} +
    +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/settings/account.tmpl b/data/gitea/templates/user/settings/account.tmpl new file mode 100644 index 0000000..2aaf853 --- /dev/null +++ b/data/gitea/templates/user/settings/account.tmpl @@ -0,0 +1,180 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings account")}} +
    +

    + {{ctx.Locale.Tr "settings.password"}} +

    +
    + {{if or (.SignedUser.IsLocal) (.SignedUser.IsOAuth2)}} +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} + {{if .SignedUser.IsPasswordSet}} +
    + + +
    + {{end}} +
    + + +
    +
    + + +
    + +
    + + {{ctx.Locale.Tr "auth.forgot_password"}} +
    +
    + {{else}} +
    +

    {{ctx.Locale.Tr "settings.password_change_disabled"}}

    +
    + {{end}} +
    + +

    + {{ctx.Locale.Tr "settings.manage_emails"}} +

    +
    +
    + {{if $.EnableNotifyMail}} +
    +
    {{ctx.Locale.Tr "settings.email_desc"}}
    +
    + {{$.CsrfTokenHtml}} + +
    + + +
    +
    +
    + {{end}} + {{range .Emails}} +
    + {{if not .IsPrimary}} +
    + +
    + {{if .CanBePrimary}} +
    +
    + {{$.CsrfTokenHtml}} + + + +
    +
    + {{end}} + {{end}} + {{if not .IsActivated}} +
    +
    + {{$.CsrfTokenHtml}} + + + {{if $.ActivationsPending}} + + {{else}} + + {{end}} +
    +
    + {{end}} +
    + {{.Email}} + {{if .IsPrimary}} +
    {{ctx.Locale.Tr "settings.primary"}}
    + {{end}} + {{if .IsActivated}} +
    {{ctx.Locale.Tr "settings.activated"}}
    + {{else}} +
    {{ctx.Locale.Tr "settings.requires_activation"}}
    + {{end}} +
    +
    + {{end}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    + +
    + {{/* if ActivationsPending is false, then CanAddEmails must be true, so if CanAddEmails is false, ActivationsPending must be true */}} + {{if not .CanAddEmails}} +
    {{ctx.Locale.Tr "settings.can_not_add_email_activations_pending"}}
    + {{end}} +
    + + {{if not ($.UserDisabledFeatures.Contains "deletion")}} +

    + {{ctx.Locale.Tr "settings.delete_account"}} +

    +
    +
    +

    {{svg "octicon-alert"}} {{ctx.Locale.Tr "settings.delete_prompt"}}

    + {{if .UserDeleteWithComments}} +

    {{ctx.Locale.Tr "settings.delete_with_all_comments" .UserDeleteWithCommentsMaxTime}}

    + {{end}} +
    +
    + {{template "base/disable_form_autofill"}} + {{.CsrfTokenHtml}} +
    + + +
    +
    + +
    +
    + +
    + {{end}} +
    + + + +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/actions.tmpl b/data/gitea/templates/user/settings/actions.tmpl new file mode 100644 index 0000000..abc5443 --- /dev/null +++ b/data/gitea/templates/user/settings/actions.tmpl @@ -0,0 +1,12 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings actions")}} +
    + {{if eq .PageType "secrets"}} + {{template "shared/secrets/add_list" .}} + {{else if eq .PageType "runners"}} + {{template "shared/actions/runner_list" .}} + {{else if eq .PageType "variables"}} + {{template "shared/variables/variable_list" .}} + {{end}} +
    + +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/appearance.tmpl b/data/gitea/templates/user/settings/appearance.tmpl new file mode 100644 index 0000000..4fa2489 --- /dev/null +++ b/data/gitea/templates/user/settings/appearance.tmpl @@ -0,0 +1,157 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings")}} +
    + + +

    + {{ctx.Locale.Tr "settings.manage_themes"}} +

    +
    +
    + {{.CsrfTokenHtml}} + +
    + + +
    +
    + +
    +
    +
    + + +

    + {{ctx.Locale.Tr "settings.language"}} +

    +
    +
    + {{.CsrfTokenHtml}} +
    + +
    +
    + +
    +
    +
    + + +

    + {{ctx.Locale.Tr "settings.hidden_comment_types"}} +

    +
    +

    + {{ctx.Locale.Tr "settings.hidden_comment_types_description"}} +

    +
    + {{.CsrfTokenHtml}} +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    + +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    + +
    +
    +
    +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/applications.tmpl b/data/gitea/templates/user/settings/applications.tmpl new file mode 100644 index 0000000..65525aa --- /dev/null +++ b/data/gitea/templates/user/settings/applications.tmpl @@ -0,0 +1,115 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings applications")}} +
    +

    + {{ctx.Locale.Tr "settings.manage_access_token"}} +

    +
    +
    +
    + {{ctx.Locale.Tr "settings.tokens_desc"}} +
    + {{range .Tokens}} +
    +
    + + {{svg "fontawesome-send" 32}} + +
    +
    +
    + {{.Name}} +

    + {{ctx.Locale.Tr "settings.repo_and_org_access"}}: + {{if .DisplayPublicOnly}} + {{ctx.Locale.Tr "settings.permissions_public_only"}} + {{else}} + {{ctx.Locale.Tr "settings.permissions_access_all"}} + {{end}} +

    +

    {{ctx.Locale.Tr "settings.permissions_list"}}

    +
      + {{range .Scope.StringSlice}} + {{if (ne . $.AccessTokenScopePublicOnly)}} +
    • {{.}}
    • + {{end}} + {{end}} +
    +
    +
    + {{ctx.Locale.Tr "settings.added_on" (DateTime "short" .CreatedUnix)}} — {{svg "octicon-info"}} {{if .HasUsed}}{{ctx.Locale.Tr "settings.last_used"}} {{DateTime "short" .UpdatedUnix}}{{else}}{{ctx.Locale.Tr "settings.no_activity"}}{{end}} +
    +
    +
    + +
    +
    + {{end}} +
    +
    +
    +
    + {{ctx.Locale.Tr "settings.generate_new_token"}} +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + + +
    +
    + + {{ctx.Locale.Tr "settings.select_permissions"}} + +

    + {{ctx.Locale.Tr "settings.access_token_desc" (HTMLFormat `href="%s/api/swagger" target="_blank"` AppSubUrl) (`href="https://docs.gitea.com/development/oauth2-provider#scopes" target="_blank"`|SafeHTML)}} +

    +
    +
    +
    + +
    {{/* Fomantic ".ui.form .warning.message" is hidden by default, so put the warning message out of the form*/}} +
    + {{ctx.Locale.Tr "settings.at_least_one_permission"}} +
    +
    + + {{if .EnableOAuth2}} + {{template "user/settings/grants_oauth2" .}} + {{template "user/settings/applications_oauth2" .}} + {{end}} +
    + + + +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/applications_oauth2.tmpl b/data/gitea/templates/user/settings/applications_oauth2.tmpl new file mode 100644 index 0000000..866a1f8 --- /dev/null +++ b/data/gitea/templates/user/settings/applications_oauth2.tmpl @@ -0,0 +1,6 @@ +

    + {{ctx.Locale.Tr "settings.manage_oauth2_applications"}} +

    + +{{template "user/settings/applications_oauth2_list" .}} + diff --git a/data/gitea/templates/user/settings/applications_oauth2_edit.tmpl b/data/gitea/templates/user/settings/applications_oauth2_edit.tmpl new file mode 100644 index 0000000..2858ecd --- /dev/null +++ b/data/gitea/templates/user/settings/applications_oauth2_edit.tmpl @@ -0,0 +1,6 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings applications")}} +
    + + {{template "user/settings/applications_oauth2_edit_form" .}} +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/applications_oauth2_edit_form.tmpl b/data/gitea/templates/user/settings/applications_oauth2_edit_form.tmpl new file mode 100644 index 0000000..e62115d --- /dev/null +++ b/data/gitea/templates/user/settings/applications_oauth2_edit_form.tmpl @@ -0,0 +1,54 @@ +

    + {{ctx.Locale.Tr "settings.edit_oauth2_application"}} +

    +
    +

    {{ctx.Locale.Tr "settings.oauth2_application_create_description"}}

    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    + {{if .ClientSecret}} +
    + + +
    + {{else}} +
    + + +
    + {{end}} +
    + +
    + {{.CsrfTokenHtml}} + {{ctx.Locale.Tr "settings.oauth2_regenerate_secret_hint"}} + +
    +
    +
    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    +
    + + +
    +
    + +
    +
    diff --git a/data/gitea/templates/user/settings/applications_oauth2_list.tmpl b/data/gitea/templates/user/settings/applications_oauth2_list.tmpl new file mode 100644 index 0000000..e9e0217 --- /dev/null +++ b/data/gitea/templates/user/settings/applications_oauth2_list.tmpl @@ -0,0 +1,74 @@ +
    +
    +
    + {{ctx.Locale.Tr "settings.oauth2_application_create_description"}} +
    + {{range .Applications}} +
    +
    + {{svg "octicon-apps" 32}} +
    +
    +
    {{.Name}}
    +
    + {{ctx.Locale.Tr "settings.oauth2_client_id"}} + {{.ClientID}} +
    +
    + {{$isBuiltin := and $.BuiltinApplications (index $.BuiltinApplications .ClientID)}} +
    + {{if $isBuiltin}} + {{ctx.Locale.Tr "locked"}} + {{else}} + + {{svg "octicon-pencil" 16 "tw-mr-1"}} + {{ctx.Locale.Tr "settings.oauth2_application_edit"}} + + + {{end}} +
    +
    + {{end}} +
    + + +
    + +
    +
    + {{ctx.Locale.Tr "settings.create_oauth2_application"}} +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    +
    + + +
    +
    + +
    +
    diff --git a/data/gitea/templates/user/settings/blocked_users.tmpl b/data/gitea/templates/user/settings/blocked_users.tmpl new file mode 100644 index 0000000..e495b85 --- /dev/null +++ b/data/gitea/templates/user/settings/blocked_users.tmpl @@ -0,0 +1,5 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings blocked_users")}} +
    + {{template "shared/user/blocked_users" .}} +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/grants_oauth2.tmpl b/data/gitea/templates/user/settings/grants_oauth2.tmpl new file mode 100644 index 0000000..b5ae3e0 --- /dev/null +++ b/data/gitea/templates/user/settings/grants_oauth2.tmpl @@ -0,0 +1,40 @@ +

    + {{ctx.Locale.Tr "settings.authorized_oauth2_applications"}} +

    +
    +
    +
    + {{ctx.Locale.Tr "settings.authorized_oauth2_applications_description"}} +
    + {{range .Grants}} +
    +
    + {{svg "octicon-key" 32}} +
    +
    +
    {{.Application.Name}}
    +
    + {{ctx.Locale.Tr "settings.added_on" (DateTime "short" .CreatedUnix)}} +
    +
    +
    + +
    +
    + {{end}} +
    + + +
    diff --git a/data/gitea/templates/user/settings/hook_new.tmpl b/data/gitea/templates/user/settings/hook_new.tmpl new file mode 100644 index 0000000..be21f59 --- /dev/null +++ b/data/gitea/templates/user/settings/hook_new.tmpl @@ -0,0 +1,7 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings new webhook")}} +
    + {{$CustomHeaderTitle := ctx.Locale.Tr "repo.settings.update_webhook"}} + {{if .PageIsSettingsHooksNew}}{{$CustomHeaderTitle = ctx.Locale.Tr "repo.settings.add_webhook"}}{{end}} + {{template "webhook/new" (dict "ctxData" . "CustomHeaderTitle" $CustomHeaderTitle)}} +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/hooks.tmpl b/data/gitea/templates/user/settings/hooks.tmpl new file mode 100644 index 0000000..477c333 --- /dev/null +++ b/data/gitea/templates/user/settings/hooks.tmpl @@ -0,0 +1,5 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings webhooks")}} +
    + {{template "repo/settings/webhook/list" .}} +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/keys.tmpl b/data/gitea/templates/user/settings/keys.tmpl new file mode 100644 index 0000000..e0f5e42 --- /dev/null +++ b/data/gitea/templates/user/settings/keys.tmpl @@ -0,0 +1,11 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings sshkeys")}} +
    + {{if not ($.UserDisabledFeatures.Contains "manage_ssh_keys")}} + {{template "user/settings/keys_ssh" .}} + {{end}} + {{template "user/settings/keys_principal" .}} + {{if not ($.UserDisabledFeatures.Contains "manage_gpg_keys")}} + {{template "user/settings/keys_gpg" .}} + {{end}} +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/keys_gpg.tmpl b/data/gitea/templates/user/settings/keys_gpg.tmpl new file mode 100644 index 0000000..d86d838 --- /dev/null +++ b/data/gitea/templates/user/settings/keys_gpg.tmpl @@ -0,0 +1,123 @@ +

    + {{ctx.Locale.Tr "settings.manage_gpg_keys"}} +
    + +
    +

    +
    +
    +
    + {{.CsrfTokenHtml}} + +
    + + +
    + {{if .Err_Signature}} +
    +

    {{ctx.Locale.Tr "settings.gpg_token_required"}}

    +
    +
    + + +
    +

    {{ctx.Locale.Tr "settings.gpg_token_help"}}

    +

    {{printf `echo "%s" | gpg -a --default-key %s --detach-sig` .TokenToSign .PaddedKeyID}}

    +
    +
    +
    + + +
    + {{end}} + + + +
    +
    +
    +
    +

    + {{ctx.Locale.Tr "settings.gpg_desc"}}
    + {{ctx.Locale.Tr "settings.gpg_helper" "https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/about-commit-signature-verification#gpg-commit-signature-verification"}} +

    +
    + {{range .GPGKeys}} +
    +
    + {{svg "octicon-key" 32}} +
    +
    + {{if .Verified}} + {{svg "octicon-verified"}} {{ctx.Locale.Tr "settings.gpg_key_verified"}} + {{end}} + {{if .Emails}} + {{svg "octicon-mail"}} {{ctx.Locale.Tr "settings.gpg_key_matched_identities"}} {{range .Emails}}{{.Email}} {{end}} + {{end}} +
    + {{ctx.Locale.Tr "settings.key_id"}}: {{.PaddedKeyID}} + {{ctx.Locale.Tr "settings.subkeys"}}: {{range .SubsKey}} {{.PaddedKeyID}} {{end}} +
    +
    + {{ctx.Locale.Tr "settings.added_on" (DateTime "short" .AddedUnix)}} + - + {{if not .ExpiredUnix.IsZero}}{{ctx.Locale.Tr "settings.valid_until_date" (DateTime "short" .ExpiredUnix)}}{{else}}{{ctx.Locale.Tr "settings.valid_forever"}}{{end}} +
    +
    +
    + + {{if and (not .Verified) (ne $.VerifyingID .KeyID)}} + {{ctx.Locale.Tr "settings.gpg_key_verify"}} + {{end}} +
    +
    + {{if and (not .Verified) (eq $.VerifyingID .KeyID)}} +
    +

    {{ctx.Locale.Tr "settings.gpg_token_required"}}

    +
    + {{$.CsrfTokenHtml}} + + + +
    + + +
    +

    {{ctx.Locale.Tr "settings.gpg_token_help"}}

    +

    {{printf `echo "%s" | gpg -a --default-key %s --detach-sig` $.TokenToSign .PaddedKeyID}}

    +
    +
    +
    +
    + + +
    + + + + {{ctx.Locale.Tr "settings.cancel"}} + +
    +
    + {{end}} + {{end}} +
    + +
    diff --git a/data/gitea/templates/user/settings/keys_principal.tmpl b/data/gitea/templates/user/settings/keys_principal.tmpl new file mode 100644 index 0000000..37d8fb0 --- /dev/null +++ b/data/gitea/templates/user/settings/keys_principal.tmpl @@ -0,0 +1,69 @@ +{{if .AllowPrincipals}} +

    + {{ctx.Locale.Tr "settings.manage_ssh_principals"}} +
    + {{if not .DisableSSH}} + + {{else}} + + {{end}} +
    +

    +
    +
    +
    + {{ctx.Locale.Tr "settings.principal_desc"}} +
    + {{range .Principals}} +
    +
    + {{svg "octicon-key" 32}} +
    +
    +
    {{.Name}}
    +
    + {{ctx.Locale.Tr "settings.added_on" (DateTime "short" .CreatedUnix)}} — {{svg "octicon-info" 16}} {{if .HasUsed}}{{ctx.Locale.Tr "settings.last_used"}} {{DateTime "short" .UpdatedUnix}}{{else}}{{ctx.Locale.Tr "settings.no_activity"}}{{end}} +
    +
    +
    + +
    +
    + {{end}} +
    +
    +
    + +
    +

    + {{ctx.Locale.Tr "settings.add_new_principal"}} +

    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    + + + +
    +
    +
    + + +{{end}} diff --git a/data/gitea/templates/user/settings/keys_ssh.tmpl b/data/gitea/templates/user/settings/keys_ssh.tmpl new file mode 100644 index 0000000..a2af1b7 --- /dev/null +++ b/data/gitea/templates/user/settings/keys_ssh.tmpl @@ -0,0 +1,111 @@ +

    + {{ctx.Locale.Tr "settings.manage_ssh_keys"}} +
    + +
    +

    +
    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    + + + +
    +
    +
    +
    +

    + {{ctx.Locale.Tr "settings.ssh_desc"}}
    + {{ctx.Locale.Tr "settings.ssh_helper" "https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/connecting-to-github-with-ssh" "https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/troubleshooting-ssh"}} +

    +
    + {{if .DisableSSH}} +
    + {{ctx.Locale.Tr "settings.ssh_signonly"}} +
    + {{end}} + {{range $index, $key := .Keys}} +
    +
    + {{svg "octicon-key" 32}} +
    +
    + {{if .Verified}} +
    {{svg "octicon-verified"}}{{ctx.Locale.Tr "settings.ssh_key_verified"}}
    + {{end}} +
    {{.Name}}
    +
    + {{.Fingerprint}} +
    +
    + {{ctx.Locale.Tr "settings.added_on" (DateTime "short" .CreatedUnix)}} — {{svg "octicon-info"}} {{if .HasUsed}}{{ctx.Locale.Tr "settings.last_used"}} {{DateTime "short" .UpdatedUnix}}{{else}}{{ctx.Locale.Tr "settings.no_activity"}}{{end}} +
    +
    +
    + + {{if and (not .Verified) (ne $.VerifyingFingerprint .Fingerprint)}} + {{ctx.Locale.Tr "settings.ssh_key_verify"}} + {{end}} +
    +
    + {{if and (not .Verified) (eq $.VerifyingFingerprint .Fingerprint)}} +
    +

    {{ctx.Locale.Tr "settings.ssh_token_required"}}

    +
    + {{$.CsrfTokenHtml}} + + + +
    + + +
    +

    {{ctx.Locale.Tr "settings.ssh_token_help"}}

    +

    {{printf "echo -n '%s' | ssh-keygen -Y sign -n gitea -f /path_to_PrivateKey_or_RelatedPublicKey" $.TokenToSign}}

    +
    +
    +
    +
    + + +
    + + + + {{ctx.Locale.Tr "settings.cancel"}} + +
    +
    + {{end}} + {{end}} +
    + +
    diff --git a/data/gitea/templates/user/settings/layout_footer.tmpl b/data/gitea/templates/user/settings/layout_footer.tmpl new file mode 100644 index 0000000..46120d5 --- /dev/null +++ b/data/gitea/templates/user/settings/layout_footer.tmpl @@ -0,0 +1,11 @@ +{{if false}}{{/* to make html structure "likely" complete to prevent IDE warnings */}} +
    +
    +
    + {{/* block: user-setting-content */}} +{{end}} + +
    +
    +
    +{{template "base/footer" .}} diff --git a/data/gitea/templates/user/settings/layout_head.tmpl b/data/gitea/templates/user/settings/layout_head.tmpl new file mode 100644 index 0000000..dce496e --- /dev/null +++ b/data/gitea/templates/user/settings/layout_head.tmpl @@ -0,0 +1,13 @@ +{{template "base/head" .ctxData}} +
    +
    + {{template "user/settings/navbar" .ctxData}} +
    + {{template "base/alert" .ctxData}} + {{/* block: user-setting-content */}} + +{{if false}}{{/* to make html structure "likely" complete to prevent IDE warnings */}} +
    +
    +
    +{{end}} diff --git a/data/gitea/templates/user/settings/navbar.tmpl b/data/gitea/templates/user/settings/navbar.tmpl new file mode 100644 index 0000000..c360944 --- /dev/null +++ b/data/gitea/templates/user/settings/navbar.tmpl @@ -0,0 +1,58 @@ + diff --git a/data/gitea/templates/user/settings/organization.tmpl b/data/gitea/templates/user/settings/organization.tmpl new file mode 100644 index 0000000..16c27b5 --- /dev/null +++ b/data/gitea/templates/user/settings/organization.tmpl @@ -0,0 +1,55 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings organization")}} +
    +

    + {{ctx.Locale.Tr "settings.orgs"}} + {{if .SignedUser.CanCreateOrganization}} + + {{end}} +

    +
    + {{if .Orgs}} +
    + {{range .Orgs}} +
    +
    + {{ctx.AvatarUtils.Avatar . 28 "mini"}} +
    +
    +
    {{template "shared/user/name" .}}
    +
    + {{.Description}} +
    +
    +
    +
    + {{$.CsrfTokenHtml}} + +
    +
    +
    + {{end}} +
    + {{template "base/paginate" .}} + {{else}} + {{ctx.Locale.Tr "settings.orgs_none"}} + {{end}} +
    +
    + + + +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/packages.tmpl b/data/gitea/templates/user/settings/packages.tmpl new file mode 100644 index 0000000..80853ea --- /dev/null +++ b/data/gitea/templates/user/settings/packages.tmpl @@ -0,0 +1,24 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings packages")}} +
    + {{template "package/shared/cleanup_rules/list" .}} + {{template "package/shared/cargo" .}} + +

    + {{ctx.Locale.Tr "packages.owner.settings.chef.title"}} +

    +
    +
    +
    + +
    +
    + {{.CsrfTokenHtml}} + +
    +
    + +
    +
    +
    +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/packages_cleanup_rules_edit.tmpl b/data/gitea/templates/user/settings/packages_cleanup_rules_edit.tmpl new file mode 100644 index 0000000..522b524 --- /dev/null +++ b/data/gitea/templates/user/settings/packages_cleanup_rules_edit.tmpl @@ -0,0 +1,5 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings packages")}} +
    + {{template "package/shared/cleanup_rules/edit" .}} +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/packages_cleanup_rules_preview.tmpl b/data/gitea/templates/user/settings/packages_cleanup_rules_preview.tmpl new file mode 100644 index 0000000..d99aee4 --- /dev/null +++ b/data/gitea/templates/user/settings/packages_cleanup_rules_preview.tmpl @@ -0,0 +1,5 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user packages admin")}} +
    + {{template "package/shared/cleanup_rules/preview" .}} +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/profile.tmpl b/data/gitea/templates/user/settings/profile.tmpl new file mode 100644 index 0000000..aaaf8f3 --- /dev/null +++ b/data/gitea/templates/user/settings/profile.tmpl @@ -0,0 +1,134 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings profile")}} +
    +

    + {{ctx.Locale.Tr "settings.public_profile"}} +

    +
    +

    {{ctx.Locale.Tr "settings.profile_desc"}}

    +
    + {{.CsrfTokenHtml}} +
    + + + {{if or (not .SignedUser.IsLocal) .IsReverseProxy}} +

    {{ctx.Locale.Tr "settings.password_username_disabled"}}

    + {{end}} +
    +
    + + +
    +
    + +

    {{.SignedUser.Email}}

    +
    +
    + + +
    +
    + + +
    +
    + + +
    + +
    + + +
    + +
    + +
    + + +
    + +
    +
    + + +
    +
    + +
    +
    + + +
    +
    + +
    + +
    + +
    +
    +
    + +

    + {{ctx.Locale.Tr "settings.avatar"}} +

    +
    +
    + {{.CsrfTokenHtml}} + {{if not .DisableGravatar}} +
    +
    + + +
    +
    +
    + + +
    + {{end}} + +
    +
    + + +
    +
    + +
    + + +
    + +
    + + +
    +
    +
    +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/repos.tmpl b/data/gitea/templates/user/settings/repos.tmpl new file mode 100644 index 0000000..a50fb58 --- /dev/null +++ b/data/gitea/templates/user/settings/repos.tmpl @@ -0,0 +1,130 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings repos")}} +
    +

    + {{ctx.Locale.Tr "settings.repos"}} +

    +
    + {{if or .allowAdopt .allowDelete}} + {{if .Dirs}} +
    + {{range $dirI, $dir := .Dirs}} + {{$repo := index $.ReposMap $dir}} +
    {{/* if not repo, then there are "adapt" buttons, so the padding shouldn't be that default large*/}} +
    + {{if $repo}} + {{if $repo.IsPrivate}} + {{svg "octicon-lock"}} + {{else if $repo.IsFork}} + {{svg "octicon-repo-forked"}} + {{else if $repo.IsMirror}} + {{svg "octicon-mirror"}} + {{else if $repo.IsTemplate}} + {{svg "octicon-repo-template"}} + {{else}} + {{svg "octicon-repo"}} + {{end}} + {{$repo.OwnerName}}/{{$repo.Name}} + {{FileSize $repo.Size}} + {{if $repo.IsFork}} + {{ctx.Locale.Tr "repo.forked_from"}} + {{$repo.BaseRepo.OwnerName}}/{{$repo.BaseRepo.Name}} + {{end}} + {{else}} + {{svg "octicon-file-directory-fill"}} + {{$.ContextUser.Name}}/{{$dir}} +
    + {{if $.allowAdopt}} + + + {{end}} + {{if $.allowDelete}} + + + {{end}} +
    + {{end}} +
    +
    + {{end}} +
    + {{template "base/paginate" .}} + {{else}} +
    + {{ctx.Locale.Tr "settings.repos_none"}} +
    + {{end}} + {{else}} + {{if .Repos}} +
    + {{range .Repos}} +
    +
    + {{if .IsPrivate}} + {{svg "octicon-lock" 16 "text gold"}} + {{else if .IsFork}} + {{svg "octicon-repo-forked"}} + {{else if .IsMirror}} + {{svg "octicon-mirror"}} + {{else if .IsTemplate}} + {{svg "octicon-repo-template"}} + {{else}} + {{svg "octicon-repo"}} + {{end}} + {{.OwnerName}}/{{.Name}} + {{FileSize .Size}} + {{if .IsFork}} + {{ctx.Locale.Tr "repo.forked_from"}} + {{.BaseRepo.OwnerName}}/{{.BaseRepo.Name}} + {{end}} +
    +
    + {{end}} +
    + {{template "base/paginate" .}} + {{else}} +
    + {{ctx.Locale.Tr "settings.repos_none"}} +
    + {{end}} + {{end}} +
    +
    + + + +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/runner_edit.tmpl b/data/gitea/templates/user/settings/runner_edit.tmpl new file mode 100644 index 0000000..90c58c1 --- /dev/null +++ b/data/gitea/templates/user/settings/runner_edit.tmpl @@ -0,0 +1,5 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings runners")}} +
    + {{template "shared/actions/runner_edit" .}} +
    +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/security/accountlinks.tmpl b/data/gitea/templates/user/settings/security/accountlinks.tmpl new file mode 100644 index 0000000..0820844 --- /dev/null +++ b/data/gitea/templates/user/settings/security/accountlinks.tmpl @@ -0,0 +1,62 @@ +{{/* No account links, no way to add account links: Menu will not be shown. */}} +{{if or .AccountLinks .OrderedOAuth2Names}} +

    + {{ctx.Locale.Tr "settings.manage_account_links"}} + {{if .OrderedOAuth2Names}} +
    + +
    + {{end}} +

    + +
    +
    +
    + {{ctx.Locale.Tr "settings.manage_account_links_desc"}} +
    + {{range $loginSource, $provider := .AccountLinks}} +
    + {{$providerData := index $.OAuth2Providers $loginSource.Name}} +
    + {{$providerData.IconHTML 20}} +
    +
    + + {{$loginSource.Name}} + + {{if $loginSource.IsActive}} + {{ctx.Locale.Tr "repo.settings.active"}} + {{end}} +
    +
    + +
    +
    + {{end}} +
    + + +
    +{{end}} diff --git a/data/gitea/templates/user/settings/security/openid.tmpl b/data/gitea/templates/user/settings/security/openid.tmpl new file mode 100644 index 0000000..87ba953 --- /dev/null +++ b/data/gitea/templates/user/settings/security/openid.tmpl @@ -0,0 +1,63 @@ +

    + {{ctx.Locale.Tr "settings.manage_openid"}} +

    +
    +
    +
    + {{ctx.Locale.Tr "settings.openid_desc"}} +
    + {{range .OpenIDs}} +
    +
    + {{svg "fontawesome-openid" 20}} +
    +
    +
    {{.URI}}
    +
    +
    +
    + {{$.CsrfTokenHtml}} + + {{if .Show}} + + {{else}} + + {{end}} +
    + +
    +
    + {{end}} +
    +
    +
    +
    + {{.CsrfTokenHtml}} +
    + + +
    + +
    + + +
    diff --git a/data/gitea/templates/user/settings/security/security.tmpl b/data/gitea/templates/user/settings/security/security.tmpl new file mode 100644 index 0000000..aee0456 --- /dev/null +++ b/data/gitea/templates/user/settings/security/security.tmpl @@ -0,0 +1,11 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings security")}} +
    + {{template "user/settings/security/twofa" .}} + {{template "user/settings/security/webauthn" .}} + {{template "user/settings/security/accountlinks" .}} + {{if .EnableOpenIDSignIn}} + {{template "user/settings/security/openid" .}} + {{end}} +
    + +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/security/twofa.tmpl b/data/gitea/templates/user/settings/security/twofa.tmpl new file mode 100644 index 0000000..adebce4 --- /dev/null +++ b/data/gitea/templates/user/settings/security/twofa.tmpl @@ -0,0 +1,37 @@ +

    + {{ctx.Locale.Tr "settings.twofa"}} +

    +
    +

    {{ctx.Locale.Tr "settings.twofa_desc"}}

    + {{if .TOTPEnrolled}} +

    {{ctx.Locale.Tr "settings.twofa_is_enrolled"}}

    +
    + {{.CsrfTokenHtml}} +

    {{ctx.Locale.Tr "settings.regenerate_scratch_token_desc"}}

    + +
    +
    + {{.CsrfTokenHtml}} +

    {{ctx.Locale.Tr "settings.twofa_disable_note"}}

    + +
    + {{else}} + {{/* The recovery tip is there as a means of encouraging a user to enroll */}} +

    {{ctx.Locale.Tr "settings.twofa_recovery_tip"}}

    +

    {{ctx.Locale.Tr "settings.twofa_not_enrolled"}}

    + + {{end}} + + +
    diff --git a/data/gitea/templates/user/settings/security/twofa_enroll.tmpl b/data/gitea/templates/user/settings/security/twofa_enroll.tmpl new file mode 100644 index 0000000..d6bfadf --- /dev/null +++ b/data/gitea/templates/user/settings/security/twofa_enroll.tmpl @@ -0,0 +1,25 @@ +{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings twofa")}} +
    +

    + {{ctx.Locale.Tr "settings.twofa_enroll"}} +

    +
    +

    {{ctx.Locale.Tr "settings.scan_this_image"}}

    + {{.TwofaSecret}} +

    {{ctx.Locale.Tr "settings.or_enter_secret" .TwofaSecret}}

    +

    {{ctx.Locale.Tr "settings.then_enter_passcode"}}

    +
    + {{.CsrfTokenHtml}} +
    + + +
    +
    + + +
    +
    +
    +
    + +{{template "user/settings/layout_footer" .}} diff --git a/data/gitea/templates/user/settings/security/webauthn.tmpl b/data/gitea/templates/user/settings/security/webauthn.tmpl new file mode 100644 index 0000000..eceee19 --- /dev/null +++ b/data/gitea/templates/user/settings/security/webauthn.tmpl @@ -0,0 +1,43 @@ +

    {{ctx.Locale.Tr "settings.webauthn"}}

    +
    +

    {{ctx.Locale.Tr "settings.webauthn_desc"}}

    +

    {{ctx.Locale.Tr "settings.webauthn_key_loss_warning"}} {{ctx.Locale.Tr "settings.webauthn_alternative_tip"}}

    + {{template "user/auth/webauthn_error" .}} +
    + {{range .WebAuthnCredentials}} +
    +
    + {{svg "octicon-key" 32}} +
    +
    +
    {{.Name}}
    +
    + {{ctx.Locale.Tr "settings.added_on" (DateTime "short" .CreatedUnix)}} +
    +
    +
    + +
    +
    + {{end}} +
    +
    +
    + + +
    + +
    + +
    diff --git a/data/gitea/templates/webhook/new.tmpl b/data/gitea/templates/webhook/new.tmpl new file mode 100644 index 0000000..8ef33df --- /dev/null +++ b/data/gitea/templates/webhook/new.tmpl @@ -0,0 +1,25 @@ +

    + {{.CustomHeaderTitle}} + +

    +
    + {{template "repo/settings/webhook/gitea" .ctxData}} + {{template "repo/settings/webhook/gogs" .ctxData}} + {{template "repo/settings/webhook/slack" .ctxData}} + {{template "repo/settings/webhook/discord" .ctxData}} + {{template "repo/settings/webhook/dingtalk" .ctxData}} + {{template "repo/settings/webhook/telegram" .ctxData}} + {{template "repo/settings/webhook/msteams" .ctxData}} + {{template "repo/settings/webhook/feishu" .ctxData}} + {{template "repo/settings/webhook/matrix" .ctxData}} + {{template "repo/settings/webhook/wechatwork" .ctxData}} + {{template "repo/settings/webhook/packagist" .ctxData}} +
    +{{template "repo/settings/webhook/history" .ctxData}} diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 0000000..b8f0c7e --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,23 @@ +version: "3" + +networks: + gitea: + external: false + +services: + server: + image: gitea/gitea:1.22.3 + container_name: tea + environment: + - USER_UID=1000 + - USER_GID=1000 + restart: always + networks: + - gitea + volumes: + - ./data:/data + - /etc/timezone:/etc/timezone:ro + - /etc/localtime:/etc/localtime:ro + ports: + - "127.0.0.1:8082:3000" + - "127.0.0.1:222:22"