From d34629f418f5823baf0efb06d2b799e4e6f6c71c Mon Sep 17 00:00:00 2001 From: Jakub Jankiewicz Date: Sun, 17 Nov 2024 14:13:47 +0100 Subject: [PATCH] experimental `--cols` CSS variable --- CHANGELOG.md | 1 + css/emoji.css | 2 +- css/jquery.terminal-src.css | 7 ++++++- css/jquery.terminal.css | 9 +++++++-- css/jquery.terminal.min.css | 4 ++-- css/jquery.terminal.min.css.map | 2 +- js/jquery.terminal-src.js | 10 ++++++++++ js/jquery.terminal.js | 14 ++++++++++++-- js/jquery.terminal.min.js | 4 ++-- js/jquery.terminal.min.js.map | 2 +- 10 files changed, 43 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5bd81653..664923d4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ### Features * add `id` option that allow to create same terminal using hot reload [#978](https://github.com/jcubic/jquery.terminal/issues/978) * allow using Object URLs in links [#982](https://github.com/jcubic/jquery.terminal/issues/982) +* experimental `--cols` CSS variable ### Bugfix * fix `terminal::login()` when user already authenticated [#980](https://github.com/jcubic/jquery.terminal/issues/980) * improve mobile support diff --git a/css/emoji.css b/css/emoji.css index da53b8c6..efb48fef 100644 --- a/css/emoji.css +++ b/css/emoji.css @@ -2,7 +2,7 @@ * Autogenerated by mkemoji script from jQuery Terminal * Copyright (C) Jakub T. Jankiewicz * ship with version: 2.44.1 - * build: Tue, 08 Oct 2024 20:29:55 GMT + * build: Sun, 17 Nov 2024 13:13:42 GMT */ .terminal-output .emoji.hash,.cmd .emoji.hash{background-image:url(https://cdn.jsdelivr.net/npm/emoji-datasource-twitter/img/twitter/64/0023-fe0f-20e3.png);} .terminal-output .emoji.keycap_star,.cmd .emoji.keycap_star{background-image:url(https://cdn.jsdelivr.net/npm/emoji-datasource-twitter/img/twitter/64/002a-fe0f-20e3.png);} diff --git a/css/jquery.terminal-src.css b/css/jquery.terminal-src.css index 8ec10ddb..d5346994 100644 --- a/css/jquery.terminal-src.css +++ b/css/jquery.terminal-src.css @@ -841,8 +841,13 @@ terminal .terminal-output > div { --terminal-line: calc(var(--size, 1) * (16px / var(--pixel-density, 1)) + 1px / var(--pixel-density, 1)); --terminal-font-size: calc(var(--size, 1) * (12px / var(--pixel-density, 1))); height: auto; - /* force size when user add --rows */ + /* force size when user add --rows and --cols */ height: calc((var(--terminal-line) * var(--rows)) + (var(--padding, 10) * 2px)); + /* + * there is a bug in Chromium https://issues.chromium.org/issues/379430924 + * it give wrong number of characters per line (off by one), it works fine in Firefox and Epiphany + */ + width: calc((var(--cols) * 1ch) + (var(--padding, 10) * 2px) + (var(--terminal-scrollbar, 10) * 1px)); } .terminal .terminal-output > :not(.raw) > div, .cmd div, diff --git a/css/jquery.terminal.css b/css/jquery.terminal.css index c118384a..d74736f1 100644 --- a/css/jquery.terminal.css +++ b/css/jquery.terminal.css @@ -12,7 +12,7 @@ * Copyright (c) 2011-2024 Jakub T. Jankiewicz * Released under the MIT license * - * Date: Thu, 14 Nov 2024 21:18:03 +0000 + * Date: Sun, 17 Nov 2024 13:13:41 +0000 */ .terminal .terminal-output .format, .cmd .format, .cmd-prompt, .cmd-prompt div { @@ -841,8 +841,13 @@ terminal .terminal-output > div { --terminal-line: calc(var(--size, 1) * (16px / var(--pixel-density, 1)) + 1px / var(--pixel-density, 1)); --terminal-font-size: calc(var(--size, 1) * (12px / var(--pixel-density, 1))); height: auto; - /* force size when user add --rows */ + /* force size when user add --rows and --cols */ height: calc((var(--terminal-line) * var(--rows)) + (var(--padding, 10) * 2px)); + /* + * there is a bug in Chromium https://issues.chromium.org/issues/379430924 + * it give wrong number of characters per line (off by one), it works fine in Firefox and Epiphany + */ + width: calc((var(--cols) * 1ch) + (var(--padding, 10) * 2px) + (var(--terminal-scrollbar, 10) * 1px)); } .terminal .terminal-output > :not(.raw) > div, .cmd div, diff --git a/css/jquery.terminal.min.css b/css/jquery.terminal.min.css index 5a16d69c..a8047497 100644 --- a/css/jquery.terminal.min.css +++ b/css/jquery.terminal.min.css @@ -12,8 +12,8 @@ * Copyright (c) 2011-2024 Jakub T. Jankiewicz * Released under the MIT license * - * Date: Thu, 14 Nov 2024 21:18:03 +0000 + * Date: Sun, 17 Nov 2024 13:13:41 +0000 */.cmd .format,.cmd-prompt,.cmd-prompt div,.terminal .terminal-output .format{display:inline-block}.cmd,.terminal h1,.terminal h2,.terminal h3,.terminal h4,.terminal h5,.terminal h6,.terminal pre{margin:0}.cmd .cmd-clipboard{let:-16px;background:transparent!important;border:none!important;box-shadow:none!important;color:transparent!important;height:16px;height:calc(16px/var(--pixel-density, 1))!important;left:calc(-16px/var(--pixel-density, 1))!important;outline:none!important;overflow:hidden!important;padding:0!important;position:absolute!important;resize:none!important;text-indent:-9999em!important;top:0!important;top:calc(var(--cursor-line, 0)*var(--size, 1)*(14px/var(--pixel-density, 1)))!important;white-space:pre!important;width:16px;width:calc(16px/var(--pixel-density, 1))!important;z-index:1000!important}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;left:0;overflow:hidden;position:absolute;top:0;user-select:none;white-space:nowrap;width:1px}.cmd .cursor+span:empty,.cmd div.cmd-end-line span[data-text]:last-child,.cmd div.cmd-end-line span[data-text]:last-child span,.cmd span.cmd-end-line,.cmd span.cmd-end-line span,.cmd textarea{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.terminal audio,.terminal canvas,.terminal img,.terminal object{cursor:default}.terminal{--base-background:var(--background,#000);--base-color:var(--color);contain:content;line-height:normal;position:relative}.terminal-scroller{scrollbar-gutter:stable;box-sizing:border-box;height:100%;overflow-x:hidden;overflow-y:auto;position:relative}terminal.terminal-temp{visibility:hidden}body.terminal{height:100%;min-height:100vh}html{height:100%}body.full-screen-terminal,body.terminal{height:100%;margin:0}body.full-screen-terminal .terminal{height:100%!important}body.full-screen-terminal{height:100%;height:var(--terminal-force-height,100dvh)}.terminal>div.terminal-fill{height:100%;min-height:100%}.terminal>.terminal-pixel{display:inline;height:1px;left:-2px;position:absolute;top:-2px;width:1px}.terminal>.terminal-font .terminal-resizer,.terminal>.terminal-resizer{border:none!important;bottom:0!important;height:100%!important;left:0!important;overflow:hidden!important;padding:0!important;pointer-events:none!important;position:absolute!important;right:0!important;top:0!important;width:100%!important;z-index:-1!important}.cmd{padding:0;position:relative;width:100%;z-index:300}.terminal .cmd,.terminal .cmd div{background:transparent!important}.terminal a[tabindex="1000"],.terminal a[tabindex="1000"]:active,.terminal a[tabindex="1000"]:focus{outline:none}.cmd.cmd.cmd .cmd-inverted,.cmd.cmd.cmd .inverted,.terminal .inverted,.terminal .terminal-inverted{background-color:#aaa!important;color:#000!important}.cmd a[href],.terminal .terminal-output>:not(.raw) a[href],.terminal.external a[href]{color:#37f;color:var(--link-color,#37f);cursor:pointer}.cmd a[href]:not(.terminal-inverted),.terminal .terminal-output>:not(.raw) a[href]:not(.terminal-inverted),.terminal.external a[href]:not(.terminal-inverted){--color:var(--link-color,#37f);text-shadow:0 0 calc(var(--glow)*5px) var(--color,#ccc)}.terminal .terminal-output>:not(.raw) a[href].terminal-inverted,.terminal.external a[href].terminal-inverted{background:var(--color,#ccc);text-shadow:0 0 calc(var(--glow)*5px) var(--background,#000)}.cmd a[href]:hover,.terminal .terminal-output>:not(.raw) a[href]:hover,.terminal.external a[href]:hover{background-color:#37f;background-color:var(--link-color,#37f)!important;color:#000;color:var(--base-background,#000)!important;text-decoration:none}.cmd a[href] span,.terminal .terminal-output>:not(.raw) a[href] span,.terminal.external a[href] span{--color:var(--link-color,#37f);color:#37f!important;color:var(--link-color,#37f)!important;text-decoration:underline}.cmd a[href]:hover span,.terminal .terminal-output>:not(.raw) a[href]:hover span,.terminal.external a[href]:hover span{background-color:#37f!important;background-color:var(--link-color,#37f)!important;color:#000!important;color:var(--background,#000)!important;text-decoration:none}.terminal a[href]{transition-duration:.2s;transition-property:color,background-color;transition-timing-function:ease-out}.cmd .cmd-cursor,.cmd .cmd-cursor-line img,.cmd .cmd-cursor-line>span{display:inline-block}.cmd .cmd-cursor .emoji,.cmd .cmd-cursor.cmd-blink .fa,.cmd .cmd-cursor.cmd-blink .far,.cmd .cmd-cursor.cmd-blink .fas,.cmd .cmd-cursor.cmd-blink a,.cmd .cmd-cursor.cmd-blink>span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span{-webkit-animation:terminal-blink 1s linear infinite;-moz-animation:terminal-blink 1s linear infinite;-ms-animation:terminal-blink 1s linear infinite;animation:terminal-blink 1s linear infinite}.bar.cmd .cmd-inverted,.bar.terminal .inverted{box-shadow:-2px 0 0 -1px #aaa;box-shadow:-2px 0 0 -1px var(--original-color,#aaa)}.cmd .cmd-prompt,.terminal,.terminal .terminal-output>div>div{display:block;height:auto}.terminal .terminal-output>div:not(.raw) div{clear:both;white-space:nowrap}.cmd .cmd-prompt:empty,.cmd .cmd-prompt>a,.cmd .cmd-prompt>span{float:left}.cmd-prompt [data-text]>span,.cmd-wrapper>div{white-space:pre}.cmd [data-text] span,.terminal [data-text] span{display:inline-block}.terminal-ouput span[style*=width]{min-height:14px;min-height:calc(var(--size, 1)*(14px/var(--pixel-density, 1)))}.cmd div,.terminal .terminal-output>:not(.raw)>div,.terminal.external div{line-height:1em}.cmd .cmd-prompt span.fa:before,.cmd .cmd-prompt span.fab:before,.cmd .cmd-prompt span.fad:before,.cmd .cmd-prompt span.fal:before,.cmd .cmd-prompt span.far:before,.cmd .cmd-prompt span.fas{position:relative;top:2px}.cmd,.cmd span:not(.fas):not(.far):not(.fa),.terminal,.terminal-font-forcer,.terminal-output>:not(.raw),.terminal-output>:not(.raw) a,.terminal-output>:not(.raw) span:not(.fas):not(.far):not(.fa){font-family:monospace;font-family:var(--font,monospace)}.cmd,.terminal{font-size:12px}.cmd .cmd-line:before,.terminal-output>div:not(.raw) div:before{content:"\0200B";display:inline-block;width:0}.cmd .cmd-line{white-space:nowrap}.cmd span[data-text],.terminal span[data-text]{display:inline-block}.cmd span[data-text]:not(.cmd-inverted):not(.token):not(.emoji),.terminal,terminal-output>div:not(.raw) div>span:not(.token):not(.inverted):not(.terminal-inverted):not(.cmd-inverted):not(.terminal-error):not(.emoji){background-color:#000;color:#aaa}.cmd span[data-text] span,.terminal span[data-text] span{text-decoration:inherit}.terminal .ansi>div{line-height:13px!important;line-height:calc(var(--size, 1)*(13px/var(--pixel-density, 1)))!important}.cmd .cmd-prompt span,.cmd span.cmd-prompt{--background:transparent}.cmd .emoji,.terminal-output .emoji{background-repeat:no-repeat;background-size:contain;color:transparent;height:12px;height:calc(12px/var(--pixel-density, 1));position:relative}.cmd .fa span,.cmd .far span,.cmd .fas span,.terminal .terminal-output .fa span,.terminal .terminal-output .far span,.terminal .terminal-output .fas span{clip:rect(1px,1px,1px,1px);background:transparent!important;color:transparent!important;position:absolute}.cmd .emoji,.cmd .emoji span,.terminal-output .emoji,.terminal-output .emoji span{display:inline-block;width:2ch}.cmd,.terminal{box-sizing:border-box}.cmd .cmd-cursor span:not(.token):not(.inverted){background-color:inherit;color:inherit}.cmd .emoji.emoji.emoji.emoji,.cmd .emoji.emoji.emoji.emoji span{background-color:transparent;color:transparent}.cmd .cmd-cursor *{background-color:transparent}.cmd span[style*=width] span,.terminal span[style*=width] span{width:inherit}.cmd div{clear:both}.cmd .cmd-prompt+div{clear:right}terminal .terminal-output>div{margin-top:-1px}.terminal-output>div.raw>div *{word-wrap:break-word;overflow-wrap:break-word}.terminal .terminal-font{float:left;font-size:inherit;left:0;line-height:inherit;margin-bottom:1px;position:absolute;top:-100%}.cmd>span:not(.cmd-prompt){float:left}.cmd .cmd-prompt span.cmd-line{display:block;float:none}.terminal table{border-collapse:collapse}.terminal td{border:1px solid #aaa}.cmd span[data-text]:not(.emoji):not(.fa):not(.fas):not(.far) span{background-color:inherit;color:inherit}.cmd [role=presentation].cmd-cursor-line{cursor:text;position:relative;z-index:100}.cmd .cmd-prompt{position:relative;z-index:200}.cmd [role=presentation]:not(.cmd-cursor-line){overflow:hidden}.cmd{--original-color:var( --color,#aaa);--original-background:var( - --background)}.cmd a[href]{--original-color:var(--link-color,#37f)}@-webkit-keyframes terminal-blink{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;color:inherit;color:var(--original-color,#aaa)}}@-moz-keyframes terminal-blink{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;color:inherit;color:var(--original-color,#aaa)}}@keyframes terminal-blink{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;-webkit-box-shadow:none;box-shadow:none;color:inherit;color:var(--original-color,#aaa)}}@-webkit-keyframes terminal-glow{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);box-shadow:0 0 3px #aaa;-webkit-box-shadow:0 0 3px var(--color,#aaa);box-shadow:0 0 3px var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;-webkit-box-shadow:none;box-shadow:none;color:inherit}}@-moz-keyframes terminal-glow{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);box-shadow:0 0 3px #aaa;-moz-box-shadow:0 0 3px var(--color,#aaa);box-shadow:0 0 3px var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;-moz-box-shadow:none;box-shadow:none;color:inherit}}@keyframes terminal-glow{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);box-shadow:0 0 3px #aaa;box-shadow:0 0 3px var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;box-shadow:none;color:inherit}}@-webkit-keyframes terminal-bar{0%,50%{box-shadow:-2px 0 0 -1px #aaa;box-shadow:calc(var(--line-thickness, 2)*-1px) 0 0 -1px var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@-moz-keyframes terminal-bar{0%,50%{box-shadow:-2px 0 0 -1px #aaa;box-shadow:calc(var(--line-thickness, 2)*-1px) 0 0 -1px var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@keyframes terminal-bar{0%,50%{box-shadow:-2px 0 0 -1px #aaa;box-shadow:calc(var(--line-thickness, 2)*-1px) 0 0 -1px var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@-webkit-keyframes terminal-underline{0%,50%{box-shadow:0 2px 0 #aaa;box-shadow:0 calc(var(--line-thickness, 2)*1px) 0 var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@-moz-keyframes terminal-underline{0%,50%{box-shadow:0 2px 0 #aaa;box-shadow:0 calc(var(--line-thickness, 2)*1px) 0 var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@keyframes terminal-underline{0%,50%{box-shadow:0 2px 0 #aaa;box-shadow:0 calc(var(--line-thickness, 2)*1px) 0 var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@-webkit-keyframes terminal-none{0%,to{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--original-background,#000)}}@-moz-keyframes terminal-none{0%,to{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--background,#000)}}@keyframes terminal-none{0%,to{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--original-background,#000)}}.underline-animation .cmd .cmd-cursor .emoji,.underline-animation .cmd .cmd-cursor.cmd-blink .fa,.underline-animation .cmd .cmd-cursor.cmd-blink .far,.underline-animation .cmd .cmd-cursor.cmd-blink .fas,.underline-animation .cmd .cmd-cursor.cmd-blink a,.underline-animation .cmd .cmd-cursor.cmd-blink>span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span{-webkit-animation-name:terminal-underline;-moz-animation-name:terminal-underline;-ms-animation-name:terminal-underline;animation-name:terminal-underline}.glow-animation .cmd .cmd-cursor .emoji,.glow-animation .cmd .cmd-cursor.cmd-blink .fa,.glow-animation .cmd .cmd-cursor.cmd-blink .far,.glow-animation .cmd .cmd-cursor.cmd-blink .fas,.glow-animation .cmd .cmd-cursor.cmd-blink a,.glow-animation .cmd .cmd-cursor.cmd-blink>span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span{-webkit-animation-name:terminal-glow;-moz-animation-name:terminal-glow;-ms-animation-name:terminal-glow;animation-name:terminal-glow}.bar-animation .cmd .cmd-cursor .emoji,.bar-animation .cmd .cmd-cursor.cmd-blink .fa,.bar-animation .cmd .cmd-cursor.cmd-blink .far,.bar-animation .cmd .cmd-cursor.cmd-blink .fas,.bar-animation .cmd .cmd-cursor.cmd-blink a,.bar-animation .cmd .cmd-cursor.cmd-blink>span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span{-webkit-animation-name:terminal-bar;-moz-animation-name:terminal-bar;-ms-animation-name:terminal-bar;animation-name:terminal-bar}@supports (-ms-ime-align:auto){.cmd .cmd-clipboard{margin-left:-9999px}@keyframes terminal-blink{0%,50%{background-color:var(--original-color,#aaa);color:var(--background,#000)}50.1%,to{background-color:var(--background,#000);color:var(--original-color,#aaa)}}@keyframes terminal-bar{0%,50%{border-left-color:var(--color,#aaa)}50.1%,to{border-left-color:var(--background,#000)}}@keyframes terminal-underline{0%,50%{border-bottom-color:var(--color,#aaa);line-height:12px;line-height:var(--terminal-font-size)}50.1%,to{border-bottom-color:var(--background,#000);line-height:12px;line-height:var(--terminal-font-size)}}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.cmd .cmd-clipboard{margin-left:-9999px}.underline-animation .cursor.blink span span{margin-top:1px}@-ms-keyframes terminal-blink{0%,50%{background-color:#aaa;color:#000}50.1%,to{background-color:#000;color:#aaa}}}.cmd span[data-text]::-moz-selection,.cmd span[data-text]:not(.far):not(.fa):not(.fas) span::-moz-selection,.terminal .terminal-output .raw ::-moz-selection,.terminal .terminal-output .raw div::-moz-selection,.terminal .terminal-output div div a::-moz-selection,.terminal .terminal-output div div::-moz-selection,.terminal .terminal-output span[data-text]::-moz-selection,.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas) span::-moz-selection{background-color:#aaa;color:#000}.terminal .cmd{pointer-events:none}.terminal .cmd-prompt *{pointer-events:visible}.cmd-prompt>span:first-child{margin-left:var(--prompt-offset)}.terminal .cmd textarea,.terminal .cmd-cursor-line>span,.terminal .cmd-wrapper>div:not(.cmd-cursor-line){pointer-events:visible}.cmd span[data-text]:not(.far):not(.fa):not(.fas) span::selection,.terminal .terminal-output .raw ::selection,.terminal .terminal-output .raw div::selection,.terminal .terminal-output div div a::selection,.terminal .terminal-output div div::selection,.terminal .terminal-output span[data-text]::selection,.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas) span::selection,.terminal-revese{background-color:hsla(0,0%,67%,.99);color:#000}.cmd .emoji span::-moz-selection,.cmd .emoji::-moz-selection,.cmd textarea::-moz-selection,.terminal-output .emoji span::-moz-selection,.terminal-output .emoji::-moz-selection{background-color:transparent!important;color:transparent!important}.cmd .emoji span::selection,.cmd .emoji::selection,.cmd textarea::selection,.terminal-output .emoji span::selection,.terminal-output .emoji::selection{background-color:transparent!important;color:transparent!important}.terminal .terminal-output>:not(.raw) .terminal-error,.terminal .terminal-output>:not(.raw) .terminal-error *{color:red;color:var(--error-color,red)}.tilda{left:0;position:fixed;top:0;width:100%;z-index:1100}.ui-dialog-content .terminal{box-sizing:border-box;height:100%;width:100%}.ui-dialog .ui-dialog-content.dterm{padding:0}.clear{clear:both}.terminal .terminal-fill{border:none;box-sizing:border-box;height:100%;left:0;margin:1px 0 0;opacity:.01;pointer-events:none;position:absolute;top:-100%;width:100%}.cmd-editable,.terminal .terminal-fill,.terminal-scroller{padding:calc(1px*var(--padding, 10)/var(--pixel-density, 1))}.cmd-editable{padding-top:0}.terminal-scroller{padding-bottom:0}.terminal .terminal-output>:not(.raw) .terminal-error,.terminal .terminal-output>:not(.raw) .terminal-error *{--color:var(--error-color,red);text-shadow:0 0 calc(var(--glow)*5px) var(--color)}.terminal .terminal-output>:not(.raw) a[href]{text-shadow:0 0 calc(var(--glow)*5px) var(--color)}.terminal .cmd{margin-bottom:calc(1px*var(--padding, 10)/var(--pixel-density, 1));position:relative}.terminal .partial,.terminal .partial>div{display:inline-block}@supports (--css:variables){.cmd,.cmd div,.cmd span[data-text]:not(.cmd-inverted):not(.token):not(.emoji),.terminal,.terminal-output>:not(.raw) a,.terminal-output>:not(.raw) div,.terminal-output>:not(.raw) span[data-text]:not(.token):not(.inverted):not(.terminal-inverted):not(.cmd-inverted):not(.terminal-error):not(.emoji),.terminal.external [data-text]{background-color:var(--background,#000);color:var(--color,#aaa)}.terminal{--terminal-line:calc(var(--size, 1)*(16px/var(--pixel-density, 1)) + 1px/var(--pixel-density, 1));--terminal-font-size:calc(var(--size, 1)*(12px/var(--pixel-density, 1)));height:auto;height:calc(var(--terminal-line)*var(--rows) + var(--padding, 10)*2px)}.cmd div,.terminal,.terminal .terminal-output>:not(.raw)>div,.terminal.external div{line-height:round(var(--terminal-line,1em))}.cmd [data-text],.terminal [data-text]{text-shadow:var(--text-shadow,0 0 calc(var(--glow)*5px) var(--color,#ccc))}.terminal span[style*="--length"]{display:inline-block;width:calc(var(--length, 1)*var(--char-width, 7.23438)*1px)}.terminal,.terminal-output>:not(.raw) a,.terminal-output>:not(.raw) div,.terminal-output>:not(.raw) span{font-size:var(--terminal-font-size)}.cmd,.cmd div,.cmd span{--cmd-font-size:var(--terminal-font-size,calc(var(--size, 1)*(12px/var(--pixel-density, 1))));font-size:var(--cmd-font-size)}.cmd .emoji,.terminal-output .emoji{height:var(--terminal-font-size)}.cmd .clipboard{top:calc(var(--size, 1)*(14/var(--pixel-density, 1))*var(--cursor-line, 0)*1px)}.cmd span[style*="--background"],.terminal span[style*="--background"]{--base-background:var(--background)}.cmd.cmd.cmd .cmd-inverted,.cmd.cmd.cmd .inverted,.terminal .inverted>span,.terminal .terminal-inverted>span{background-color:var(--color,#aaa)!important;color:var(--base-background,#000)!important}.cmd .cmd-cursor.cmd-blink{background-color:var(--background,#000);color:var(--color,#aaa)}.cmd .cmd-cursor.cmd-blink .emoji,.cmd .cmd-cursor.cmd-blink .fa,.cmd .cmd-cursor.cmd-blink .far,.cmd .cmd-cursor.cmd-blink .fas,.cmd .cmd-cursor.cmd-blink a,.cmd .cmd-cursor.cmd-blink>span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span{--original-background:inherit;-webkit-animation:var(--animation,terminal-blink) 1s infinite linear;-moz-animation:var(--animation,terminal-blink) 1s infinite linear;-ms-animation:var(--animation,terminal-blink) 1s infinite linear;animation:var(--animation,terminal-blink) 1s infinite linear}.cmd .cmd-cursor.cmd-blink .emoji span{background:transparent;color:transparent}.cmd span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::-moz-selection,.terminal .terminal-output .raw ::-moz-selection,.terminal .terminal-output .raw div::-moz-selection,.terminal .terminal-output div div a::-moz-selection,.terminal .terminal-output div div::-moz-selection,.terminal .terminal-output span[data-text]::-moz-selection,.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::-moz-selection{background-color:var(--color,#aaa);color:var(--background,#000)}.terminal .terminal-output div div a::-moz-selection{background-color:var(--link-color,rgba(15,96,255,.99))!important;color:var(--background,#000)!important}.terminal .terminal-output div div a:hover::-moz-selection{background-color:var(--link-color,rgba(2,50,144,.99))!important}.cmd span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::selection,.terminal .terminal-output .raw ::selection,.terminal .terminal-output .raw div::selection,.terminal .terminal-output div div a::selection,.terminal .terminal-output div div::selection,.terminal .terminal-output span[data-text]:not(.emoji)::selection,.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::selection{background-color:var(--color,hsla(0,0%,67%,.99))!important;color:var(--background,#000)!important}.terminal .terminal-output div div a::selection{background-color:var(--link-color,rgba(15,96,255,.99))!important;color:var(--background,#000)!important}.terminal .terminal-output div div a:hover::selection{background-color:var(--link-color,rgba(2,50,144,.99))!important}}@property --color{syntax:"";inherits:true;initial-value:hsla(0,0%,67%,.99)}@property --background{syntax:"";inherits:true;initial-value:#000}@property --link-color{syntax:"";inherits:true;initial-value:#37f}@property --size{syntax:"";inherits:true;initial-value:1}@property --padding{syntax:"";inherits:true;initial-value:10}@property --rows{syntax:" | auto";inherits:true;initial-value:auto}@supports (-ms-ime-align:auto){.cmd span[data-text]::selection,.terminal .terminal-output div div a::selection,.terminal .terminal-output div div::selection,.terminal h1::selection,.terminal h2::selection,.terminal h3::selection,.terminal h4::selection,.terminal h5::selection,.terminal h6::selection,.terminal pre::selection,.terminal td::selection{background-color:hsla(0,0%,67%,.99);color:#000}}.cmd .style .token.string,.cmd .token.entity,.cmd .token.operator,.cmd .token.string,.cmd .token.token,.cmd .token.url,.cmd .token.variable,.terminal .style .token.string,.terminal .token.entity,.terminal .token.operator,.terminal .token.string,.terminal .token.token,.terminal .token.url,.terminal .token.variable{background-color:inherit}.cmd .cursor-wrapper ul{float:left;left:0;list-style:none;margin:0;padding:0;position:absolute;top:14px}.cmd .cursor-wrapper li{cursor:pointer;white-space:nowrap}.cmd .cursor-wrapper li:hover{background:#aaa;color:#000}.cursor-wrapper{position:relative}.terminal-output img{vertical-align:top}.cmd img{border:1px solid transparent;height:14px;height:calc(var(--size, 1)*(14px/var(--pixel-density, 1)))}.cmd-cursor img{border-color:#ccc;border-color:var(--color,#ccc)}.terminal-output svg.terminal-broken-image{height:calc(var(--size, 1)*(14px/var(--pixel-density, 1)))}.terminal-output svg.terminal-broken-image use{fill:var(--color,#ccc)}.terminal-error{--color:var(--error-color)}.terminal-glow{--animation:terminal-glow}.terminal-glow .cmd-prompt>span,.terminal-glow .terminal-output>div a[href],.terminal-glow .terminal-output>div span,.terminal-glow [data-text] span,.terminal-glow a[data-text],.terminal-glow span[data-text]{text-shadow:1px 1px 5px #ccc;text-shadow:1px 1px 5px var(--color,#ccc)}.terminal-scroll-marker{height:1px;height:calc(1px/var(--pixel-density, 1));margin-top:-1px;margin-top:calc(-1px/var(--pixel-density, 1));position:relative;z-index:100}.terminal-scroll-marker div{bottom:0;left:0;position:absolute;right:0;z-index:200}.terminal-less{overscroll-behavior-y:contain;touch-action:none}.terminal-mobile.terminal-less .terminal-wrapper{pointer-events:none}.cmd-editable,.terminal-mobile.terminal-less .terminal-output a{pointer-events:visible}.cmd-editable:before{content:attr(data-cmd-prompt);display:inline-block}.cmd-editable{background:transparent;bottom:0;color:transparent;left:0;opacity:.01;outline:0 solid transparent;position:absolute;right:0;top:calc(var(--cmd-top)*1px + var(--cmd-font-size, 1em));z-index:500}.terminal-scroller::-webkit-scrollbar{background:var(--background,#000);height:calc(6px/var(--pixel-density, 1));width:calc(6px/var(--pixel-density, 1))}.terminal-scroller::-webkit-scrollbar-thumb,.terminal-scroller::-webkit-scrollbar-thumb:hover{background:var(--color,#aaa)}.terminal-scroller{scrollbar-color:#aaa #000;scrollbar-color:var(--color,#aaa) var(--background,#000);scrollbar-width:thin}.terminal-hidden{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.terminal-wrapper{--color:var(--base-color);--background:var(--base-background)}.cmd .token{--original-color:var(--color)}.cmd .terminal-blink,.terminal .terminal-blink{animation:terminal-ansi-blink 1s steps(2,start) infinite;-webkit-animation:terminal-ansi-blink 1s steps(2,start) infinite}.terminal .cmd *,.terminal .terminal-output,.terminal .terminal-output *{--background:transparent}.terminal .cmd ::selection,.terminal .cmd::selection,.terminal .terminal-output ::selection,.terminal .terminal-output::selection{--background:var(--base-background)}@keyframes terminal-ansi-blink{to{color:var(--background)}}@-webkit-keyframes terminal-ansi-blink{to{color:var(--background)}}@media (prefers-reduced-motion){:root{--animation:terminal-none}} + --background)}.cmd a[href]{--original-color:var(--link-color,#37f)}@-webkit-keyframes terminal-blink{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;color:inherit;color:var(--original-color,#aaa)}}@-moz-keyframes terminal-blink{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;color:inherit;color:var(--original-color,#aaa)}}@keyframes terminal-blink{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;-webkit-box-shadow:none;box-shadow:none;color:inherit;color:var(--original-color,#aaa)}}@-webkit-keyframes terminal-glow{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);box-shadow:0 0 3px #aaa;-webkit-box-shadow:0 0 3px var(--color,#aaa);box-shadow:0 0 3px var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;-webkit-box-shadow:none;box-shadow:none;color:inherit}}@-moz-keyframes terminal-glow{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);box-shadow:0 0 3px #aaa;-moz-box-shadow:0 0 3px var(--color,#aaa);box-shadow:0 0 3px var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;-moz-box-shadow:none;box-shadow:none;color:inherit}}@keyframes terminal-glow{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);box-shadow:0 0 3px #aaa;box-shadow:0 0 3px var(--color,#aaa);color:#000;color:var(--original-background,#000)}50.1%,to{background-color:inherit;box-shadow:none;color:inherit}}@-webkit-keyframes terminal-bar{0%,50%{box-shadow:-2px 0 0 -1px #aaa;box-shadow:calc(var(--line-thickness, 2)*-1px) 0 0 -1px var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@-moz-keyframes terminal-bar{0%,50%{box-shadow:-2px 0 0 -1px #aaa;box-shadow:calc(var(--line-thickness, 2)*-1px) 0 0 -1px var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@keyframes terminal-bar{0%,50%{box-shadow:-2px 0 0 -1px #aaa;box-shadow:calc(var(--line-thickness, 2)*-1px) 0 0 -1px var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@-webkit-keyframes terminal-underline{0%,50%{box-shadow:0 2px 0 #aaa;box-shadow:0 calc(var(--line-thickness, 2)*1px) 0 var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@-moz-keyframes terminal-underline{0%,50%{box-shadow:0 2px 0 #aaa;box-shadow:0 calc(var(--line-thickness, 2)*1px) 0 var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@keyframes terminal-underline{0%,50%{box-shadow:0 2px 0 #aaa;box-shadow:0 calc(var(--line-thickness, 2)*1px) 0 var(--original-color,#aaa)}50.1%,to{box-shadow:none}}@-webkit-keyframes terminal-none{0%,to{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--original-background,#000)}}@-moz-keyframes terminal-none{0%,to{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--background,#000)}}@keyframes terminal-none{0%,to{background-color:#aaa;background-color:var(--original-color,#aaa);-webkit-box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);box-shadow:0 0 calc(var(--glow)*3px) var(--color,#aaa);color:#000;color:var(--original-background,#000)}}.underline-animation .cmd .cmd-cursor .emoji,.underline-animation .cmd .cmd-cursor.cmd-blink .fa,.underline-animation .cmd .cmd-cursor.cmd-blink .far,.underline-animation .cmd .cmd-cursor.cmd-blink .fas,.underline-animation .cmd .cmd-cursor.cmd-blink a,.underline-animation .cmd .cmd-cursor.cmd-blink>span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span{-webkit-animation-name:terminal-underline;-moz-animation-name:terminal-underline;-ms-animation-name:terminal-underline;animation-name:terminal-underline}.glow-animation .cmd .cmd-cursor .emoji,.glow-animation .cmd .cmd-cursor.cmd-blink .fa,.glow-animation .cmd .cmd-cursor.cmd-blink .far,.glow-animation .cmd .cmd-cursor.cmd-blink .fas,.glow-animation .cmd .cmd-cursor.cmd-blink a,.glow-animation .cmd .cmd-cursor.cmd-blink>span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span{-webkit-animation-name:terminal-glow;-moz-animation-name:terminal-glow;-ms-animation-name:terminal-glow;animation-name:terminal-glow}.bar-animation .cmd .cmd-cursor .emoji,.bar-animation .cmd .cmd-cursor.cmd-blink .fa,.bar-animation .cmd .cmd-cursor.cmd-blink .far,.bar-animation .cmd .cmd-cursor.cmd-blink .fas,.bar-animation .cmd .cmd-cursor.cmd-blink a,.bar-animation .cmd .cmd-cursor.cmd-blink>span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span{-webkit-animation-name:terminal-bar;-moz-animation-name:terminal-bar;-ms-animation-name:terminal-bar;animation-name:terminal-bar}@supports (-ms-ime-align:auto){.cmd .cmd-clipboard{margin-left:-9999px}@keyframes terminal-blink{0%,50%{background-color:var(--original-color,#aaa);color:var(--background,#000)}50.1%,to{background-color:var(--background,#000);color:var(--original-color,#aaa)}}@keyframes terminal-bar{0%,50%{border-left-color:var(--color,#aaa)}50.1%,to{border-left-color:var(--background,#000)}}@keyframes terminal-underline{0%,50%{border-bottom-color:var(--color,#aaa);line-height:12px;line-height:var(--terminal-font-size)}50.1%,to{border-bottom-color:var(--background,#000);line-height:12px;line-height:var(--terminal-font-size)}}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.cmd .cmd-clipboard{margin-left:-9999px}.underline-animation .cursor.blink span span{margin-top:1px}@-ms-keyframes terminal-blink{0%,50%{background-color:#aaa;color:#000}50.1%,to{background-color:#000;color:#aaa}}}.cmd span[data-text]::-moz-selection,.cmd span[data-text]:not(.far):not(.fa):not(.fas) span::-moz-selection,.terminal .terminal-output .raw ::-moz-selection,.terminal .terminal-output .raw div::-moz-selection,.terminal .terminal-output div div a::-moz-selection,.terminal .terminal-output div div::-moz-selection,.terminal .terminal-output span[data-text]::-moz-selection,.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas) span::-moz-selection{background-color:#aaa;color:#000}.terminal .cmd{pointer-events:none}.terminal .cmd-prompt *{pointer-events:visible}.cmd-prompt>span:first-child{margin-left:var(--prompt-offset)}.terminal .cmd textarea,.terminal .cmd-cursor-line>span,.terminal .cmd-wrapper>div:not(.cmd-cursor-line){pointer-events:visible}.cmd span[data-text]:not(.far):not(.fa):not(.fas) span::selection,.terminal .terminal-output .raw ::selection,.terminal .terminal-output .raw div::selection,.terminal .terminal-output div div a::selection,.terminal .terminal-output div div::selection,.terminal .terminal-output span[data-text]::selection,.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas) span::selection,.terminal-revese{background-color:hsla(0,0%,67%,.99);color:#000}.cmd .emoji span::-moz-selection,.cmd .emoji::-moz-selection,.cmd textarea::-moz-selection,.terminal-output .emoji span::-moz-selection,.terminal-output .emoji::-moz-selection{background-color:transparent!important;color:transparent!important}.cmd .emoji span::selection,.cmd .emoji::selection,.cmd textarea::selection,.terminal-output .emoji span::selection,.terminal-output .emoji::selection{background-color:transparent!important;color:transparent!important}.terminal .terminal-output>:not(.raw) .terminal-error,.terminal .terminal-output>:not(.raw) .terminal-error *{color:red;color:var(--error-color,red)}.tilda{left:0;position:fixed;top:0;width:100%;z-index:1100}.ui-dialog-content .terminal{box-sizing:border-box;height:100%;width:100%}.ui-dialog .ui-dialog-content.dterm{padding:0}.clear{clear:both}.terminal .terminal-fill{border:none;box-sizing:border-box;height:100%;left:0;margin:1px 0 0;opacity:.01;pointer-events:none;position:absolute;top:-100%;width:100%}.cmd-editable,.terminal .terminal-fill,.terminal-scroller{padding:calc(1px*var(--padding, 10)/var(--pixel-density, 1))}.cmd-editable{padding-top:0}.terminal-scroller{padding-bottom:0}.terminal .terminal-output>:not(.raw) .terminal-error,.terminal .terminal-output>:not(.raw) .terminal-error *{--color:var(--error-color,red);text-shadow:0 0 calc(var(--glow)*5px) var(--color)}.terminal .terminal-output>:not(.raw) a[href]{text-shadow:0 0 calc(var(--glow)*5px) var(--color)}.terminal .cmd{margin-bottom:calc(1px*var(--padding, 10)/var(--pixel-density, 1));position:relative}.terminal .partial,.terminal .partial>div{display:inline-block}@supports (--css:variables){.cmd,.cmd div,.cmd span[data-text]:not(.cmd-inverted):not(.token):not(.emoji),.terminal,.terminal-output>:not(.raw) a,.terminal-output>:not(.raw) div,.terminal-output>:not(.raw) span[data-text]:not(.token):not(.inverted):not(.terminal-inverted):not(.cmd-inverted):not(.terminal-error):not(.emoji),.terminal.external [data-text]{background-color:var(--background,#000);color:var(--color,#aaa)}.terminal{--terminal-line:calc(var(--size, 1)*(16px/var(--pixel-density, 1)) + 1px/var(--pixel-density, 1));--terminal-font-size:calc(var(--size, 1)*(12px/var(--pixel-density, 1)));height:auto;height:calc(var(--terminal-line)*var(--rows) + var(--padding, 10)*2px);width:calc(var(--cols)*1ch + var(--padding, 10)*2px + var(--terminal-scrollbar, 10)*1px)}.cmd div,.terminal,.terminal .terminal-output>:not(.raw)>div,.terminal.external div{line-height:round(var(--terminal-line,1em))}.cmd [data-text],.terminal [data-text]{text-shadow:var(--text-shadow,0 0 calc(var(--glow)*5px) var(--color,#ccc))}.terminal span[style*="--length"]{display:inline-block;width:calc(var(--length, 1)*var(--char-width, 7.23438)*1px)}.terminal,.terminal-output>:not(.raw) a,.terminal-output>:not(.raw) div,.terminal-output>:not(.raw) span{font-size:var(--terminal-font-size)}.cmd,.cmd div,.cmd span{--cmd-font-size:var(--terminal-font-size,calc(var(--size, 1)*(12px/var(--pixel-density, 1))));font-size:var(--cmd-font-size)}.cmd .emoji,.terminal-output .emoji{height:var(--terminal-font-size)}.cmd .clipboard{top:calc(var(--size, 1)*(14/var(--pixel-density, 1))*var(--cursor-line, 0)*1px)}.cmd span[style*="--background"],.terminal span[style*="--background"]{--base-background:var(--background)}.cmd.cmd.cmd .cmd-inverted,.cmd.cmd.cmd .inverted,.terminal .inverted>span,.terminal .terminal-inverted>span{background-color:var(--color,#aaa)!important;color:var(--base-background,#000)!important}.cmd .cmd-cursor.cmd-blink{background-color:var(--background,#000);color:var(--color,#aaa)}.cmd .cmd-cursor.cmd-blink .emoji,.cmd .cmd-cursor.cmd-blink .fa,.cmd .cmd-cursor.cmd-blink .far,.cmd .cmd-cursor.cmd-blink .fas,.cmd .cmd-cursor.cmd-blink a,.cmd .cmd-cursor.cmd-blink>span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span{--original-background:inherit;-webkit-animation:var(--animation,terminal-blink) 1s infinite linear;-moz-animation:var(--animation,terminal-blink) 1s infinite linear;-ms-animation:var(--animation,terminal-blink) 1s infinite linear;animation:var(--animation,terminal-blink) 1s infinite linear}.cmd .cmd-cursor.cmd-blink .emoji span{background:transparent;color:transparent}.cmd span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::-moz-selection,.terminal .terminal-output .raw ::-moz-selection,.terminal .terminal-output .raw div::-moz-selection,.terminal .terminal-output div div a::-moz-selection,.terminal .terminal-output div div::-moz-selection,.terminal .terminal-output span[data-text]::-moz-selection,.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::-moz-selection{background-color:var(--color,#aaa);color:var(--background,#000)}.terminal .terminal-output div div a::-moz-selection{background-color:var(--link-color,rgba(15,96,255,.99))!important;color:var(--background,#000)!important}.terminal .terminal-output div div a:hover::-moz-selection{background-color:var(--link-color,rgba(2,50,144,.99))!important}.cmd span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::selection,.terminal .terminal-output .raw ::selection,.terminal .terminal-output .raw div::selection,.terminal .terminal-output div div a::selection,.terminal .terminal-output div div::selection,.terminal .terminal-output span[data-text]:not(.emoji)::selection,.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::selection{background-color:var(--color,hsla(0,0%,67%,.99))!important;color:var(--background,#000)!important}.terminal .terminal-output div div a::selection{background-color:var(--link-color,rgba(15,96,255,.99))!important;color:var(--background,#000)!important}.terminal .terminal-output div div a:hover::selection{background-color:var(--link-color,rgba(2,50,144,.99))!important}}@property --color{syntax:"";inherits:true;initial-value:hsla(0,0%,67%,.99)}@property --background{syntax:"";inherits:true;initial-value:#000}@property --link-color{syntax:"";inherits:true;initial-value:#37f}@property --size{syntax:"";inherits:true;initial-value:1}@property --padding{syntax:"";inherits:true;initial-value:10}@property --rows{syntax:" | auto";inherits:true;initial-value:auto}@supports (-ms-ime-align:auto){.cmd span[data-text]::selection,.terminal .terminal-output div div a::selection,.terminal .terminal-output div div::selection,.terminal h1::selection,.terminal h2::selection,.terminal h3::selection,.terminal h4::selection,.terminal h5::selection,.terminal h6::selection,.terminal pre::selection,.terminal td::selection{background-color:hsla(0,0%,67%,.99);color:#000}}.cmd .style .token.string,.cmd .token.entity,.cmd .token.operator,.cmd .token.string,.cmd .token.token,.cmd .token.url,.cmd .token.variable,.terminal .style .token.string,.terminal .token.entity,.terminal .token.operator,.terminal .token.string,.terminal .token.token,.terminal .token.url,.terminal .token.variable{background-color:inherit}.cmd .cursor-wrapper ul{float:left;left:0;list-style:none;margin:0;padding:0;position:absolute;top:14px}.cmd .cursor-wrapper li{cursor:pointer;white-space:nowrap}.cmd .cursor-wrapper li:hover{background:#aaa;color:#000}.cursor-wrapper{position:relative}.terminal-output img{vertical-align:top}.cmd img{border:1px solid transparent;height:14px;height:calc(var(--size, 1)*(14px/var(--pixel-density, 1)))}.cmd-cursor img{border-color:#ccc;border-color:var(--color,#ccc)}.terminal-output svg.terminal-broken-image{height:calc(var(--size, 1)*(14px/var(--pixel-density, 1)))}.terminal-output svg.terminal-broken-image use{fill:var(--color,#ccc)}.terminal-error{--color:var(--error-color)}.terminal-glow{--animation:terminal-glow}.terminal-glow .cmd-prompt>span,.terminal-glow .terminal-output>div a[href],.terminal-glow .terminal-output>div span,.terminal-glow [data-text] span,.terminal-glow a[data-text],.terminal-glow span[data-text]{text-shadow:1px 1px 5px #ccc;text-shadow:1px 1px 5px var(--color,#ccc)}.terminal-scroll-marker{height:1px;height:calc(1px/var(--pixel-density, 1));margin-top:-1px;margin-top:calc(-1px/var(--pixel-density, 1));position:relative;z-index:100}.terminal-scroll-marker div{bottom:0;left:0;position:absolute;right:0;z-index:200}.terminal-less{overscroll-behavior-y:contain;touch-action:none}.terminal-mobile.terminal-less .terminal-wrapper{pointer-events:none}.cmd-editable,.terminal-mobile.terminal-less .terminal-output a{pointer-events:visible}.cmd-editable:before{content:attr(data-cmd-prompt);display:inline-block}.cmd-editable{background:transparent;bottom:0;color:transparent;left:0;opacity:.01;outline:0 solid transparent;position:absolute;right:0;top:calc(var(--cmd-top)*1px + var(--cmd-font-size, 1em));z-index:500}.terminal-scroller::-webkit-scrollbar{background:var(--background,#000);height:calc(6px/var(--pixel-density, 1));width:calc(6px/var(--pixel-density, 1))}.terminal-scroller::-webkit-scrollbar-thumb,.terminal-scroller::-webkit-scrollbar-thumb:hover{background:var(--color,#aaa)}.terminal-scroller{scrollbar-color:#aaa #000;scrollbar-color:var(--color,#aaa) var(--background,#000);scrollbar-width:thin}.terminal-hidden{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.terminal-wrapper{--color:var(--base-color);--background:var(--base-background)}.cmd .token{--original-color:var(--color)}.cmd .terminal-blink,.terminal .terminal-blink{animation:terminal-ansi-blink 1s steps(2,start) infinite;-webkit-animation:terminal-ansi-blink 1s steps(2,start) infinite}.terminal .cmd *,.terminal .terminal-output,.terminal .terminal-output *{--background:transparent}.terminal .cmd ::selection,.terminal .cmd::selection,.terminal .terminal-output ::selection,.terminal .terminal-output::selection{--background:var(--base-background)}@keyframes terminal-ansi-blink{to{color:var(--background)}}@-webkit-keyframes terminal-ansi-blink{to{color:var(--background)}}@media (prefers-reduced-motion){:root{--animation:terminal-none}} /*# sourceMappingURL=jquery.terminal.min.css.map */ \ No newline at end of file diff --git a/css/jquery.terminal.min.css.map b/css/jquery.terminal.min.css.map index 46ea8c03..86e62afa 100644 --- a/css/jquery.terminal.min.css.map +++ b/css/jquery.terminal.min.css.map @@ -1 +1 @@ -{"version":3,"sources":["jquery.terminal.css"],"names":[],"mappings":"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","file":"jquery.terminal.min.css","sourcesContent":["/*!\n * __ _____ ________ __\n * / // _ /__ __ _____ ___ __ _/__ ___/__ ___ ______ __ __ __ ___ / /\n * __ / // // // // // _ // _// // / / // _ // _// // // \\/ // _ \\/ /\n * / / // // // // // ___// / / // / / // ___// / / / / // // /\\ // // / /__\n * \\___//____ \\\\___//____//_/ _\\_ / /_//____//_/ /_/ /_//_//_/ /_/ \\__\\_\\___/\n * \\/ /____/ version DEV\n * http://terminal.jcubic.pl\n *\n * This file is part of jQuery Terminal.\n *\n * Copyright (c) 2011-2024 Jakub T. Jankiewicz \n * Released under the MIT license\n *\n * Date: Thu, 14 Nov 2024 21:18:03 +0000\n */\n.terminal .terminal-output .format, .cmd .format,\n.cmd-prompt, .cmd-prompt div {\n display: inline-block;\n}\n.terminal h1, .terminal h2, .terminal h3, .terminal h4, .terminal h5, .terminal h6, .terminal pre, .cmd {\n margin: 0;\n}\n.cmd .cmd-clipboard {\n position: absolute !important;\n let: -16px;\n left: calc(-16px / var(--pixel-density, 1)) !important;\n top: 0 !important;\n width: 16px;\n height: 16px;\n width: calc(16px / var(--pixel-density, 1)) !important;\n height: calc(16px / var(--pixel-density, 1)) !important;\n background: transparent !important;\n border: none !important;\n color: transparent !important;\n outline: none !important;\n padding: 0 !important;\n resize: none !important;\n box-shadow: none !important;\n z-index: 1000 !important;\n overflow: hidden !important;\n white-space: pre !important;\n text-indent: -9999em !important; /* better cursor hiding for Safari and IE */\n top: calc(var(--cursor-line, 0) * var(--size, 1) * (14px / var(--pixel-density, 1))) !important;\n}\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n user-select: none;\n width: 1px;\n top: 0;\n left: 0;\n}\n.cmd span.cmd-end-line,\n.cmd span.cmd-end-line span,\n.cmd div.cmd-end-line span[data-text]:last-child,\n.cmd div.cmd-end-line span[data-text]:last-child span,\n.cmd textarea,\n.cmd .cursor + span:empty {\n -webkit-touch-callout: none; /* iOS Safari */\n -webkit-user-select: none; /* Safari */\n -khtml-user-select: none; /* Konqueror HTML */\n -moz-user-select: none; /* Firefox */\n -ms-user-select: none; /* Internet Explorer/Edge */\n user-select: none; /* Non-prefixed version, currently supported by Chrome and Opera */\n}\n.terminal img, .terminal audio, .terminal object, .terminal canvas {\n cursor: default;\n}\n.terminal {\n position: relative;\n line-height: initial;\n --base-background: var(--background, #000);\n --base-color: var(--color);\n contain: content;\n}\n.terminal-scroller {\n position: relative;\n overflow-y: auto;\n scrollbar-gutter: stable;\n height: 100%;\n box-sizing: border-box;\n overflow-x: hidden;\n}\nterminal.terminal-temp {\n visibility: hidden;\n}\nbody.terminal {\n min-height: 100vh;\n height: 100%;\n}\nhtml {\n height: 100%;\n}\nbody.terminal, body.full-screen-terminal {\n margin: 0;\n height: 100%;\n}\nbody.full-screen-terminal .terminal {\n height: 100% !important;\n}\nbody.full-screen-terminal {\n height: 100%;\n height: var(--terminal-force-height, 100dvh);\n}\n.terminal > div.terminal-fill {\n min-height: 100%;\n height: 100%;\n}\n.terminal > .terminal-pixel {\n position: absolute;\n display: inline;\n left: -2px;\n top: -2px;\n width: 1px;\n height: 1px;\n}\n.terminal > .terminal-resizer,\n.terminal > .terminal-font .terminal-resizer {\n position: absolute !important;\n top: 0 !important;\n right: 0 !important;\n bottom: 0 !important;\n left: 0 !important;\n overflow: hidden !important;\n pointer-events: none !important;\n z-index: -1 !important;\n height: 100% !important;\n border: none !important;\n padding: 0 !important;\n width: 100% !important;\n}\n.cmd {\n padding: 0;\n position: relative;\n width: 100%;\n z-index: 300;\n}\n.terminal .cmd, .terminal .cmd div {\n background: transparent !important;\n}\n.terminal a[tabindex=\"1000\"],\n.terminal a[tabindex=\"1000\"]:active,\n.terminal a[tabindex=\"1000\"]:focus {\n outline: none;\n}\n.terminal .inverted, .cmd.cmd.cmd .inverted,\n.terminal .terminal-inverted, .cmd.cmd.cmd .cmd-inverted {\n background-color: #aaa !important;\n color: #000 !important;\n}\n.terminal .terminal-output > :not(.raw) a[href],\n.cmd a[href],\n.terminal.external a[href] {\n color: #3377FF;\n color: var(--link-color, #3377FF);\n cursor: pointer;\n}\n.cmd a[href]:not(.terminal-inverted),\n.terminal .terminal-output > :not(.raw) a[href]:not(.terminal-inverted),\n.terminal.external a[href]:not(.terminal-inverted) {\n --color: var(--link-color, #3377FF);\n /* conditionals: https://www.kizu.ru/conditions-for-css-variables/ */\n /* --glow: 0; */\n text-shadow: 0 0 calc(var(--glow) * 5px) var(--color, #ccc);\n}\n.terminal .terminal-output > :not(.raw) a[href].terminal-inverted,\n.terminal.external a[href].terminal-inverted {\n background: var(--color, #ccc);\n /* conditionals: https://www.kizu.ru/conditions-for-css-variables/ */\n /* --glow: 0; */\n text-shadow: 0 0 calc(var(--glow) * 5px) var(--background, #000);\n}\n.terminal .terminal-output > :not(.raw) a[href]:hover,\n.cmd a[href]:hover,\n.terminal.external a[href]:hover {\n background-color: #3377FF;\n background-color: var(--link-color, #3377FF) !important;\n color: #000;\n color: var(--base-background, #000) !important;\n text-decoration: none;\n}\n.terminal .terminal-output > :not(.raw) a[href] span,\n.cmd a[href] span,\n.terminal.external a[href] span {\n /*\n * shorter and simple solution\n * it's hard to overwrite long :not selector (:not(a span) don't work)\n */\n color: #3377FF !important;\n --color: var(--link-color, #3377FF);\n color: var(--link-color, #3377FF) !important;\n text-decoration: underline;\n}\n.terminal .terminal-output > :not(.raw) a[href]:hover span,\n.cmd a[href]:hover span,\n.terminal.external a[href]:hover span {\n background-color: #3377FF !important;\n background-color: var(--link-color, #3377FF) !important;\n color: #000 !important;\n color: var(--background, #000) !important;\n text-decoration: none;\n}\n.terminal a[href] {\n transition-property: color, background-color;\n transition-duration: 0.2s;\n transition-timing-function: ease-out;\n}\n.cmd .cmd-cursor {\n display: inline-block;\n}\n.cmd .cmd-cursor-line > span,\n.cmd .cmd-cursor-line img {\n display: inline-block;\n}\n.cmd .cmd-cursor.cmd-blink > span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span,\n.cmd .cmd-cursor.cmd-blink a,\n.cmd .cmd-cursor.cmd-blink .fa,\n.cmd .cmd-cursor.cmd-blink .far,\n.cmd .cmd-cursor.cmd-blink .fas,\n.cmd .cmd-cursor .emoji {\n -webkit-animation: terminal-blink 1s infinite linear;\n -moz-animation: terminal-blink 1s infinite linear;\n -ms-animation: terminal-blink 1s infinite linear;\n animation: terminal-blink 1s infinite linear;\n}\n.bar.terminal .inverted, .bar.cmd .cmd-inverted {\n box-shadow: -2px 0 0 -1px #aaa;\n box-shadow: -2px 0 0 -1px var(--original-color, #aaa);\n}\n.terminal, .terminal .terminal-output > div > div, .cmd .cmd-prompt {\n display: block;\n height: auto;\n}\n.terminal .terminal-output > div:not(.raw) div {\n white-space: nowrap;\n clear: both;\n}\n.cmd .cmd-prompt > span, .cmd .cmd-prompt > a, .cmd .cmd-prompt:empty {\n float: left;\n}\n.cmd-prompt [data-text] > span, .cmd-wrapper > div {\n white-space: pre;\n}\n.cmd [data-text] span,\n.terminal [data-text] span {\n display: inline-block;\n}\n.terminal-ouput span[style*=\"width\"] {\n min-height: 14px;\n min-height: calc(var(--size, 1) * (14px / var(--pixel-density, 1)));\n}\n.terminal .terminal-output > :not(.raw) > div,\n.cmd div,\n.terminal.external div {\n line-height: 1em;\n}\n.cmd .cmd-prompt span.fa::before,\n.cmd .cmd-prompt span.fab::before,\n.cmd .cmd-prompt span.fad::before,\n.cmd .cmd-prompt span.fal::before,\n.cmd .cmd-prompt span.far::before,\n.cmd .cmd-prompt span.fas {\n position: relative;\n top: 2px;\n}\n.terminal,\n.terminal-output > :not(.raw),\n.terminal-output > :not(.raw) span:not(.fas):not(.far):not(.fa),\n.terminal-output > :not(.raw) a,\n.cmd,\n.terminal-font-forcer,\n.cmd span:not(.fas):not(.far):not(.fa) {\n font-family: monospace;\n font-family: var(--font, monospace);\n}\n.terminal,\n.cmd {\n font-size: 12px;\n}\n.terminal-output > div:not(.raw) div::before,\n.cmd .cmd-line::before {\n content: '\\0200B';\n width: 0;\n display: inline-block;\n}\n.cmd .cmd-line {\n white-space: nowrap;\n}\n.terminal span[data-text],\n.cmd span[data-text] {\n display: inline-block;\n}\n.terminal, terminal-output > div:not(.raw) div > span:not(.token):not(.inverted):not(.terminal-inverted):not(.cmd-inverted):not(.terminal-error):not(.emoji),\n.cmd span[data-text]:not(.cmd-inverted):not(.token):not(.emoji) {\n color: #aaa;\n background-color: #000;\n}\n.terminal span[data-text] span, .cmd span[data-text] span {\n text-decoration: inherit;\n}\n.terminal .ansi > div {\n line-height: 13px !important;\n line-height: calc(var(--size, 1) * (13px / var(--pixel-density, 1))) !important;\n}\n.cmd span.cmd-prompt, .cmd .cmd-prompt span {\n --background: transparent;\n}\n.terminal-output .emoji, .cmd .emoji {\n height: 12px;\n height: calc(12px / var(--pixel-density, 1));\n background-size: contain;\n background-repeat: no-repeat;\n color: transparent;\n position: relative;\n}\n.terminal .terminal-output .fa span,\n.terminal .terminal-output .fas span,\n.terminal .terminal-output .far span,\n.cmd .fa span,\n.cmd .fas span,\n.cmd .far span {\n background: transparent !important;\n color: transparent !important;\n clip: rect(1px,1px,1px,1px);\n position: absolute;\n}\n.terminal-output .emoji,\n.terminal-output .emoji span,\n.cmd .emoji, .cmd .emoji span {\n display: inline-block;\n width: 2ch;\n}\n.terminal, .cmd {\n box-sizing: border-box;\n}\n.cmd .cmd-cursor span:not(.token):not(.inverted) {\n color: inherit;\n background-color: inherit;\n}\n.cmd .emoji.emoji.emoji.emoji, .cmd .emoji.emoji.emoji.emoji span {\n color: transparent;\n background-color: transparent;\n}\n.cmd .cmd-cursor * {\n background-color: transparent;\n}\n.terminal span[style*=\"width\"] span,\n.cmd span[style*=\"width\"] span {\n width: inherit;\n}\n.cmd div {\n clear: both;\n}\n.cmd .cmd-prompt + div {\n clear: right;\n}\nterminal .terminal-output > div {\n margin-top: -1px;\n}\n.terminal-output > div.raw > div * {\n overflow-wrap: break-word;\n word-wrap: break-word;\n}\n.terminal .terminal-font {\n position: absolute;\n float: left;\n font-size: inherit;\n line-height: inherit;\n top: -100%;\n left: 0;\n margin-bottom: 1px;\n}\n.cmd > span:not(.cmd-prompt) {\n float: left;\n}\n.cmd .cmd-prompt span.cmd-line {\n display: block;\n float: none;\n}\n.terminal table {\n border-collapse: collapse;\n}\n.terminal td {\n border: 1px solid #aaa;\n}\n.cmd span[data-text]:not(.emoji):not(.fa):not(.fas):not(.far) span {\n background-color: inherit;\n color: inherit;\n}\n/* fix for underline on middle line */\n.cmd [role=\"presentation\"].cmd-cursor-line {\n position: relative;\n z-index: 100;\n cursor: text;\n}\n/* prompt above cursor line */\n.cmd .cmd-prompt {\n position: relative;\n z-index: 200;\n}\n.cmd [role=\"presentation\"]:not(.cmd-cursor-line) {\n overflow: hidden;\n}\n/*\n * this is set so animation can select original color as backgound for cursor\n * so span can have --color for selection\n */\n.cmd {\n --original-color: var(\n --color, #aaa);\n--original-background: var(\n --background);\n}\n.cmd a[href] {\n --original-color: var(--link-color, #3377FF);\n}\n/* DEFAULT ANIMATION */\n@-webkit-keyframes terminal-blink {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n /* original background is set in emoji that need different style */\n color: inherit;\n color: var(--original-color, #aaa)\n }\n}\n@-moz-keyframes terminal-blink {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n color: inherit;\n color: var(--original-color, #aaa);\n }\n}\n@keyframes terminal-blink {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n color: inherit;\n color: var(--original-color, #aaa);\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n/* GLOW ANIMATION */\n@-webkit-keyframes terminal-glow {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n box-shadow: 0 0 3px #aaa;\n -webkit-box-shadow: 0 0 3px var(--color, #aaa);\n box-shadow: 0 0 3px var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n color: inherit;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n@-moz-keyframes terminal-glow {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n box-shadow: 0 0 3px #aaa;\n -moz-box-shadow: 0 0 3px var(--color, #aaa);\n box-shadow: 0 0 3px var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n color: inherit;\n -moz-box-shadow: none;\n box-shadow: none;\n }\n}\n@keyframes terminal-glow {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n box-shadow: 0 0 3px #aaa;\n box-shadow: 0 0 3px var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n color: inherit;\n box-shadow: none;\n }\n}\n/* BAR ANIMATION */\n@-webkit-keyframes terminal-bar {\n 0%, 50% {\n box-shadow: -2px 0 0 -1px #aaa;\n box-shadow: calc(var(--line-thickness, 2) * -1px) 0 0 -1px var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n@-moz-keyframes terminal-bar {\n 0%, 50% {\n box-shadow: -2px 0 0 -1px #aaa;\n box-shadow: calc(var(--line-thickness, 2) * -1px) 0 0 -1px var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n@keyframes terminal-bar {\n 0%, 50% {\n box-shadow: -2px 0 0 -1px #aaa;\n box-shadow: calc(var(--line-thickness, 2) * -1px) 0 0 -1px var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n/* UNDERLINE ANIMATION */\n@-webkit-keyframes terminal-underline {\n 0%, 50% {\n box-shadow: 0 2px 0 #aaa;\n box-shadow: 0 calc(var(--line-thickness, 2) * 1px) 0 var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n@-moz-keyframes terminal-underline {\n 0%, 50% {\n box-shadow: 0 2px 0 #aaa;\n box-shadow: 0 calc(var(--line-thickness, 2) * 1px) 0 var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n@keyframes terminal-underline {\n 0%, 50% {\n box-shadow: 0 2px 0 #aaa;\n box-shadow: 0 calc(var(--line-thickness, 2) * 1px) 0 var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n/* NONE ANIMATION */\n@-webkit-keyframes terminal-none {\n 0%, 100% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n}\n@-moz-keyframes terminal-none {\n 0%, 100% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n}\n@keyframes terminal-none {\n 0%, 100% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n}\n.underline-animation .cmd .cmd-cursor.cmd-blink > span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span,\n.underline-animation .cmd .cmd-cursor.cmd-blink a,\n.underline-animation .cmd .cmd-cursor.cmd-blink .fa,\n.underline-animation .cmd .cmd-cursor.cmd-blink .far,\n.underline-animation .cmd .cmd-cursor.cmd-blink .fas,\n.underline-animation .cmd .cmd-cursor .emoji {\n -webkit-animation-name: terminal-underline;\n -moz-animation-name: terminal-underline;\n -ms-animation-name: terminal-underline;\n animation-name: terminal-underline;\n}\n.glow-animation .cmd .cmd-cursor.cmd-blink > span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span,\n.glow-animation .cmd .cmd-cursor.cmd-blink a,\n.glow-animation .cmd .cmd-cursor.cmd-blink .fa,\n.glow-animation .cmd .cmd-cursor.cmd-blink .far,\n.glow-animation .cmd .cmd-cursor.cmd-blink .fas,\n.glow-animation .cmd .cmd-cursor .emoji {\n -webkit-animation-name: terminal-glow;\n -moz-animation-name: terminal-glow;\n -ms-animation-name: terminal-glow;\n animation-name: terminal-glow;\n}\n.bar-animation .cmd .cmd-cursor.cmd-blink > span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span,\n.bar-animation .cmd .cmd-cursor.cmd-blink a,\n.bar-animation .cmd .cmd-cursor.cmd-blink .fa,\n.bar-animation .cmd .cmd-cursor.cmd-blink .far,\n.bar-animation .cmd .cmd-cursor.cmd-blink .fas,\n.bar-animation .cmd .cmd-cursor .emoji {\n -webkit-animation-name: terminal-bar;\n -moz-animation-name: terminal-bar;\n -ms-animation-name: terminal-bar;\n animation-name: terminal-bar;\n}\n/*\n Internet Explorer & Edge *, Safari ≤ 6\n source: https://w3reign.com/internet-explorer-edge-css-hacks/\n*/\n\n\n@supports (-ms-ime-align:auto) {\n .cmd .cmd-clipboard {\n margin-left: -9999px;\n }\n @keyframes terminal-blink {\n 0%, 50% {\n background-color: var(--original-color, #aaa);\n color: var(--background, #000);\n }\n 50.1%, 100% {\n background-color: var(--background, #000);\n color: var(--original-color, #aaa);\n }\n }\n @keyframes terminal-bar {\n 0%, 50% {\n border-left-color: var(--color, #aaa);\n }\n 50.1%, 100% {\n border-left-color: var(--background, #000);\n }\n }\n @keyframes terminal-underline {\n 0%, 50% {\n border-bottom-color: var(--color, #aaa);\n line-height: 12px;\n line-height: var(--terminal-font-size);\n }\n 50.1%, 100% {\n border-bottom-color: var(--background, #000);\n line-height: 12px;\n line-height: var(--terminal-font-size);\n }\n }\n}\n/* IE hack Edge one don't work in IE11 */\n@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n .cmd .cmd-clipboard {\n margin-left: -9999px;\n }\n .underline-animation .cursor.blink span span {\n margin-top: 1px;\n }\n @-ms-keyframes terminal-blink {\n 0%, 50% {\n background-color: #aaa;\n color: #000;\n }\n 50.1%, 100% {\n background-color: #000;\n color: #aaa;\n }\n }\n}\n.terminal .terminal-output .raw *::-moz-selection,\n.terminal .terminal-output div div::-moz-selection,\n.terminal .terminal-output div div a::-moz-selection,\n.terminal .terminal-output span[data-text]::-moz-selection,\n.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas) span::-moz-selection,\n.terminal .terminal-output .raw div::-moz-selection,\n.cmd span[data-text]::-moz-selection,\n.cmd span[data-text]:not(.far):not(.fa):not(.fas) span::-moz-selection {\n background-color: #aaa;\n color: #000;\n}\n/* this don't work in Chrome\n.terminal tr td::-moz-selection {\n border-color: #000;\n}\n.terminal tr td::selection {\n border-color: #000;\n}\n*/\n/* fix selection/click on text that was echo without newline while prompt is relocated */\n.terminal .cmd {\n pointer-events: none;\n}\n.terminal .cmd-prompt * {\n pointer-events: visible;\n}\n.cmd-prompt > span:first-child {\n margin-left: var(--prompt-offset);\n}\n.terminal .cmd-wrapper > div:not(.cmd-cursor-line),\n.terminal .cmd-cursor-line > span,\n.terminal .cmd textarea {\n pointer-events: visible;\n}\n.terminal .terminal-output .raw *::selection,\n.terminal .terminal-output div div::selection,\n.terminal .terminal-output div div a::selection,\n.terminal .terminal-output span[data-text]::selection,\n.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas) span::selection,\n.terminal .terminal-output .raw div::selection,\n.terminal-revese,\n.cmd span[data-text]:not(.far):not(.fa):not(.fas) span::selection {\n /*\n * use rgba to fix transparent selection in chrome\n * http://stackoverflow.com/questions/7224445/css3-selection-behaves-differently-in-ff-chrome\n */\n background-color: rgba(170, 170, 170, 0.99);\n color: #000;\n}\n\n.terminal-output .emoji::-moz-selection,\n.terminal-output .emoji span::-moz-selection,\n.cmd .emoji::-moz-selection,\n.cmd .emoji span::-moz-selection,\n.cmd textarea::-moz-selection {\n background-color: transparent !important;\n color: transparent !important;\n}\n.terminal-output .emoji::selection,\n.terminal-output .emoji span::selection,\n.cmd .emoji span::selection,\n.cmd .emoji::selection,\n.cmd textarea::selection {\n background-color: transparent !important;\n color: transparent !important;\n}\n\n.terminal .terminal-output > :not(.raw) .terminal-error,\n.terminal .terminal-output > :not(.raw) .terminal-error * {\n color: red;\n color: var(--error-color, red);\n}\n.tilda {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n z-index: 1100;\n}\n.ui-dialog-content .terminal {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n}\n.ui-dialog .ui-dialog-content.dterm {\n padding: 0;\n}\n.clear {\n clear: both;\n}\n.terminal .terminal-fill {\n position: absolute;\n left: 0;\n top: -100%;\n width: 100%;\n height: 100%;\n margin: 1px 0 0;\n border: none;\n opacity: 0.01;\n pointer-events: none;\n box-sizing: border-box;\n}\n.terminal-scroller, .terminal .terminal-fill, .cmd-editable {\n padding: calc(1px * var(--padding, 10) / var(--pixel-density, 1));\n}\n.cmd-editable {\n padding-top: 0;\n}\n/* padding added as margin to .cmd to fix FireFox bug see: https://stackoverflow.com/q/29986977/387194 */\n.terminal-scroller {\n padding-bottom: 0;\n}\n.terminal .terminal-output > :not(.raw) .terminal-error,\n.terminal .terminal-output > :not(.raw) .terminal-error * {\n --color: var(--error-color, red);\n text-shadow: 0 0 calc(var(--glow) * 5px) var(--color);\n}\n.terminal .terminal-output > :not(.raw) a[href] {\n text-shadow: 0 0 calc(var(--glow) * 5px) var(--color);\n}\n.terminal .cmd {\n margin-bottom: calc(1px * var(--padding, 10) / var(--pixel-density, 1));\n position: relative;\n}\n.terminal .partial, .terminal .partial > div {\n display: inline-block;\n}\n@supports (--css: variables) {\n .terminal,\n .terminal-output > :not(.raw) span[data-text]:not(.token):not(.inverted):not(.terminal-inverted):not(.cmd-inverted):not(.terminal-error):not(.emoji),\n .terminal-output > :not(.raw) a,\n .terminal-output > :not(.raw) div,\n .cmd,\n .cmd span[data-text]:not(.cmd-inverted):not(.token):not(.emoji),\n .terminal.external [data-text],\n .cmd div {\n color: var(--color, #aaa);\n background-color: var(--background, #000);\n }\n .terminal {\n --terminal-line: calc(var(--size, 1) * (16px / var(--pixel-density, 1)) + 1px / var(--pixel-density, 1));\n --terminal-font-size: calc(var(--size, 1) * (12px / var(--pixel-density, 1)));\n height: auto;\n /* force size when user add --rows */\n height: calc((var(--terminal-line) * var(--rows)) + (var(--padding, 10) * 2px));\n }\n .terminal .terminal-output > :not(.raw) > div,\n .cmd div,\n .terminal,\n .terminal.external div {\n line-height: round(var(--terminal-line, 1em));\n }\n .terminal [data-text], .cmd [data-text] {\n /* conditionals: https://www.kizu.ru/conditions-for-css-variables/ */\n /* --glow: 0; */\n text-shadow: var(--text-shadow, 0 0 calc(var(--glow) * 5px) var(--color, #ccc));\n }\n .terminal span[style*=\"--length\"] {\n /*\n * default value for char-width taken from Google Chrome for default font\n * to silence warning in webpack #371\n */\n width: calc(var(--length, 1) * var(--char-width, 7.23438) * 1px);\n display: inline-block;\n }\n .terminal,\n .terminal-output > :not(.raw) span,\n .terminal-output > :not(.raw) a,\n .terminal-output > :not(.raw) div {\n font-size: var(--terminal-font-size);\n }\n .cmd,\n .cmd span,\n .cmd div {\n --cmd-font-size: var(--terminal-font-size, calc(var(--size, 1) * (12px / var(--pixel-density, 1))));\n font-size: var(--cmd-font-size);\n }\n .terminal-output .emoji, .cmd .emoji {\n height: var(--terminal-font-size);\n }\n .cmd .clipboard {\n top: calc(var(--size, 1) * (14 / var(--pixel-density, 1)) * var(--cursor-line, 0) * 1px);\n }\n .terminal span[style*=\"--background\"],\n .cmd span[style*=\"--background\"] {\n --base-background: var(--background);\n }\n .terminal .inverted > span,\n .terminal .terminal-inverted > span,\n .cmd.cmd.cmd .inverted,\n .cmd.cmd.cmd .cmd-inverted {\n background-color: var(--color, #aaa) !important;\n color: var(--base-background, #000) !important;\n }\n .cmd .cmd-cursor.cmd-blink {\n color: var(--color, #aaa);\n background-color: var(--background, #000);\n }\n .cmd .cmd-cursor.cmd-blink > span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span,\n .cmd .cmd-cursor.cmd-blink a,\n .cmd .cmd-cursor.cmd-blink .fa,\n .cmd .cmd-cursor.cmd-blink .far,\n .cmd .cmd-cursor.cmd-blink .fas,\n .cmd .cmd-cursor.cmd-blink .emoji {\n -webkit-animation: var(--animation, terminal-blink) 1s infinite linear;\n -moz-animation: var(--animation, terminal-blink) 1s infinite linear;\n -ms-animation: var(--animation, terminal-blink) 1s infinite linear;\n animation: var(--animation, terminal-blink) 1s infinite linear;\n --original-background: inherit;\n }\n .cmd .cmd-cursor.cmd-blink .emoji span {\n color: transparent;\n background: transparent;\n }\n .terminal .terminal-output .raw *::-moz-selection,\n .terminal .terminal-output div div::-moz-selection,\n .terminal .terminal-output div div a::-moz-selection,\n .terminal .terminal-output span[data-text]::-moz-selection,\n /*\n * font icons (fontawesome) don't render selection we make emoji the same becuase,\n * selection on emoji looks weird\n */\n .terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::-moz-selection,\n .terminal .terminal-output .raw div::-moz-selection,\n .cmd span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::-moz-selection {\n background-color: var(--color, #aaa);\n color: var(--background, #000);\n }\n .terminal .terminal-output div div a::-moz-selection {\n background-color: var(--link-color, rgba(15, 96, 255, 0.99)) !important;\n color: var(--background, #000) !important;\n }\n .terminal .terminal-output div div a:hover::-moz-selection {\n background-color: var(--link-color, rgba(2, 50, 144, 0.99)) !important;\n }\n .terminal .terminal-output .raw *::selection,\n .terminal .terminal-output div div::selection,\n .terminal .terminal-output div div a::selection,\n .terminal .terminal-output span[data-text]:not(.emoji)::selection,\n .terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::selection,\n .terminal .terminal-output .raw div::selection,\n .cmd span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::selection {\n background-color: var(--color, rgba(170, 170, 170, 0.99)) !important;\n color: var(--background, #000) !important;\n }\n .terminal .terminal-output div div a::selection {\n background-color: var(--link-color, rgba(15, 96, 255, 0.99)) !important;\n color: var(--background, #000) !important;\n }\n .terminal .terminal-output div div a:hover::selection {\n background-color: var(--link-color, rgba(2, 50, 144, 0.99)) !important;\n }\n}\n/*\n * overwrite css variables that don't work with selection in Edge\n */\n@property --color {\n syntax: '';\n inherits: true;\n initial-value: rgba(170, 170, 170, 0.99);\n}\n@property --background {\n syntax: '';\n inherits: true;\n initial-value: #000;\n}\n@property --link-color {\n syntax: '';\n inherits: true;\n initial-value: #3377FF;\n}\n@property --size {\n syntax: '';\n inherits: true;\n initial-value: 1;\n}\n@property --padding {\n syntax: '';\n inherits: true;\n initial-value: 10;\n}\n@property --rows {\n syntax: ' | auto';\n inherits: true;\n initial-value: auto;\n}\n@supports (-ms-ime-align:auto) {\n .terminal h1::selection,\n .terminal h2::selection,\n .terminal h3::selection,\n .terminal h4::selection,\n .terminal h5::selection,\n .terminal h6::selection,\n .terminal pre::selection,\n .terminal td::selection,\n .terminal .terminal-output div div::selection,\n .terminal .terminal-output div div a::selection,\n .cmd span[data-text]::selection {\n background-color: rgba(170, 170, 170, 0.99);\n color: #000;\n }\n}\n/* PrismJS style overwrites */\n.terminal .token.token,\n.terminal .token.operator,\n.terminal .token.entity,\n.terminal .token.variable,\n.terminal .token.url,\n.terminal .token.string,\n.terminal .style .token.string,\n.terminal .token.token,\n.cmd .token.operator,\n.cmd .token.entity,\n.cmd .token.variable,\n.cmd .token.url,\n.cmd .token.string,\n.cmd .style .token.string,\n.cmd .token.token {\n background-color: inherit;\n}\n/* FireFox hack\n@supports (-moz-animation: foo) {\n .terminal,\n .terminal .terminal-output > :not(.raw) span,\n .terminal .terminal-output > :not(.raw) a,\n .terminal .terminal-output > :not(.raw) div,\n .cmd,\n .cmd span,\n .cmd div {\n line-height: calc(var(--size, 1) * 13px);\n }\n}\n*/\n/* style for autocomplete menu */\n.cmd .cursor-wrapper ul {\n list-style: none;\n margin: 0;\n padding: 0;\n float: left;\n position: absolute;\n top: 14px;\n left: 0;\n}\n.cmd .cursor-wrapper li {\n cursor: pointer;\n white-space: nowrap;\n}\n.cmd .cursor-wrapper li:hover {\n background: #aaa;\n color: #000;\n}\n.cursor-wrapper {\n position: relative;\n}\n.terminal-output img {\n vertical-align: top;\n}\n.cmd img {\n height: 14px;\n height: calc(var(--size, 1) * (14px / var(--pixel-density, 1)));\n border: 1px solid transparent;\n}\n.cmd-cursor img {\n border-color: #ccc;\n border-color: var(--color, #ccc);\n}\n.terminal-output svg.terminal-broken-image {\n height: calc(var(--size, 1) * (14px / var(--pixel-density, 1)));\n}\n.terminal-output svg.terminal-broken-image use {\n fill: var(--color, #ccc);\n}\n.terminal-error {\n --color: var(--error-color);\n}\n.terminal-glow {\n --animation: terminal-glow;\n}\n.terminal-glow span[data-text],\n.terminal-glow .cmd-prompt > span,\n.terminal-glow a[data-text],\n.terminal-glow [data-text] span,\n.terminal-glow .terminal-output > div span,\n.terminal-glow .terminal-output > div a[href] {\n text-shadow: 1px 1px 5px #ccc;\n text-shadow: 1px 1px 5px var(--color, #ccc);\n}\n/* is_bottom detection */\n.terminal-scroll-marker {\n position: relative;\n height: 1px;\n height: calc(1px / var(--pixel-density, 1));\n margin-top: -1px;\n margin-top: calc(-1px / var(--pixel-density, 1));\n z-index: 100;\n}\n.terminal-scroll-marker div {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 200;\n}\n.terminal-less {\n touch-action: none;\n overscroll-behavior-y: contain;\n}\n/*\n * mobile scroll fix, with help from StackOverflow\n * https://stackoverflow.com/a/60535925/387194\n */\n.terminal-mobile.terminal-less .terminal-wrapper {\n pointer-events: none;\n}\n.terminal-mobile.terminal-less .terminal-output a, .cmd-editable {\n pointer-events: visible;\n}\n.cmd-editable::before {\n content: attr(data-cmd-prompt);\n display: inline-block;\n}\n.cmd-editable {\n position: absolute;\n top: calc(var(--cmd-top) * 1px + var(--cmd-font-size, 1em));\n bottom: 0;\n right: 0;\n left: 0;\n z-index: 500;\n color: transparent;\n background: transparent;\n opacity: 0.01;\n outline: 0px solid transparent;\n}\n/* Scrollbar */\n.terminal-scroller::-webkit-scrollbar {\n width: calc(6px / var(--pixel-density, 1));\n height: calc(6px / var(--pixel-density, 1));\n background: var(--background, #000);\n}\n.terminal-scroller::-webkit-scrollbar-thumb {\n background: var(--color, #aaa);\n}\n.terminal-scroller::-webkit-scrollbar-thumb:hover {\n background: var(--color, #aaa);\n}\n.terminal-scroller {\n scrollbar-color: #aaa #000;\n scrollbar-color: var(--color, #aaa) var(--background, #000);\n scrollbar-width: thin;\n}\n\n/* visially hidden */\n.terminal-hidden {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0,0,0,0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n/*\n * Allow to change scrollbar color\n */\n.terminal-wrapper {\n --color: var(--base-color);\n --background: var(--base-background);\n}\n.cmd .token {\n --original-color: var(--color);\n}\n.terminal .terminal-blink, .cmd .terminal-blink {\n animation: terminal-ansi-blink 1s steps(2, start) infinite;\n -webkit-animation: terminal-ansi-blink 1s steps(2, start) infinite;\n}\n/* Allow transparent background #698 */\n.terminal .terminal-output,\n.terminal .terminal-output * {\n --background: transparent;\n}\n.terminal .cmd * {\n --background: transparent;\n}\n.terminal .cmd::selection,\n.terminal .cmd *::selection,\n.terminal .terminal-output::selection,\n.terminal .terminal-output *::selection {\n --background: var(--base-background);\n}\n@keyframes terminal-ansi-blink {\n to {\n color: var(--background);\n }\n}\n@-webkit-keyframes terminal-ansi-blink {\n to {\n color: var(--background);\n }\n}\n@media (prefers-reduced-motion) {\n :root {\n --animation: terminal-none;\n }\n}\n"]} \ No newline at end of file +{"version":3,"sources":["jquery.terminal.css"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;EAeE,CACF,4EAEI,oBACJ,CACA,iGACI,QACJ,CACA,oBAEI,SAAU,CAOV,gCAAkC,CAClC,qBAAuB,CAKvB,yBAA2B,CAJ3B,2BAA6B,CAL7B,WAAY,CAEZ,mDAAuD,CALvD,kDAAsD,CAStD,sBAAwB,CAKxB,yBAA2B,CAJ3B,mBAAqB,CAZrB,2BAA6B,CAa7B,qBAAuB,CAKvB,6BAA+B,CAf/B,eAAiB,CAgBjB,uFAA+F,CAF/F,yBAA2B,CAb3B,UAAW,CAEX,kDAAsD,CAStD,sBAKJ,CACA,iBACI,kBAAmB,CACnB,oBAAqB,CACrB,UAAW,CAOX,MAAO,CANP,eAAgB,CAChB,iBAAkB,CAIlB,KAAM,CAFN,gBAAiB,CADjB,kBAAmB,CAEnB,SAGJ,CACA,gMAMI,0BAA2B,CACzB,wBAAyB,CACxB,uBAAwB,CACtB,qBAAsB,CACrB,oBAAqB,CACjB,gBACd,CACA,gEACI,cACJ,CACA,UAGI,wCAA0C,CAC1C,yBAA0B,CAC1B,eAAgB,CAHhB,kBAAoB,CADpB,iBAKJ,CACA,mBAGI,uBAAwB,CAExB,qBAAsB,CADtB,WAAY,CAEZ,iBAAkB,CAJlB,eAAgB,CADhB,iBAMJ,CACA,uBACI,iBACJ,CACA,cAEI,WAAY,CADZ,gBAEJ,CACA,KACI,WACJ,CACA,wCAEI,WAAY,CADZ,QAEJ,CACA,oCACI,qBACJ,CACA,0BACI,WAAY,CACZ,0CACJ,CACA,4BAEI,WAAY,CADZ,eAEJ,CACA,0BAEI,cAAe,CAIf,UAAW,CAHX,SAAU,CAFV,iBAAkB,CAGlB,QAAS,CACT,SAEJ,CACA,uEAWI,qBAAuB,CANvB,kBAAoB,CAKpB,qBAAuB,CAJvB,gBAAkB,CAClB,yBAA2B,CAK3B,mBAAqB,CAJrB,6BAA+B,CAN/B,2BAA6B,CAE7B,iBAAmB,CADnB,eAAiB,CAUjB,oBAAsB,CAJtB,oBAKJ,CACA,KACI,SAAU,CACV,iBAAkB,CAClB,UAAW,CACX,WACJ,CACA,kCACI,gCACJ,CACA,oGAGI,YACJ,CACA,mGAEI,+BAAiC,CACjC,oBACJ,CACA,sFAGI,UAAc,CACd,4BAAiC,CACjC,cACJ,CACA,8JAGI,8BAAmC,CAGnC,uDACJ,CACA,6GAEI,4BAA8B,CAG9B,4DACJ,CACA,wGAGI,qBAAyB,CACzB,iDAAuD,CACvD,UAAW,CACX,2CAA8C,CAC9C,oBACJ,CACA,qGAQI,8BAAmC,CADnC,oBAAyB,CAEzB,sCAA4C,CAC5C,yBACJ,CACA,uHAGI,+BAAoC,CACpC,iDAAuD,CACvD,oBAAsB,CACtB,sCAAyC,CACzC,oBACJ,CACA,kBAEI,uBAAyB,CADzB,0CAA4C,CAE5C,mCACJ,CAIA,sEAEI,oBACJ,CACA,6OAMQ,mDAAoD,CACjD,gDAAiD,CAChD,+CAAgD,CAC5C,2CAChB,CACA,+CACI,6BAA8B,CAC9B,mDACJ,CACA,8DACI,aAAc,CACd,WACJ,CACA,6CAEI,UAAW,CADX,kBAEJ,CACA,gEACI,UACJ,CACA,8CACI,eACJ,CACA,iDAEI,oBACJ,CACA,mCACI,eAAgB,CAChB,8DACJ,CACA,0EAGI,eACJ,CACA,8LAMI,iBAAkB,CAClB,OACJ,CACA,oMAOI,qBAAsB,CACtB,iCACJ,CACA,eAEI,cACJ,CACA,gEAEI,gBAAiB,CAEjB,oBAAqB,CADrB,OAEJ,CACA,eACI,kBACJ,CACA,+CAEI,oBACJ,CACA,wNAGI,qBAAsB,CADtB,UAEJ,CACA,yDACI,uBACJ,CACA,oBACI,0BAA4B,CAC5B,yEACJ,CACA,2CACI,wBACJ,CACA,oCAII,2BAA4B,CAD5B,uBAAwB,CAExB,iBAAkB,CAJlB,WAAY,CACZ,yCAA4C,CAI5C,iBACJ,CACA,0JAQI,0BAA2B,CAF3B,gCAAkC,CAClC,2BAA6B,CAE7B,iBACJ,CACA,kFAGI,oBAAqB,CACrB,SACJ,CACA,eACI,qBACJ,CACA,iDAEI,wBAAyB,CADzB,aAEJ,CACA,iEAEI,4BAA6B,CAD7B,iBAEJ,CACA,mBACI,4BACJ,CACA,+DAEI,aACJ,CACA,SACI,UACJ,CACA,qBACI,WACJ,CACA,8BACI,eACJ,CACA,+BAEI,oBAAqB,CADrB,wBAEJ,CACA,yBAEI,UAAW,CACX,iBAAkB,CAGlB,MAAO,CAFP,mBAAoB,CAGpB,iBAAkB,CANlB,iBAAkB,CAIlB,SAGJ,CACA,2BACI,UACJ,CACA,+BACI,aAAc,CACd,UACJ,CACA,gBACI,wBACJ,CACA,aACI,qBACJ,CACA,mEACI,wBAAyB,CACzB,aACJ,CAEA,yCAGI,WAAY,CAFZ,iBAAkB,CAClB,WAEJ,CAEA,iBACI,iBAAkB,CAClB,WACJ,CACA,+CACI,eACJ,CAKA,KACI;iBACc,CAClB;iBAEA,CACA,aACI,uCACJ,CAEA,kCACI,OACI,qBAAsB,CACtB,2CAA6C,CAG7C,8DAAkE,CAClE,sDAA0D,CAH1D,UAAW,CACX,qCAGJ,CACA,SACI,wBAAyB,CAEzB,aAAc,CACd,gCACJ,CACJ,CACA,+BACI,OACI,qBAAsB,CACtB,2CAA6C,CAG7C,8DAAkE,CAClE,sDAA0D,CAH1D,UAAW,CACX,qCAGJ,CACA,SACI,wBAAyB,CACzB,aAAc,CACd,gCACJ,CACJ,CACA,0BACI,OACI,qBAAsB,CACtB,2CAA6C,CAG7C,8DAAkE,CAClE,sDAA0D,CAH1D,UAAW,CACX,qCAGJ,CACA,SACI,wBAAyB,CAGzB,uBAAwB,CACxB,eAAgB,CAHhB,aAAc,CACd,gCAGJ,CACJ,CAEA,iCACI,OACI,qBAAsB,CACtB,2CAA6C,CAG7C,uBAAwB,CACxB,4CAA8C,CAC9C,oCAAsC,CAJtC,UAAW,CACX,qCAIJ,CACA,SACI,wBAAyB,CAEzB,uBAAwB,CACxB,eAAgB,CAFhB,aAGJ,CACJ,CACA,8BACI,OACI,qBAAsB,CACtB,2CAA6C,CAG7C,uBAAwB,CACxB,yCAA2C,CAC3C,oCAAsC,CAJtC,UAAW,CACX,qCAIJ,CACA,SACI,wBAAyB,CAEzB,oBAAqB,CACrB,eAAgB,CAFhB,aAGJ,CACJ,CACA,yBACI,OACI,qBAAsB,CACtB,2CAA6C,CAG7C,uBAAwB,CACxB,oCAAsC,CAHtC,UAAW,CACX,qCAGJ,CACA,SACI,wBAAyB,CAEzB,eAAgB,CADhB,aAEJ,CACJ,CAEA,gCACE,OACI,6BAA8B,CAC9B,kFACJ,CACA,SACI,eACJ,CACF,CACA,6BACE,OACI,6BAA8B,CAC9B,kFACJ,CACA,SACI,eACJ,CACF,CACA,wBACE,OACI,6BAA8B,CAC9B,kFACJ,CACA,SACI,eACJ,CACF,CAEA,sCACE,OACI,uBAAwB,CACxB,4EACJ,CACA,SACI,eACJ,CACF,CACA,mCACE,OACI,uBAAwB,CACxB,4EACJ,CACA,SACI,eACJ,CACF,CACA,8BACE,OACI,uBAAwB,CACxB,4EACJ,CACA,SACI,eACJ,CACF,CAEA,iCACI,MACI,qBAAsB,CACtB,2CAA6C,CAG7C,8DAAkE,CAClE,sDAA0D,CAH1D,UAAW,CACX,qCAGJ,CACJ,CACA,8BACI,MACI,qBAAsB,CACtB,2CAA6C,CAG7C,8DAAkE,CAClE,sDAA0D,CAH1D,UAAW,CACX,4BAGJ,CACJ,CACA,yBACI,MACI,qBAAsB,CACtB,2CAA6C,CAG7C,8DAAkE,CAClE,sDAA0D,CAH1D,UAAW,CACX,qCAGJ,CACJ,CACA,2WAMI,yCAA0C,CACvC,sCAAuC,CACtC,qCAAsC,CAClC,iCACZ,CACA,6UAMI,oCAAqC,CAClC,iCAAkC,CACjC,gCAAiC,CAC7B,4BACZ,CACA,uUAMI,mCAAoC,CACjC,gCAAiC,CAChC,+BAAgC,CAC5B,2BACZ,CAOA,+BACI,oBACI,mBACJ,CACA,0BACI,OACI,2CAA6C,CAC7C,4BACJ,CACA,SACI,uCAAyC,CACzC,gCACJ,CACJ,CACA,wBACI,OACI,mCACJ,CACA,SACI,wCACJ,CACJ,CACA,8BACI,OACI,qCAAuC,CACvC,gBAAiB,CACjB,qCACJ,CACA,SACI,0CAA4C,CAC5C,gBAAiB,CACjB,qCACJ,CACJ,CACJ,CAEA,2DACI,oBACI,mBACJ,CACA,6CACI,cACJ,CACA,8BACI,OACI,qBAAsB,CACtB,UACJ,CACA,SACI,qBAAsB,CACtB,UACJ,CACJ,CACJ,CACA,idAQI,qBAAsB,CACtB,UACJ,CAUA,eACI,mBACJ,CACA,wBACI,sBACJ,CACA,6BACI,gCACJ,CACA,yGAGI,sBACJ,CACA,0ZAYI,mCAA2C,CAC3C,UACJ,CAEA,gLAKI,sCAAwC,CACxC,2BACJ,CACA,uJAKI,sCAAwC,CACxC,2BACJ,CAEA,8GAEI,SAAU,CACV,4BACJ,CACA,OAGI,MAAO,CAFP,cAAe,CACf,KAAM,CAEN,UAAW,CACX,YACJ,CACA,6BAGI,qBAAsB,CADtB,WAAY,CADZ,UAGJ,CACA,oCACI,SACJ,CACA,OACI,UACJ,CACA,yBAOI,WAAY,CAGZ,qBAAsB,CALtB,WAAY,CAHZ,MAAO,CAIP,cAAe,CAEf,WAAa,CACb,mBAAoB,CARpB,iBAAkB,CAElB,SAAU,CACV,UAOJ,CACA,0DACI,4DACJ,CACA,cACI,aACJ,CAEA,mBACI,gBACJ,CACA,8GAEI,8BAAgC,CAChC,kDACJ,CACA,8CACI,kDACJ,CACA,eACI,kEAAuE,CACvE,iBACJ,CACA,0CACI,oBACJ,CACA,4BACI,wUASI,uCAAyC,CADzC,uBAEJ,CACA,UACI,iGAAwG,CACxG,wEAA6E,CAC7E,WAAY,CAEZ,sEAA+E,CAK/E,wFACJ,CACA,oFAII,2CACJ,CACA,uCAGI,0EACJ,CACA,kCAMI,oBAAqB,CADrB,2DAEJ,CACA,yGAII,mCACJ,CACA,wBAGI,6FAAmG,CACnG,8BACJ,CACA,oCACI,gCACJ,CACA,gBACI,+EACJ,CACA,uEAEI,mCACJ,CACA,6GAII,4CAA+C,CAC/C,2CACJ,CACA,2BAEI,uCAAyC,CADzC,uBAEJ,CACA,uPAUI,6BAA8B,CAJ9B,oEAAsE,CACnE,iEAAmE,CAClE,gEAAkE,CAC9D,4DAEZ,CACA,uCAEI,sBAAuB,CADvB,iBAEJ,CACA,ocAWI,kCAAoC,CACpC,4BACJ,CACA,qDACI,gEAAuE,CACvE,sCACJ,CACA,2DACI,+DACJ,CACA,6aAOI,0DAAoE,CACpE,sCACJ,CACA,gDACI,gEAAuE,CACvE,sCACJ,CACA,sDACI,+DACJ,CACJ,CAIA,kBACI,gBAAiB,CACjB,aAAc,CACd,gCACJ,CACA,uBACI,gBAAiB,CACjB,aAAc,CACd,kBACJ,CACA,uBACI,gBAAiB,CACjB,aAAc,CACd,kBACJ,CACA,iBACI,iBAAkB,CAClB,aAAc,CACd,eACJ,CACA,oBACI,iBAAkB,CAClB,aAAc,CACd,gBACJ,CACA,iBACI,wBAAyB,CACzB,aAAc,CACd,kBACJ,CACA,+BACI,+TAWI,mCAA2C,CAC3C,UACJ,CACJ,CAEA,2TAeI,wBACJ,CAeA,wBAII,UAAW,CAGX,MAAO,CANP,eAAgB,CAChB,QAAS,CACT,SAAU,CAEV,iBAAkB,CAClB,QAEJ,CACA,wBACI,cAAe,CACf,kBACJ,CACA,8BACI,eAAgB,CAChB,UACJ,CACA,gBACI,iBACJ,CACA,qBACI,kBACJ,CACA,SAGI,4BAA6B,CAF7B,WAAY,CACZ,0DAEJ,CACA,gBACI,iBAAkB,CAClB,8BACJ,CACA,2CACI,0DACJ,CACA,+CACI,sBACJ,CACA,gBACI,0BACJ,CACA,eACI,yBACJ,CACA,gNAMI,4BAA6B,CAC7B,yCACJ,CAEA,wBAEI,UAAW,CACX,wCAA2C,CAC3C,eAAgB,CAChB,6CAAgD,CAJhD,iBAAkB,CAKlB,WACJ,CACA,4BAEI,QAAS,CACT,MAAO,CAFP,iBAAkB,CAGlB,OAAQ,CACR,WACJ,CACA,eAEI,6BAA8B,CAD9B,iBAEJ,CAKA,iDACI,mBACJ,CACA,gEACI,sBACJ,CACA,qBACI,6BAA8B,CAC9B,oBACJ,CACA,cAQI,sBAAuB,CALvB,QAAS,CAIT,iBAAkB,CAFlB,MAAO,CAIP,WAAa,CACb,2BAA8B,CAT9B,iBAAkB,CAGlB,OAAQ,CAFR,wDAA2D,CAI3D,WAKJ,CAEA,sCAGI,iCAAmC,CADnC,wCAA2C,CAD3C,uCAGJ,CAIA,8FACI,4BACJ,CACA,mBACI,yBAA0B,CAC1B,wDAA2D,CAC3D,oBACJ,CAGA,iBAOI,4BAA8B,CAE9B,kBAAoB,CANpB,oBAAsB,CAEtB,qBAAuB,CACvB,yBAA2B,CAF3B,mBAAqB,CAHrB,2BAA6B,CAO7B,4BAA8B,CAN9B,mBAQJ,CAIA,kBACI,yBAA0B,CAC1B,mCACJ,CACA,YACI,6BACJ,CACA,+CACI,wDAA0D,CAC1D,gEACJ,CAMA,yEACE,wBACF,CACA,kIAIE,mCACF,CACA,+BACI,GACI,uBACJ,CACJ,CACA,uCACI,GACI,uBACH,CACL,CACA,gCACI,MACI,yBACJ,CACJ","file":"jquery.terminal.min.css","sourcesContent":["/*!\n * __ _____ ________ __\n * / // _ /__ __ _____ ___ __ _/__ ___/__ ___ ______ __ __ __ ___ / /\n * __ / // // // // // _ // _// // / / // _ // _// // // \\/ // _ \\/ /\n * / / // // // // // ___// / / // / / // ___// / / / / // // /\\ // // / /__\n * \\___//____ \\\\___//____//_/ _\\_ / /_//____//_/ /_/ /_//_//_/ /_/ \\__\\_\\___/\n * \\/ /____/ version DEV\n * http://terminal.jcubic.pl\n *\n * This file is part of jQuery Terminal.\n *\n * Copyright (c) 2011-2024 Jakub T. Jankiewicz \n * Released under the MIT license\n *\n * Date: Sun, 17 Nov 2024 13:13:41 +0000\n */\n.terminal .terminal-output .format, .cmd .format,\n.cmd-prompt, .cmd-prompt div {\n display: inline-block;\n}\n.terminal h1, .terminal h2, .terminal h3, .terminal h4, .terminal h5, .terminal h6, .terminal pre, .cmd {\n margin: 0;\n}\n.cmd .cmd-clipboard {\n position: absolute !important;\n let: -16px;\n left: calc(-16px / var(--pixel-density, 1)) !important;\n top: 0 !important;\n width: 16px;\n height: 16px;\n width: calc(16px / var(--pixel-density, 1)) !important;\n height: calc(16px / var(--pixel-density, 1)) !important;\n background: transparent !important;\n border: none !important;\n color: transparent !important;\n outline: none !important;\n padding: 0 !important;\n resize: none !important;\n box-shadow: none !important;\n z-index: 1000 !important;\n overflow: hidden !important;\n white-space: pre !important;\n text-indent: -9999em !important; /* better cursor hiding for Safari and IE */\n top: calc(var(--cursor-line, 0) * var(--size, 1) * (14px / var(--pixel-density, 1))) !important;\n}\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n user-select: none;\n width: 1px;\n top: 0;\n left: 0;\n}\n.cmd span.cmd-end-line,\n.cmd span.cmd-end-line span,\n.cmd div.cmd-end-line span[data-text]:last-child,\n.cmd div.cmd-end-line span[data-text]:last-child span,\n.cmd textarea,\n.cmd .cursor + span:empty {\n -webkit-touch-callout: none; /* iOS Safari */\n -webkit-user-select: none; /* Safari */\n -khtml-user-select: none; /* Konqueror HTML */\n -moz-user-select: none; /* Firefox */\n -ms-user-select: none; /* Internet Explorer/Edge */\n user-select: none; /* Non-prefixed version, currently supported by Chrome and Opera */\n}\n.terminal img, .terminal audio, .terminal object, .terminal canvas {\n cursor: default;\n}\n.terminal {\n position: relative;\n line-height: initial;\n --base-background: var(--background, #000);\n --base-color: var(--color);\n contain: content;\n}\n.terminal-scroller {\n position: relative;\n overflow-y: auto;\n scrollbar-gutter: stable;\n height: 100%;\n box-sizing: border-box;\n overflow-x: hidden;\n}\nterminal.terminal-temp {\n visibility: hidden;\n}\nbody.terminal {\n min-height: 100vh;\n height: 100%;\n}\nhtml {\n height: 100%;\n}\nbody.terminal, body.full-screen-terminal {\n margin: 0;\n height: 100%;\n}\nbody.full-screen-terminal .terminal {\n height: 100% !important;\n}\nbody.full-screen-terminal {\n height: 100%;\n height: var(--terminal-force-height, 100dvh);\n}\n.terminal > div.terminal-fill {\n min-height: 100%;\n height: 100%;\n}\n.terminal > .terminal-pixel {\n position: absolute;\n display: inline;\n left: -2px;\n top: -2px;\n width: 1px;\n height: 1px;\n}\n.terminal > .terminal-resizer,\n.terminal > .terminal-font .terminal-resizer {\n position: absolute !important;\n top: 0 !important;\n right: 0 !important;\n bottom: 0 !important;\n left: 0 !important;\n overflow: hidden !important;\n pointer-events: none !important;\n z-index: -1 !important;\n height: 100% !important;\n border: none !important;\n padding: 0 !important;\n width: 100% !important;\n}\n.cmd {\n padding: 0;\n position: relative;\n width: 100%;\n z-index: 300;\n}\n.terminal .cmd, .terminal .cmd div {\n background: transparent !important;\n}\n.terminal a[tabindex=\"1000\"],\n.terminal a[tabindex=\"1000\"]:active,\n.terminal a[tabindex=\"1000\"]:focus {\n outline: none;\n}\n.terminal .inverted, .cmd.cmd.cmd .inverted,\n.terminal .terminal-inverted, .cmd.cmd.cmd .cmd-inverted {\n background-color: #aaa !important;\n color: #000 !important;\n}\n.terminal .terminal-output > :not(.raw) a[href],\n.cmd a[href],\n.terminal.external a[href] {\n color: #3377FF;\n color: var(--link-color, #3377FF);\n cursor: pointer;\n}\n.cmd a[href]:not(.terminal-inverted),\n.terminal .terminal-output > :not(.raw) a[href]:not(.terminal-inverted),\n.terminal.external a[href]:not(.terminal-inverted) {\n --color: var(--link-color, #3377FF);\n /* conditionals: https://www.kizu.ru/conditions-for-css-variables/ */\n /* --glow: 0; */\n text-shadow: 0 0 calc(var(--glow) * 5px) var(--color, #ccc);\n}\n.terminal .terminal-output > :not(.raw) a[href].terminal-inverted,\n.terminal.external a[href].terminal-inverted {\n background: var(--color, #ccc);\n /* conditionals: https://www.kizu.ru/conditions-for-css-variables/ */\n /* --glow: 0; */\n text-shadow: 0 0 calc(var(--glow) * 5px) var(--background, #000);\n}\n.terminal .terminal-output > :not(.raw) a[href]:hover,\n.cmd a[href]:hover,\n.terminal.external a[href]:hover {\n background-color: #3377FF;\n background-color: var(--link-color, #3377FF) !important;\n color: #000;\n color: var(--base-background, #000) !important;\n text-decoration: none;\n}\n.terminal .terminal-output > :not(.raw) a[href] span,\n.cmd a[href] span,\n.terminal.external a[href] span {\n /*\n * shorter and simple solution\n * it's hard to overwrite long :not selector (:not(a span) don't work)\n */\n color: #3377FF !important;\n --color: var(--link-color, #3377FF);\n color: var(--link-color, #3377FF) !important;\n text-decoration: underline;\n}\n.terminal .terminal-output > :not(.raw) a[href]:hover span,\n.cmd a[href]:hover span,\n.terminal.external a[href]:hover span {\n background-color: #3377FF !important;\n background-color: var(--link-color, #3377FF) !important;\n color: #000 !important;\n color: var(--background, #000) !important;\n text-decoration: none;\n}\n.terminal a[href] {\n transition-property: color, background-color;\n transition-duration: 0.2s;\n transition-timing-function: ease-out;\n}\n.cmd .cmd-cursor {\n display: inline-block;\n}\n.cmd .cmd-cursor-line > span,\n.cmd .cmd-cursor-line img {\n display: inline-block;\n}\n.cmd .cmd-cursor.cmd-blink > span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span,\n.cmd .cmd-cursor.cmd-blink a,\n.cmd .cmd-cursor.cmd-blink .fa,\n.cmd .cmd-cursor.cmd-blink .far,\n.cmd .cmd-cursor.cmd-blink .fas,\n.cmd .cmd-cursor .emoji {\n -webkit-animation: terminal-blink 1s infinite linear;\n -moz-animation: terminal-blink 1s infinite linear;\n -ms-animation: terminal-blink 1s infinite linear;\n animation: terminal-blink 1s infinite linear;\n}\n.bar.terminal .inverted, .bar.cmd .cmd-inverted {\n box-shadow: -2px 0 0 -1px #aaa;\n box-shadow: -2px 0 0 -1px var(--original-color, #aaa);\n}\n.terminal, .terminal .terminal-output > div > div, .cmd .cmd-prompt {\n display: block;\n height: auto;\n}\n.terminal .terminal-output > div:not(.raw) div {\n white-space: nowrap;\n clear: both;\n}\n.cmd .cmd-prompt > span, .cmd .cmd-prompt > a, .cmd .cmd-prompt:empty {\n float: left;\n}\n.cmd-prompt [data-text] > span, .cmd-wrapper > div {\n white-space: pre;\n}\n.cmd [data-text] span,\n.terminal [data-text] span {\n display: inline-block;\n}\n.terminal-ouput span[style*=\"width\"] {\n min-height: 14px;\n min-height: calc(var(--size, 1) * (14px / var(--pixel-density, 1)));\n}\n.terminal .terminal-output > :not(.raw) > div,\n.cmd div,\n.terminal.external div {\n line-height: 1em;\n}\n.cmd .cmd-prompt span.fa::before,\n.cmd .cmd-prompt span.fab::before,\n.cmd .cmd-prompt span.fad::before,\n.cmd .cmd-prompt span.fal::before,\n.cmd .cmd-prompt span.far::before,\n.cmd .cmd-prompt span.fas {\n position: relative;\n top: 2px;\n}\n.terminal,\n.terminal-output > :not(.raw),\n.terminal-output > :not(.raw) span:not(.fas):not(.far):not(.fa),\n.terminal-output > :not(.raw) a,\n.cmd,\n.terminal-font-forcer,\n.cmd span:not(.fas):not(.far):not(.fa) {\n font-family: monospace;\n font-family: var(--font, monospace);\n}\n.terminal,\n.cmd {\n font-size: 12px;\n}\n.terminal-output > div:not(.raw) div::before,\n.cmd .cmd-line::before {\n content: '\\0200B';\n width: 0;\n display: inline-block;\n}\n.cmd .cmd-line {\n white-space: nowrap;\n}\n.terminal span[data-text],\n.cmd span[data-text] {\n display: inline-block;\n}\n.terminal, terminal-output > div:not(.raw) div > span:not(.token):not(.inverted):not(.terminal-inverted):not(.cmd-inverted):not(.terminal-error):not(.emoji),\n.cmd span[data-text]:not(.cmd-inverted):not(.token):not(.emoji) {\n color: #aaa;\n background-color: #000;\n}\n.terminal span[data-text] span, .cmd span[data-text] span {\n text-decoration: inherit;\n}\n.terminal .ansi > div {\n line-height: 13px !important;\n line-height: calc(var(--size, 1) * (13px / var(--pixel-density, 1))) !important;\n}\n.cmd span.cmd-prompt, .cmd .cmd-prompt span {\n --background: transparent;\n}\n.terminal-output .emoji, .cmd .emoji {\n height: 12px;\n height: calc(12px / var(--pixel-density, 1));\n background-size: contain;\n background-repeat: no-repeat;\n color: transparent;\n position: relative;\n}\n.terminal .terminal-output .fa span,\n.terminal .terminal-output .fas span,\n.terminal .terminal-output .far span,\n.cmd .fa span,\n.cmd .fas span,\n.cmd .far span {\n background: transparent !important;\n color: transparent !important;\n clip: rect(1px,1px,1px,1px);\n position: absolute;\n}\n.terminal-output .emoji,\n.terminal-output .emoji span,\n.cmd .emoji, .cmd .emoji span {\n display: inline-block;\n width: 2ch;\n}\n.terminal, .cmd {\n box-sizing: border-box;\n}\n.cmd .cmd-cursor span:not(.token):not(.inverted) {\n color: inherit;\n background-color: inherit;\n}\n.cmd .emoji.emoji.emoji.emoji, .cmd .emoji.emoji.emoji.emoji span {\n color: transparent;\n background-color: transparent;\n}\n.cmd .cmd-cursor * {\n background-color: transparent;\n}\n.terminal span[style*=\"width\"] span,\n.cmd span[style*=\"width\"] span {\n width: inherit;\n}\n.cmd div {\n clear: both;\n}\n.cmd .cmd-prompt + div {\n clear: right;\n}\nterminal .terminal-output > div {\n margin-top: -1px;\n}\n.terminal-output > div.raw > div * {\n overflow-wrap: break-word;\n word-wrap: break-word;\n}\n.terminal .terminal-font {\n position: absolute;\n float: left;\n font-size: inherit;\n line-height: inherit;\n top: -100%;\n left: 0;\n margin-bottom: 1px;\n}\n.cmd > span:not(.cmd-prompt) {\n float: left;\n}\n.cmd .cmd-prompt span.cmd-line {\n display: block;\n float: none;\n}\n.terminal table {\n border-collapse: collapse;\n}\n.terminal td {\n border: 1px solid #aaa;\n}\n.cmd span[data-text]:not(.emoji):not(.fa):not(.fas):not(.far) span {\n background-color: inherit;\n color: inherit;\n}\n/* fix for underline on middle line */\n.cmd [role=\"presentation\"].cmd-cursor-line {\n position: relative;\n z-index: 100;\n cursor: text;\n}\n/* prompt above cursor line */\n.cmd .cmd-prompt {\n position: relative;\n z-index: 200;\n}\n.cmd [role=\"presentation\"]:not(.cmd-cursor-line) {\n overflow: hidden;\n}\n/*\n * this is set so animation can select original color as backgound for cursor\n * so span can have --color for selection\n */\n.cmd {\n --original-color: var(\n --color, #aaa);\n--original-background: var(\n --background);\n}\n.cmd a[href] {\n --original-color: var(--link-color, #3377FF);\n}\n/* DEFAULT ANIMATION */\n@-webkit-keyframes terminal-blink {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n /* original background is set in emoji that need different style */\n color: inherit;\n color: var(--original-color, #aaa)\n }\n}\n@-moz-keyframes terminal-blink {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n color: inherit;\n color: var(--original-color, #aaa);\n }\n}\n@keyframes terminal-blink {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n color: inherit;\n color: var(--original-color, #aaa);\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n/* GLOW ANIMATION */\n@-webkit-keyframes terminal-glow {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n box-shadow: 0 0 3px #aaa;\n -webkit-box-shadow: 0 0 3px var(--color, #aaa);\n box-shadow: 0 0 3px var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n color: inherit;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n@-moz-keyframes terminal-glow {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n box-shadow: 0 0 3px #aaa;\n -moz-box-shadow: 0 0 3px var(--color, #aaa);\n box-shadow: 0 0 3px var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n color: inherit;\n -moz-box-shadow: none;\n box-shadow: none;\n }\n}\n@keyframes terminal-glow {\n 0%, 50% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n box-shadow: 0 0 3px #aaa;\n box-shadow: 0 0 3px var(--color, #aaa);\n }\n 50.1%, 100% {\n background-color: inherit;\n color: inherit;\n box-shadow: none;\n }\n}\n/* BAR ANIMATION */\n@-webkit-keyframes terminal-bar {\n 0%, 50% {\n box-shadow: -2px 0 0 -1px #aaa;\n box-shadow: calc(var(--line-thickness, 2) * -1px) 0 0 -1px var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n@-moz-keyframes terminal-bar {\n 0%, 50% {\n box-shadow: -2px 0 0 -1px #aaa;\n box-shadow: calc(var(--line-thickness, 2) * -1px) 0 0 -1px var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n@keyframes terminal-bar {\n 0%, 50% {\n box-shadow: -2px 0 0 -1px #aaa;\n box-shadow: calc(var(--line-thickness, 2) * -1px) 0 0 -1px var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n/* UNDERLINE ANIMATION */\n@-webkit-keyframes terminal-underline {\n 0%, 50% {\n box-shadow: 0 2px 0 #aaa;\n box-shadow: 0 calc(var(--line-thickness, 2) * 1px) 0 var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n@-moz-keyframes terminal-underline {\n 0%, 50% {\n box-shadow: 0 2px 0 #aaa;\n box-shadow: 0 calc(var(--line-thickness, 2) * 1px) 0 var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n@keyframes terminal-underline {\n 0%, 50% {\n box-shadow: 0 2px 0 #aaa;\n box-shadow: 0 calc(var(--line-thickness, 2) * 1px) 0 var(--original-color, #aaa);\n }\n 50.1%, 100% {\n box-shadow: none;\n }\n}\n/* NONE ANIMATION */\n@-webkit-keyframes terminal-none {\n 0%, 100% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n}\n@-moz-keyframes terminal-none {\n 0%, 100% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n}\n@keyframes terminal-none {\n 0%, 100% {\n background-color: #aaa;\n background-color: var(--original-color, #aaa);\n color: #000;\n color: var(--original-background, #000);\n -webkit-box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n box-shadow: 0 0 calc(var(--glow) * 3px) var(--color, #aaa);\n }\n}\n.underline-animation .cmd .cmd-cursor.cmd-blink > span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span,\n.underline-animation .cmd .cmd-cursor.cmd-blink a,\n.underline-animation .cmd .cmd-cursor.cmd-blink .fa,\n.underline-animation .cmd .cmd-cursor.cmd-blink .far,\n.underline-animation .cmd .cmd-cursor.cmd-blink .fas,\n.underline-animation .cmd .cmd-cursor .emoji {\n -webkit-animation-name: terminal-underline;\n -moz-animation-name: terminal-underline;\n -ms-animation-name: terminal-underline;\n animation-name: terminal-underline;\n}\n.glow-animation .cmd .cmd-cursor.cmd-blink > span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span,\n.glow-animation .cmd .cmd-cursor.cmd-blink a,\n.glow-animation .cmd .cmd-cursor.cmd-blink .fa,\n.glow-animation .cmd .cmd-cursor.cmd-blink .far,\n.glow-animation .cmd .cmd-cursor.cmd-blink .fas,\n.glow-animation .cmd .cmd-cursor .emoji {\n -webkit-animation-name: terminal-glow;\n -moz-animation-name: terminal-glow;\n -ms-animation-name: terminal-glow;\n animation-name: terminal-glow;\n}\n.bar-animation .cmd .cmd-cursor.cmd-blink > span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span,\n.bar-animation .cmd .cmd-cursor.cmd-blink a,\n.bar-animation .cmd .cmd-cursor.cmd-blink .fa,\n.bar-animation .cmd .cmd-cursor.cmd-blink .far,\n.bar-animation .cmd .cmd-cursor.cmd-blink .fas,\n.bar-animation .cmd .cmd-cursor .emoji {\n -webkit-animation-name: terminal-bar;\n -moz-animation-name: terminal-bar;\n -ms-animation-name: terminal-bar;\n animation-name: terminal-bar;\n}\n/*\n Internet Explorer & Edge *, Safari ≤ 6\n source: https://w3reign.com/internet-explorer-edge-css-hacks/\n*/\n\n\n@supports (-ms-ime-align:auto) {\n .cmd .cmd-clipboard {\n margin-left: -9999px;\n }\n @keyframes terminal-blink {\n 0%, 50% {\n background-color: var(--original-color, #aaa);\n color: var(--background, #000);\n }\n 50.1%, 100% {\n background-color: var(--background, #000);\n color: var(--original-color, #aaa);\n }\n }\n @keyframes terminal-bar {\n 0%, 50% {\n border-left-color: var(--color, #aaa);\n }\n 50.1%, 100% {\n border-left-color: var(--background, #000);\n }\n }\n @keyframes terminal-underline {\n 0%, 50% {\n border-bottom-color: var(--color, #aaa);\n line-height: 12px;\n line-height: var(--terminal-font-size);\n }\n 50.1%, 100% {\n border-bottom-color: var(--background, #000);\n line-height: 12px;\n line-height: var(--terminal-font-size);\n }\n }\n}\n/* IE hack Edge one don't work in IE11 */\n@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {\n .cmd .cmd-clipboard {\n margin-left: -9999px;\n }\n .underline-animation .cursor.blink span span {\n margin-top: 1px;\n }\n @-ms-keyframes terminal-blink {\n 0%, 50% {\n background-color: #aaa;\n color: #000;\n }\n 50.1%, 100% {\n background-color: #000;\n color: #aaa;\n }\n }\n}\n.terminal .terminal-output .raw *::-moz-selection,\n.terminal .terminal-output div div::-moz-selection,\n.terminal .terminal-output div div a::-moz-selection,\n.terminal .terminal-output span[data-text]::-moz-selection,\n.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas) span::-moz-selection,\n.terminal .terminal-output .raw div::-moz-selection,\n.cmd span[data-text]::-moz-selection,\n.cmd span[data-text]:not(.far):not(.fa):not(.fas) span::-moz-selection {\n background-color: #aaa;\n color: #000;\n}\n/* this don't work in Chrome\n.terminal tr td::-moz-selection {\n border-color: #000;\n}\n.terminal tr td::selection {\n border-color: #000;\n}\n*/\n/* fix selection/click on text that was echo without newline while prompt is relocated */\n.terminal .cmd {\n pointer-events: none;\n}\n.terminal .cmd-prompt * {\n pointer-events: visible;\n}\n.cmd-prompt > span:first-child {\n margin-left: var(--prompt-offset);\n}\n.terminal .cmd-wrapper > div:not(.cmd-cursor-line),\n.terminal .cmd-cursor-line > span,\n.terminal .cmd textarea {\n pointer-events: visible;\n}\n.terminal .terminal-output .raw *::selection,\n.terminal .terminal-output div div::selection,\n.terminal .terminal-output div div a::selection,\n.terminal .terminal-output span[data-text]::selection,\n.terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas) span::selection,\n.terminal .terminal-output .raw div::selection,\n.terminal-revese,\n.cmd span[data-text]:not(.far):not(.fa):not(.fas) span::selection {\n /*\n * use rgba to fix transparent selection in chrome\n * http://stackoverflow.com/questions/7224445/css3-selection-behaves-differently-in-ff-chrome\n */\n background-color: rgba(170, 170, 170, 0.99);\n color: #000;\n}\n\n.terminal-output .emoji::-moz-selection,\n.terminal-output .emoji span::-moz-selection,\n.cmd .emoji::-moz-selection,\n.cmd .emoji span::-moz-selection,\n.cmd textarea::-moz-selection {\n background-color: transparent !important;\n color: transparent !important;\n}\n.terminal-output .emoji::selection,\n.terminal-output .emoji span::selection,\n.cmd .emoji span::selection,\n.cmd .emoji::selection,\n.cmd textarea::selection {\n background-color: transparent !important;\n color: transparent !important;\n}\n\n.terminal .terminal-output > :not(.raw) .terminal-error,\n.terminal .terminal-output > :not(.raw) .terminal-error * {\n color: red;\n color: var(--error-color, red);\n}\n.tilda {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n z-index: 1100;\n}\n.ui-dialog-content .terminal {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n}\n.ui-dialog .ui-dialog-content.dterm {\n padding: 0;\n}\n.clear {\n clear: both;\n}\n.terminal .terminal-fill {\n position: absolute;\n left: 0;\n top: -100%;\n width: 100%;\n height: 100%;\n margin: 1px 0 0;\n border: none;\n opacity: 0.01;\n pointer-events: none;\n box-sizing: border-box;\n}\n.terminal-scroller, .terminal .terminal-fill, .cmd-editable {\n padding: calc(1px * var(--padding, 10) / var(--pixel-density, 1));\n}\n.cmd-editable {\n padding-top: 0;\n}\n/* padding added as margin to .cmd to fix FireFox bug see: https://stackoverflow.com/q/29986977/387194 */\n.terminal-scroller {\n padding-bottom: 0;\n}\n.terminal .terminal-output > :not(.raw) .terminal-error,\n.terminal .terminal-output > :not(.raw) .terminal-error * {\n --color: var(--error-color, red);\n text-shadow: 0 0 calc(var(--glow) * 5px) var(--color);\n}\n.terminal .terminal-output > :not(.raw) a[href] {\n text-shadow: 0 0 calc(var(--glow) * 5px) var(--color);\n}\n.terminal .cmd {\n margin-bottom: calc(1px * var(--padding, 10) / var(--pixel-density, 1));\n position: relative;\n}\n.terminal .partial, .terminal .partial > div {\n display: inline-block;\n}\n@supports (--css: variables) {\n .terminal,\n .terminal-output > :not(.raw) span[data-text]:not(.token):not(.inverted):not(.terminal-inverted):not(.cmd-inverted):not(.terminal-error):not(.emoji),\n .terminal-output > :not(.raw) a,\n .terminal-output > :not(.raw) div,\n .cmd,\n .cmd span[data-text]:not(.cmd-inverted):not(.token):not(.emoji),\n .terminal.external [data-text],\n .cmd div {\n color: var(--color, #aaa);\n background-color: var(--background, #000);\n }\n .terminal {\n --terminal-line: calc(var(--size, 1) * (16px / var(--pixel-density, 1)) + 1px / var(--pixel-density, 1));\n --terminal-font-size: calc(var(--size, 1) * (12px / var(--pixel-density, 1)));\n height: auto;\n /* force size when user add --rows and --cols */\n height: calc((var(--terminal-line) * var(--rows)) + (var(--padding, 10) * 2px));\n /*\n * there is a bug in Chromium https://issues.chromium.org/issues/379430924\n * it give wrong number of characters per line (off by one), it works fine in Firefox and Epiphany\n */\n width: calc((var(--cols) * 1ch) + (var(--padding, 10) * 2px) + (var(--terminal-scrollbar, 10) * 1px));\n }\n .terminal .terminal-output > :not(.raw) > div,\n .cmd div,\n .terminal,\n .terminal.external div {\n line-height: round(var(--terminal-line, 1em));\n }\n .terminal [data-text], .cmd [data-text] {\n /* conditionals: https://www.kizu.ru/conditions-for-css-variables/ */\n /* --glow: 0; */\n text-shadow: var(--text-shadow, 0 0 calc(var(--glow) * 5px) var(--color, #ccc));\n }\n .terminal span[style*=\"--length\"] {\n /*\n * default value for char-width taken from Google Chrome for default font\n * to silence warning in webpack #371\n */\n width: calc(var(--length, 1) * var(--char-width, 7.23438) * 1px);\n display: inline-block;\n }\n .terminal,\n .terminal-output > :not(.raw) span,\n .terminal-output > :not(.raw) a,\n .terminal-output > :not(.raw) div {\n font-size: var(--terminal-font-size);\n }\n .cmd,\n .cmd span,\n .cmd div {\n --cmd-font-size: var(--terminal-font-size, calc(var(--size, 1) * (12px / var(--pixel-density, 1))));\n font-size: var(--cmd-font-size);\n }\n .terminal-output .emoji, .cmd .emoji {\n height: var(--terminal-font-size);\n }\n .cmd .clipboard {\n top: calc(var(--size, 1) * (14 / var(--pixel-density, 1)) * var(--cursor-line, 0) * 1px);\n }\n .terminal span[style*=\"--background\"],\n .cmd span[style*=\"--background\"] {\n --base-background: var(--background);\n }\n .terminal .inverted > span,\n .terminal .terminal-inverted > span,\n .cmd.cmd.cmd .inverted,\n .cmd.cmd.cmd .cmd-inverted {\n background-color: var(--color, #aaa) !important;\n color: var(--base-background, #000) !important;\n }\n .cmd .cmd-cursor.cmd-blink {\n color: var(--color, #aaa);\n background-color: var(--background, #000);\n }\n .cmd .cmd-cursor.cmd-blink > span[data-text]:not(.emoji):not(.fa):not(.far):not(.fas) span,\n .cmd .cmd-cursor.cmd-blink a,\n .cmd .cmd-cursor.cmd-blink .fa,\n .cmd .cmd-cursor.cmd-blink .far,\n .cmd .cmd-cursor.cmd-blink .fas,\n .cmd .cmd-cursor.cmd-blink .emoji {\n -webkit-animation: var(--animation, terminal-blink) 1s infinite linear;\n -moz-animation: var(--animation, terminal-blink) 1s infinite linear;\n -ms-animation: var(--animation, terminal-blink) 1s infinite linear;\n animation: var(--animation, terminal-blink) 1s infinite linear;\n --original-background: inherit;\n }\n .cmd .cmd-cursor.cmd-blink .emoji span {\n color: transparent;\n background: transparent;\n }\n .terminal .terminal-output .raw *::-moz-selection,\n .terminal .terminal-output div div::-moz-selection,\n .terminal .terminal-output div div a::-moz-selection,\n .terminal .terminal-output span[data-text]::-moz-selection,\n /*\n * font icons (fontawesome) don't render selection we make emoji the same becuase,\n * selection on emoji looks weird\n */\n .terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::-moz-selection,\n .terminal .terminal-output .raw div::-moz-selection,\n .cmd span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::-moz-selection {\n background-color: var(--color, #aaa);\n color: var(--background, #000);\n }\n .terminal .terminal-output div div a::-moz-selection {\n background-color: var(--link-color, rgba(15, 96, 255, 0.99)) !important;\n color: var(--background, #000) !important;\n }\n .terminal .terminal-output div div a:hover::-moz-selection {\n background-color: var(--link-color, rgba(2, 50, 144, 0.99)) !important;\n }\n .terminal .terminal-output .raw *::selection,\n .terminal .terminal-output div div::selection,\n .terminal .terminal-output div div a::selection,\n .terminal .terminal-output span[data-text]:not(.emoji)::selection,\n .terminal .terminal-output span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::selection,\n .terminal .terminal-output .raw div::selection,\n .cmd span[data-text]:not(.far):not(.fa):not(.fas):not(.emoji) span::selection {\n background-color: var(--color, rgba(170, 170, 170, 0.99)) !important;\n color: var(--background, #000) !important;\n }\n .terminal .terminal-output div div a::selection {\n background-color: var(--link-color, rgba(15, 96, 255, 0.99)) !important;\n color: var(--background, #000) !important;\n }\n .terminal .terminal-output div div a:hover::selection {\n background-color: var(--link-color, rgba(2, 50, 144, 0.99)) !important;\n }\n}\n/*\n * overwrite css variables that don't work with selection in Edge\n */\n@property --color {\n syntax: '';\n inherits: true;\n initial-value: rgba(170, 170, 170, 0.99);\n}\n@property --background {\n syntax: '';\n inherits: true;\n initial-value: #000;\n}\n@property --link-color {\n syntax: '';\n inherits: true;\n initial-value: #3377FF;\n}\n@property --size {\n syntax: '';\n inherits: true;\n initial-value: 1;\n}\n@property --padding {\n syntax: '';\n inherits: true;\n initial-value: 10;\n}\n@property --rows {\n syntax: ' | auto';\n inherits: true;\n initial-value: auto;\n}\n@supports (-ms-ime-align:auto) {\n .terminal h1::selection,\n .terminal h2::selection,\n .terminal h3::selection,\n .terminal h4::selection,\n .terminal h5::selection,\n .terminal h6::selection,\n .terminal pre::selection,\n .terminal td::selection,\n .terminal .terminal-output div div::selection,\n .terminal .terminal-output div div a::selection,\n .cmd span[data-text]::selection {\n background-color: rgba(170, 170, 170, 0.99);\n color: #000;\n }\n}\n/* PrismJS style overwrites */\n.terminal .token.token,\n.terminal .token.operator,\n.terminal .token.entity,\n.terminal .token.variable,\n.terminal .token.url,\n.terminal .token.string,\n.terminal .style .token.string,\n.terminal .token.token,\n.cmd .token.operator,\n.cmd .token.entity,\n.cmd .token.variable,\n.cmd .token.url,\n.cmd .token.string,\n.cmd .style .token.string,\n.cmd .token.token {\n background-color: inherit;\n}\n/* FireFox hack\n@supports (-moz-animation: foo) {\n .terminal,\n .terminal .terminal-output > :not(.raw) span,\n .terminal .terminal-output > :not(.raw) a,\n .terminal .terminal-output > :not(.raw) div,\n .cmd,\n .cmd span,\n .cmd div {\n line-height: calc(var(--size, 1) * 13px);\n }\n}\n*/\n/* style for autocomplete menu */\n.cmd .cursor-wrapper ul {\n list-style: none;\n margin: 0;\n padding: 0;\n float: left;\n position: absolute;\n top: 14px;\n left: 0;\n}\n.cmd .cursor-wrapper li {\n cursor: pointer;\n white-space: nowrap;\n}\n.cmd .cursor-wrapper li:hover {\n background: #aaa;\n color: #000;\n}\n.cursor-wrapper {\n position: relative;\n}\n.terminal-output img {\n vertical-align: top;\n}\n.cmd img {\n height: 14px;\n height: calc(var(--size, 1) * (14px / var(--pixel-density, 1)));\n border: 1px solid transparent;\n}\n.cmd-cursor img {\n border-color: #ccc;\n border-color: var(--color, #ccc);\n}\n.terminal-output svg.terminal-broken-image {\n height: calc(var(--size, 1) * (14px / var(--pixel-density, 1)));\n}\n.terminal-output svg.terminal-broken-image use {\n fill: var(--color, #ccc);\n}\n.terminal-error {\n --color: var(--error-color);\n}\n.terminal-glow {\n --animation: terminal-glow;\n}\n.terminal-glow span[data-text],\n.terminal-glow .cmd-prompt > span,\n.terminal-glow a[data-text],\n.terminal-glow [data-text] span,\n.terminal-glow .terminal-output > div span,\n.terminal-glow .terminal-output > div a[href] {\n text-shadow: 1px 1px 5px #ccc;\n text-shadow: 1px 1px 5px var(--color, #ccc);\n}\n/* is_bottom detection */\n.terminal-scroll-marker {\n position: relative;\n height: 1px;\n height: calc(1px / var(--pixel-density, 1));\n margin-top: -1px;\n margin-top: calc(-1px / var(--pixel-density, 1));\n z-index: 100;\n}\n.terminal-scroll-marker div {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 200;\n}\n.terminal-less {\n touch-action: none;\n overscroll-behavior-y: contain;\n}\n/*\n * mobile scroll fix, with help from StackOverflow\n * https://stackoverflow.com/a/60535925/387194\n */\n.terminal-mobile.terminal-less .terminal-wrapper {\n pointer-events: none;\n}\n.terminal-mobile.terminal-less .terminal-output a, .cmd-editable {\n pointer-events: visible;\n}\n.cmd-editable::before {\n content: attr(data-cmd-prompt);\n display: inline-block;\n}\n.cmd-editable {\n position: absolute;\n top: calc(var(--cmd-top) * 1px + var(--cmd-font-size, 1em));\n bottom: 0;\n right: 0;\n left: 0;\n z-index: 500;\n color: transparent;\n background: transparent;\n opacity: 0.01;\n outline: 0px solid transparent;\n}\n/* Scrollbar */\n.terminal-scroller::-webkit-scrollbar {\n width: calc(6px / var(--pixel-density, 1));\n height: calc(6px / var(--pixel-density, 1));\n background: var(--background, #000);\n}\n.terminal-scroller::-webkit-scrollbar-thumb {\n background: var(--color, #aaa);\n}\n.terminal-scroller::-webkit-scrollbar-thumb:hover {\n background: var(--color, #aaa);\n}\n.terminal-scroller {\n scrollbar-color: #aaa #000;\n scrollbar-color: var(--color, #aaa) var(--background, #000);\n scrollbar-width: thin;\n}\n\n/* visially hidden */\n.terminal-hidden {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0,0,0,0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n/*\n * Allow to change scrollbar color\n */\n.terminal-wrapper {\n --color: var(--base-color);\n --background: var(--base-background);\n}\n.cmd .token {\n --original-color: var(--color);\n}\n.terminal .terminal-blink, .cmd .terminal-blink {\n animation: terminal-ansi-blink 1s steps(2, start) infinite;\n -webkit-animation: terminal-ansi-blink 1s steps(2, start) infinite;\n}\n/* Allow transparent background #698 */\n.terminal .terminal-output,\n.terminal .terminal-output * {\n --background: transparent;\n}\n.terminal .cmd * {\n --background: transparent;\n}\n.terminal .cmd::selection,\n.terminal .cmd *::selection,\n.terminal .terminal-output::selection,\n.terminal .terminal-output *::selection {\n --background: var(--base-background);\n}\n@keyframes terminal-ansi-blink {\n to {\n color: var(--background);\n }\n}\n@-webkit-keyframes terminal-ansi-blink {\n to {\n color: var(--background);\n }\n}\n@media (prefers-reduced-motion) {\n :root {\n --animation: terminal-none;\n }\n}\n"]} \ No newline at end of file diff --git a/js/jquery.terminal-src.js b/js/jquery.terminal-src.js index a5c2e3d5..55cac7de 100644 --- a/js/jquery.terminal-src.js +++ b/js/jquery.terminal-src.js @@ -9681,6 +9681,13 @@ return parseInt(style.getPropertyValue(prop), 10) || 0; } // --------------------------------------------------------------------- + function get_scrollbar_width() { + var width = filler.width(); + var container_width = self.width(); + var padding = get_padding(); + return container_width - width - (padding.left + padding.right); + } + // --------------------------------------------------------------------- function get_padding() { var style = window.getComputedStyle(filler[0]); function padding(name) { @@ -12050,6 +12057,9 @@ self.addClass('terminal'); var pixel_density = get_pixel_size(); var char_size = get_char_size(self); + css(self[0], { + '--terminal-scrollbar': get_scrollbar_width() + }); // this is needed when terminal have selector with --size that is not // bare .terminal so fake terminal will not get the proper size #602 var need_char_size_recalculate = !terminal_ready(self); diff --git a/js/jquery.terminal.js b/js/jquery.terminal.js index ba997eeb..15523966 100644 --- a/js/jquery.terminal.js +++ b/js/jquery.terminal.js @@ -41,7 +41,7 @@ * * broken image by Sophia Bai from the Noun Project (CC-BY) * - * Date: Fri, 15 Nov 2024 23:08:49 +0000 + * Date: Sun, 17 Nov 2024 13:13:40 +0000 */ /* global define, Map, BigInt */ /* eslint-disable */ @@ -5345,7 +5345,7 @@ // ------------------------------------------------------------------------- $.terminal = { version: 'DEV', - date: 'Fri, 15 Nov 2024 23:08:49 +0000', + date: 'Sun, 17 Nov 2024 13:13:40 +0000', // colors from https://www.w3.org/wiki/CSS/Properties/color/keywords color_names: [ 'transparent', 'currentcolor', 'black', 'silver', 'gray', 'white', @@ -9681,6 +9681,13 @@ return parseInt(style.getPropertyValue(prop), 10) || 0; } // --------------------------------------------------------------------- + function get_scrollbar_width() { + var width = filler.width(); + var container_width = self.width(); + var padding = get_padding(); + return container_width - width - (padding.left + padding.right); + } + // --------------------------------------------------------------------- function get_padding() { var style = window.getComputedStyle(filler[0]); function padding(name) { @@ -12050,6 +12057,9 @@ self.addClass('terminal'); var pixel_density = get_pixel_size(); var char_size = get_char_size(self); + css(self[0], { + '--terminal-scrollbar': get_scrollbar_width() + }); // this is needed when terminal have selector with --size that is not // bare .terminal so fake terminal will not get the proper size #602 var need_char_size_recalculate = !terminal_ready(self); diff --git a/js/jquery.terminal.min.js b/js/jquery.terminal.min.js index 9db43a2e..eb248dba 100644 --- a/js/jquery.terminal.min.js +++ b/js/jquery.terminal.min.js @@ -41,7 +41,7 @@ * * broken image by Sophia Bai from the Noun Project (CC-BY) * - * Date: Fri, 15 Nov 2024 23:08:49 +0000 + * Date: Sun, 17 Nov 2024 13:13:40 +0000 */ -(function(e){var m=function(){if(!m.cache.hasOwnProperty(arguments[0])){m.cache[arguments[0]]=m.parse(arguments[0])}return m.format.call(null,m.cache[arguments[0]],arguments)};m.format=function(e,t){var r=1,n=e.length,i="",a,u=[],o,s,l,f,c,p;for(o=0;o>>0;break;case"x":a=a.toString(16);break;case"X":a=a.toString(16).toUpperCase();break}a=/[def]/.test(l[8])&&l[3]&&a>=0?" +"+a:a;c=l[4]?l[4]==="0"?"0":l[4].charAt(1):" ";p=l[6]-String(a).length;f=l[6]?d(c,p):"";u.push(l[5]?a+f:f+a)}}return u.join("")};m.cache={};m.parse=function(e){var t=e,r=[],n=[],i=0;while(t){if((r=/^[^\x25]+/.exec(t))!==null){n.push(r[0])}else if((r=/^\x25{2}/.exec(t))!==null){n.push("%")}else if((r=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(t))!==null){if(r[2]){i|=1;var a=[],u=r[2],o=[];if((o=/^([a-z_][a-z_\d]*)/i.exec(u))!==null){a.push(o[1]);while((u=u.slice(o[0].length))!==""){if((o=/^\.([a-z_][a-z_\d]*)/i.exec(u))!==null){a.push(o[1])}else if((o=/^\[(\d+)\]/.exec(u))!==null){a.push(o[1])}else{throw"[sprintf] huh?"}}}else{throw"[sprintf] huh?"}r[2]=a}else{i|=2}if(i===3){throw"[sprintf] mixing positional and named placeholders is not (yet) supported"}n.push(r)}else{throw"[sprintf] huh?"}t=t.slice(r[0].length)}return n};var t=function(e,t,r){r=t.slice(0);r.splice(0,0,e);return m.apply(null,r)};function D(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()}function d(e,t){for(var r=[];t>0;r[--t]=e){}return r.join("")}e.sprintf=m;e.vsprintf=t})(typeof global!=="undefined"?global:self||window);(function(n,i){var r;if(typeof window!=="undefined"){r=window}else if(typeof self!=="undefined"){r=self}else if(typeof global!=="undefined"){r=global}else{throw new Error("Unknow context")}if(typeof define==="function"&&define.amd){define(["jquery","wcwidth"],function(e,t){n(e,t,r);return e})}else if(typeof module==="object"&&module.exports){module.exports=function(e,t,r){if(t===i){if(typeof window!=="undefined"){t=require("jquery")}else{t=require("jquery")(e)}}if(r===i){r=require("wcwidth")}n(t,r,e);return t}}else{if(!r.jQuery){r.$=r.cash}n(r.jQuery||r.cash,r.wcwidth,r)}})(function($,wcwidth,root,undefined){"use strict";function debug(e){if(false){console.log(e)}}function DelayQueue(){var t=$.Callbacks();var r=false;var e=this;this.resolve=function(){t.fire();e.resolved=r=true};this.add=function(e){if(r){e()}else{t.add(e)}}}$.omap=function(r,n){var i={};$.each(r,function(e,t){i[e]=n.call(r,e,t)});return i};$.fn.text_length=function(){return this.map(function(){return $(this).text().length}).get().reduce(function(e,t){return e+t},0)};var Clone={clone_object:function(e){var t={};if(typeof e==="object"){if(Array.isArray(e)){return this.clone_array(e)}else if(e===null){return e}else{for(var r in e){if(Array.isArray(e[r])){t[r]=this.clone_array(e[r])}else if(typeof e[r]==="object"){t[r]=this.clone_object(e[r])}else{t[r]=e[r]}}}}return t},clone_array:function(e){if(!is_function(Array.prototype.map)){throw new Error("Your browser don't support ES5 array map "+"use es5-shim")}return e.slice(0).map(function(e){if(typeof e==="object"){return this.clone_object(e)}else{return e}}.bind(this))}};var clone=function(e){return Clone.clone_object(e)};if("Map"in root&&!("clear"in Map.prototype)){Map.prototype.clear=function(){this.forEach(function(e,t,r){r.delete(t)})}}var localStorage;(function(){var e=function(){try{var e="test",t=window.localStorage;t.setItem(e,"1");t.removeItem(e);return true}catch(e){return false}};var t=function(){try{document.cookie.split(";");return true}catch(e){return false}};var r=e();function n(e,t){var r;if(typeof e==="string"&&typeof t==="string"){localStorage[e]=t;return true}else if(typeof e==="object"&&typeof t==="undefined"){for(r in e){if(e.hasOwnProperty(r)){localStorage[r]=e[r]}}return true}return false}function i(e,t){var r,n,i;r=new Date;r.setTime(r.getTime()+31536e6);n="; expires="+r.toGMTString();if(typeof e==="string"&&typeof t==="string"){document.cookie=e+"="+t+n+"; path=/";return true}else if(typeof e==="object"&&typeof t==="undefined"){for(i in e){if(e.hasOwnProperty(i)){document.cookie=i+"="+e[i]+n+"; path=/"}}return true}return false}function a(e){return localStorage[e]}function u(e){var t,r,n,i;t=e+"=";r=document.cookie.split(";");for(n=0;n=i||t<0||D&&r>=s}function y(){var e=$();if(_(e)){return b(e)}f=setTimeout(y,g(e))}function b(e){f=undefined;if(d&&u){return h(e)}u=o=undefined;return l}function C(){if(f!==undefined){clearTimeout(f)}p=0;u=c=o=f=undefined}function F(){return f===undefined?l:b($())}function w(){var e=$(),t=_(e);u=arguments;o=this;c=e;if(t){if(f===undefined){return v(c)}if(D){f=setTimeout(y,i);return h(c)}}if(f===undefined){f=setTimeout(y,i)}return l}w.cancel=C;w.flush=F;return w}}();var jQuery=$;(function(e){jQuery.fn.extend({everyTime:function(e,t,r,n,i){return this.each(function(){jQuery.timer.add(this,e,t,r,n,i)})},oneTime:function(e,t,r){return this.each(function(){jQuery.timer.add(this,e,t,r,1)})},stopTime:function(e,t){return this.each(function(){jQuery.timer.remove(this,e,t)})}});jQuery.extend({timer:{guid:1,global:{},regex:/^([0-9]+)\s*(.*s)?$/,powers:{ms:1,cs:10,ds:100,s:1e3,das:1e4,hs:1e5,ks:1e6},timeParse:function(e){if(e===undefined||e===null){return null}var t=this.regex.exec(e.toString().trim());if(t[2]){var r=parseInt(t[1],10);var n=this.powers[t[2]]||1;return r*n}else{return e}},add:function(e,t,r,n,i,a){var u=0;if(typeof r==="function"){if(!i){i=n}n=r;r=t}t=jQuery.timer.timeParse(t);if(typeof t!=="number"||isNaN(t)||t<=0){return}if(i&&i.constructor!==Number){a=!!i;i=0}i=i||0;a=a||false;if(!e.$timers){e.$timers={}}if(!e.$timers[r]){e.$timers[r]={}}n.$timerID=n.$timerID||this.guid++;var o=function(){if(a&&o.inProgress){return}o.inProgress=true;if(++u>i&&i!==0||n.call(e,u)===false){jQuery.timer.remove(e,r,n)}o.inProgress=false};o.$timerID=n.$timerID;if(!e.$timers[r][n.$timerID]){e.$timers[r][n.$timerID]=setInterval(o,t)}if(!this.global[r]){this.global[r]=[]}this.global[r].push(e)},remove:function(e,t,r){var n=e.$timers,i;if(n){if(!t){for(var a in n){if(n.hasOwnProperty(a)){this.remove(e,a,r)}}}else if(n[t]){if(r){if(r.$timerID){clearInterval(n[t][r.$timerID]);delete n[t][r.$timerID]}}else{for(var u in n[t]){if(n[t].hasOwnProperty(u)){clearInterval(n[t][u]);delete n[t][u]}}}for(i in n[t]){if(n[t].hasOwnProperty(i)){break}}if(!i){i=null;delete n[t]}}for(i in n){if(n.hasOwnProperty(i)){break}}if(!i){e.$timers=null}}}}});if(/(msie) ([\w.]+)/.exec(navigator.userAgent.toLowerCase())){e(window).one("unload",function(){var e=jQuery.timer.global;for(var t in e){if(e.hasOwnProperty(t)){var r=e[t],n=r.length;while(--n){jQuery.timer.remove(r[n],t)}}}})}})(jQuery);(function(f){if(!String.prototype.split.toString().match(/\[native/)){return}var c=String.prototype.split,p=/()??/.exec("")[1]===f,r;r=function(e,t,r){if(Object.prototype.toString.call(t)!=="[object RegExp]"){return c.call(e,t,r)}var n=[],i=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.extended?"x":"")+(t.sticky?"y":""),a=0,u,o,s,l;t=new RegExp(t.source,i+"g");e+="";if(!p){u=new RegExp("^"+t.source+"$(?!\\s)",i)}r=r===f?-1>>>0:r>>>0;while(o=t.exec(e)){s=o.index+o[0].length;if(s>a){n.push(e.slice(a,o.index));if(!p&&o.length>1){o[0].replace(u,function(){for(var e=1;e1&&o.index=r){break}}if(t.lastIndex===o.index){t.lastIndex++}}if(a===e.length){if(l||!t.test("")){n.push("")}}else{n.push(e.slice(a))}return n.length>r?n.slice(0,r):n};String.prototype.split=function(e,t){return r(this,e,t)};return r})();$.fn.caret=function(e){var t=this[0];var r=t.contentEditable==="true";if(arguments.length===0){if(window.getSelection){if(r){if(!this.is(":focus")){t.focus()}var n=window.getSelection().getRangeAt(0),i=n.cloneRange();i.selectNodeContents(t);i.setEnd(n.endContainer,n.endOffset);return i.toString().length}return t.selectionStart}if(document.selection){t.focus();if(r){var n=document.selection.createRange(),i=document.body.createTextRange();i.moveToElementText(t);i.setEndPoint("EndToEnd",n);return i.text.length}var e=0,a=t.createTextRange(),i=document.selection.createRange().duplicate(),u=i.getBookmark();a.moveToBookmark(u);while(a.moveStart("character",-1)!==0)e++;return e}return 0}if(e===-1)e=this[r?"text":"val"]().length;if(window.getSelection){if(r){if(!this.is(":focus")){t.focus()}var o=window.getSelection();o.collapse(o.focusNode,e)}else t.setSelectionRange(e,e)}else if(document.body.createTextRange){var a=document.body.createTextRange();a.moveToElementText(t);a.moveStart("character",e);a.collapse(true);a.select()}if(!r&&!this.is(":focus")){t.focus()}return e};function make_callback_plugin(e){var s=$.extend({init:$.noop,destroy:$.noop,name:"event"},e);return function(n,i){var a=arguments.length===0;var u=arguments[0]==="unbind";if(!a&&!u&&!is_function(n)){throw new Error("Invalid argument, it need to a function or string "+'"unbind" or no arguments.')}if(u){n=is_function(arguments[1])?arguments[1]:null}var o="callbacks_"+s.name;return this.each(function(){var t=$(this);var r;function e(e){r.fireWith(t,[e])}if(a||u){r=t.data(o);if(a){r&&r.fire()}else{if(n&&r){r.remove(n);if(!r.has()){r=null}}else{r=null}if(!r){t.removeData(o);s.destroy.call(this,e,i)}}}else if(t.data(o)){$(this).data(o).add(n)}else{r=$.Callbacks();r.add(n);t.data(o,r);s.init.call(this,e,i)}})}}$.fn.resizer=make_callback_plugin({name:"resize",init:function(e,t){var r=$.extend({prefix:""},t);var n=$(this);var i;var a=true;if(n.is("body")){$(window).on("resize.resizer",e)}else if(window.ResizeObserver){i=new ResizeObserver(function(){if(!a){setTimeout(e,0)}a=false});i.observe(this);n.data("observer",i)}else{var u=$("