Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  App.css   Sprache: unbekannt

 
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

html,
body {
  height: 100vh;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

#app-wrapper {
  height: 100vh;
  max-height: 100vh;
}

.webconsole-output {
  direction: ltr;
  overflow: auto;
  overflow-anchor: none;
  user-select: text;
  position: relative;
  container-name: console-output;
  container-type: inline-size;
}

.webconsole-app {
  --object-inspector-hover-background: transparent;
  --attachment-margin-block-end: 3px;
  --primary-toolbar-height: 29px;
  display: grid;
  /*
    * Here's the design we want in in-line mode
    * +----------------------------------------------+
    * |            [ChromeDebugToolbar]              |
    * +----------------------------------------------+
    * |    Filter bar primary      ↔                 |
    * +----------------------------↔                 |
    * |   [Filter bar secondary]   ↔                 |
    * +----------------------------↔                 |
    * |                            ↔                 |
    * +  +----------------------+  ↔                 |
    * |  |                      |  ↔                 |
    * |  |        Output        |  ↔    [sidebar]    |
    * |  |                      |  ↔                 |
    * |  +----------------------+  ↔                 |
    * |  |   [NotificationBox]  |  ↔                 |
    * |  +----------------------+  ↔                 |
    * |  |                      |  ↔                 |
    * |  |        JSTerm        |  ↔                 |
    * |  |                      |  ↔                 |
    * |  +----------------------+  ↔                 |
    * |  |  [EagerEvaluation]   |  ↔                 |
    * |  +----------------------+  ↔                 |
    * |  |  [EvalNotification]  |  ↔                 |
    * |  +----------------------+  ↔                 |
    * +----------------------------↔                 |
    * |  [Reverse search input]    ↔                 |
    * +----------------------------------------------+
    *
     * - ↔ are width resizers
     * - Elements inside brackets may not be visible, so we set
     *   rows/columns to "auto" to make them collapse when the element
     *   they contain is hidden.
    */
  grid-template-areas: "chrome-debug-toolbar     chrome-debug-toolbar"
                       "filter-toolbar           sidebar"
                       "filter-toolbar-secondary sidebar"
                       "output-input             sidebar"
                       "eval-notification        sidebar"
                       "reverse-search           sidebar";
  grid-template-rows: auto var(--primary-toolbar-height) auto 1fr auto auto;
  grid-template-columns: minmax(200px, 1fr) minmax(0, auto);
  max-height: 100vh !important;
  height: 100vh !important;
  width: 100vw;
  overflow: hidden;
  color: var(--console-output-color);
  -moz-user-focus: normal;
}

.chrome-debug-toolbar {
  grid-column: chrome-debug-toolbar;
  grid-row: chrome-debug-toolbar;
}

.webconsole-filteringbar-wrapper {
  grid-column: filter-toolbar;
  grid-row: filter-toolbar / filter-toolbar-secondary;
  grid-template-rows: subgrid;
}

.webconsole-filterbar-primary {
  grid-row: filter-toolbar;
}

/* Only put the filter buttons toolbar on its own row in narrow filterbar layout  */
.narrow .devtools-toolbar.webconsole-filterbar-secondary {
  grid-row: filter-toolbar-secondary;
}

.flexible-output-input {
  display: flex;
  flex-direction: column;
  grid-area: output-input;
  /* Don't take more height than the grid allows to */
  max-height: 100%;
  overflow: hidden;
}

.flexible-output-input .webconsole-output {
  flex-shrink: 100000;
  overflow-x: hidden;
}

.flexible-output-input > .webconsole-output:not(:empty) {
  min-height: var(--console-row-height);
}

/* webconsole.css | chrome://devtools/skin/webconsole.css */
.webconsole-filteringbar-wrapper .devtools-toolbar {
  padding-inline-end: 0;
}

.devtools-button.webconsole-console-settings-menu-button {
  /* adjust outline offset so it's not clipped */
  --theme-outline-offset: -2px;
  height: 100%;
  margin: 0;
}

.webconsole-console-settings-menu-button::before {
  background-image: url("chrome://devtools/skin/images/settings.svg");
}

.webconsole-app .jsterm-input-container {
  overflow-y: auto;
  overflow-x: hidden;
  /* We display the open editor button at the end of the input */
  display: grid;
  grid-template-columns: 1fr auto;
  /* This allows us to not define a column for the CodeMirror container */
  grid-auto-flow: column;
  /* This element has tabindex="-1" and can briefly show a focus outline when
   * clicked, before we move the focus to CodeMirror. */
  outline: none;
}

.webconsole-app:not(.jsterm-editor) .jsterm-input-container {
  direction: ltr;
  /* Define the border width and padding as variables so that we can keep
   * border-top-width, padding and min-height in sync. */
  --jsterm-border-width: 0;
  --jsterm-padding-top: 0;
  --jsterm-padding-bottom: 0;
  min-height: calc(
    var(--console-row-height) +
    var(--jsterm-border-width) +
    var(--jsterm-padding-top) +
    var(--jsterm-padding-bottom)
  );
  padding-top: var(--jsterm-padding-top);
  padding-bottom: var(--jsterm-padding-bottom);
  border-top-color: var(--theme-splitter-color);
  border-top-width: var(--jsterm-border-width);
  border-top-style: solid;
}

.webconsole-app .webconsole-output:not(:empty) ~ .jsterm-input-container {
  --jsterm-border-width: 1px;
}

.webconsole-app:not(.jsterm-editor, .eager-evaluation) .jsterm-input-container {
  /* The input should be full-height when eager evaluation is disabled. */
  flex-grow: 1;
  --jsterm-padding-top: var(--console-input-extra-padding);
  --jsterm-padding-bottom: var(--console-input-extra-padding);
}

.webconsole-app:not(.jsterm-editor).eager-evaluation .jsterm-input-container {
  --jsterm-padding-top: var(--console-input-extra-padding);
}

.webconsole-input-openEditorButton {
    /* adjust outline offset so it's not clipped */
  --theme-outline-offset: -2px;
  height: var(--console-row-height);
  margin: 0;
  padding-block: 0;
}

.webconsole-input-buttons {
  grid-column: -1 / -2;
  display: flex;
  align-items: flex-start;
}

:root:dir(rtl) .webconsole-input-openEditorButton {
  transform: scaleX(-1);
}

.webconsole-input-openEditorButton::before {
  background-image: url("chrome://devtools/skin/images/webconsole/editor.svg");
}

.webconsole-app .reverse-search {
  grid-area: reverse-search;
  /* Those 2 next lines make it so the element isn't impacting the grid column size, but
     will still take the whole available space. */
  width: 0;
  min-width: 100%;
  /* Let the reverse search buttons wrap to the next line */
  flex-wrap: wrap;
  justify-content: end;
}

.sidebar {
  display: grid;
  grid-area: sidebar;
  grid-template-rows: subgrid;
  border-inline-start: 1px solid var(--theme-splitter-color);
  background-color: var(--theme-sidebar-background);
  width: 200px;
  min-width: 150px;
  max-width: 100%;
}

.sidebar-resizer {
  grid-row: 1 / -1;
  grid-column: -1 / -2;
}

.webconsole-sidebar-toolbar {
  grid-row: 1 / 2;
  min-height: 100%;
  display: flex;
  justify-content: end;
  margin: 0;
  padding: 0;
}

.sidebar-contents {
  grid-row: 2 / -1;
  overflow: auto;
  direction: ltr;
}

.webconsole-sidebar-toolbar .sidebar-close-button {
  margin: 0;
}

.sidebar-close-button::before {
  background-image: url("chrome://devtools/skin/images/close.svg");
}

.sidebar-contents .object-inspector {
  min-width: 100%;
}

/** EDITOR MODE */
.webconsole-app.jsterm-editor {
  display: grid;
  /*
     * Here's the design we want in editor mode
     * +-----------------------------------------------------------------------+
     * |                 [ChromeDebugToolbar]                 |
     * +-----------------------------------------------------------------------+
     * |                 [Notification Box (self XSS warning)]                 |
     * +--------------------------+--------------------------+-----------------+
     * |    Editor Toolbar        ↔    Filter bar primary    ↔                 |
     * +--------------------------↔--------------------------↔                 |
     * |                          ↔  [Filter bar secondary]  ↔                 |
     * |                          ↔--------------------------↔                 |
     * |                          ↔                          ↔                 |
     * |         Editor           ↔        output            ↔    [sidebar]    |
     * |                          ↔                          ↔                 |
     * |                          ↔                          ↔                 |
     * |                          ↔                          ↔                 |
     * |                          ↔                          ↔                 |
     * +--------------------------↔                          ↔                 |
     * |    [Eager evaluation]    ↔                          ↔                 |
     * +--------------------------↔                          ↔                 |
     * |   [Eval Notification]    ↔                          ↔                 |
     * +--------------------------↔                          ↔                 |
     * |  [Reverse search input]  ↔                          ↔                 |
     * +-----------------------------------------------------+-----------------+
     *
     * - ↔ are width resizers
     * - Elements inside brackets may not be visible, so we set
     *   rows/columns to "auto" to make them collapse when the element
     *   they contain is hidden.
     */
  grid-template-areas: "chrome-debug-toolbar  chrome-debug-toolbar      chrome-debug-toolbar"
                       "notification          notification              notification"
                       "editor-toolbar        filter-toolbar            sidebar"
                       "editor                filter-toolbar-secondary  sidebar"
                       "editor                output                    sidebar"
                       "eager-evaluation      output                    sidebar"
                       "eval-notification     output                    sidebar"
                       "reverse-search        output                    sidebar";
  grid-template-rows:
    auto
    auto
    var(--primary-toolbar-height)
    auto
    1fr
    auto
    auto
    auto;
  grid-template-columns: minmax(150px, auto) minmax(200px, 1fr) minmax(0, auto);
}

.jsterm-editor .flexible-output-input {
  /* This allow us to place the div children (jsterm, output, notification) on the grid */
  display: contents;
}

.jsterm-editor .webconsole-editor-toolbar {
  grid-area: editor-toolbar;
  border-inline-end: 1px solid var(--theme-splitter-color);
  display: grid;
  align-items: center;
  /*
     * The following elements are going to be present in the toolbar:
     *   - The run button
     *   - The evaluation selector button
     *   - The pretty print button
     *   - A separator
     *   - The history nav
     *   - A separator
     *   - The close button
     *
     * +-------------------------------------------+
     * | ▶︎ Run  Top↕               {} | ˄ ˅ �� | ✕ |
     * +-------------------------------------------+
     *
     */
  grid-template-columns: auto auto 1fr auto auto auto auto auto auto auto;
  height: unset;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-executeButton {
  padding-inline: 4px 8px;
  height: 20px;
  margin-inline-start: 5px;
  display: flex;
  align-items: center;
}


.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-executeButton::before {
  content: url("chrome://devtools/skin/images/webconsole/run.svg");
  height: 16px;
  width: 16px;
  -moz-context-properties: fill;
  fill: currentColor;
  margin-inline-end: 2px;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-prettyPrintButton {
  grid-column: -7 / -8;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-prettyPrintSeparator {
  grid-column: -6 / -7;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-history-prevExpressionButton {
  grid-column: -5 / -6;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-history-nextExpressionButton {
  grid-column: -4 / -5;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-reverseSearchButton {
  grid-column: -3 / -4;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-historyNavSeparator {
  grid-column: -2 / -3;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-closeButton {
  grid-column: -1 / -2;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-prettyPrintButton::before {
  background-image: url("chrome://devtools/content/debugger/images/prettyPrint.svg");
  background-size: 16px;
  fill: var(--theme-icon-color);
  -moz-context-properties: fill;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-history-prevExpressionButton::before {
  background-image: url("chrome://devtools/skin/images/arrowhead-up.svg");
  background-size: 16px;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-history-nextExpressionButton::before {
  background-image: url("chrome://devtools/skin/images/arrowhead-down.svg");
  background-size: 16px;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-reverseSearchButton::before {
  background-image: url("chrome://devtools/skin/images/webconsole/reverse-search.svg");
  background-size: 14px;
}

.jsterm-editor .webconsole-editor-toolbar .webconsole-editor-toolbar-closeButton::before {
  background-image: url("chrome://devtools/skin/images/close.svg");
}

.jsterm-editor .webconsole-input-openEditorButton {
  display: none;
}

.jsterm-editor .webconsole-output {
  grid-area: output;
}

.jsterm-editor .jsterm-input-container {
  grid-area: editor;
  width: 30vw;
  /* Don't allow the input to be narrower than the grid-column it's in  */
  min-width: 100%;
  border-top: none;
  border-inline-end: 1px solid var(--theme-splitter-color);
  padding: 0;
  /* Needed as we might have the onboarding UI displayed */
  display: flex;
  flex-direction: column;
  background-color: var(--theme-sidebar-background);
}

.jsterm-editor #webconsole-notificationbox {
  grid-area: notification;
}

.jsterm-editor .jsterm-input-container > .CodeMirror {
  flex: 1;
  padding-inline-start: 0;
  font-size: var(--theme-code-font-size);
  line-height: var(--theme-code-line-height);
  background-image: none;
}

.jsterm-editor .eager-evaluation-result {
  grid-area: eager-evaluation;
  /* The next 2 lines make it so the element isn't impacting the grid column size, but
    will still take the whole available space. */
  min-width: 100%;
  width: 0;
}

.evaluation-notification {
  grid-area: eval-notification;
  /* The next 2 lines make it so the element isn't impacting the grid column size, but
    will still take the whole available space. */
  min-width: 100%;
  width: 0;
  border: 1px solid;
  display: flex;
  padding: 0.5em;
}

.jsterm-editor .editor-resizer {
  grid-column: editor;
  /* We want the splitter to cover the whole column (minus self-xss message) */
  grid-row: editor / reverse-search;
}

.editor-onboarding {
  display: none;
}

.jsterm-editor .editor-onboarding {
  display: grid;
  /**
   * Here's the design we want:
   * ┌──────┬────────────────────────┐
   * │ Icon │    Onboarding text     │
   * ├──────┼────────────────────────┤
   * │      │                 Got it!│
   * └──────┴────────────────────────┘
   **/
  grid-template-columns: 22px 1fr;
  border-bottom: 1px solid var(--theme-splitter-color);
  padding: 8px 16px;
  background-color: var(--theme-body-alternate-emphasized-background);
  grid-gap: 0 14px;
  font-family: system-ui;
  font-size: 12px;
  line-height: 1.5;
}

.editor-onboarding-fox {
  width: 22px;
  height: 22px;
  align-self: center;
}

.jsterm-editor .editor-onboarding p {
  padding: 0;
  margin: 0;
}

.jsterm-editor .editor-onboarding .editor-onboarding-shortcut {
  font-weight: bold;
}

.editor-onboarding-dismiss-button {
  grid-row: 2 / 3;
  grid-column: 2 / 3;
  justify-self: end;
  padding: 2px;
  background: transparent;
  border: none;
  color: var(--theme-link-color);
  font-family: inherit;
  cursor: pointer;
  font-size: inherit;
}

[ Dauer der Verarbeitung: 0.7 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge