diff options
Diffstat (limited to 'web_src/less')
44 files changed, 0 insertions, 11189 deletions
diff --git a/web_src/less/_admin.less b/web_src/less/_admin.less deleted file mode 100644 index 26417d42ee..0000000000 --- a/web_src/less/_admin.less +++ /dev/null @@ -1,115 +0,0 @@ -.admin { - &.hooks .list { - > .item { - &:not(:first-child) { - border-top: 1px solid var(--color-secondary); - padding: .25rem 1rem; - margin: 12px -1rem -1rem; - } - } - } - - .table.segment { - padding: 0; - font-size: 13px; - overflow-x: auto; - - &:not(.striped) { - thead { - th:last-child { - padding-right: 5px !important; - } - } - } - - th { - padding-top: 5px; - padding-bottom: 5px; - } - - &:not(.select) { - th, - td { - &:first-of-type { - padding-left: 15px !important; - } - } - } - - form tbody button[type='submit'] { - padding: 5px 8px; - } - - } - - .settings .button.adopt, - .settings .button.delete { - margin-top: -15px; - margin-bottom: -15px; - .label { - vertical-align: middle; - } - } - - &.user { - .email { - max-width: 200px; - } - } - - dl.admin-dl-horizontal { - padding: 20px; - margin: 0; - - dd { - margin-left: 275px; - @media @mediaSm { - margin-left: 5%; - } - } - - dt { - font-weight: 600; - float: left; - width: 285px; - clear: left; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - - @media @mediaSm { - width: auto; - margin-right: .5em; - } - } - } - - &.config { - #test-mail-btn { - margin-left: 5px; - } - } - - code, - pre { - white-space: pre-wrap; - word-wrap: break-word; - } - - #notice-table { - .notice-description { - @media @mediaSm { - max-width: 80vw; - } - @media @mediaMd { - max-width: 360px; - } - @media @mediaLg { - max-width: 510px; - } - @media @mediaXl { - max-width: 640px; - } - } - } -} diff --git a/web_src/less/_base.less b/web_src/less/_base.less deleted file mode 100644 index cabf707aad..0000000000 --- a/web_src/less/_base.less +++ /dev/null @@ -1,2706 +0,0 @@ -:root { - /* fonts */ - --fonts-proportional: -apple-system, "Segoe UI", system-ui, "Roboto", "Helvetica Neue", "Arial"; - --fonts-monospace: "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace, var(--fonts-emoji); - --fonts-emoji: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Twemoji Mozilla"; - /* backgrounds */ - --checkbox-mask-checked: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="-1 -1 18 18" width="16" height="16"><path fill-rule="evenodd" d="M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z"></path></svg>'); - --checkbox-mask-indeterminate: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M2 7.75A.75.75 0 012.75 7h10a.75.75 0 010 1.5h-10A.75.75 0 012 7.75z"></path></svg>'); - /* non-color variables */ - --border-radius: .28571429rem; - --opacity-disabled: .55; - --height-loading: 12rem; - /* base colors */ - --color-primary: #4183c4; - --color-primary-contrast: #ffffff; - --color-primary-dark-1: #3876b3; - --color-primary-dark-2: #31699f; - --color-primary-dark-3: #2b5c8b; - --color-primary-dark-4: #254f77; - --color-primary-dark-5: #193450; - --color-primary-dark-6: #0c1a28; - --color-primary-dark-7: #04080c; - --color-primary-light-1: #548fca; - --color-primary-light-2: #679cd0; - --color-primary-light-3: #7aa8d6; - --color-primary-light-4: #8db5dc; - --color-primary-light-5: #b3cde7; - --color-primary-light-6: #d9e6f3; - --color-primary-light-7: #f4f8fb; - --color-primary-alpha-10: #4183c419; - --color-primary-alpha-20: #4183c433; - --color-primary-alpha-30: #4183c44b; - --color-primary-alpha-40: #4183c466; - --color-primary-alpha-50: #4183c480; - --color-primary-alpha-60: #4183c499; - --color-primary-alpha-70: #4183c4b3; - --color-primary-alpha-80: #4183c4cc; - --color-primary-alpha-90: #4183c4e1; - --color-secondary: #dedede; - --color-secondary-dark-1: #cecece; - --color-secondary-dark-2: #bfbfbf; - --color-secondary-dark-3: #a0a0a0; - --color-secondary-dark-4: #909090; - --color-secondary-dark-5: #818181; - --color-secondary-dark-6: #717171; - --color-secondary-dark-7: #626262; - --color-secondary-dark-8: #525252; - --color-secondary-dark-9: #434343; - --color-secondary-dark-10: #333333; - --color-secondary-dark-11: #242424; - --color-secondary-dark-12: #141414; - --color-secondary-dark-13: #040404; - --color-secondary-light-1: #e5e5e5; - --color-secondary-light-2: #ebebeb; - --color-secondary-light-3: #f2f2f2; - --color-secondary-light-4: #f8f8f8; - --color-secondary-alpha-10: #dedede19; - --color-secondary-alpha-20: #dedede33; - --color-secondary-alpha-30: #dedede4b; - --color-secondary-alpha-40: #dedede66; - --color-secondary-alpha-50: #dedede80; - --color-secondary-alpha-60: #dedede99; - --color-secondary-alpha-70: #dededeb3; - --color-secondary-alpha-80: #dededecc; - --color-secondary-alpha-90: #dededee1; - /* console colors */ - --color-console-fg: #ffffff; - --color-console-bg: #171717; - /* named colors */ - --color-red: #db2828; - --color-orange: #f2711c; - --color-yellow: #fbbd08; - --color-olive: #b5cc18; - --color-green: #21ba45; - --color-teal: #00b5ad; - --color-blue: #2185d0; - --color-violet: #6435c9; - --color-purple: #a333c8; - --color-pink: #e03997; - --color-brown: #a5673f; - --color-grey: #888888; - --color-black: #1b1c1d; - /* light variants - produced via Sass scale-color(color, $lightness: +25%) */ - --color-red-light: #e45e5e; - --color-orange-light: #f59555; - --color-yellow-light: #fcce46; - --color-olive-light: #d3e942; - --color-green-light: #46de6a; - --color-teal-light: #08fff4; - --color-blue-light: #51a5e3; - --color-violet-light: #8b67d7; - --color-purple-light: #bb64d8; - --color-pink-light: #e86bb1; - --color-brown-light: #c58b66; - --color-grey-light: #a6a6a6; - --color-black-light: #525558; - /* other colors */ - --color-gold: #a1882b; - --color-white: #ffffff; - --color-diff-removed-word-bg: #fdb8c0; - --color-diff-added-word-bg: #acf2bd; - --color-diff-removed-row-bg: #ffeef0; - --color-diff-moved-row-bg: #f1f8d1; - --color-diff-added-row-bg: #e6ffed; - --color-diff-removed-row-border: #f1c0c0; - --color-diff-moved-row-border: #d0e27f; - --color-diff-added-row-border: #e6ffed; - --color-diff-inactive: #f2f2f2; - --color-error-border: #e0b4b4; - --color-error-bg: #fff6f6; - --color-error-bg-active: #fbb; - --color-error-bg-hover: #fdd; - --color-error-text: #9f3a38; - --color-success-border: #a3c293; - --color-success-bg: #fcfff5; - --color-success-text: #2c662d; - --color-warning-border: #c9ba9b; - --color-warning-bg: #fffaf3; - --color-warning-text: #573a08; - --color-info-border: #a9d5de; - --color-info-bg: #f8ffff; - --color-info-text: #276f86; - --color-red-badge: #db2828; - --color-red-badge-bg: #db28281a; - --color-red-badge-hover-bg: #db28284d; - --color-green-badge: #21ba45; - --color-green-badge-bg: #21ba451a; - --color-green-badge-hover-bg: #21ba454d; - --color-yellow-badge: #fbbd08; - --color-yellow-badge-bg: #fbbd081a; - --color-yellow-badge-hover-bg: #fbbd084d; - --color-orange-badge: #f2711c; - --color-orange-badge-bg: #f2711c1a; - --color-orange-badge-hover-bg: #f2711c4d; - --color-git: #f05133; - /* target-based colors */ - --color-body: #ffffff; - --color-text-dark: #080808; - --color-text: #212121; - --color-text-light: #555555; - --color-text-light-1: #6a6a6a; - --color-text-light-2: #808080; - --color-text-light-3: #a0a0a0; - --color-box-header: #f7f7f7; - --color-box-body: #ffffff; - --color-box-body-highlight: #f8f8f8; - --color-footer: #ffffff; - --color-timeline: #ececec; - --color-input-text: #212121; - --color-input-background: #ffffff; - --color-input-toggle-background: #dedede; - --color-input-border: #dedede; - --color-input-border-hover: #cecece; - --color-navbar: #f8f8f8; - --color-navbar-transparent: #f8f8f800; - --color-light: #00000006; - --color-light-mimic-enabled: rgba(0, 0, 0, calc(6 / 255 * 222 / 255 / var(--opacity-disabled))); - --color-light-border: #0000001d; - --color-hover: #0000000c; - --color-active: #00000014; - --color-menu: #ffffff; - --color-card: #ffffff; - --color-markup-table-row: #00000008; - --color-markup-code-block: #00000010; - --color-button: #ffffff; - --color-code-bg: #ffffff; - --color-code-sidebar-bg: #f5f5f5; - --color-shadow: #00000030; - --color-secondary-bg: #f4f4f4; - --color-expand-button: #d8efff; - --color-placeholder-text: #aaa; - --color-editor-line-highlight: var(--color-primary-light-6); - --color-project-board-bg: var(--color-secondary-light-4); - --color-project-board-dark-label: #555555; - --color-project-board-light-label: #a6aab5; - --color-caret: var(--color-text-dark); - --color-reaction-bg: #0000000a; - --color-reaction-active-bg: var(--color-primary-alpha-20); - --color-tooltip-bg: #000000f0; - --color-tooltip-text: #ffffff; - --color-header-bar: #ffffff; - --color-label-active-bg: #d0d0d0; - --color-accent: var(--color-primary-light-1); - --color-small-accent: var(--color-primary-light-6); - --color-active-line: #fffbdd; - - accent-color: var(--color-accent); - color-scheme: light; -} - -:root * { - --fonts-regular: var(--fonts-override, var(--fonts-proportional)), "Noto Sans", "Liberation Sans", sans-serif, var(--fonts-emoji); -} - -textarea { - font-family: var(--fonts-regular); -} - -pre, -code, -kbd, -samp { - font-size: .9em; /* compensate for monospace fonts being usually slightly larger */ - font-family: var(--fonts-monospace); -} - -b, -strong, -h1, -h2, -h3, -h4, -h5, -h6 { - font-weight: 600; -} - -body { - color: var(--color-text); - background-color: var(--color-body); - overflow-y: auto; - display: flex; - flex-direction: column; - overflow-wrap: break-word; -} - -@supports (overflow: overlay) { - body { - overflow: overlay; // stylelint-disable-line - scrollbar-gutter: stable; - } -} - -img { - border-radius: 3px; -} - -table { - border-collapse: collapse; -} - -details summary { - cursor: pointer; -} - -details summary > * { - display: inline; -} - -progress { - background: var(--color-secondary-dark-1); - border-radius: 6px; - border: none; - overflow: hidden; -} -progress::-webkit-progress-bar { - background: var(--color-secondary-dark-1); -} -progress::-webkit-progress-value { - background-color: var(--color-accent); -} -progress::-moz-progress-bar { - background-color: var(--color-accent); -} - -* { - scrollbar-color: var(--color-primary) transparent; - caret-color: var(--color-caret); -} - -::-webkit-scrollbar { - width: 10px; - height: 10px; -} -::-webkit-scrollbar-thumb { - box-shadow: inset 0 0 0 6px var(--color-primary); - border: 2px solid transparent; - border-radius: 5px !important; -} -::-webkit-scrollbar-thumb:window-inactive { - box-shadow: inset 0 0 0 6px var(--color-primary); -} -::-webkit-scrollbar-thumb:hover { - box-shadow: inset 0 0 0 6px var(--color-primary-dark-2); -} -::-webkit-scrollbar-corner { - background: transparent; -} - -::file-selector-button { - border: 1px solid var(--color-light-border); - color: var(--color-text-light); - background: var(--color-light); - border-radius: var(--border-radius); -} -::file-selector-button:hover { - color: var(--color-text); - background: var(--color-hover); -} - -::selection { - background: var(--color-primary-light-1) !important; - color: var(--color-white) !important; -} - -::placeholder, -.ui.dropdown:not(.button) > .default.text, -.ui.default.dropdown:not(.button) > .text { - color: var(--color-placeholder-text) !important; - opacity: 1 !important; -} - -a, -.ui.breadcrumb a { - color: var(--color-primary); - cursor: pointer; - text-decoration-skip-ink: all; -} - -a.muted, -.muted-links a { - color: inherit; -} - -a:hover, -a.muted:hover, -a.muted:hover [class*="color-text"], -.muted-links a:hover, -.ui.breadcrumb a:hover { - color: var(--color-primary); -} - -.delete-button, -.delete-button:hover { - color: var(--color-red); -} - -a.label, -.repository-menu a, -.ui.search .results a, -.ui .menu a, -.ui.cards a.card, -.issue-keyword a { - text-decoration: none !important; -} - -.ui.red.labels .label, -.ui.ui.ui.red.label, -.ui.red.button, -.ui.red.buttons .button { - background: var(--color-red); -} -.ui.red.button:hover, -.ui.red.buttons .button:hover { - background: var(--color-red-light); -} -.ui.basic.red.buttons .button, -.ui.basic.red.button { - color: var(--color-red); - border-color: var(--color-red); -} -.ui.basic.red.buttons .button:hover, -.ui.basic.red.button:hover { - color: var(--color-red-light); - border-color: var(--color-red-light); -} - -.ui.orange.labels .label, -.ui.ui.ui.orange.label, -.ui.orange.button, -.ui.orange.buttons .button { - background: var(--color-orange); -} -.ui.orange.button:hover, -.ui.orange.buttons .button:hover { - background: var(--color-orange-light); -} -.ui.basic.orange.buttons .button, -.ui.basic.orange.button { - color: var(--color-orange); - border-color: var(--color-orange); -} -.ui.basic.orange.buttons .button:hover, -.ui.basic.orange.button:hover { - color: var(--color-orange-light); - border-color: var(--color-orange-light); -} - -.ui.yellow.labels .label, -.ui.ui.ui.yellow.label, -.ui.yellow.button, -.ui.yellow.buttons .button { - background: var(--color-yellow); -} -.ui.yellow.button:hover, -.ui.yellow.buttons .button:hover { - background: var(--color-yellow-light); -} -.ui.basic.yellow.buttons .button, -.ui.basic.yellow.button { - color: var(--color-yellow); - border-color: var(--color-yellow); -} -.ui.basic.yellow.buttons .button:hover, -.ui.basic.yellow.button:hover { - color: var(--color-yellow-light); - border-color: var(--color-yellow-light); -} - -.ui.olive.labels .label, -.ui.ui.ui.olive.label, -.ui.olive.button, -.ui.olive.buttons .button { - background: var(--color-olive); -} -.ui.olive.button:hover, -.ui.olive.buttons .button:hover { - background: var(--color-olive-light); -} -.ui.basic.olive.buttons .button, -.ui.basic.olive.button { - color: var(--color-olive); - border-color: var(--color-olive); -} -.ui.basic.olive.buttons .button:hover, -.ui.basic.olive.button:hover { - color: var(--color-olive-light); - border-color: var(--color-olive-light); -} - -.ui.green.labels .label, -.ui.ui.ui.green.label, -.ui.green.button, -.ui.green.buttons .button { - background: var(--color-green); -} -.ui.green.button:hover, -.ui.green.buttons .button:hover { - background: var(--color-green-light); -} -.ui.basic.green.buttons .button, -.ui.basic.green.button { - color: var(--color-green); - border-color: var(--color-green); -} -.ui.basic.green.buttons .button:hover, -.ui.basic.green.button:hover { - color: var(--color-green-light); - border-color: var(--color-green-light); -} - -.ui.teal.labels .label, -.ui.ui.ui.teal.label, -.ui.teal.button, -.ui.teal.buttons .button { - background: var(--color-teal); -} -.ui.teal.button:hover, -.ui.teal.buttons .button:hover { - background: var(--color-teal-light); -} -.ui.basic.teal.buttons .button, -.ui.basic.teal.button { - color: var(--color-teal); - border-color: var(--color-teal); -} -.ui.basic.teal.buttons .button:hover, -.ui.basic.teal.button:hover { - color: var(--color-teal-light); - border-color: var(--color-teal-light); -} - -.ui.blue.labels .label, -.ui.ui.ui.blue.label, -.ui.blue.button, -.ui.blue.buttons .button { - background: var(--color-blue); -} -.ui.blue.button:hover, -.ui.blue.buttons .button:hover { - background: var(--color-blue-light); -} -.ui.basic.blue.buttons .button, -.ui.basic.blue.button { - color: var(--color-blue); - border-color: var(--color-blue); -} -.ui.basic.blue.buttons .button:hover, -.ui.basic.blue.button:hover { - color: var(--color-blue-light); - border-color: var(--color-blue-light); -} - -.ui.violet.labels .label, -.ui.ui.ui.violet.label, -.ui.violet.button, -.ui.violet.buttons .button { - background: var(--color-violet); -} -.ui.violet.button:hover, -.ui.violet.buttons .button:hover { - background: var(--color-violet-light); -} -.ui.basic.violet.buttons .button, -.ui.basic.violet.button { - color: var(--color-violet); - border-color: var(--color-violet); -} -.ui.basic.violet.buttons .button:hover, -.ui.basic.violet.button:hover { - color: var(--color-violet-light); - border-color: var(--color-violet-light); -} - -.ui.purple.labels .label, -.ui.ui.ui.purple.label, -.ui.purple.button, -.ui.purple.buttons .button { - background: var(--color-purple); -} -.ui.purple.button:hover, -.ui.purple.buttons .button:hover { - background: var(--color-purple-light); -} -.ui.basic.purple.buttons .button, -.ui.basic.purple.button { - color: var(--color-purple); - border-color: var(--color-purple); -} -.ui.basic.purple.buttons .button:hover, -.ui.basic.purple.button:hover { - color: var(--color-purple-light); - border-color: var(--color-purple-light); -} - -.ui.pink.labels .label, -.ui.ui.ui.pink.label, -.ui.pink.button, -.ui.pink.buttons .button { - background: var(--color-pink); -} -.ui.pink.button:hover, -.ui.pink.buttons .button:hover { - background: var(--color-pink-light); -} -.ui.basic.pink.buttons .button, -.ui.basic.pink.button { - color: var(--color-pink); - border-color: var(--color-pink); -} -.ui.basic.pink.buttons .button:hover, -.ui.basic.pink.button:hover { - color: var(--color-pink-light); - border-color: var(--color-pink-light); -} - -.ui.brown.labels .label, -.ui.ui.ui.brown.label, -.ui.brown.button, -.ui.brown.buttons .button { - background: var(--color-brown); -} -.ui.brown.button:hover, -.ui.brown.buttons .button:hover { - background: var(--color-brown-light); -} -.ui.basic.brown.buttons .button, -.ui.basic.brown.button { - color: var(--color-brown); - border-color: var(--color-brown); -} -.ui.basic.brown.buttons .button:hover, -.ui.basic.brown.button:hover { - color: var(--color-brown-light); - border-color: var(--color-brown-light); -} - -.ui.grey.labels .label, -.ui.ui.ui.grey.label, -.ui.grey.button, -.ui.grey.buttons .button { - background: var(--color-grey); -} -.ui.grey.button:hover, -.ui.grey.buttons .button:hover { - background: var(--color-grey-light); -} -.ui.basic.grey.buttons .button, -.ui.basic.grey.button { - color: var(--color-grey); - border-color: var(--color-grey); -} -.ui.basic.grey.buttons .button:hover, -.ui.basic.grey.button:hover { - color: var(--color-grey-light); - border-color: var(--color-grey-light); -} - -.ui.black.labels .label, -.ui.ui.ui.black.label, -.ui.black.button, -.ui.black.buttons .button { - background: var(--color-black); -} -.ui.black.button:hover, -.ui.black.buttons .button:hover { - background: var(--color-black-light); -} -.ui.basic.black.buttons .button, -.ui.basic.black.button { - color: var(--color-black); - border-color: var(--color-black); -} -.ui.basic.black.buttons .button:hover, -.ui.basic.black.button:hover { - color: var(--color-black-light); - border-color: var(--color-black-light); -} - -.ui.negative.buttons .button, -.ui.negative.button { - background: var(--color-red); -} - -.ui.negative.buttons .button:hover, -.ui.negative.button:hover { - background: var(--color-red-light); -} - -.ui.positive.buttons .button, -.ui.positive.button { - background: var(--color-green); -} - -.ui.positive.buttons .button:hover, -.ui.positive.button:hover { - background: var(--color-green-light); -} - -.ui.search > .results { - background: var(--color-body); - border-color: var(--color-secondary); -} - -.ui.search > .results .result { - background: var(--color-body); -} - -.ui.search > .results .result .title { - color: var(--color-text-dark); -} - -.ui.search > .results .result .description { - color: var(--color-text-light-2); -} - -.ui.search > .results .result .image { - width: auto; - height: auto; -} - -.ui.search > .results .result:hover, -.ui.category.search > .results .category .result:hover { - background: var(--color-hover); -} - -.unselectable { - -webkit-touch-callout: none; - -webkit-user-select: none; - user-select: none; -} - -.button { - &:extend(.unselectable); -} - -.issue-title code { - padding: 2px 4px; - border-radius: 6px; - background-color: var(--color-markup-code-block); -} -/* try to match button with no icons in height */ -.icon-button { - padding-top: 7.42px !important; - padding-bottom: 7.42px !important; -} - -.ui.breadcrumb a:hover { - text-decoration: underline !important; -} - -.ui.breadcrumb .divider { - color: var(--color-text-light-2); -} - -.ui.divider:not(.vertical,.horizontal) { - border-top-color: var(--color-secondary) !important; - border-bottom: none !important; -} - -.ui.dividing.header { - border-bottom-color: var(--color-secondary); -} - -.page-content { - margin-top: 15px; -} - -.page-content .header-wrapper, -.page-content .new-menu { - margin-top: -15px !important; - padding-top: 15px !important; -} - -.ui.input.focus > input, -.ui.input > input:focus { - border-color: var(--color-primary); -} - -/* currently used for search bar dropdowns in repo search and explore code */ -.ui.action.input:not([class*="left action"]) > .ui.dropdown.selection { - min-width: 10em; - - &:not(:focus,:hover) { - border-right-color: transparent; - } -} - -.ui.action.input:not([class*="left action"]) > input:focus { - border-right-color: var(--color-primary); -} - -.ui.menu, -.ui.vertical.menu { - background: var(--color-menu); - border-color: var(--color-secondary); -} - -.ui.menu .item { - color: var(--color-text); - - > .svg { - margin-right: .35em; - } -} - -.ui.menu .item > .label { - background: var(--color-grey); -} - -.ui.active.label { - background: var(--color-label-active-bg); - border-color: var(--color-label-active-bg); - color: var(--color-text-dark); -} - -.ui.link.menu .item:hover, -.ui.menu .dropdown.item:hover, -.ui.menu .link.item:hover, -.ui.menu a.item:hover { - color: var(--color-text); - background: var(--color-hover); -} - -.ui.menu .active.item, -.ui.menu .active.item:hover, -.ui.vertical.menu .active.item, -.ui.vertical.menu .active.item:hover { - color: var(--color-text); - background: var(--color-active); -} - -.ui.link.menu .item:active, -.ui.menu .link.item:active, -.ui.menu a.item:active { - color: var(--color-text); - background: none; -} - -.ui.ui.menu .item.disabled { - color: var(--color-text-light-3); -} - -/* slightly more contrast for filters on issue list */ -.ui.ui.menu .dropdown.item.disabled { - color: var(--color-text-light-2); -} - -.ui.dropdown .menu { - background: var(--color-menu); - border-color: var(--color-secondary); -} - -.ui.dropdown .menu > .header:not(.ui) { - color: var(--color-text); -} - -.ui.dropdown .menu > .item { - color: var(--color-text); -} - -.ui.dropdown .menu > .item:hover { - color: var(--color-text); - background: var(--color-hover); -} - -.ui.dropdown .menu .active.item { - color: var(--color-text); - background: var(--color-active); - font-weight: normal; -} - -/* fix misaligned images in webhook dropdown */ -.ui.dropdown .menu > .item > img { - margin-top: -.25rem; - margin-bottom: -.25rem; -} -.ui.dropdown .menu > .item > svg.img { - margin-right: .78571429rem; -} - -.ui.selection.dropdown .menu > .item { - border-color: var(--color-secondary); -} - -.ui.selection.visible.dropdown > .text:not(.default) { - color: var(--color-text); -} - -.ui.dropdown.selected, -.ui.dropdown .menu .selected.item { - color: var(--color-text); - background: var(--color-hover); -} - -.ui.menu .ui.dropdown .menu > .selected.item { - color: var(--color-text) !important; - background: var(--color-hover) !important; -} - -.ui.dropdown .menu > .message:not(.ui) { - color: var(--color-text-light-2); -} - -.ui.list .list > .item .header, -.ui.list > .item .header { - color: var(--color-text-dark); -} - -.ui.list .list > .item > .content, -.ui.list > .item > .content { - color: var(--color-text); -} - -.ui.list .list > .item .description, -.ui.list > .item .description { - color: var(--color-text); -} - -.ui.secondary.menu .dropdown.item:hover, -.ui.secondary.menu .link.item:hover, -.ui.secondary.menu a.item:hover { - color: var(--color-text); - background: var(--color-hover); -} - -.ui.secondary.menu .active.item, -.ui.secondary.menu .active.item:hover { - color: var(--color-text); - background: var(--color-active); -} - -.ui.secondary.menu.tight .item { - padding-left: .85714286em; - padding-right: .85714286em; -} - -.ui.menu .dropdown.item .menu { - background: var(--color-menu); -} - -.ui.menu .ui.dropdown .menu > .item { - color: var(--color-text) !important; -} - -.ui.menu .ui.dropdown .menu > .item:hover { - color: var(--color-text) !important; - background: var(--color-hover) !important; -} - -.ui.menu .ui.dropdown .menu > .active.item { - color: var(--color-text) !important; - background: var(--color-active) !important; -} - -.ui.message { - background: var(--color-box-body); - color: var(--color-text); - box-shadow: none !important; - border: 1px solid var(--color-secondary); -} - -.ui.info.message, -.ui.attached.info.message, -.ui.blue.message, -.ui.attached.blue.message { - background: var(--color-info-bg); - color: var(--color-info-text); - border-color: var(--color-info-border); -} - -.ui.success.message, -.ui.attached.success.message, -.ui.positive.message, -.ui.attached.positive.message { - background: var(--color-success-bg); - color: var(--color-success-text); - border-color: var(--color-success-border); -} - -.ui.error.message, -.ui.attached.error.message, -.ui.red.message, -.ui.attached.red.message, -.ui.negative.message, -.ui.attached.negative.message { - background: var(--color-error-bg); - color: var(--color-error-text); - border-color: var(--color-error-border); -} - -.ui.warning.message, -.ui.attached.warning.message, -.ui.yellow.message, -.ui.attached.yellow.message { - background: var(--color-warning-bg); - color: var(--color-warning-text); - border-color: var(--color-warning-border); -} - -.ui.error.header { - background: var(--color-error-bg) !important; - color: var(--color-error-text) !important; - border-color: var(--color-error-border) !important; -} - -.ui.error.segment { - border-color: var(--color-error-border) !important; -} - -.ui.warning.header { - background: var(--color-warning-bg) !important; - color: var(--color-warning-text) !important; - border-color: var(--color-warning-border) !important; -} - -.ui.warning.segment { - border-color: var(--color-warning-border) !important; -} - -.ui.selection.active.dropdown, -.ui.selection.active.dropdown:hover, -.ui.selection.active.dropdown .menu, -.ui.selection.active.dropdown:hover .menu { - border-color: var(--color-primary-light-2); -} - -.ui.selection.dropdown .menu { - margin: 0 -1.25px; -} - -.ui.pointing.dropdown > .menu:not(.hidden)::after { - background: var(--color-box-body); - box-shadow: -1px -1px 0 0 var(--color-secondary); -} - -.ui.cards > .card, -.ui.card { - background: var(--color-card); - border: 1px solid var(--color-secondary); - box-shadow: none; -} - -.ui.cards > .card > .content, -.ui.card > .content { - border-color: var(--color-secondary); -} - -.ui.cards > .card > .extra, -.ui.card > .extra, -.ui.cards > .card > .extra a:not(.ui), -.ui.card > .extra a:not(.ui) { - color: var(--color-text); -} - -.ui.cards > .card > .extra a:not(.ui):hover, -.ui.card > .extra a:not(.ui):hover { - color: var(--color-primary); -} - -.ui.cards > .card > .content > .header, -.ui.card > .content > .header { - color: var(--color-text); -} - -.ui.cards > .card > .content > .description, -.ui.card > .content > .description { - color: var(--color-text); -} - -.ui.cards > .card .meta > a:not(.ui), -.ui.card .meta > a:not(.ui) { - color: var(--color-text-light-2); -} - -.ui.cards > .card .meta > a:not(.ui):hover, -.ui.card .meta > a:not(.ui):hover { - color: var(--color-text); -} - -.ui.cards a.card:hover, -.ui.link.cards .card:not(.icon):hover, -a.ui.card:hover, -.ui.link.card:hover { - border: 1px solid var(--color-secondary); - background: var(--color-card); -} - -.ui.cards > .card > .extra, -.ui.card > .extra { - color: var(--color-text); - border-top-color: var(--color-secondary-light-1) !important; -} - -.ui.comments .comment .text { - margin: 0; -} - -.ui.comments .comment .text, -.ui.comments .comment .author { - color: var(--color-text); -} - -.ui.comments .comment a.author:hover { - color: var(--color-primary); -} - -.ui.comments .comment .metadata { - color: var(--color-text-light-2); -} - -.ui.comments .comment .actions a { - color: var(--color-text-light); -} - -.ui.comments .comment .actions a.active, -.ui.comments .comment .actions a:hover { - color: var(--color-primary); -} - -.ui.attached.table { - border-color: var(--color-secondary); -} - -.ui.table { - color: var(--color-text); - background: var(--color-box-body); - border-color: var(--color-secondary); -} - -.ui.table th, -.ui.table td { - transition: none; -} - -.ui.table > tr > td, -.ui.table > tbody > tr > td { - border-top-color: var(--color-secondary-alpha-50); -} - -.ui.ui.ui.ui.table tr.active, -.ui.ui.table td.active { - color: var(--color-text); - background: var(--color-active); -} - -.ui.ui.selectable.table > tbody > tr:hover, -.ui.table tbody tr td.selectable:hover { - color: var(--color-text); - background-color: var(--color-secondary-alpha-40); -} - -.ui.ui.ui.ui.table tr.grey:not(.marked), -.ui.ui.table td.grey:not(.marked) { - background: var(--color-body); - color: var(--color-text); -} - -.ui.table > thead > tr > th { - background: var(--color-box-header); - color: var(--color-text); -} - -.ui.modal { - background: var(--color-body); -} - -.ui.modal > .header { - color: var(--color-text-dark); - background: var(--color-secondary-bg); - border-color: var(--color-secondary); - border-top-left-radius: var(--border-radius); - border-top-right-radius: var(--border-radius); -} - -.ui.modal > .content { - background: var(--color-body); - text-align: left !important; -} - -.ui.modal > .actions { - background: var(--color-secondary-bg); - border-color: var(--color-secondary); -} - -.ui.modal > .close.inside, -.ui.fullscreen.modal > .close { - top: 11px; /* align modal close icon, for example admin notices */ - color: var(--body-color); -} - -.ui.basic.table > tbody > tr { - border-color: var(--color-secondary); -} - -.ui.avatar img, -.ui.avatar svg, -.ui.avatar.img, -.ui.cards > .card img.avatar, -.ui.cards > .card .avatar img, -.ui.card img.avatar, -.ui.card .avatar img { - border-radius: var(--border-radius); -} - -.ui.divided.list > .item { - border-color: var(--color-secondary); -} - -.ui.link.list .item, -.ui.link.list a.item, -.ui.link.list .item a:not(.ui) { - color: var(--color-text); -} - -.ui.link.list.list a.item:hover, -.ui.link.list.list .item a:not(.ui):hover, -.ui.link.list.list a.item:active, -.ui.link.list.list .item a:not(.ui):active { - color: var(--color-text-dark); -} - -.ui.error.message .header, -.ui.warning.message .header { - color: inherit; - filter: saturate(2); -} - -.dont-break-out { - overflow-wrap: break-word; - word-wrap: break-word; - word-break: break-all; - hyphens: auto; -} - -.full.height { - flex-grow: 1; - padding-bottom: 80px; -} - -/* enable fluid page widths for medium size viewports */ -@media @mediaMdAndUp and @mediaLgAndDown { - .ui.ui.ui.container:not(.fluid) { - width: calc(100vw - 3em); - } -} - -.following.bar { - z-index: 900; - left: 0; - margin: 0 !important; - - &.light { - background: var(--color-header-bar); - border-bottom: 1px solid var(--color-secondary); - } - - .column .menu { - margin-top: 0; - } - - .top.menu a.item.brand { - padding-left: 0; - } - - .top.menu a.item:hover, - .top.menu .dropdown.item:hover, - .top.menu .dropdown.item.active { - background-color: transparent; - } - - .top.menu a.item:hover { - color: rgba(0, 0, 0, .45); - } - - .top.menu .menu { - z-index: 900; - } - - .fitted .svg { - margin-right: 0; - vertical-align: middle; - } - - .searchbox { - background-color: var(--color-input-background) !important; - } - - .text .svg { - width: 16px; - text-align: center; - } - - #navbar { - width: 100vw; - min-height: 52px; - padding: 0 .5rem; - } - - #navbar .brand { - margin: 0; - } - - #navbar .dropdown .avatar { - margin-right: 0 !important; - } - - @media @mediaSm { - #navbar:not(.shown) > *:not(:first-child) { - display: none; - } - } -} - -.right.stackable.menu { - // responsive fix: this makes sure that the right menu when the page - // is on mobile view will have elements stacked on top of each other. - // no, stackable won't work on right menus. - margin-left: auto; - display: flex; - align-items: inherit; - flex-direction: inherit; -} - -.ui.dropdown .menu { - border-color: var(--color-secondary); -} - -.ui.pagination.menu .active.item { - color: var(--color-text); - background: var(--color-active); -} - -.ui.form .field > .selection.dropdown > .dropdown.icon { - height: auto; -} - -.ui.loading.segment::before, -.ui.loading.form::before { - background: none; -} - -.ui.loading.form > *, -.ui.loading.segment > * { - opacity: .35; -} - -.ui.form .fields.error .field textarea, -.ui.form .fields.error .field select, -.ui.form .fields.error .field input:not([type]), -.ui.form .fields.error .field input[type="date"], -.ui.form .fields.error .field input[type="datetime-local"], -.ui.form .fields.error .field input[type="email"], -.ui.form .fields.error .field input[type="number"], -.ui.form .fields.error .field input[type="password"], -.ui.form .fields.error .field input[type="search"], -.ui.form .fields.error .field input[type="tel"], -.ui.form .fields.error .field input[type="time"], -.ui.form .fields.error .field input[type="text"], -.ui.form .fields.error .field input[type="file"], -.ui.form .fields.error .field input[type="url"], -.ui.form .fields.error .field .ui.dropdown, -.ui.form .fields.error .field .ui.dropdown .item, -.ui.form .field.error .ui.dropdown, -.ui.form .field.error .ui.dropdown .text, -.ui.form .field.error .ui.dropdown .item, -.ui.form .field.error textarea, -.ui.form .field.error select, -.ui.form .field.error input:not([type]), -.ui.form .field.error input[type="date"], -.ui.form .field.error input[type="datetime-local"], -.ui.form .field.error input[type="email"], -.ui.form .field.error input[type="number"], -.ui.form .field.error input[type="password"], -.ui.form .field.error input[type="search"], -.ui.form .field.error input[type="tel"], -.ui.form .field.error input[type="time"], -.ui.form .field.error input[type="text"], -.ui.form .field.error input[type="file"], -.ui.form .field.error input[type="url"], -.ui.form .field.error select:focus, -.ui.form .field.error input:not([type]):focus, -.ui.form .field.error input[type="date"]:focus, -.ui.form .field.error input[type="datetime-local"]:focus, -.ui.form .field.error input[type="email"]:focus, -.ui.form .field.error input[type="number"]:focus, -.ui.form .field.error input[type="password"]:focus, -.ui.form .field.error input[type="search"]:focus, -.ui.form .field.error input[type="tel"]:focus, -.ui.form .field.error input[type="time"]:focus, -.ui.form .field.error input[type="text"]:focus, -.ui.form .field.error input[type="file"]:focus, -.ui.form .field.error input[type="url"]:focus { - background-color: var(--color-error-bg); - border-color: var(--color-error-border); - color: var(--color-error-text); -} - -.ui.form .fields.error .field .ui.dropdown, -.ui.form .field.error .ui.dropdown, -.ui.form .fields.error .field .ui.dropdown:hover, -.ui.form .field.error .ui.dropdown:hover { - border-color: var(--color-error-border) !important; -} - -.ui.form .fields.error .field .ui.dropdown .menu .item:hover, -.ui.form .field.error .ui.dropdown .menu .item:hover { - background-color: var(--color-error-bg-hover); -} - -.ui.form .fields.error .field .ui.dropdown .menu .active.item, -.ui.form .field.error .ui.dropdown .menu .active.item { - background-color: var(--color-error-bg-active) !important; -} - -.ui.form .fields.error .dropdown .menu, -.ui.form .field.error .dropdown .menu { - border-color: var(--color-error-border) !important; -} - -// A fix for text visibility issue in Chrome autofill in dark mode. -// It's a problem from Formatic UI, and this rule overrides it. -.ui.form .field.field input:-webkit-autofill { - -webkit-text-fill-color: var(--color-black) !important; -} - -.ui.form .field.muted { - opacity: var(--opacity-disabled); -} - -.ui.loading.loading.input > i.icon svg { - visibility: hidden; -} - -.text.primary { color: var(--color-primary) !important; } -.text.red { color: var(--color-red) !important; } -.text.orange { color: var(--color-orange) !important; } -.text.yellow { color: var(--color-yellow) !important; } -.text.olive { color: var(--color-olive) !important; } -.text.green { color: var(--color-green) !important; } -.text.teal { color: var(--color-teal) !important; } -.text.blue { color: var(--color-blue) !important; } -.text.violet { color: var(--color-violet) !important; } -.text.purple { color: var(--color-purple) !important; } -.text.pink { color: var(--color-pink) !important; } -.text.brown { color: var(--color-brown) !important; } -.text.black { color: var(--color-text) !important; } -.text.grey { color: var(--color-text-light) !important; } -.text.light.grey { color: var(--color-grey-light) !important; } -.text.gold { color: var(--color-gold) !important; } - -.ui { - &.left:not(.action) { - float: left; - } - - &.right:not(.action) { - float: right; - } - - &.menu .item { - user-select: auto; - } - - &.container { - &.fluid { - &.padded { - padding: 0 10px; - } - } - } - - &.form { - .ui.button { - font-weight: normal; - } - } - - &.floating.label { - z-index: 10; - } - - &.transparent.label { - background-color: transparent; - } - - &.menu, - &.vertical.menu, - &.segment { - box-shadow: none; - } - - /* Override semantic selector '.ui.menu:not(.vertical) .item > .button' */ - /* This fixes the commit graph button on the commits page */ - - .menu:not(.vertical) .item > .button.compact { - padding: .58928571em 1.125em; - } - - .menu:not(.vertical) .item > .button.small { - font-size: .92857143rem; - } - - &.menu .ui.dropdown.item .menu .item { - width: 100%; - } - - &.dropdown .menu > .item > .floating.label { - z-index: 11; - } - - &.dropdown .menu .menu > .item > .floating.label { - z-index: 21; - } - - &.dropdown .menu > .header { - font-size: .8em; - } - - .text { - &.left { - text-align: left !important; - } - - &.right { - text-align: right !important; - } - - &.small { - font-size: .75em; - } - - &.normal { - font-weight: normal; - } - - &.italic { - font-style: italic; - } - - &.truncate { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - display: inline-block; - } - - &.thin { - font-weight: normal; - } - - &.middle { - vertical-align: middle; - } - } - - .message { - text-align: center; - } - - .message > ul { - margin-left: auto; - margin-right: auto; - display: table; - text-align: left; - } - - .header > i + .content { - padding-left: .75rem; - vertical-align: middle; - } - - .info { - &.segment { - &.top { - h3, - h4 { - margin-top: 0; - } - - h3:last-child { - margin-top: 4px; - } - - > :last-child { - margin-bottom: 0; - } - } - } - } - - .normal.header { - font-weight: normal; - } - - .form { - .autofill-dummy { - position: absolute; - width: 1px; - height: 1px; - overflow: hidden; - z-index: -10000; - } - .sub.field { - margin-left: 25px; - } - } - - .sha.label { - font-family: var(--fonts-monospace); - font-size: 13px; - padding: 6px 10px 4px; - font-weight: normal; - margin: 0 6px; - } - - .button.copy-commit-sha { - border: 1px solid var(--color-light-border); - margin-right: 3px; - padding: 6px 6px 4px; - background: var(--color-light); - } - - .button.truncate { - display: inline-block; - max-width: 100%; - overflow: hidden; - text-overflow: ellipsis; - vertical-align: top; - white-space: nowrap; - margin-right: 6px; - } - - &.status.buttons { - .svg { - margin-right: 4px; - } - } - - &.inline.delete-button { - padding: 8px 15px; - font-weight: normal; - } - - .background { - &.red { - background-color: var(--color-red) !important; - } - - &.blue { - background-color: var(--color-blue) !important; - } - - &.black { - background-color: var(--color-black) !important; - } - - &.grey { - background-color: var(--color-grey) !important; - } - - &.light.grey { - background-color: var(--color-grey) !important; - } - - &.green { - background-color: var(--color-green) !important; - } - - &.purple { - background-color: var(--color-purple) !important; - } - - &.yellow { - background-color: var(--color-yellow) !important; - } - - &.orange { - background-color: var(--color-orange) !important; - } - - &.gold { - background-color: var(--color-gold) !important; - } - } - - .migrate { - color: var(--color-text-light-2) !important; - - a { - color: var(--color-text-light) !important; - - &:hover { - color: var(--color-text) !important; - } - } - } - - .border { - border: 1px solid; - &.red { - border-color: var(--color-red) !important; - } - - &.blue { - border-color: var(--color-blue) !important; - } - - &.black { - border-color: var(--color-black) !important; - } - - &.grey { - border-color: var(--color-grey) !important; - } - - &.light.grey { - border-color: var(--color-grey) !important; - } - - &.green { - border-color: var(--color-green) !important; - } - - &.purple { - border-color: var(--color-purple) !important; - } - - &.yellow { - border-color: var(--color-yellow) !important; - } - - &.orange { - border-color: var(--color-orange) !important; - } - - &.gold { - border-color: var(--color-gold) !important; - } - } - - .branch-tag-choice { - line-height: 20px; - } - - &.pagination.menu { - @media @mediaSm { - .item:not(.active,.navigation), - .item.navigation span.navigation_label { - display: none; - } - } - &.narrow .item { - padding-left: 8px; - padding-right: 8px; - min-width: 1em; - text-align: center; - .icon { - margin-right: 0; - } - } - } - - /* modal svg icons, copied from fomantic except width and height */ - &.icon.header svg { - width: 3em; - height: 3em; - float: none; - display: block; - line-height: 1; - padding: 0; - margin: 0 auto .5rem; - opacity: 1; - } - - /* center text in fomantic modal dialogs */ - &.modal > .content { - text-align: center; - } -} - -.ui.floating.dropdown { - .overflow.menu { - .scrolling.menu.items { - border-radius: 0 !important; - box-shadow: none !important; - border-bottom: 1px solid var(--color-secondary); - } - } -} - -.user-menu > .item { - width: 100%; - border-radius: 0 !important; -} - -.scrolling.menu { - .item.selected { - font-weight: 600 !important; - } -} - -.ui.dropdown .scrolling.menu { - border-color: var(--color-secondary); -} - -.color-preview { - display: inline-block; - margin-left: .4em; - height: .67em; - width: .67em; - border-radius: .15em; -} - -.attention-icon { - vertical-align: text-top; -} - -.attention-note { - font-weight: unset; - color: var(--color-info-text); -} - -.attention-warning { - font-weight: unset; - color: var(--color-warning-text); -} - -footer { - background-color: var(--color-footer); - border-top: 1px solid var(--color-secondary); - width: 100%; - flex-basis: 40px; - color: var(--color-text-light); - - .container { - width: 100vw !important; - padding: 0 .5rem; - max-width: calc(100vw - 1rem) !important; - - .links > * { - border-left: 1px solid var(--color-secondary-dark-1); - padding-left: 8px; - margin-left: 5px; - - &:first-child { - border-left: 0; - } - } - } - - .ui.language { - .menu { - max-height: 500px; - overflow-y: auto; - margin-bottom: 7px; - } - - .svg { - margin-right: .15em; - vertical-align: top; - margin-top: calc(2em - 16px); - } - } - - .ui { - &.left, - &.right { - line-height: 39px; // there is a border-top on the footer, so make the line-height 1px less - } - } -} - -.center:not(.popup) { - text-align: center; -} - -// Conditional display -@media @mediaMdAndUp { - .mobile-only, - .ui.button.mobile-only { - display: none !important; - } - - // has the same behaviour of sr-only, hiding the content for - // non-screenreaders, but is shown on mobile devices. - .sr-mobile-only { - .sr-only(); - } -} - -@media @mediaSm { - .not-mobile { - display: none !important; - } -} - -// Accessibility -.sr-only { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip: rect(0, 0, 0, 0); - border: 0; -} - -.sr-only-focusable:active, -.sr-only-focusable:focus { - position: static; - width: auto; - height: auto; - margin: 0; - overflow: visible; - clip: auto; -} - -@media @mediaMd { - .ui.container { - width: 95%; - } -} - -.ui.menu.new-menu { - margin-bottom: 15px; - background: var(--color-navbar); - border-bottom: 1px solid var(--color-secondary) !important; - overflow: auto; -} - -.ui.menu.new-menu .new-menu-inner { - display: flex; - margin-left: auto; - margin-right: auto; - overflow-x: auto; -} - -.ui.menu.new-menu::after { - position: absolute; - display: block; - background: linear-gradient(to right, var(--color-navbar-transparent), var(--color-navbar) 100%); - content: ''; - right: 0; - height: 39px; - width: 60px; - visibility: visible; - pointer-events: none; -} - -.ui.menu.new-menu.shadow-body::after { - background: linear-gradient(to right, transparent, var(--color-body) 100%); -} - -.ui.menu.new-menu .item { - margin: 0 !important; -} - -@media @mediaSm { - .ui.menu.new-menu .item { - width: auto !important; - } -} - -.ui.menu.new-menu .item:last-child { - padding-right: 30px !important; -} - -.ui.menu.new-menu::-webkit-scrollbar { - height: 6px; - display: none; -} - -.ui.menu.new-menu::-webkit-scrollbar-track { - background: none !important; -} - -.ui.menu.new-menu::-webkit-scrollbar-thumb { - box-shadow: none !important; -} - -.ui.menu.new-menu:hover::-webkit-scrollbar { - display: block; -} - -.repos-search { - padding-bottom: 0 !important; -} - -.repos-filter { - margin-top: 0 !important; - border-bottom-width: 0 !important; - margin-bottom: 2px !important; - justify-content: space-evenly; - -} - -.ui.secondary.pointing.menu.repos-filter .item { - padding-left: 4.5px; - padding-right: 4.5px; -} - -.repo-title { - font-size: 1.5rem; - display: flex; - align-items: center; - flex: 1; - word-break: break-all; - color: var(--color-text-light); - - .avatar { - width: 32px !important; - height: 32px !important; - } - - .labels { - margin-left: .5rem; - - > * + * { - margin-left: .5rem; - } - } -} - -.repo-icon { - display: inline-block; -} - -.activity-bar-graph { - background-color: var(--color-primary); - color: var(--color-primary-contrast); -} - -.activity-bar-graph-alt { - color: var(--color-primary-contrast); -} - -.archived-icon { - color: var(--color-secondary-dark-2) !important; -} - -.oauth2-authorize-application-box { - margin-top: 3em !important; -} - -/* multiple radio or checkboxes as inline element */ -.inline-grouped-list { - display: inline-block; - vertical-align: top; - - > .ui { - display: block; - margin-top: 5px; - margin-bottom: 10px; - - &:first-child { - margin-top: 1px; - } - } -} - -i.icons .icon:first-child { - margin-right: 0; -} - -i.icon.centerlock { - top: 1em; -} - -.ui.label { - padding: .3em .5em; - background: var(--color-light); - color: var(--color-text-light); -} - -.ui.labels a.label:hover, -a.ui.label:hover { - background: var(--color-hover); - border-color: var(--color-hover); - color: var(--color-text); -} - -.ui.label > .detail .icons { - margin-right: .25em; -} - -.ui.label > .detail .icons .icon { - margin-right: 0; -} - -.lines-blame-btn { - padding-left: 10px; - padding-right: 10px; - text-align: right !important; - background-color: var(--color-code-sidebar-bg); - width: 2%; -} - -.lines-num { - &:extend(.unselectable); - padding-left: 10px; - padding-right: 10px; - text-align: right !important; - color: var(--color-text-light-1); - width: 1%; - font-family: var(--fonts-monospace); - - span { - &.bottom-line { - &::after { - border-bottom: 1px solid var(--color-secondary); - } - } - - &::after { - content: attr(data-line-number); - line-height: 20px !important; - padding: 0 10px; - cursor: pointer; - display: block; - } - } -} - -.lines-type-marker { - vertical-align: top; -} - -.lines-num, -.lines-code { - font-size: 12px; - font-family: var(--fonts-monospace); - line-height: 20px; - padding-top: 0; - padding-bottom: 0; - vertical-align: top; - - pre, - ol { - background-color: inherit; - margin: 0; - padding: 0 !important; - - li { - display: block; - width: calc(100% - 1ch); - padding-left: 1ch; - } - } -} - -.lines-escape { - width: 0; -} - -.lines-code { - background-color: var(--color-code-bg); - padding-left: 5px; -} - -.lines-code.active, -.lines-code .active { - background: var(--color-active-line) !important; -} - -.blame .lines-num { - padding: 0 !important; - background-color: var(--color-code-sidebar-bg); -} - -.blame .lines-code { - padding: 0 !important; -} - -.code-inner { - font: 12px var(--fonts-monospace); - white-space: pre-wrap; - word-break: break-all; - overflow-wrap: anywhere; -} - -.blame .code-inner { - white-space: pre; - word-break: normal; - word-wrap: normal; /* not using overflow-wrap because safari does not treat is an an alias */ -} - -.lines-commit { - &:extend(.unselectable); - vertical-align: top; - color: var(--color-grey); - padding: 0 !important; - background: var(--color-code-sidebar-bg); - width: 1%; - - .blame-info { - &:extend(.unselectable); - width: 350px; - max-width: 350px; - display: block; - padding: 0 0 0 10px; - line-height: 20px; - box-sizing: content-box; - - .blame-data { - display: flex; - font-family: var(--fonts-regular); - - .blame-message { - flex-grow: 2; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - } - - .blame-time, - .blame-avatar { - flex-shrink: 0; - } - } - } - - .ui.avatar { - height: 18px; - width: 18px; - display: block; - margin-top: 1px; - } -} - -.top-line-blame { - border-top: 1px solid var(--color-secondary); -} - -.lines-code, -.lines-commit { - .bottom-line { - border-bottom: 1px solid var(--color-secondary); - } -} -.code-view table { - width: 100%; -} - -.octicon-tiny { - font-size: .85714286rem; -} - -.ui.button { - background: var(--color-button); - border: 1px solid var(--color-light-border); - color: var(--color-text); -} - -.page-content .ui.button { - box-shadow: none !important; -} - -.ui.button:focus, -.ui.button:hover { - background: var(--color-hover); - color: var(--color-text); -} - -.ui.active.button, -.ui.button:active, -.ui.active.button:active, -.ui.active.button:hover { - background: var(--color-active); - color: var(--color-text); -} - -.ui.button.no-text .icon { - margin: 0 !important; -} - -.ui.buttons .button:first-child { - border-left: 1px solid var(--color-light-border); -} - -.ui.buttons .button + .button { - border-left: none; -} - -.two-toggle-buttons .button:not(.active):first-of-type { - border-right: none; -} - -.two-toggle-buttons .button.active:last-of-type { - border-left: 1px solid var(--color-light-border); -} - -.ui.labeled.button.disabled > .button, -.ui.basic.buttons .button, -.ui.basic.button { - color: var(--color-text-light); - background: var(--color-light); -} - -.ui.basic.buttons .button:hover, -.ui.basic.button:hover { - color: var(--color-text); - background: var(--color-hover); -} - -.ui.basic.buttons .button:focus, -.ui.basic.button:focus, -.ui.basic.buttons .button:active, -.ui.basic.button:active, -.ui.basic.buttons .active.button, -.ui.basic.active.button, -.ui.basic.buttons .active.button:hover, -.ui.basic.active.button:hover { - color: var(--color-text); - background: var(--color-active); -} - -.ui.labeled.button > .label { - border-color: var(--color-light-border); -} - -.ui.labeled.icon.buttons > .button > .icon, -.ui.labeled.icon.button > .icon { - background: var(--color-hover); -} - -.ui.primary.button, -.ui.primary.buttons .button { - background-color: var(--color-primary) !important; - color: var(--color-primary-contrast) !important; -} - -.ui.primary.button:hover, -.ui.primary.buttons .button:hover { - background-color: var(--color-primary-dark-2) !important; -} - -.ui.primary.button:focus, -.ui.primary.buttons .button:focus { - background-color: var(--color-primary-dark-3) !important; -} - -.ui.basic.primary.button, -.ui.basic.primary.buttons .button { - box-shadow: inset 0 0 0 1px var(--color-primary) !important; - color: var(--color-primary-contrast) !important; -} - -.ui.basic.primary.button:hover, -.ui.basic.primary.buttons .button:hover { - box-shadow: inset 0 0 0 1px var(--color-primary-dark-2) !important; -} - -.ui.basic.primary.button:focus, -.ui.basic.primary.buttons .button:focus { - box-shadow: inset 0 0 0 1px var(--color-primary-dark-3) !important; -} - -.ui.basic.secondary.buttons .button, -.ui.basic.secondary.button { - color: var(--color-secondary-dark-6) !important; -} - -.ui.basic.secondary.buttons .button:hover, -.ui.basic.secondary.button:hover, -.ui.basic.secondary.buttons .button:active, -.ui.basic.secondary.button:active { - color: var(--color-secondary-dark-8) !important; - border-color: var(--color-secondary-dark-1) !important; -} - -.ui.basic.secondary.button:focus, -.ui.basic.secondary.buttons .button:focus { - color: var(--color-secondary-dark-8) !important; - border-color: var(--color-secondary-dark-3) !important; -} - -.ui.tertiary.button { - color: var(--color-text-light); - border: none; -} - -.ui.tertiary.button:hover { - color: var(--color-text); -} - -.ui.primary.label, -.ui.primary.labels .label { - background-color: var(--color-primary) !important; - border-color: var(--color-primary-dark-2) !important; -} - -.ui.basic.labels .primary.label, -.ui.ui.ui.basic.primary.label { - background: transparent !important; - border-color: var(--color-primary) !important; - color: var(--color-primary) !important; -} - -.ui.basic.labels .label, -.ui.basic.label { - background: var(--color-light); - border-color: var(--color-light-border); - color: var(--color-text-light); -} - -.ui.basic.labels a.label:hover, -a.ui.basic.label:hover { - color: var(--color-text); - border-color: var(--color-light-border); - background: var(--color-hover); -} - -.ui.label > img { - width: auto !important; - vertical-align: middle; - height: 2.1666em !important; -} - -.svg { - span.green & { - color: var(--color-green); - } - span.red & { - color: var(--color-red); - } - span.purple & { - color: var(--color-purple); - } -} - -.migrate .svg.gitea-git { - color: var(--color-git); -} - -.color-icon { - display: inline-block; - border-radius: 100%; - height: 14px; - width: 14px; -} - -.ui.label > .color-icon { - margin-left: 0; -} - -.invisible { - visibility: hidden; -} - -.ui.segment, -.ui.segments, -.ui.attached.segment { - background: var(--color-box-body); - color: var(--color-text); - border-color: var(--color-secondary); -} - -.ui.segments > .segment { - border-color: var(--color-secondary); -} - -.ui.secondary.segment { - background: var(--color-secondary-bg); - color: var(--color-text-light); -} - -.ui.attached.header { - position: relative; - background: var(--color-box-header); - border-color: var(--color-secondary); - - .right .button { - padding: 8px 10px; - font-weight: normal; - } -} - -/* fix misaligned right buttons on box headers */ -.ui.attached.header .right:not(.dropdown) { - position: absolute; - right: .78571429rem; - top: 0; - bottom: 0; - height: 30px; - margin-top: auto; - margin-bottom: auto; -} - -/* https://github.com/go-gitea/gitea/issues/10210 */ -.ui.attached.segment ~ .ui.top.attached.header { - margin-top: 1rem; -} - -.header-stopwatch-dot { - position: absolute; - left: 8px; - top: -8px; - width: 13px; - height: 13px; - background: var(--color-primary); - border: 2px solid var(--color-header-bar); - border-radius: 100%; -} - -.notification_count { - position: absolute; - left: 5px; - top: -8px; - min-width: 1.5em; - text-align: center; - background: var(--color-primary); - border: 2px solid var(--color-header-bar); - color: var(--color-header-bar); - padding: 2px; - border-radius: 1em; - font-size: 10px; - font-weight: 700; - line-height: .7; -} - -table th[data-sortt-asc], -table th[data-sortt-desc] { - &:hover { - background: rgba(0, 0, 0, .1) !important; - cursor: pointer !important; - } - .svg { - margin-left: .25rem; - } -} - -.ui.dropdown .svg.dropdown.icon, -.svg.dropdown.icon { - margin-top: 0 !important; // reset the "ui.selection.dropdown > .dropdown.icon {margin-top}", for the Issue Dependencies dropdown - margin-right: -.5rem !important; // fix up SVG dropdown triangles because Fomantic thinks they are icon fonts - height: auto; // reset the ".ui.dropdown > .dropdown.icon {height}", otherwise the icon would be too small -} - -.ui.selection.dropdown > .search.icon, -.ui.selection.dropdown > .delete.icon, -.ui.selection.dropdown > .dropdown.icon { - top: 0 !important; -} -.ui.dropdown.no-text > .dropdown.icon { - margin-left: 0 !important; - margin-right: 0 !important; -} - -.ui.dropdown .menu .item { - border-radius: 0; -} - -.ui.dropdown .menu .item:first-of-type { - border-radius: var(--border-radius) var(--border-radius) 0 0; -} - -.ui.dropdown .menu .item:last-of-type { - border-radius: 0 0 var(--border-radius) var(--border-radius); -} - -.text-label { - display: inline-flex !important; - align-items: center !important; -} - -.emoji, -.reaction { - font-size: 1.25em; - line-height: 1; - font-style: normal !important; - font-weight: normal !important; - vertical-align: -.075em; - - @supports (-webkit-hyphens:none) { - body:not(.safari-above125) & { - font-size: inherit; - vertical-align: inherit; - img { - font-size: 1.25em; - vertical-align: -.225em !important; - } - } - } -} - -.emoji img, -.reaction img { - border-width: 0 !important; - margin: 0 !important; - width: 1em !important; - height: 1em !important; - vertical-align: -.15em; -} - -.minicolors-panel { - background: var(--color-secondary-dark-1) !important; -} - -.labelspage { - list-style: none; - padding-top: 0; - - .item { - margin-top: 0; - margin-right: -14px; - margin-left: -14px; - padding: 10px; - border-bottom: 1px solid var(--color-secondary); - border-top: none; - - a { - font-size: 12px; - padding-right: 10px; - color: var(--color-text-light); - - &:hover { - color: var(--color-primary-light-2); - } - - &.open-issues { - margin-right: 30px; - } - } - } - - .item:last-child { - border-bottom: none; - padding-bottom: 0; - } - - .orglabel { - opacity: .7; - } -} - -/* https://github.com/go-gitea/gitea/pull/11486 */ -.ui.sub.header { - text-transform: none; -} - -.ui.tabular.menu { - border-color: var(--color-secondary); -} - -.ui.tabular.menu .item { - padding: 11px 12px; - color: var(--color-text-light-2); -} - -.ui.tabular.menu .item:hover { - color: var(--color-text); -} - -.ui.tabular.menu .active.item, -.ui.tabular.menu .active.item:hover { - background: var(--color-body); - border-color: var(--color-secondary); - color: var(--color-text); - margin-top: 1px; /* offset fomantic's margin-bottom: -1px */ -} - -.ui.segment .ui.tabular.menu .active.item, -.ui.segment .ui.tabular.menu .active.item:hover { - background: var(--color-box-body); -} - -.ui.secondary.pointing.menu { - border-color: var(--color-secondary); -} - -.ui.secondary.pointing.menu .item { - color: var(--color-text-light-2); -} - -.ui.secondary.pointing.menu .active.item, -.ui.secondary.pointing.menu .active.item:hover, -.ui.secondary.pointing.menu .dropdown.item:hover, -.ui.secondary.pointing.menu .link.item:hover, -.ui.secondary.pointing.menu a.item:hover { - color: var(--color-text-dark); -} - -.ui.header { - color: var(--color-text); -} - -.ui.header .ui.label { - margin-left: .25rem; -} - -.ui.header > .ui.label.compact { - margin-top: inherit; -} - -.ui.header .sub.header { - color: var(--color-text-light-1); -} - -.flash-error details code, -.flash-warning details code { - display: block; - text-align: left; -} - -.truncated-item-container { - display: flex !important; - align-items: center; -} - -.ellipsis-button { - &:extend(.unselectable); - padding: 0 5px 8px !important; - display: inline-block !important; - font-weight: 600 !important; - line-height: 6px !important; - vertical-align: middle !important; -} - -.truncated-item-name { - line-height: 2em; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - margin-top: -.5em; - margin-bottom: -.5em; -} - -.precolors { - padding-left: 0 !important; - padding-right: 0 !important; - margin: 3px 10px auto !important; - width: 120px !important; - - .color { - float: left; - width: 15px; - height: 15px; - } -} - -@media @mediaSm { - .ui.stackable.menu:not(.no-vertical-tabs) { - overflow-y: hidden; - overflow-x: auto; - flex-direction: row; - flex-wrap: nowrap !important; - - .item { - width: initial !important; - } - - > .dropdown.item { - position: initial; - } - - .menu { - flex-direction: row; - } - } -} - -.color-text-light-2 { - color: var(--color-text-light-2); -} diff --git a/web_src/less/_dashboard.less b/web_src/less/_dashboard.less deleted file mode 100644 index 4af55f2d2d..0000000000 --- a/web_src/less/_dashboard.less +++ /dev/null @@ -1,198 +0,0 @@ -.dashboard { - &.feeds, - &.issues { - .context.user.menu { - z-index: 101; - min-width: 200px; - - .ui.header { - font-size: 1rem; - text-transform: none; - } - } - - .filter.menu { - width: initial; - - .item { - text-align: left; - display: flex; - align-items: center; - justify-content: space-between; - - .text { - height: 16px; - vertical-align: middle; - - &.truncate { - width: 75%; - } - } - - .floating.label { - top: 7px; - left: 90%; - width: 15%; - - @media @mediaSm { - top: 10px; - left: auto; - width: auto; - right: 13px; - } - } - } - - // Sort - .jump.item { - margin: 1px; - padding-right: 0; - } - - .menu { - max-height: 300px; - overflow-x: auto; - right: 0 !important; - left: auto !important; - } - - @media @mediaSm { - width: 100%; - } - } - - .right.stackable.menu > .item.active { - color: var(--color-red); - } - } - - .dashboard-repos, - .dashboard-orgs { - margin: 0 1px; /* Accommodate for Semantic's 1px hacks on .attached elements */ - } - - .dashboard-navbar { - width: 100vw; - padding-left: .5rem; - padding-right: .5rem; - .org-visibility .label { - margin-left: 5px; - } - - .ui.dropdown { - max-width: 100%; - - @media @mediaSm { - > .menu { - position: static; - } - } - } - } -} - -&.feeds { - .news { - li { - display: flex; - align-items: baseline; - margin-top: .5rem; - margin-bottom: .5rem; - - img { - align-self: flex-start; - } - } - li > * + * { - margin-left: .35rem; - } - - > .ui.grid { - margin-left: auto; - margin-right: auto; - } - - .left .ui.avatar { - margin-top: 13px; - } - - .time-since { - font-size: 13px; - } - - .issue.title { - width: 80%; - margin: 0 0 1em; - } - - .push.news .content ul { - line-height: 18px; - font-size: 13px; - list-style: none; - padding-left: 10px; - - .text.truncate { - width: 80%; - } - } - - .commit-id { - font-family: var(--fonts-monospace); - } - - code { - padding: 2px 4px; - border-radius: 3px; - background-color: var(--color-markup-code-block); - word-break: break-all; - } - - &:last-of-type .divider { - display: none !important; - } - } - - .list { - ul { - list-style: none; - margin: 0; - padding-left: 0; - - li { - &:not(:last-child) { - border-bottom: 1px solid var(--color-secondary); - } - - &.private { - background-color: var(--color-box-body-highlight); - } - - .repo-list-link { - padding: 6px 1em; - display: block; - - .svg { - color: var(--color-text-light-2); - } - - .star-num { - font-size: 12px; - } - } - } - } - - #privateFilterCheckbox .svg { - color: var(--color-grey); - margin-right: .25rem; - } - - .repo-owner-name-list .item-name { - min-width: 0; - } - - .repo-owner-name-list .item-name svg { - min-width: 16px; - } - } -} diff --git a/web_src/less/_editor.less b/web_src/less/_editor.less deleted file mode 100644 index d3f9edeb2d..0000000000 --- a/web_src/less/_editor.less +++ /dev/null @@ -1,82 +0,0 @@ -.repository.file.editor .tab[data-tab="write"] { - padding: 0 !important; -} - -.repository.file.editor .tab[data-tab="write"] .editor-toolbar { - border: 0 !important; -} - -.repository.file.editor .tab[data-tab="write"] .CodeMirror { - border-left: 0; - border-right: 0; - border-bottom: 0; -} - -.editor-toolbar { - max-width: calc(100vw - 80px); - border-color: var(--color-secondary); -} - -.editor-toolbar.fullscreen { - background: var(--color-body); -} - -.editor-toolbar button { - border: none !important; - color: var(--color-text-light); -} - -.editor-toolbar button:not(:hover) { - background-color: transparent !important; -} - -.editor-toolbar i.separator { - border-left: none; - border-right-color: var(--color-secondary); -} - -.editor-toolbar button:hover { - background: var(--color-hover); -} - -.editor-toolbar button.active { - background: var(--color-active); -} - -/* hide preview button, we have the preview tab for this */ -.editor-toolbar:not(.fullscreen) .preview { - display: none; -} - -/* hide revert button in fullscreen, it breaks the page */ -.editor-toolbar.fullscreen .revert-to-textarea { - display: none; -} - -.editor-preview { - background-color: var(--color-body); -} - -.editor-preview-side { - border-color: var(--color-secondary); -} - -.editor-statusbar { - color: var(--color-text-light); -} - -.editor-loading { - padding: 1rem; - text-align: center; -} - -.edit-diff { - padding: 0 !important; -} - -.edit-diff > div > .ui.table { - border-top: none !important; - border-bottom: none !important; - border-left: 1px solid var(--color-secondary) !important; - border-right: 1px solid var(--color-secondary) !important; -} diff --git a/web_src/less/_explore.less b/web_src/less/_explore.less deleted file mode 100644 index 5caf21d417..0000000000 --- a/web_src/less/_explore.less +++ /dev/null @@ -1,93 +0,0 @@ -.explore { - .navbar { - justify-content: center; - margin-bottom: 15px !important; - background-color: var(--color-navbar) !important; - border-width: 1px !important; - - .svg { - width: 16px; - text-align: center; - margin-right: 5px; - } - } -} - -.ui.repository.list { - .item { - padding-bottom: 1.5rem; - - &:not(:first-child) { - border-top: 1px solid var(--color-secondary); - padding-top: 1.5rem; - } - - .ui.header { - font-size: 1.5rem; - margin-bottom: .5rem; - - .name { - word-break: break-all; - } - - .metas { - font-size: 14px; - } - } - - .time { - font-size: 12px; - } - - .ui.tags { - margin-bottom: .5rem; - } - } -} - -.ui.repository.branches { - .info { - font-size: 12px; - color: var(--color-text-light); - display: flex; - white-space: pre; - .commit-message { - max-width: 72em; - overflow: hidden; - text-overflow: ellipsis; - } - } - .overflow-visible { - overflow: visible; - } - /* fix alignment of PR popup in branches table */ - table .ui.popup { - text-align: left; - } -} - -.ui.user.list { - .item { - padding-bottom: 25px; - display: flex; - - &:not(:first-child) { - border-top: 1px solid var(--color-secondary); - padding-top: 25px; - } - - img.ui.avatar { - width: 40px; - height: 40px; - margin-right: 10px; - } - - .description { - margin-top: 5px; - - .svg:not(:first-child) { - margin-left: 5px; - } - } - } -} diff --git a/web_src/less/_font_i18n.less b/web_src/less/_font_i18n.less deleted file mode 100644 index 5dae8f2aa5..0000000000 --- a/web_src/less/_font_i18n.less +++ /dev/null @@ -1,130 +0,0 @@ -/* font i18n */ -:root { - /* customizable localized variables */ - :lang(ja) { - --fonts-override: var(--fonts-default-override-ja); - } - :lang(zh-CN) { - --fonts-override: var(--fonts-default-override-zh-cn); - } - :lang(zh-TW) { - --fonts-override: var(--fonts-default-override-zh-tw); - } - :lang(zh-HK) { - --fonts-override: var(--fonts-default-override-zh-hk); - } - :lang(ko) { - --fonts-override: var(--fonts-default-override-ko); - } -} - -[lang] { - font-family: var(--fonts-regular); -} - -each(@fonts, { - @weights: .gen-weights-all(@value); - @locale: replace(@key, "@", "-"); - .font-face-cjk(~"system-ui@{locale}", @weights[@light], 300); - .font-face-cjk(~"system-ui@{locale}", @weights[@regular], 400); - .font-face-cjk(~"system-ui@{locale}", @weights[@medium], 500); - .font-face-cjk(~"system-ui@{locale}", @weights[@bold], 700); - /* Safari on macOS/iOS */ - @font-face { - font-family: ~"system-ui@{locale}"; - src: local("HelveticaNeue"); - unicode-range: U+A0; - } - /* Other browsers on macOS/iOS */ - @supports not (-webkit-hyphens:none) { - @font-face { - font-family: ~"system-ui@{locale}"; - src: local("HelveticaNeue"); - unicode-range: U+20; - } - } - :root { - /* Special handling for Firefox on Windows/Linux */ - @supports (-moz-appearance:none) { - --fonts-default-override@{locale}: ~"var(--fonts-proportional), system-ui@{locale}"; - } - --fonts-default-override@{locale}: ~"system-ui@{locale}, var(--fonts-proportional)"; - } -}); - -@fonts: { - @ja: - "HiraKakuProN-:{W3,W6}", "Hiragino Kaku Gothic ProN :{W3,W6}", "HiraginoSans-:{W2,W4,W5,W6}", - .shs("JP")[], .shs("J")[], .noto("JP")[], .shs("")[], - /* https://acetaminophen.hatenablog.com/entry/2016/02/15/225009 */ - "Yu Gothic :{Regular,Medium,Bold}", "YuGothic :{Regular,Medium,Bold}", - "Droid Sans Japanese:{}", "Meiryo:{, Bold}", "MS PGothic:{}"; - @zh-cn: - .pingfang("SC")[], - .shs("CN")[], .shs("SC")[], .noto("SC")[], - "HiraginoSansGB-:{W3,W6}", "Hiragino Sans GB :{W3,W6}", - "Microsoft YaHei:{ Light,, Bold}", "Heiti SC :{Light,Medium}", "SimHei:{}"; - @zh-tw: - .pingfang("TC")[], - .shs("TW")[], .shs("TC")[], .noto("TC")[], - "HiraginoSansTC-:{W3,W6}", "Hiragino Sans TC :{W3,W6}", - "Microsoft JhengHei:{ Light,, Bold}", "Heiti TC :{Light,Medium}", "PMingLiU:{}"; - @zh-hk: - .pingfang("HK")[], - .shs("HK")[], .shs("HC")[], .noto("HK")[], .shs("TC")[], .noto("TC")[], - "HiraginoSansTC-:{W3,W6}", "Hiragino Sans TC :{W3,W6}", - "Microsoft JhengHei:{ Light,, Bold}", "Heiti TC :{Light,Medium}", "PMingLiU_HKSCS:{}", "PMingLiU:{}"; - @ko: - "AppleSDGothicNeo-:{Light,Regular,Medium,SemiBold}", - .shs("KR")[], .shs("K")[], .noto("KR")[], - "NanumBarunGothic:{ Light,, Bold}", - "Malgun Gothic:{ Semilight,, Bold}", "Nanum Gothic:{, Bold}", "Dotum:{}"; -} - -.noto(@suffix) { @value: "Noto Sans CJK @{suffix} ", "NotoSansCJK@{suffix}-"; } -.shs(@suffix) { @value: replace("Source Han Sans @{suffix} ", " ", " "), "SourceHanSans@{suffix}-"; } -.pingfang(@suffix) { @value: "PingFang@{suffix}-:{Light,Regular,Medium,Semibold}"; } -.font-face-cjk(@family, @src, @weight) { - @font-face { - font-family: @family; - src: @src; - font-weight: @weight; - unicode-range: U+11??, U+2E80-4DBF, U+4E00-9FFF, U+A960-A97F, U+AC00-D7FF, U+F900-FAFF, U+FE00-FE6F, U+FF00-FFEF, U+1F2??, U+2????; - } -} - -.gen-weights(@family) when (isstring(@family)) { - @family-str: replace(@family, ":\{.*\}$", ""); - // apply standard style names if none is given - // should the font have no styles, use :{}, as in "SimHei:{}" - @weights-str: if(@family = @family-str, "Light,Regular,Medium,Bold", replace(@family, ".*:\{(.*)\}$", "$1")); - @lightest: replace(@weights-str, ",.*", ""); - @boldest: replace(@weights-str, ".*,", ""); - @2ndboldest: replace(@weights-str, "(?:.*,|)([^,]*),.*$", "$1"); - @2ndlightest: if(@2ndboldest = @lightest, @lightest, replace(@weights-str, "^.*?,([^,]*).*", "$1")); - - @light: local("@{family-str}@{lightest}"); - @regular: local("@{family-str}@{2ndlightest}"); - @medium: local("@{family-str}@{2ndboldest}"); - @bold: local("@{family-str}@{boldest}"); -} -.gen-weights(@family) when not (isstring(@family)) { - .gen-weights-all(@family); -} -.gen-weights(@family, @last) { - @this: .gen-weights(@family); - - @light: @last[@light], @this[@light]; - @regular: @last[@regular], @this[@regular]; - @medium: @last[@medium], @this[@medium]; - @bold: @last[@bold], @this[@bold]; -} -.gen-weights-all(@family) when not (isstring(@family)) { - .gen-weights-all(@family, length(@family)); -} -.gen-weights-all(@family, 1) when not (isstring(@family)) { - .gen-weights(extract(@family, 1)); -} -.gen-weights-all(@family, @ctr) when not (isstring(@family)) and (@ctr > 1) and (@ctr <= length(@family)) { - .gen-weights(extract(@family, @ctr), .gen-weights-all(@family, @ctr - 1)); -} diff --git a/web_src/less/_form.less b/web_src/less/_form.less deleted file mode 100644 index 1a1c1678f8..0000000000 --- a/web_src/less/_form.less +++ /dev/null @@ -1,378 +0,0 @@ -input, -textarea, -.ui.input > input, -.ui.form input:not([type]), -.ui.form select, -.ui.form textarea, -.ui.form input[type="date"], -.ui.form input[type="datetime-local"], -.ui.form input[type="email"], -.ui.form input[type="file"], -.ui.form input[type="number"], -.ui.form input[type="password"], -.ui.form input[type="search"], -.ui.form input[type="tel"], -.ui.form input[type="text"], -.ui.form input[type="time"], -.ui.form input[type="url"], -.ui.selection.dropdown, -.ui.checkbox label::before, -.ui.checkbox input:checked ~ label::before, -.ui.checkbox input:not([type="radio"]):indeterminate ~ label::before { - background: var(--color-input-background); - border-color: var(--color-input-border); - color: var(--color-input-text); -} - -input:hover, -textarea:hover, -.ui.input input:hover, -.ui.form input:not([type]):hover, -.ui.form select:hover, -.ui.form textarea:hover, -.ui.form input[type="date"]:hover, -.ui.form input[type="datetime-local"]:hover, -.ui.form input[type="email"]:hover, -.ui.form input[type="file"]:hover, -.ui.form input[type="number"]:hover, -.ui.form input[type="password"]:hover, -.ui.form input[type="search"]:hover, -.ui.form input[type="tel"]:hover, -.ui.form input[type="text"]:hover, -.ui.form input[type="time"]:hover, -.ui.form input[type="url"]:hover, -.ui.selection.dropdown:hover, -.ui.checkbox label:hover::before, -.ui.checkbox label:active::before, -.ui.radio.checkbox label::after, -.ui.radio.checkbox input:focus ~ label::before, -.ui.radio.checkbox input:checked ~ label::before { - background: var(--color-input-background); - border-color: var(--color-input-border-hover); - color: var(--color-input-text); -} - -input:focus, -textarea:focus, -.ui.input input:focus, -.ui.form input:not([type]):focus, -.ui.form select:focus, -.ui.form textarea:focus, -.ui.form input[type="date"]:focus, -.ui.form input[type="datetime-local"]:focus, -.ui.form input[type="email"]:focus, -.ui.form input[type="file"]:focus, -.ui.form input[type="number"]:focus, -.ui.form input[type="password"]:focus, -.ui.form input[type="search"]:focus, -.ui.form input[type="tel"]:focus, -.ui.form input[type="text"]:focus, -.ui.form input[type="time"]:focus, -.ui.form input[type="url"]:focus, -.ui.selection.dropdown:focus, -.ui.checkbox input:focus ~ label::before, -.ui.checkbox input:not([type="radio"]):indeterminate:focus ~ label::before, -.ui.checkbox input:checked:focus ~ label::before, -.ui.radio.checkbox input:focus:checked ~ label::before { - background: var(--color-input-background); - border-color: var(--color-primary); - color: var(--color-input-text); -} - -.ui.form .field > label, -.ui.form .inline.fields > label, -.ui.form .inline.fields .field > label, -.ui.form .inline.fields .field > p, -.ui.form .inline.field > label, -.ui.form .inline.field > p, -.ui.checkbox label, -.ui.checkbox + label, -.ui.checkbox label:hover, -.ui.checkbox + label:hover, -.ui.checkbox input:focus ~ label, -.ui.checkbox input:active ~ label { - color: var(--color-text); -} - -.ui.input, -.ui.checkbox input:focus ~ label::after, -.ui.checkbox input:checked ~ label::after, -.ui.checkbox label:active::after, -.ui.checkbox input:not([type="radio"]):indeterminate ~ label::after, -.ui.checkbox input:not([type="radio"]):indeterminate:focus ~ label::after, -.ui.checkbox input:checked:focus ~ label::after, -.ui.disabled.checkbox label, -.ui.checkbox input[disabled] ~ label { - color: var(--color-input-text); -} - -.ui.radio.checkbox input:focus ~ label::after, -.ui.radio.checkbox input:checked ~ label::after, -.ui.radio.checkbox input:focus:checked ~ label::after { - background: var(--color-input-text); -} - -.ui.toggle.checkbox label::before { - background: var(--color-input-toggle-background); -} - -.ui.toggle.checkbox label, -.ui.toggle.checkbox input:checked ~ label, -.ui.toggle.checkbox input:focus:checked ~ label { - color: var(--color-text) !important; -} - -.ui.toggle.checkbox input:checked ~ label::before, -.ui.toggle.checkbox input:focus:checked ~ label::before { - background: var(--color-primary) !important; -} - -/* match <select> padding to <input> */ -.ui.form select { - padding: .67857143em 1em; -} - -.form { - .help { - color: var(--color-secondary-dark-5); - padding-bottom: .6em; - display: inline-block; - } -} - -@create-page-form-input-padding: 250px !important; -#create-page-form { - form { - margin: auto; - - .ui.message { - text-align: center; - } - - @media @mediaMdAndUp { - width: 800px !important; - - .header { - padding-left: @create-page-form-input-padding+30px; - } - - .inline.field > label, - .inline.field.captcha-field > span { - text-align: right; - width: @create-page-form-input-padding; - word-wrap: break-word; - } - - .help { - margin-left: @create-page-form-input-padding+15px; - } - - .optional .title { - margin-left: @create-page-form-input-padding; - } - - .inline.field > input, - .inline.field > textarea { - width: 50%; - } - } - - @media @mediaSm { - .optional .title { - margin-left: 15px; - } - - .inline.field > label { - display: block; - } - } - } -} - -.signin { - .oauth2 { - div { - display: inline-block; - - p { - margin: 10px 5px 0 0; - float: left; - } - } - - a { - margin-right: 3px; - - &:last-child { - margin-right: 0; - } - } - - img { - width: 32px; - height: 32px; - - &.openidConnect { - width: auto; - } - } - } -} - -@media @mediaMdAndUp { - .g-recaptcha-style, - .h-captcha-style { - margin: 0 auto !important; - width: 304px; - padding-left: 30px; - - iframe { - border-radius: 5px !important; - width: 302px !important; - height: 76px !important; - } - } -} - -@media (max-height: 575px) { - #rc-imageselect, - .g-recaptcha-style, - .h-captcha-style { - transform: scale(.77); - transform-origin: 0 0; - } -} - -.user.activate, -.user.forgot.password, -.user.reset.password, -.user.link-account, -.user.signin, -.user.signup { - @input-padding: 200px; - #create-page-form(); - - form { - width: 700px !important; - - .header { - padding-left: 0 !important; - text-align: center; - } - - .inline.field > label { - width: @input-padding; - } - - .inline.field > label, - input { - @media @mediaSm { - width: 100% !important; - } - } - - input[type="number"] { - -moz-appearance: textfield; - } - - input::-webkit-outer-spin-button, - input::-webkit-inner-spin-button { - -webkit-appearance: none; - margin: 0; - } - } -} - -.user.signin.webauthn-prompt { - margin-top: 15px; -} - -.repository { - &.new.repo, - &.new.migrate, - &.new.fork { - #create-page-form(); - - form { - .dropdown .text { - margin-right: 0 !important; - } - - .header { - padding-left: 0 !important; - text-align: center; - } - - .selection.dropdown { - vertical-align: middle; - width: 50% !important; - } - - @media @mediaSm { - label, - input, - .selection.dropdown { - width: 100% !important; - } - - .field button, - .field a { - margin-bottom: 1em; - width: 100%; - } - } - } - } - - &.new.repo { - .ui.form { - @media @mediaMdAndUp { - #auto-init { - margin-left: @create-page-form-input-padding+15px; - } - } - - .selection.dropdown:not(.owner) { - width: 50% !important; - - @media @mediaSm { - width: 100% !important; - } - } - } - } -} - -.new.webhook { - form { - .help { - margin-left: 25px; - } - } - - .events.fields { - .column { - padding-left: 40px; - } - } -} - -.githook { - textarea { - font-family: var(--fonts-monospace); - } -} - -.new.org .ui.form { - @media @mediaSm { - .field button, - .field a { - margin-bottom: 1em; - width: 100%; - } - - .field input { - width: 100% !important; - } - } -} diff --git a/web_src/less/_home.less b/web_src/less/_home.less deleted file mode 100644 index fb31bedfa9..0000000000 --- a/web_src/less/_home.less +++ /dev/null @@ -1,61 +0,0 @@ -.home { - .logo { - max-width: 220px; - } - - .hero { - @media @mediaSm { - h1 { - font-size: 3.5em; - } - - h2 { - font-size: 2em; - } - } - - @media @mediaMdAndUp { - h1 { - font-size: 5.5em; - } - - h2 { - font-size: 3em; - } - } - - .svg { - color: var(--color-green); - height: 40px; - width: 50px; - vertical-align: bottom; - } - - &.header { - font-size: 20px; - } - } - - p.large { - font-size: 16px; - } - - .stackable { - padding-top: 30px; - } - - a { - color: var(--color-green); - } -} - -footer { - .ui.container .left, - .ui.container .right { - @media (max-width: 880px) { - display: block; - text-align: center; - float: none; - } - } -} diff --git a/web_src/less/_install.less b/web_src/less/_install.less deleted file mode 100644 index 026a76fbba..0000000000 --- a/web_src/less/_install.less +++ /dev/null @@ -1,72 +0,0 @@ -.page-content.install { - padding-top: 45px; - - form.ui.form { - @input-padding: 30%; - - .inline.field > label { - text-align: right; - width: @input-padding; - padding-right: 10px; - margin-right: 0; - } - - .inline.field > .ui.checkbox:first-child { - margin-left: @input-padding; - padding-left: 5px; - label { - width: auto; - } - } - - .title { - margin-left: @input-padding; - padding-left: 5px; - } - - input { - width: 60%; - } - - details.optional.field { - &[open] { - border-bottom: 1px solid var(--color-secondary); - padding-bottom: 10px; - - summary { - margin-bottom: 10px; - } - } - - * { - box-sizing: border-box; - } - } - - .field { - text-align: left; - - .help { - margin-left: @input-padding; - padding-left: 5px; - width: 60%; - } - - } - } - - .ui { - .reinstall-message { - width: 70%; - margin: 20px auto; - color: var(--color-red); - text-align: left; - font-weight: bold; - } - .reinstall-confirm { - width: 70%; - text-align: left; - margin: 10px auto; - } - } -} diff --git a/web_src/less/_organization.less b/web_src/less/_organization.less deleted file mode 100644 index ae406f021a..0000000000 --- a/web_src/less/_organization.less +++ /dev/null @@ -1,200 +0,0 @@ -.organization { - .head { - .ui.header { - .text { - vertical-align: middle; - font-size: 1.6rem; - margin-left: 15px; - } - .org-visibility .label { - margin-left: 5px; - margin-top: 5px; - } - .ui.right { - margin-top: 5px; - } - } - } - - .ui.secondary.stackable.pointing.menu { - flex-wrap: wrap; - margin-top: 5px; - margin-bottom: 10px; - } - - &.new.org { - #create-page-form(); - - form { - .header { - padding-left: 0 !important; - text-align: center; - } - } - } - - &.options { - input { - min-width: 300px; - } - } - - &.profile { - .org-avatar { - width: 100px; - height: 100px; - margin-right: 15px; - } - - #org-info { - overflow-wrap: anywhere; - - .ui.header { - display: flex; - align-items: center; - font-size: 36px; - margin-bottom: 0; - .org-visibility .label { - margin-left: 5px; - margin-top: 2px; - } - } - - .desc { - font-size: 16px; - margin-bottom: 10px; - } - - .meta { - .item { - display: inline-block; - margin-right: 10px; - - .icon { - margin-right: 5px; - } - } - } - } - - .ui.top.header { - .ui.right { - margin-top: 0; - } - } - - .teams { - .item { - padding: 10px 15px; - } - } - } - - &.teams, - &.profile { - .members { - a:hover { - text-decoration: none; - } - - .ui.avatar { - width: 48px; - height: 48px; - margin-right: 5px; - margin-bottom: 5px; - } - } - } - - &.invite { - #invite-box { - margin: 50px auto auto; - width: 500px !important; - - #search-user-box { - input { - margin-left: 0; - width: 300px; - } - } - - .ui.button { - margin-left: 5px; - margin-top: -3px; - } - } - - .ui.avatar { - width: 100%; - height: 100%; - } - } - - &.members { - .list { - .item { - margin-left: 0; - margin-right: 0; - border-bottom: 1px solid var(--color-secondary); - - .ui.avatar { - width: 48px; - height: auto; - margin-right: 1rem; - align-self: flex-start; - } - - .meta { - line-height: 24px; - word-break: break-word; - min-width: 2em; - } - } - } - } - - &.teams { - .detail { - .item { - padding: 10px 15px; - - &:not(:last-child) { - border-bottom: 1px solid var(--color-secondary); - } - } - } - - .repositories, - .members { - .item { - padding: 10px 20px; - line-height: 32px; - - &:not(:last-child) { - border-bottom: 1px solid var(--color-secondary); - } - - .button { - padding: 9px 10px; - } - } - } - - #add-repo-form, - #repo-multiple-form, - #add-member-form { - input { - margin-left: 0; - } - - .ui.button { - margin-left: 5px; - margin-top: -3px; - } - } - - #repo-top-segment { - height: 60px; - } - } -} diff --git a/web_src/less/_package.less b/web_src/less/_package.less deleted file mode 100644 index f4a07a1889..0000000000 --- a/web_src/less/_package.less +++ /dev/null @@ -1,9 +0,0 @@ -.container-labels { - td:nth-child(1) { - vertical-align: top; - } - - td:nth-child(2) { - overflow-wrap: anywhere; - } -} diff --git a/web_src/less/_repository.less b/web_src/less/_repository.less deleted file mode 100644 index c842c4ca65..0000000000 --- a/web_src/less/_repository.less +++ /dev/null @@ -1,3605 +0,0 @@ -.repository { - .repo-header { - .ui.compact.menu { - margin-left: 1rem; - } - - .ui.header { - margin-top: 0; - } - - .fork-flag { - font-size: 12px; - margin-top: 2px; - } - - .repo-buttons .svg { - margin: 0 .42857143em 0 -.21428571em; - } - - .button { - margin-top: 2px; - margin-bottom: 2px; - } - } - - .tabs { - .navbar { - justify-content: initial; - } - } - - .navbar { - display: flex; - justify-content: space-between; - - .ui.label { - margin-left: 7px; - padding: 3px 5px; - } - } - - .owner.dropdown { - min-width: 40% !important; - } - - .unicode-escaped .escaped-code-point { - &[data-escaped]::before { - visibility: visible; - content: attr(data-escaped); - font-family: var(--fonts-monospace); - color: var(--color-red); - } - - .char { - display: none; - } - } - - .broken-code-point { - font-family: var(--fonts-monospace); - color: var(--color-blue); - } - - .unicode-escaped .ambiguous-code-point { - border: 1px var(--color-yellow) solid; - } - - .metas { - .menu { - overflow-x: auto; - max-height: 500px; - } - - .ui.list { - &.assignees .icon { - line-height: 2em; - } - - &.assignees .teamavatar { - margin-top: .125rem; - margin-left: 6.75px; - margin-right: 8.75px; - } - - .dependency { - padding: 0; - white-space: nowrap; - } - - .title { - max-width: 200px; - overflow: hidden; - text-overflow: ellipsis; - } - - @media @mediaLgAndDown { - .title { - max-width: 150px; - } - } - - @media (max-width: 1000px) { - .title { - max-width: 100px; - } - } - } - - #deadlineForm input { - width: 12.8rem; - border-radius: 4px 0 0 4px; - border-right: 0; - white-space: nowrap; - } - } - - .header-wrapper { - background-color: var(--color-navbar); - - .ui.tabs.divider { - border-bottom: 0; - } - - .ui.tabular .svg { - margin-right: 5px; - } - } - - .filter.menu { - &.labels { - .label-filter .menu .info { - display: inline-block; - padding: .5rem .25rem; - border-bottom: 1px solid var(--color-secondary); - font-size: 12px; - width: 100%; - white-space: nowrap; - text-align: center; - - code { - border: 1px solid var(--color-secondary); - border-radius: 3px; - padding: 1px 2px; - font-size: 11px; - } - } - } - - .menu { - max-height: 500px; - overflow-x: auto; - right: 0 !important; - left: auto !important; - } - } - - .select-label { - .desc { - padding-left: 23px; - } - } - - .ui.tabs { - &.container { - margin-top: 14px; - margin-bottom: 0; - - .ui.menu { - border-bottom: 0; - } - } - - &.divider { - margin-top: 0; - margin-bottom: 20px; - } - } - - #clone-panel { - #repo-clone-url { - width: 320px; - - @media @mediaMd { - width: 200px; - } - @media @mediaSm { - width: 200px; - } - } - - #repo-clone-https, - #repo-clone-ssh { - border-right: none; - } - - #more-btn { - border-left: none; - } - - button:first-of-type { - border-radius: var(--border-radius) 0 0 var(--border-radius) !important; - } - - button:last-of-type { - border-radius: 0 var(--border-radius) var(--border-radius) 0 !important; - } - - .dropdown .menu { - right: 0 !important; - left: auto !important; - } - } - - &.file.list { - .repo-description { - display: flex; - justify-content: space-between; - align-items: center; - } - - #repo-desc { - font-size: 1.2em; - } - - .repo-path { - - .section, - .divider { - display: inline; - } - } - - #repo-files-table { - table-layout: fixed; - - thead { - th { - padding-top: 8px; - padding-bottom: 5px; - font-weight: normal; - } - - .ui.avatar { - margin-bottom: 5px; - } - } - - tbody { - .svg { - margin-left: 3px; - margin-right: 5px; - - &.octicon-reply { - margin-right: 10px; - } - - &.octicon-file-directory-fill, - &.octicon-file-submodule { - color: var(--color-primary); - } - - &.octicon-file, - &.octicon-file-symlink-file { - color: var(--color-secondary-dark-7); - } - } - } - - td { - padding-top: 0; - padding-bottom: 0; - overflow: initial; - - &.name { - @media @mediaXl { - max-width: 150px; - } - @media @mediaLg { - max-width: 200px; - } - @media @mediaMd { - max-width: 300px; - } - width: 33%; - - max-width: calc(100vw - 140px); - } - - &.message { - color: var(--color-text-light-1); - - @media @mediaXl { - max-width: 400px; - } - @media @mediaLg { - max-width: 350px; - } - @media @mediaMd { - max-width: 250px; - } - width: 66%; - } - - &.age { - width: 120px; - color: var(--color-text-light-1); - } - - .truncate { - display: inline-block; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - width: 100%; - padding-top: 8px; - padding-bottom: 8px; - } - - a { - padding-top: 8px; - padding-bottom: 8px; - } - - .at { - margin-left: 3px; - margin-right: 3px; - } - - > * { - vertical-align: middle; - } - } - - td.message .isSigned { - cursor: default; - } - - tr:last-of-type { - td:first-child { - border-bottom-left-radius: var(--border-radius); - } - - td:last-child { - border-bottom-right-radius: var(--border-radius); - } - } - - tr:hover { - background-color: var(--color-hover); - } - - tr.has-parent a { - display: inline-block; - padding-top: 8px; - padding-bottom: 8px; - width: calc(100% - 1.25rem); - } - } - - .non-diff-file-content { - .header { - .icon { - font-size: 1em; - } - - .small.icon { - font-size: .75em; - } - - .tiny.icon { - font-size: .5em; - } - - .file-actions { - .btn-octicon { - line-height: 1; - padding: 10px 8px; - vertical-align: middle; - color: var(--color-text); - } - - .btn-octicon:hover { - color: var(--color-primary); - } - - .btn-octicon-danger:hover { - color: var(--color-red); - } - - .btn-octicon.disabled { - color: inherit; - opacity: var(--opacity-disabled); - cursor: default; - } - } - } - - .view-raw { - padding: 5px; - - > * { - max-width: 100%; - border: 1px solid var(--color-secondary); - } - - img { - margin: 1rem 0; - border-radius: 0; - object-fit: contain; - } - - img[src$='.svg' i] { - max-height: 600px !important; - max-width: 600px !important; - } - } - - .plain-text { - padding: 1em 2em; - - pre { - word-break: break-word; - white-space: pre-wrap; - } - } - - .csv { - overflow-x: auto; - padding: 0 !important; - } - - pre { - overflow: auto; - } - - .asciicast { - padding: 5px !important; - } - } - - .sidebar { - padding-left: 0; - - .svg { - width: 16px; - } - } - } - - &.file.editor { - .treepath { - width: 100%; - - input { - vertical-align: middle; - box-shadow: rgba(0, 0, 0, .0745098) 0 1px 2px inset; - width: inherit; - padding: 7px 8px; - margin-right: 5px; - } - } - - .tabular.menu { - .svg { - margin-right: 5px; - } - } - - .commit-form-wrapper { - padding-left: 64px; - - .commit-avatar { - float: left; - margin-left: -64px; - width: 3em; - height: auto; - } - - .commit-form { - position: relative; - padding: 15px; - margin-bottom: 10px; - border: 1px solid var(--color-secondary); - background: var(--color-box-body); - border-radius: 3px; - #avatar-arrow(); - - &::after { - border-right-color: var(--color-box-body); - } - - .quick-pull-choice { - .branch-name { - display: inline-block; - padding: 2px 4px; - font: 12px var(--fonts-monospace); - color: var(--color-text); - background: var(--color-secondary); - border-radius: 3px; - margin: 0 2px; - } - - .new-branch-name-input { - position: relative; - margin-left: 25px; - - input { - width: 240px !important; - padding-left: 26px !important; - } - } - - .octicon-git-branch { - position: absolute; - top: 9px; - left: 10px; - color: var(--color-grey); - } - } - } - } - } - - &.options { - #interval { - width: 100px !important; - min-width: 100px; - } - - .danger { - .item { - padding: 20px 15px; - } - - .ui.divider { - margin: 0; - } - } - } - - @comment-avatar-width: 3em; - - .comment textarea { - max-height: none !important; - } - - &.new.issue { - .comment.form { - .comment { - .avatar { - width: @comment-avatar-width; - } - } - - .content { - margin-left: 4em; - #avatar-arrow(); - - &::after { - border-right-color: var(--color-box-body); - } - - .markup { - font-size: 14px; - } - } - - .metas { - min-width: 220px; - - .filter.menu { - max-height: 500px; - overflow-x: auto; - } - } - - } - } - - &.view.issue { - .instruct-toggle { - display: inline-block; - } - - .title { - padding-bottom: 0 !important; - - .issue-title { - margin-bottom: .5rem; - - &.edit-active { - display: flex; - align-items: center; - - h1 { - display: flex; - width: 100%; - } - - @media @mediaSm { - flex-direction: column; - - h1 { - margin-right: 0; - margin-bottom: 1rem; - padding-right: 0; - - .ui.input input { - width: calc(100% - 2rem); - } - } - - .edit-buttons { - padding-bottom: 1rem; - width: 100%; - - .button { - width: 100%; - margin-right: .5rem; - - &:last-child { - margin-right: 0; - } - } - } - } - } - - h1 { - font-weight: 300; - font-size: 2.3rem; - margin: 0; - padding-right: .5rem; - - .ui.input { - font-size: .5em; - width: 100%; - - input { - font-size: 1.5em; - padding: 6px 1rem; - } - } - } - - .edit-button { - float: right; - padding-left: 1rem; - } - - .edit-buttons { - display: flex; - } - - .index { - color: var(--color-text-light-2); - } - - .label { - margin-right: 10px; - } - - .edit-zone { - margin-top: 10px; - } - } - } - - .pull-desc { - code { - color: var(--color-primary); - } - a[data-clipboard-text] { - cursor: pointer; - svg { - vertical-align: middle; - position: relative; - top: -2px; - right: 1px; - } - } - } - - .pull { - &.tabular.menu { - margin-bottom: 1rem; - - .svg { - margin-right: 5px; - } - } - - .merge.box { - .avatar { - margin-left: 10px; - margin-top: 10px; - } - - .branch-update.grid { - .row { - padding-bottom: 1rem; - - .icon { - margin-top: 1.1rem; - } - } - } - } - - .review-item { - display: flex; - justify-content: space-between; - align-items: center; - - .review-item-left, - .review-item-right { - display: flex; - align-items: center; - } - - .text { - margin: .3em 0 .5em .5em; - } - - .type-icon { - align-self: flex-start; - margin-right: 1em; - - i { - line-height: 1.8em; - } - } - - .divider { - margin: .5rem 0; - } - - .review-content { - padding: 1em 0 1em 3.8em; - } - } - } - - .comment-list { - &:not(.prevent-before-timeline)::before { - display: block; - content: ""; - position: absolute; - margin-top: 12px; - margin-bottom: 14px; - top: 0; - bottom: 0; - left: 96px; - width: 2px; - background-color: var(--color-timeline); - z-index: -1; - } - - .timeline { - position: relative; - display: block; - margin-left: 40px; - padding-left: 16px; - - &::before { //ciara - display: block; - content: ""; - position: absolute; - margin-top: 12px; - margin-bottom: 14px; - top: 0; - bottom: 0; - left: 30px; - width: 2px; - background-color: var(--color-timeline); - z-index: -1; - } - } - - .timeline-item, - .timeline-item-group { - padding: 12px 0; - } - - .timeline-item-group { - .timeline-item { - padding-top: 8px; - padding-bottom: 8px; - } - } - - .timeline-item { - margin-left: 16px; - position: relative; - - .timeline-avatar { - position: absolute; - left: -68px; - - img { - width: 40px !important; - height: 40px !important; - } - } - - /* Don't show the mobile oriented avatar ".inline-timeline-avatar" on desktop. Desktop uses the avatar with class ".timeline-avatar" */ - .inline-timeline-avatar { - display: none; - } - - img.avatar, - .avatar img { - width: 20px; - height: 20px; - vertical-align: middle; - } - - &:first-child:not(.commit) { - padding-top: 0 !important; - } - - &:last-child:not(.commit) { - padding-bottom: 0 !important; - } - - .badge.badge-commit { - border-color: transparent; - background: radial-gradient(var(--color-body) 40%, transparent 40%) no-repeat; - } - - .badge { - width: 34px; - height: 34px; - background-color: var(--color-timeline); - border-radius: 50%; - display: flex; - float: left; - margin-left: -33px; - margin-right: 8px; - color: var(--color-text); - align-items: center; - justify-content: center; - - .svg { - width: 22px; - height: 22px; - padding: 3px; - - &.octicon-comment { - margin-top: 2px; - } - } - } - - &.comment > .content { - margin-left: -16px; - } - - &.event > .text { - line-height: 32px; - vertical-align: middle; - } - - &.commits-list { - padding-left: 15px; - padding-top: 0; - - .singular-commit { - line-height: 34px; /* this must be same as .badge height, to avoid overflow */ - clear: both; // reset the "float right shabox", in the future, use flexbox instead - - > img.avatar, - > .avatar img { - position: relative; - top: -2px; - } - - .shabox { - .sha.label { - margin: 0; - border: 1px solid var(--color-light-border); - - &.isSigned.isWarning { - border: 1px solid var(--color-red-badge); - background: var(--color-red-badge-bg); - - .shortsha { - display: inline-block; - padding-top: 1px; - } - - &:hover { - background: var(--color-red-badge-hover-bg) !important; - } - } - - &.isSigned.isVerified { - border: 1px solid var(--color-green-badge); - background: var(--color-green-badge-bg); - - .shortsha { - display: inline-block; - padding-top: 1px; - } - - &:hover { - background: var(--color-green-badge-hover-bg) !important; - } - } - - &.isSigned.isVerifiedUntrusted { - border: 1px solid var(--color-yellow-badge); - background: var(--color-yellow-badge-bg); - - .shortsha { - display: inline-block; - padding-top: 1px; - } - - &:hover { - background: var(--color-yellow-badge-hover-bg) !important; - } - } - - &.isSigned.isVerifiedUnmatched { - border: 1px solid var(--color-orange-badge); - background: var(--color-orange-badge-bg); - - .shortsha { - display: inline-block; - padding-top: 1px; - } - - &:hover { - background: var(--color-orange-badge-hover-bg) !important; - } - } - } - } - } - } - - &.event > .commit-status-link { - float: right; - margin-right: 8px; - margin-top: 4px; - } - - .comparebox { - line-height: 32px; - vertical-align: middle; - - .compare.label { - font-size: 1rem; - margin: 0; - border: 1px solid var(--color-light-border); - } - } - - @media @mediaSm { - .ui.segments { - margin-left: -2rem; - } - } - } - - .ui.comments { - max-width: 100%; - - .avatar { - margin-right: .5rem; - } - } - - .comment { - > .content { - > div:first-child { - border-top-left-radius: 4px; - border-top-right-radius: 4px; - } - - > div:last-child { - border-bottom-left-radius: 4px; - border-bottom-right-radius: 4px; - } - } - - .comment-container { - border: 1px solid var(--color-secondary); - border-radius: var(--border-radius); - } - - .content { - @media @mediaSm { - .form .button { - width: 100%; - margin: 0; - - &:not(:last-child) { - margin-bottom: 1rem; - } - } - } - } - - .merge-section { - background-color: var(--color-box-body); - - .item-section { - display: flex; - align-items: center; - justify-content: space-between; - padding: 0; - margin-top: -.25rem; - margin-bottom: -.25rem; - } - - @media @mediaSm { - .item-section { - align-items: flex-start; - flex-direction: column; - } - } - - .divider { - margin-left: -1rem; - margin-right: -1rem; - } - - &.no-header { - #avatar-arrow(); - - &::after { - border-right-color: var(--color-box-body); - } - } - } - - .markup { - font-size: 14px; - } - - .no-content { - color: var(--color-text-light-2); - font-style: italic; - } - - .ui.form { - .field { - &:first-child { - clear: none; - } - - &.footer { - overflow: hidden; - } - - .tab.markup { - min-height: 5rem; - } - } - - textarea { - height: 200px; - font-family: var(--fonts-monospace); - } - } - - .edit.buttons { - margin-top: 10px; - } - } - - .code-comment { - border: 1px solid transparent; - padding: .25rem .5rem; - margin: 0; - - .content { - border: none !important; - } - - .comment-header { - background: transparent; - border-bottom: 0 !important; - padding: 0 !important; - - &::after, - &::before { - display: none; - } - } - - .comment-content { - margin-left: 36px; - } - } - - .code-comment, - .comment { - img.avatar { - width: 28px; - height: 28px; - } - } - - .comment-code-cloud { - .segment.reactions { - margin-top: 16px !important; - margin-bottom: -8px !important; - border-top: none !important; - - .ui.label { - border: 1px solid; - padding: 6px 10px !important; - margin: 0 2px; - border-radius: var(--border-radius); - border-color: var(--color-secondary-dark-1) !important; - } - - .ui.label.basic.primary { - background-color: var(--color-reaction-active-bg) !important; - border-color: var(--color-primary-alpha-80) !important; - } - } - - button.comment-form-reply { - margin: 0; - } - } - - .event { - padding-left: 15px; - - .detail { - margin-top: 4px; - margin-left: 14px; - - .svg { - margin-right: 2px; - } - } - - .segments { - box-shadow: none; - } - } - - @media @mediaSm { - padding: 1rem 0 !important; // Important is required here to override existing fomantic styles. - } - } - - .ui.depending { - .item.is-closed { - .title { - text-decoration: line-through; - } - } - } - } - - .comment.form { - .ui.comments { - margin-top: -12px; - max-width: 100%; - } - - .content { - .field:first-child { - clear: none; - } - - .form { - #avatar-arrow(); - - &::after { - border-right-color: var(--color-box-body); - } - } - - textarea { - height: 200px; - font-family: var(--fonts-monospace); - } - - .CodeMirror-scroll { - max-height: 85vh; - } - } - } - - .milestone.list { - list-style: none; - padding-top: 15px; - - > .item { - padding-top: 10px; - padding-bottom: 10px; - border-bottom: 1px dashed var(--color-secondary); - - progress { - width: 200px; - height: 16px; - } - - .meta { - color: var(--color-text-light-2); - padding-top: 5px; - - .issue-stats .svg { - padding-left: 5px; - } - - .overdue { - color: var(--color-red); - } - } - - .operate { - margin-top: -15px; - - > a { - font-size: 15px; - padding-top: 5px; - padding-right: 10px; - color: var(--color-text-light-2); - - &:hover { - color: var(--color-text); - } - } - } - - .content { - padding-top: 10px; - } - } - } - - &.new.milestone { - textarea { - height: 200px; - } - } - - &.compare.pull { - .show-form-container { - text-align: left; - } - - .choose.branch { - .svg { - margin-right: 10px; - } - } - - .comment.form { - .content { - #avatar-arrow(); - - &::after { - border-right-color: var(--color-box-body); - } - } - } - - .pullrequest-form { - margin-bottom: 1.5rem; - } - - .markup { - font-size: 14px; - } - - .title { - .issue-title { - margin-bottom: .5rem; - .index { - color: var(--color-text-light-2); - } - } - } - } - - .filter.dropdown .menu { - margin-top: 1px !important; - } - - &.branches { - .commit-divergence { - .bar-group { - position: relative; - float: left; - padding-bottom: 6px; - width: 50%; - max-width: 90px; - - &:last-child { - border-left: 1px solid var(--color-secondary-dark-2); - } - } - - .count { - margin: 0 3px; - - &.count-ahead { - text-align: left; - } - - &.count-behind { - text-align: right; - } - } - - .bar { - height: 4px; - position: absolute; - background-color: var(--color-secondary-dark-2); - - &.bar-behind { - right: 0; - } - - &.bar-ahead { - left: 0; - } - } - } - } - - &.commits { - .header { - .search { - input { - font-weight: normal; - padding: 5px 10px; - } - } - } - } - - #commits-table { - thead { - th:first-of-type { - padding-left: 15px; - } - - .sha { - &td { - text-align: center; - } - - width: 200px; - } - } - - td.sha .sha.label { - margin: 0; - } - - td.message { - text-overflow: unset; - } - - &.ui.basic.striped.table tbody tr:nth-child(2n) { - background-color: rgba(0, 0, 0, .02) !important; - } - } - - #commits-table td.sha .sha.label, - #repo-files-table .sha.label, - #rev-list .sha.label, - .timeline-item.commits-list .singular-commit .sha.label { - border: 1px solid var(--color-light-border); - - .ui.signature.avatar { - height: 16px; - margin-bottom: 0; - width: 16px; - } - - .detail.icon { - background: var(--color-light); - margin: -6px -10px -4px 0; - padding: 5px 4px 5px 6px; - border-left: 1px solid var(--color-light-border); - border-top: 0; - border-right: 0; - border-bottom: 0; - border-top-left-radius: 0; - border-bottom-left-radius: 0; - - img { - margin-right: 0; - } - - .svg { - margin: 0 .25em 0 0; - } - - > div { - display: flex; - align-items: center; - } - } - - &.isSigned.isWarning { - border: 1px solid var(--color-red-badge); - background: var(--color-red-badge-bg); - - .shortsha { - display: inline-block; - padding-top: 1px; - } - - .detail.icon { - border-left: 1px solid var(--color-red-badge); - color: var(--color-red-badge); - } - - &:hover { - background: var(--color-red-badge-hover-bg) !important; - } - } - - &.isSigned.isVerified { - border: 1px solid var(--color-green-badge); - background: var(--color-green-badge-bg); - - .shortsha { - display: inline-block; - padding-top: 1px; - } - - .detail.icon { - border-left: 1px solid var(--color-green-badge); - color: var(--color-green-badge); - } - - &:hover { - background: var(--color-green-badge-hover-bg) !important; - } - } - - &.isSigned.isVerifiedUntrusted { - border: 1px solid var(--color-yellow-badge); - background: var(--color-yellow-badge-bg); - - .shortsha { - display: inline-block; - padding-top: 1px; - } - - .detail.icon { - border-left: 1px solid var(--color-yellow-badge); - color: var(--color-yellow-badge); - } - - &:hover { - background: var(--color-yellow-badge-hover-bg) !important; - } - } - - &.isSigned.isVerifiedUnmatched { - border: 1px solid var(--color-orange-badge); - background: var(--color-orange-badge-bg); - - .shortsha { - display: inline-block; - padding-top: 1px; - } - - .detail.icon { - border-left: 1px solid var(--color-orange-badge); - color: var(--color-orange-badge); - } - - &:hover { - background: var(--color-orange-badge-hover-bg) !important; - } - } - } - - .data-table { - width: 100%; - - tr { - border-top: 0; - } - - td, - th { - padding: 5px !important; - overflow: hidden; - font-size: 12px; - text-align: left; - white-space: nowrap; - border: 1px solid var(--color-secondary); - } - - td { - white-space: pre-line; - } - - th { - font-weight: 600; - background: var(--color-box-header); - border-top: 0; - } - - td.added, - th.added, - tr.added { - background-color: var(--color-diff-added-row-bg) !important; - } - - td.removed, - th.removed, - tr.removed { - background-color: var(--color-diff-removed-row-bg) !important; - } - - td.moved, - th.moved, - tr.moved { - background-color: var(--color-diff-moved-row-bg) !important; - } - - tbody.section { - border-top: 2px solid var(--color-secondary); - } - - .line-num { - &:extend(.unselectable); - width: 1%; - min-width: 50px; - font-family: monospace; - line-height: 20px; - color: var(--color-secondary-dark-2); - white-space: nowrap; - vertical-align: top; - cursor: pointer; - text-align: right; - background: var(--color-body); - border: 0; - } - } - - .diff-detail-box { - padding: 7px 0; - background: var(--color-body); - line-height: 30px; - - @media @mediaMdAndDown { - flex-direction: column; - align-items: flex-start; - } - - @media (max-width: 480px) { - flex-wrap: wrap; - } - - &.sticky { - position: sticky; - top: 0; - z-index: 8; - border-bottom: 1px solid var(--color-secondary); - padding-left: 2px; - padding-right: 2px; - margin-left: -1px; - margin-right: -1px; - } - - > div::after { - clear: both; - content: ""; - display: block; - } - - .diff-detail-stats strong { - margin-left: .25rem; - margin-right: .25rem; - } - - // Because the translations contain the <strong> we need to style with nth-of-type - - .diff-detail-stats strong:nth-of-type(1) { - color: var(--color-yellow); - } - - .diff-detail-stats strong:nth-of-type(2) { - color: var(--color-green); - } - - .diff-detail-stats strong:nth-of-type(3) { - color: var(--color-red); - } - - .diff-detail-stats { - @media (max-width: 480px) { - font-size: 0; - line-height: 1.6rem; - - strong { - font-size: 1rem; - } - } - } - - .diff-detail-actions > * { - margin-right: 0; - } - - .diff-detail-actions > * + * { - margin-left: .25rem; - } - - .diff-detail-actions { - @media (max-width: 480px) { - padding-top: .25rem; - - .ui.button:not(.btn-submit) { - padding-left: .5rem; - padding-right: .5rem; - display: flex; - flex-wrap: wrap; - justify-content: center; - text-align: center; - } - } - } - - span.status { - display: inline-block; - width: 12px; - height: 12px; - margin-right: 8px; - vertical-align: middle; - - &.modify { - background-color: var(--color-yellow); - } - - &.add { - background-color: var(--color-green); - } - - &.del { - background-color: var(--color-red); - } - - &.rename { - background-color: var(--color-teal); - } - } - .button { - padding: 8px 12px; - } - } - - .diff-box .header:not(.resolved-placeholder) { - display: flex; - align-items: center; - - .file { - min-width: 0; - .file-link { - max-width: fit-content; - display: -webkit-box; - -webkit-box-orient: vertical; - -webkit-line-clamp: 2; - overflow: hidden; - } - } - - .button { - padding: 8px 12px; - flex: 0 0 auto; - margin-top: -8px; - margin-bottom: -8px; - margin-right: 0; - } - } - - .diff-box .resolved-placeholder { - display: flex; - align-items: center; - - .button { - padding: 8px 12px; - } - } - - .diff-file-box { - .header { - background-color: var(--color-box-header); - } - - .file-body.file-code { - background: var(--color-code-bg); - - .lines-num { - &:extend(.unselectable); - text-align: right; - color: var(--color-text-light); - width: 1%; - min-width: 50px; - - span.fold { - display: block; - text-align: center; - } - } - } - - .code-diff { - font-size: 12px; - - td { - padding: 0 0 0 10px !important; - border-top: 0; - } - - .lines-num { - padding: 0 5px !important; - } - - .tag-code .lines-num, - .tag-code td { - padding: 0 !important; - } - - tbody { - tr { - td.halfwidth { - // halfwidth is used in split view - and in that case, 1% of each - width: 49%; - } - - td.center { - text-align: center; - } - - [data-line-num]::before { - content: attr(data-line-num); - text-align: right; - } - - .lines-type-marker { - &:extend(.unselectable); - width: 10px; - min-width: 10px; - } - - [data-type-marker]::before { - content: attr(data-type-marker); - text-align: right; - display: inline-block; - } - } - } - } - - .code-diff-split { - .tag-code .lines-code code.code-inner { - padding-left: 10px !important; - } - - table, - tbody { - width: 100%; - } - } - - &.file-content { - img { - max-width: 100%; - padding: 0; - border-radius: 0; - } - - img.emoji { - padding: 0; - } - - clear: right; - } - - .ui.bottom.attached.table.segment { - padding-top: 5px; - padding-bottom: 5px; - } - } - - .diff-stats { - clear: both; - margin-bottom: 5px; - max-height: 400px; - overflow: auto; - padding-left: 0; - - li { - list-style: none; - padding-bottom: 4px; - margin-bottom: 4px; - padding-left: 6px; - } - - li + li { - border-top: 1px solid var(--color-secondary); - } - } - - .repo-search-result { - padding-top: 10px; - padding-bottom: 10px; - - .lines-num a { - color: inherit; - } - } - - &.quickstart { - .guide { - .item { - padding: 1em; - - small { - font-weight: normal; - } - } - - .clone.button:first-child { - border-radius: var(--border-radius) 0 0 var(--border-radius); - } - - .ui.action.small.input { - width: 100%; - } - - #repo-clone-url { - border-radius: 0; - padding: 5px 10px; - font-size: 1.2em; - line-height: 1.4; - } - } - } - - &.release { - #release-list { - border-top: 1px solid var(--color-secondary); - margin-top: 20px; - padding-top: 15px; - padding-left: 0; - - .release-list-title { - font-size: 2rem; - font-weight: normal; - margin-top: -4px; - margin-bottom: 0; - } - - > li { - list-style: none; - - .meta, - .detail { - padding-top: 30px; - padding-bottom: 40px; - } - - .meta { - text-align: right; - position: relative; - - .label { - margin-right: 0; - } - - .commit { - display: block; - margin-top: 10px; - } - - .choose { - margin-top: 15px; - - .button { - margin-right: 0; - } - } - } - - .detail { - border-left: 2px solid var(--color-secondary); - - .author { - img { - margin-bottom: 3px; - } - } - - .download { - > a { - .svg { - margin-left: 5px; - margin-right: 5px; - } - } - - .list { - padding-left: 0; - - li { - list-style: none; - display: block; - padding: 8px; - border: 1px solid var(--color-secondary); - background: var(--color-light); - - a > .text.right { - margin-right: 5px; - } - } - - li + li { - border-top: 0; - } - - li:first-of-type { - border-radius: var(--border-radius) 0 0 var(--border-radius); - } - - li:last-of-type { - border-radius: 0 var(--border-radius) var(--border-radius) 0; - } - } - } - - .dot { - width: 10px; - height: 10px; - background-color: var(--color-secondary-dark-3); - z-index: 9; - position: absolute; - display: block; - left: -6px; - top: 40px; - border-radius: 100%; - border: 2.5px solid var(--color-body); - } - } - } - } - - #tags-table { - .tag { - padding: 8px 12px; - } - - .release-tag-name { - font-size: 18px; - font-weight: normal; - } - } - } - - &.new.release { - .target { - min-width: 500px; - - #tag-name { - margin-top: -4px; - } - - .at { - margin-left: -5px; - margin-right: 5px; - } - - .selection.dropdown { - padding-top: 10px; - padding-bottom: 10px; - } - } - - .prerelease.field { - margin-bottom: 0; - } - - .field { - - button, - input { - @media (max-width: 438px) { - width: 100%; - } - } - - button { - @media @mediaSm { - margin-bottom: 1em; - } - } - - .wrap_remove { - height: 38px; - } - - .attachment_edit { - width: 450px !important; - } - } - } - - &.forks { - .list { - margin-top: 0; - - .item { - padding-top: 10px; - padding-bottom: 10px; - border-bottom: 1px solid var(--color-secondary); - - .ui.avatar { - float: left; - margin-right: 5px; - } - - .link { - padding-top: 5px; - } - } - } - } - - &.packages { - .empty { - padding-top: 70px; - padding-bottom: 100px; - - .svg { - height: 48px; - } - } - - .file-size { - white-space: nowrap; - } - } - - &.wiki { - &.start { - .ui.segment { - padding-top: 70px; - padding-bottom: 100px; - - .svg { - height: 48px; - } - } - } - - &.new { - .ui.attached.tabular.menu.previewtabs { - margin-bottom: 15px; - } - } - - &.view { - > .markup { - padding: 15px 30px; - - h1, - h2, - h3, - h4, - h5, - h6 { - &:first-of-type { - margin-top: 0; - } - } - } - } - - .form .CodeMirror-scroll { - max-height: 85vh; - } - - @media @mediaSm { - .dividing.header .stackable.grid .button { - margin-top: 2px; - margin-bottom: 2px; - } - } - - @media @mediaSm { - #clone-panel #repo-clone-url { - width: 160px; - } - } - } - - &.settings { - &.collaboration { - .collaborator.list { - padding: 0; - - > .item { - margin: 0; - line-height: 2em; - - &:not(:last-child) { - border-bottom: 1px solid var(--color-secondary); - } - } - } - - #repo-collab-form { - #search-user-box { - .results { - left: 7px; - } - } - - .ui.button { - margin-left: 5px; - margin-top: -3px; - } - } - - #repo-collab-team-form { - #search-team-box { - .results { - left: 7px; - } - } - - .ui.button { - margin-left: 5px; - margin-top: -3px; - } - } - } - - &.branches { - .protected-branches { - .selection.dropdown { - width: 300px; - } - - .item { - border: 1px solid var(--color-secondary); - padding: 10px 15px; - - &:not(:last-child) { - border-bottom: 0; - } - } - } - - .branch-protection { - .help { - margin-left: 26px; - padding-top: 0; - } - - .fields { - margin-left: 20px; - display: block; - } - - .whitelist { - margin-left: 26px; - - .dropdown img { - display: inline-block; - } - } - } - } - - &.webhook { - .events { - .column { - padding-bottom: 0; - } - - .help { - font-size: 13px; - margin-left: 26px; - padding-top: 0; - } - } - } - } - - .ui.attached.isSigned.isWarning { - border-left: 1px solid var(--color-error-border); - border-right: 1px solid var(--color-error-border); - - &.top, - &.message { - border-top: 1px solid var(--color-error-border); - } - - &.message { - box-shadow: none; - background-color: var(--color-error-bg); - color: var(--color-error-text); - - .ui.text { - color: var(--color-error-text); - } - } - - &:last-child, - &.bottom { - border-bottom: 1px solid var(--color-error-border); - } - } - - .ui.attached.isSigned.isVerified { - border-left: 1px solid var(--color-success-border); - border-right: 1px solid var(--color-success-border); - - &.top, - &.message { - border-top: 1px solid var(--color-success-border); - } - - &.message { - box-shadow: none; - background-color: var(--color-success-bg); - color: var(--color-success-text); - - .pull-right { - color: var(--color-text); - } - - .ui.text { - color: var(--color-success-text); - } - } - - &:last-child, - &.bottom { - border-bottom: 1px solid var(--color-success-border); - } - } - - .ui.attached.isSigned.isVerifiedUntrusted, - .ui.attached.isSigned.isVerifiedUnmatched { - border-left: 1px solid var(--color-warning-border); - border-right: 1px solid var(--color-warning-border); - - &.top, - &.message { - border-top: 1px solid var(--color-warning-border); - } - - &.message { - box-shadow: none; - background-color: var(--color-warning-bg); - color: var(--color-warning-text); - - .ui.text { - color: var(--color-warning-text); - } - } - - &:last-child, - &.bottom { - border-bottom: 1px solid var(--color-warning-border); - } - } - - .ui.segment.sub-menu { - padding: 7px; - line-height: 0; - - .list { - width: 100%; - display: flex; - align-items: center; - - .item { - width: 100%; - color: var(--color-text); - - &:first-of-type { - border-radius: var(--border-radius) 0 0 var(--border-radius); - padding-left: .25rem; - } - - &:last-of-type { - border-radius: 0 var(--border-radius) var(--border-radius) 0; - padding-right: .25rem; - } - - a { - color: var(--color-text); - - &:hover { - color: var(--color-primary-light-2); - } - } - - &.active { - background: var(--color-secondary); - } - } - } - } - - .segment.reactions, - .select-reaction { - &.dropdown .menu { - right: 0 !important; - left: auto !important; - min-width: 15em; - - > .header { - margin: .75rem 0 .5rem; - } - - > .item { - float: left; - padding: .25rem !important; - margin: .25rem; - font-size: 1.5em; - width: 39px; - left: 13px; - border-radius: 6px; - display: flex; - justify-content: center; - align-items: center; - - img.emoji { - margin-right: 0; - } - } - - > .item:hover { - background: var(--color-primary); - } - } - } - - .segment.reactions { - padding: 0; - display: flex; - border: none !important; - border-top: 1px solid var(--color-secondary) !important; - width: 100% !important; - max-width: 100% !important; - margin: 0 !important; - - .ui.label { - max-height: 40px; - padding: 10px 18px !important; - display: flex !important; - align-items: center; - border: 0; - border-right: 1px solid; - border-radius: 0; - margin: 0; - font-size: 14px; - font-weight: normal; - border-color: var(--color-secondary) !important; - background: var(--color-reaction-bg); - - &.disabled { - cursor: default; - opacity: 1; - } - } - - .ui.label.basic { - color: var(--color-primary) !important; - } - - .ui.label.basic.primary { - background-color: var(--color-reaction-active-bg) !important; - border-color: var(--color-secondary) !important; - } - - .reaction-count { - margin-left: .5rem; - } - - .select-reaction { - display: flex; - align-items: center; - padding: 0 14px; - - &:not(.active) a { - display: none; - } - } - - &:hover .select-reaction a { - display: block; - } - } - - .ui.fluid.action.input { - .ui.search.action.input { - flex: auto; - } - } - - .repository-summary { - box-shadow: none !important; - - .segment.language-stats-details, - .segment.repository-summary { - border-top: none; - background: none; - } - - .segment.language-stats-details .item { - white-space: nowrap; - } - - .segment.language-stats { - &:extend(.unselectable); - padding: 0; - height: 11px; - display: flex; - white-space: nowrap; - width: 100%; - border-radius: 0; - - @media @mediaSm { - display: none; - } - - .bar { - white-space: nowrap; - border: 0; - padding: 0; - margin: 0; - height: 100%; - } - } - } - - .repository-menu { - padding: 0 !important; - } - - .repository-menu .item { - padding-top: 9px !important; - padding-bottom: 9px !important; - } -} - -// End of .repository - -#cite-repo-modal { - #citation-panel { - width: 500px; - - @media @mediaSm { - width: 100%; - } - - input { - border-radius: 0; - padding: 5px 10px; - width: 50%; - line-height: 1.4; - } - - .citation.button { - font-size: 13px; - padding: 7.5px 5px; - } - - #citation-copy-content { - border-radius: 0; - padding: 5px 10px; - font-size: 1.2em; - line-height: 1.4; - } - - #citation-copy-apa, - #citation-copy-bibtex { - border-right: none; - } - - #goto-citation-btn { - border-left: none; - } - - >:first-child { - border-radius: var(--border-radius) 0 0 var(--border-radius) !important; - } - - >:last-child { - border-radius: 0 var(--border-radius) var(--border-radius) 0 !important; - } - - .icon.button { - padding: 0 10px; - } - } -} - -&.user-cards { - .list { - padding: 0; - display: flex; - flex-wrap: wrap; - - .item { - list-style: none; - width: 32%; - margin: 10px 10px 10px 0; - padding-bottom: 14px; - float: left; - - .avatar { - width: 48px; - height: 48px; - float: left; - display: block; - margin-right: 10px; - } - - .name { - margin-top: 0; - margin-bottom: 0; - font-weight: normal; - } - - .meta { - margin-top: 5px; - } - } - } -} - -#search-repo-box, -#search-user-box { - .results { - .result { - img { - float: left; - margin-right: 8px; - width: 2em; - height: 2em; - } - - .content { - margin: 6px 0; - } - } - } -} - -#search-team-box { - .results { - .result { - .content { - margin: 6px 0; - } - } - } -} - -#issue-actions { - margin-top: -1rem !important; // counteract padding from Semantic -} - -.ui.menu .item > img:not(.ui) { - width: auto; -} - -.page.buttons { - padding-top: 15px; -} - -.commit-header-row { - min-height: 50px !important; - padding-top: 0 !important; - padding-bottom: 0 !important; -} - -.settings { - .content { - > .header, - .segment { - box-shadow: 0 1px 2px 0 var(--color-box-header); - } - } - - &.webhooks .list > .item:not(:first-child), - &.githooks .list > .item:not(:first-child), - &.runners .list > .item:not(:first-child) { - padding: .25rem 1rem; - margin: 12px -1rem -1rem; - } - - .list { - > .item { - &:not(:first-child) { - border-top: 1px solid var(--color-secondary); - padding: 1rem; - margin: 16px -1rem -1rem; - } - - > .svg { - display: table-cell; - } - - > .svg + .content { - display: table-cell; - padding: 0 0 0 .5em; - vertical-align: top; - } - - .info { - margin-top: 10px; - - .tab.segment { - border: 0; - padding: 10px 0 0; - } - } - } - - &.key { - .meta { - padding-top: 5px; - color: var(--color-text-light-2); - } - } - - &.email { - > .item:not(:first-child) { - min-height: 60px; - } - } - - &.collaborator { - > .item { - padding: 0; - } - } - } -} - -.ui.vertical.menu { - .header.item { - font-size: 1.1em; - background: var(--color-box-header); - } -} - -.comment:target .comment-container { - border-color: var(--color-primary) !important; - box-shadow: 0 0 0 3px var(--color-primary-alpha-30) !important; -} - -.comment:target .header::before { - border-right-color: var(--color-primary) !important; - filter: drop-shadow(-3px 0 0 var(--color-primary-alpha-30)) !important; -} - -.code-comment:target { - border-color: var(--color-primary) !important; - border-radius: var(--border-radius) !important; - box-shadow: 0 0 0 3px var(--color-primary-alpha-30) !important; -} - -.code-comment:target .content { - box-shadow: none !important; -} - -.comment-header { - #avatar-arrow(); - border: none !important; - background: var(--color-box-header); - border-bottom: 1px solid var(--color-secondary) !important; - font-weight: normal !important; - padding: .5rem 1rem; - margin: 0 !important; - position: relative; - color: var(--color-text-light-2); - min-height: 41px; - background-color: var(--color-box-header); - display: flex; - justify-content: space-between; - align-items: center; - - &.arrow-top::before, - &.arrow-top::after { - transform: rotate(90deg); - } - - &.arrow-top::before { - top: -9px; - left: 6px; - } - - &.arrow-top::after { - top: -8px; - left: 7px; - } - - a { - color: var(--color-text); - } - - a:hover { - color: var(--color-primary); - } -} - -.comment-header .actions a { - margin-right: 0 !important; - padding: .5rem !important; -} - -.comment-header-left > * + *, -.comment-header-right > * + * { - margin-left: .25rem; -} - -.comment-body { - background: var(--color-box-body); - border: none !important; - width: 100% !important; - max-width: 100% !important; - margin: 0 !important; -} - -.edit-label.modal, -.new-label.modal { - .form { - .column { - padding-right: 0; - } - - .buttons { - margin-left: auto; - padding-top: 15px; - } - - .color.picker.column { - display: flex; - .minicolors { - flex: 1; - } - } - - .minicolors-swatch.minicolors-sprite { - top: 10px; - left: 10px; - width: 15px; - height: 15px; - } - } -} - -#avatar-arrow { - &::before, - &::after { - right: 100%; - top: 20px; - border: solid transparent; - content: " "; - height: 0; - width: 0; - position: absolute; - pointer-events: none; - } - - &::before { - border-right-color: var(--color-secondary); - border-width: 9px; - margin-top: -9px; - } - - &::after { - border-right-color: var(--color-box-header); - border-width: 8px; - margin-top: -8px; - } -} - -#transfer-repo-modal, -#delete-repo-modal, -#delete-wiki-modal, -#convert-fork-repo-modal, -#convert-mirror-repo-modal, -#fork-repo-modal { - .ui.message { - width: 100% !important; - } -} - -// generate .tab-size-{i} from 1 to 16 -.generate-tab-size(16); - -.generate-tab-size(@n, @i: 1) when (@i =< @n) { - .tab-size-@{i} { - tab-size: @i !important; - -moz-tab-size: @i !important; - } - - .generate-tab-size(@n, (@i + 1)); -} - -.stats-table { - display: table; - width: 100%; - - .table-cell { - display: table-cell; - - &.tiny { - height: .5em; - } - } -} - -.labels-list .label { - margin: 2px 0; - display: inline-flex !important; - line-height: 1.3em; // there is a `font-size: 1.25em` for inside emoji, so here the line-height needs to be larger slightly -} - -// Scoped labels with different colors on left and right -.scope-parent { - background: none !important; - padding: 0 !important; -} - -.ui.label.scope-left { - border-bottom-right-radius: 0; - border-top-right-radius: 0; - margin-right: 0; -} - -.ui.label.scope-right { - border-bottom-left-radius: 0; - border-top-left-radius: 0; - margin-left: 0; -} - -.repo-button-row { - margin-bottom: 10px; -} - -.repo-button-row > * { - margin-top: 8px; -} - -.wiki .repo-button-row { - margin-bottom: 0; -} - -.wiki .repo-button-row > * { - margin-top: 0; -} - -.repo-button-row .button { - padding: 6px 10px !important; - height: 30px; -} - -.repo-button-row input { - height: 30px; -} - -tbody.commit-list { - vertical-align: baseline; -} - -.message-wrapper, -.author-wrapper { - overflow: hidden; - text-overflow: ellipsis; - max-width: calc(100% - 50px); - display: inline-block; - vertical-align: middle; -} - -.author-wrapper { - max-width: 180px; -} - -// in the commit list, messages can wrap so we can use inline -.commit-list .message-wrapper { - display: inline; -} - -// but in the repo-files-table we cannot -#repo-files-table .commit-list .message-wrapper { - display: inline-block; -} - -@media @mediaSm { - tr.commit-list { - width: 100%; - } - - th .message-wrapper { - display: block; - max-width: calc(100vw - 70px); - } - - .author-wrapper { - max-width: 80px; - } -} - -@media @mediaMd { - tr.commit-list { - width: 723px; - } - - th .message-wrapper { - max-width: 120px; - } -} - -@media @mediaLg { - tr.commit-list { - width: 933px; - } - - th .message-wrapper { - max-width: 350px; - } -} - -@media @mediaXl { - tr.commit-list { - width: 1127px; - } - - th .message-wrapper { - max-width: 525px; - } -} - -.commit-list .commit-status-link { - display: inline-block; - vertical-align: middle; -} - -.commit-body { - white-space: pre-wrap; - line-height: initial; -} - -.repository:not(.diff) { - .commit-body { // commit history list - margin: 0; - } - - .timeline-item .commit-body { // PR-comment - margin-left: 40px; - } -} - -.git-notes.top { - text-align: left; -} - -.comment-diff-data { - background: var(--color-code-bg); - max-height: calc(100vh - 10.5rem); - overflow-y: auto; -} - -.comment-diff-data pre { - line-height: 18px; - white-space: pre-wrap; - word-break: break-all; - overflow-wrap: break-word; -} - -.content-history-detail-dialog .header .avatar { - position: relative; - top: -2px; -} - -#topic_edit { - margin-top: 5px; -} - -#repo-topics { - margin-top: 5px; - display: flex; - align-items: center; - flex-wrap: wrap; -} - -.repo-topic { - font-weight: normal !important; - cursor: pointer; - margin: 2px !important; -} - -#new-dependency-drop-list { - &.ui.selection.dropdown { - min-width: 0; - width: 100%; - border-radius: 4px 0 0 4px; - border-right: 0; - white-space: nowrap; - } - - .text { - width: 100%; - overflow: hidden; - } -} - -#manage_topic { - font-size: 12px; -} - -.label + #manage_topic { - margin-left: 5px; -} - -.ui.small.label.topic { - margin-bottom: 4px; -} - -.repo-header { - display: flex; - align-items: center; - justify-content: space-between; - flex-wrap: wrap; - word-break: break-word; - - @media @mediaSm { - + .container { - margin-top: 7px; - } - } -} - -.repo-buttons { - align-items: center; - display: flex; - flex-direction: row; - flex-wrap: wrap; - word-break: keep-all; - - @media @mediaSm { - margin-top: 1em; - } -} - -.repo-buttons .ui.labeled.button > .label:hover { - color: var(--color-primary-light-2); - background: var(--color-light); -} - -.label-mimic-enabled() { - color: var(--color-text-dark); - background: var(--color-light-mimic-enabled) !important; - - &:hover { - color: var(--color-primary-dark-1); - } -} - -.repo-buttons button[disabled] ~ .label { - opacity: var(--opacity-disabled); - .label-mimic-enabled(); -} - -.repo-buttons .ui.labeled.button { - cursor: initial; - - > .label { - border-left: 0 !important; - margin: 0 !important; - } - - &.disabled { - pointer-events: inherit !important; - - > .label { - .label-mimic-enabled(); - } - - > .button { - pointer-events: none !important; - } - } - @media @mediaSm { - .svg { - display: none; - } - } -} - -.tag-code { - height: 28px; -} - -.tag-code, -.tag-code td, -.tag-code .blob-excerpt { - background-color: var(--color-box-body-highlight); - vertical-align: middle; -} - -.resolved-placeholder { - font-weight: normal !important; - border: 1px solid var(--color-secondary) !important; - border-radius: var(--border-radius) !important; - margin: 4px !important; -} - -.resolved-placeholder + .comment-code-cloud { - padding-top: 0 !important; -} - -td.blob-excerpt { - background-color: var(--color-secondary-alpha-30); -} - -.issue-keyword { - border-bottom: 1px dotted var(--color-text-light-3) !important; -} - -.issue-keyword:hover { - border-bottom: none !important; -} - -.file-header { - align-items: center; - display: flex; - justify-content: space-between; - overflow-x: auto; - padding: 6px 12px !important; - font-size: 13px !important; -} - -.file-info { - display: flex; - align-items: center; -} - -.file-info-entry { - display: flex; - align-items: center; - width: max-content; -} - -.file-info-entry + .file-info-entry { - border-left: 1px solid currentcolor; - margin-left: 8px; - padding-left: 8px; -} - -#diff-container { - display: flex; -} -#diff-file-boxes { - flex: 1; - max-width: 100%; -} - -#diff-file-tree { - width: 20%; - max-width: 380px; - line-height: inherit; - position: sticky; - padding-top: 0; - top: 47px; - max-height: calc(100vh - 50px); - height: 100%; - overflow-y: auto; -} - -@media @mediaMdAndDown { - #diff-file-tree { - display: none !important; - } - - .diff-toggle-file-tree-button { - display: none !important; - } -} - -.ui.message.unicode-escape-prompt { - margin-bottom: 0; - border-radius: 0; - display: flex; - flex-direction: column; -} - -.wiki-content-sidebar .ui.message.unicode-escape-prompt, -.wiki-content-footer .ui.message.unicode-escape-prompt { - p { - display: none; - } -} - -.wiki-content-toc { - > ul > li { - margin-bottom: 4px; - } - - ul { - margin: 0; - list-style: none; - padding-left: 1em; - } -} - -/* fomantic's last-child selector does not work with hidden last child */ -.ui.buttons .unescape-button { - border-top-right-radius: .28571429rem; - border-bottom-right-radius: .28571429rem; -} - -.webhook-info { - padding: 7px 12px; - margin: 10px 0; - background-color: var(--color-markup-code-block); - border: 1px solid var(--color-secondary); - border-radius: 3px; - font-size: 13px; - line-height: 1.5; - overflow: auto; -} - -.title_wip_desc { - margin-top: 1em; -} - -.sidebar-item-link { - align-items: center; - word-break: break-all; -} - -.diff-file-box[data-folded="true"] .diff-file-body { - display: none; -} - -.diff-file-box[data-folded="true"] .diff-file-header { - border-radius: var(--border-radius) !important; -} - -.diff-file-header-actions > * + * { - margin-left: .5rem !important; -} - -.ui.attached.header.diff-file-header { - &.sticky-2nd-row { - position: sticky; - top: 77px; - z-index: 7; - - @media (max-width: 480px) { - position: static; - } - } - - .diff-file-header-actions { - flex-shrink: 0; - } - - .diff-file-name { - flex: auto; - min-width: 100px; - } -} - -.diff-file-body { - overflow-x: scroll; -} - -.diff-stats-bar { - display: inline-block; - background-color: var(--color-red); - height: 12px; - width: 40px; - - .diff-stats-add-bar { - background-color: var(--color-green); - height: 100%; - } -} - -/* prevent page shaking on language bar click */ -.repository-summary-language-stats { - height: 48px; - overflow: hidden; - - @media @mediaSm { - height: auto; - } -} - -.ui.form .right .ui.button { - margin-left: .25em; - margin-right: 0; -} - -.removed-code { - background: var(--color-diff-removed-word-bg); -} - -.added-code { - background: var(--color-diff-added-word-bg); -} - -.code-diff-unified .del-code, -.code-diff-unified .del-code td, -.code-diff-split .del-code .lines-num-old, -.code-diff-split .del-code .lines-escape-old, -.code-diff-split .del-code .lines-type-marker-old, -.code-diff-split .del-code .lines-code-old { - background: var(--color-diff-removed-row-bg); - border-color: var(--color-diff-removed-row-border); -} - -.code-diff-unified .add-code, -.code-diff-unified .add-code td, -.code-diff-split .add-code .lines-num-new, -.code-diff-split .add-code .lines-type-marker-new, -.code-diff-split .add-code .lines-escape-new, -.code-diff-split .add-code .lines-code-new, -.code-diff-split .del-code .add-code.lines-num-new, -.code-diff-split .del-code .add-code.lines-type-marker-new, -.code-diff-split .del-code .add-code.lines-escape-new, -.code-diff-split .del-code .add-code.lines-code-new { - background: var(--color-diff-added-row-bg); - border-color: var(--color-diff-added-row-border); -} - -.code-diff-split .del-code .lines-num-new, -.code-diff-split .del-code .lines-type-marker-new, -.code-diff-split .del-code .lines-code-new, -.code-diff-split .del-code .lines-escape-new, -.code-diff-split .add-code .lines-num-old, -.code-diff-split .add-code .lines-escape-old, -.code-diff-split .add-code .lines-type-marker-old, -.code-diff-split .add-code .lines-code-old { - background: var(--color-diff-inactive); -} - -.code-diff-split tbody tr td:nth-child(5), -.code-diff-split tbody tr td.add-comment-right { - border-left: 1px solid var(--color-secondary); -} - -.repository .ui.menu.new-menu { - background: none !important; - - @media @mediaLgAndDown { - &::after { - background: none !important; - } - } -} - -.repository.migrate .card { - transition: all .1s ease-in-out; - box-shadow: none !important; - border: 1px solid var(--color-secondary); - color: var(--color-text); -} - -.repository.migrate .card:hover { - transform: scale(105%); - box-shadow: 0 .5rem 1rem var(--color-shadow) !important; -} - -@media @mediaSm { - .repository.file.list { - #repo-files-table { - .entry, - .commit-list { - align-items: center; - display: flex !important; - padding-top: 4px; - padding-bottom: 4px; - - td.age, - th.age { - margin-left: auto; - } - - td.message, - span.commit-summary { - display: none !important; - } - } - } - } - .issue-list-headers.ui[class].grid { - > div:nth-child(1) { - order: 1; - width: 50%; - } - - > div:nth-child(2) { - order: 3; - width: 100%; - } - - > div.column:not(.row):nth-child(3) { - order: 2; - width: 50%; - } - } - - .repository.view.issue .comment-list { - .timeline, - .timeline-item { - margin-left: 0; - } - - .timeline { - &::before { - left: 14px; - } - - .inline-timeline-avatar { - display: flex; - margin-bottom: auto; - - img.avatar { - height: 24px; - width: 24px; - } - } - - .comment-header { - &::before, - &::after { - content: unset; - } - - padding-left: 4px; - } - - /* Don't show the general avatar, we show the inline avatar on mobile. - * And don't show the role labels, there's no place for that. */ - .timeline-avatar, - .comment-header-right .role-label { - display: none; - } - } - } - .commit-header-row { - .ui.horizontal.list { - width: 100%; - overflow-x: auto; - margin-top: 2px; - - .item { - align-items: center; - display: flex; - } - } - - .author { - padding: 3px 0; - } - } - - .commit-header h3 { - flex-basis: auto !important; - margin-bottom: .5rem !important; - } - - .commits-table { - flex-direction: column; - - .commits-table-left { - align-items: initial !important; - margin-bottom: 6px; - } - - .commits-table-right form { - display: flex; - flex-wrap: wrap; - - > div:nth-child(1) { - order: 1; - } - - > div:nth-child(2) { - order: 3; - margin-left: .5rem; - margin-top: .5rem; - } - - > button:nth-child(3) { - order: 2; - margin-left: .25rem; - } - } - } - - .commit-table { - overflow-x: auto; - - td.sha, - th.sha { - display: none !important; - } - - .commit-list { - span.message-wrapper { - max-width: none; - } - - tr td:last-child { - display: block; - width: max-content; - } - - td.author { - display: block; - width: calc(100% + .5rem); - } - - .copy-commit-sha { - display: none !important; - } - } - } - - .comment-header { - flex-wrap: wrap; - - .comment-header-left { - flex-wrap: wrap; - } - - .comment-header-right { - margin-left: auto; - } - } -} - -.branch-dropdown-button { - max-width: 340px; - vertical-align: bottom !important; - - @media @mediaMd { - max-width: 185px; - } - @media @mediaSm { - max-width: 165px; - } -} - -.pr-status { - padding: 0 !important; // To clear fomantic's padding on .ui.segment elements - display: flex; - align-items: center; - - .commit-status { - margin: 1em; - flex-shrink: 0; - } - - .status-context { - display: flex; - justify-content: space-between; - width: 100%; - - > span { - padding: 1em 0; - } - } - - .status-details { - display: flex; - padding-right: .5em; - align-items: center; - justify-content: flex-end; - - @media @mediaSm { - flex-direction: column; - align-items: flex-end; - justify-content: center; - } - - > span { - padding-right: .5em; // To match the alignment with the "required" label - } - } -} diff --git a/web_src/less/_review.less b/web_src/less/_review.less deleted file mode 100644 index bf2be1f166..0000000000 --- a/web_src/less/_review.less +++ /dev/null @@ -1,324 +0,0 @@ -@import "variables.less"; - -.ui.button.add-code-comment { - padding: 2px; - position: absolute; - margin-left: -22px; - z-index: 5; - opacity: 0; - transition: transform .1s ease-in-out; - transform: scale(1); - box-shadow: none !important; - border: none !important; - - &:hover { - transform: scale(1.1); - } -} - -.lines-escape a.toggle-escape-button::before { - visibility: visible; - content: '⚠️'; - font-family: var(--fonts-emoji); - color: var(--color-red); -} - -.repository .diff-file-box .code-diff td.lines-escape { - padding-left: 0 !important; -} - -.diff-file-box .lines-code:hover .ui.button.add-code-comment { - opacity: 1; -} - -.repository .diff-file-box .code-diff .add-comment-left, -.repository .diff-file-box .code-diff .add-comment-right, -.repository .diff-file-box .code-diff .add-code-comment .add-comment-left, -.repository .diff-file-box .code-diff .add-code-comment .add-comment-right, -.repository .diff-file-box .code-diff .add-code-comment .lines-type-marker { - padding-left: 0 !important; - padding-right: 0 !important; -} - -.add-comment-left.add-comment-right .ui.attached.header { - border: 1px solid var(--color-secondary); - - &:not(.top) { - margin-bottom: .5em; - } -} - -.add-comment .lines-num, -.add-comment .lines-escape, -.add-comment .lines-type-marker { - display: none; -} - -.show-outdated, -.hide-outdated { - &:extend(.unselectable); - - &:hover { - text-decoration: underline; - } -} - -.comment-code-cloud { - padding: .5rem 1rem !important; - position: relative; - margin: 0 auto; - max-width: 1000px; - - @media @mediaSm { - max-width: none; - padding: .75rem !important; - - .code-comment-buttons { - margin: .5rem 0 .25rem !important; - - .code-comment-buttons-buttons { - width: 100%; - } - } - - .ui.buttons { - width: 100%; - margin: 0 !important; - - .button { - flex: 1; - } - } - } - - .comments .comment { - padding: 0; - - @media @mediaSm { - display: flex; - - .comment-header-right.actions .ui.basic.label { - display: none; - } - - .avatar { - width: auto; - float: none; - margin: 0 .5rem 0 0; - flex-shrink: 0; - - ~ .content { - margin-left: 1em; - } - } - - img.avatar { - margin: 0 !important; - } - - .comment-content { - margin-left: 0 !important; - } - - .comment-container { - width: 100%; - } - - &.code-comment { - padding: 0 0 .5rem !important; - } - } - } - - .attached { - &.tab { - border: 0; - padding: 0; - margin: 0; - } - - &.header { - padding: .1rem 1rem; - - .text { - margin: 0; - } - } - } - - .right.menu.options .item { - padding: .85714286em .442857em; - cursor: pointer; - } - - .ui.active.tab { - padding: .5em; - - &.markup { - padding: 1em; - min-height: 168px; - } - } - - .ui.tabular.menu { - margin: .5em; - } - - .footer { - border-top: 1px solid var(--color-secondary); - padding: 10px 0; - - .markup-info { - display: inline-block; - margin: 5px 0; - font-size: 12px; - color: var(--color-text-light); - } - - .ui.right.floated { - padding-top: 6px; - } - - &::after { - clear: both; - content: ""; - display: block; - } - } - - @media @mediaSm { - .button { - width: 100%; - margin: 0 !important; - margin-bottom: .75rem !important; - } - } -} - -.diff-file-body .comment-form { - margin: 0 0 0 3em; -} - -.file-comment { - color: var(--color-text); -} - -a.blob-excerpt { - color: var(--color-text-light); - height: 28px; - display: flex; - justify-content: center; - align-items: center; - width: 100%; - background: var(--color-expand-button); -} - -a.blob-excerpt:hover { - background: var(--color-primary); - color: var(--color-primary-contrast); -} - -// See the comment of createCommentEasyMDE() for the review editor -// EasyMDE's options can not handle minHeight & maxHeight together correctly, we have to set minHeight in JS code -.review-box-panel .CodeMirror-scroll { - min-height: 80px; - max-height: calc(100vh - 360px); -} - -@media @mediaSm { - .review-box-panel .CodeMirror-scroll { - max-width: calc(100vw - 70px); - } -} - -@media @mediaMd { - .review-box-panel .CodeMirror-scroll { - max-width: 700px; - } -} - -@media @mediaLg { - .review-box-panel .CodeMirror-scroll { - max-width: 800px; - } -} - -@media @mediaXl { - .review-box-panel .CodeMirror-scroll { - max-width: 900px; - } -} - -#review-box { - position: relative; -} - -.review-box-panel { - position: absolute; - min-width: max-content; - top: 45px; - right: -5px; - z-index: 2; -} - -#review-box .review-comments-counter { - background-color: var(--color-primary-light-4); - color: var(--color-primary-contrast); -} - -#review-box:hover .review-comments-counter { - background-color: var(--color-primary-light-5); -} - -#review-box .review-comments-counter[data-pending-comment-number="0"] { - display: none; -} - -.pull.files.diff [id] { - scroll-margin-top: 99px; - - @media @mediaMdAndDown { - scroll-margin-top: 130px; - } -} - -.changed-since-last-review { - border: 1px var(--color-accent) solid; - background-color: var(--color-small-accent); - border-radius: 15px; - padding: 4px 8px; - margin: -8px 0; // just like other buttons in the diff box header - font-size: .857rem; // just like .ui.tiny.button -} - -.viewed-file-form { - display: flex; - align-items: center; - border: 1px solid transparent; - padding: 4px 8px; - margin: -8px 0; // just like other buttons in the diff box header - border-radius: .285rem; // just like .ui.tiny.button - font-size: .857rem; // just like .ui.tiny.button -} - -.viewed-file-form input { - margin-right: 4px; -} - -.viewed-file-checked-form { - background-color: var(--color-small-accent); - border-color: var(--color-accent); -} - -#viewed-files-summary { - width: 72px; - height: 10px; -} - -.diff-file-box { - border-radius: .285rem; // Just like ui.top.attached.header -} - -.diff-file-box:target { - box-shadow: 0 0 0 3px var(--color-accent); -} diff --git a/web_src/less/_runner.less b/web_src/less/_runner.less deleted file mode 100644 index cebe345b0c..0000000000 --- a/web_src/less/_runner.less +++ /dev/null @@ -1,45 +0,0 @@ -@import "variables.less"; - -.runner-container { - padding-bottom: 30px; - .runner-ops > a { - margin-left: .5em; - } - .runner-ops-delete { - color: var(--color-red-light); - } - .runner-basic-info .gt-dib { - margin-right: 1em; - } - .runner-status-online { - .ui.label; - background-color: var(--color-green); - color: var(--color-white); - } - .runner-new-text { - color: var(--color-white); - } - #runner-new:hover .runner-new-text { - color: var(--color-white) !important; - } - .runner-new-menu { - width: 300px; - } - .task-status-success { - background-color: var(--color-green); - color: var(--color-white); - } - .task-status-failure { - background-color: var(--color-red-light); - color: var(--color-white); - } - .task-status-running { - background-color: var(--color-blue); - color: var(--color-white); - } - .task-status-cancelled, - .task-status-blocked { - background-color: var(--color-yellow); - color: var(--color-white); - } -} diff --git a/web_src/less/_svg.less b/web_src/less/_svg.less deleted file mode 100644 index a2ea64c438..0000000000 --- a/web_src/less/_svg.less +++ /dev/null @@ -1,9 +0,0 @@ -.svg { - display: inline-block; - vertical-align: text-top; - fill: currentcolor; - - .middle & { - vertical-align: middle; - } -} diff --git a/web_src/less/_tribute.less b/web_src/less/_tribute.less deleted file mode 100644 index 9adf155ffa..0000000000 --- a/web_src/less/_tribute.less +++ /dev/null @@ -1,42 +0,0 @@ -@import "tributejs/dist/tribute.css"; - -.tribute-container { - box-shadow: 0 .25rem .5rem rgba(0, 0, 0, .25); - border-radius: .25rem; -} - -.tribute-container ul { - margin-top: 0 !important; - background: var(--color-body) !important; -} - -.tribute-container li { - padding: 3px .5rem !important; -} - -.tribute-container li span.fullname { - font-weight: normal; - font-size: .8rem; - margin-left: 3px; -} - -.tribute-container li.highlight, -.tribute-container li:hover { - background: var(--color-primary) !important; - color: var(--color-primary-contrast) !important; -} - -.tribute-item { - display: flex; - align-items: center; -} - -.tribute-item .emoji, -.tribute-item img[src*="/avatar/"] { - margin-right: .5rem; -} - -.tribute-container img { - width: 1.5rem !important; - height: 1.5rem !important; -} diff --git a/web_src/less/_user.less b/web_src/less/_user.less deleted file mode 100644 index eb9e791d86..0000000000 --- a/web_src/less/_user.less +++ /dev/null @@ -1,183 +0,0 @@ -@import "variables.less"; - -.user { - &.profile { - .ui.card { - .header { - display: block; - font-weight: 600; - font-size: 1.3rem; - margin-top: -.2rem; - line-height: 1.3rem; - } - - .profile-avatar-name { - border-top: none; - text-align: center; - } - - .extra.content { - padding: 0; - - ul { - margin: 0; - padding: 0; - - li { - padding: 10px; - list-style: none; - - &:not(:last-child) { - border-bottom: 1px solid var(--color-secondary); - } - - .svg { - margin-left: 1px; - margin-right: 5px; - } - - &.follow { - .ui.button { - width: 100%; - } - } - } - } - } - #profile-avatar { - background: none; - padding: 1rem 1rem .25rem; - justify-content: center; - img { - width: 100%; - height: auto; - object-fit: contain; - margin: 0; - @media @mediaSm { - width: 30vw; - } - } - - } - - @media @mediaSm { - width: 100%; - } - } - - .ui.repository.list { - margin-top: 25px; - } - - #loading-heatmap { - margin-bottom: 1em; - } - .ui.secondary.stackable.pointing.menu { - flex-wrap: wrap; - } - } - - &.followers { - .header.name { - font-size: 20px; - line-height: 24px; - vertical-align: middle; - } - - .follow { - .ui.button { - padding: 8px 15px; - } - } - } - - &.notification { - .svg { - float: left; - font-size: 2em; - - &.green { - color: var(--color-green); - } - - &.red { - color: var(--color-red); - } - - &.purple { - color: var(--color-purple); - } - - &.blue { - color: var(--color-blue); - } - } - - .content { - float: left; - margin-left: 7px; - } - - table { - form { - display: inline-block; - } - - button { - padding: 3px 3px 3px 5px; - } - - tr { - cursor: pointer; - } - } - } - - .button.adopt, - .button.delete { - margin-top: -15px; - margin-bottom: -15px; - .label { - vertical-align: middle; - } - } - - &.link-account:not(.icon) { - padding-top: 15px; - padding-bottom: 5px; - } - - &.settings { - .iconFloat { - float: left; - } - } -} - -.user-orgs { - display: flex; - flex-flow: row wrap; - padding: 0; - margin: -3px !important; - - li { - display: flex; - border-bottom: 0 !important; - padding: 3px !important; - width: 20%; - max-width: 60px; - } -} - -.user-badges { - display: grid; - grid-template-columns: repeat(auto-fill, 64px); - gap: 2px; -} - -.user-badges img { - object-fit: contain; -} -#notification_div .tab.segment { - overflow-x: auto; -} diff --git a/web_src/less/animations.less b/web_src/less/animations.less deleted file mode 100644 index 689898da2a..0000000000 --- a/web_src/less/animations.less +++ /dev/null @@ -1,81 +0,0 @@ -@keyframes isloadingspin { - 0% { transform: translate(-50%, -50%) rotate(0deg); } - 100% { transform: translate(-50%, -50%) rotate(360deg); } -} - -.is-loading { - background: transparent !important; - color: transparent !important; - border: transparent !important; - pointer-events: none !important; - position: relative !important; - overflow: hidden !important; -} - -.is-loading::after { - content: ""; - position: absolute; - display: block; - width: 4rem; - height: 4rem; - left: 50%; - top: 50%; - transform: translate(-50%, -50%); - animation: isloadingspin 500ms infinite linear; - border-width: 4px; - border-style: solid; - border-color: var(--color-secondary) var(--color-secondary) var(--color-secondary-dark-8) var(--color-secondary-dark-8); - border-radius: 100%; -} - -.markup pre.is-loading, -.editor-loading.is-loading { - height: var(--height-loading); -} - -.btn-octicon.is-loading::after { - border-width: 2px; - height: 1.25rem; - width: 1.25rem; -} - -code.language-math.is-loading::after { - padding: 0; - border-width: 2px; - width: 1.25rem; - height: 1.25rem; -} - -@keyframes fadein { - 0% { - opacity: 0; - } - 100% { - opacity: 1; - } -} - -@keyframes fadeout { - 0% { - opacity: 1; - } - 100% { - opacity: 0; - } -} - -@keyframes pulse { - 0% { - transform: scale(1); - } - 50% { - transform: scale(1.8); - } - 100% { - transform: scale(1); - } -} - -.pulse { - animation: pulse 2s linear; -} diff --git a/web_src/less/chroma/base.less b/web_src/less/chroma/base.less deleted file mode 100644 index 597ee2a72d..0000000000 --- a/web_src/less/chroma/base.less +++ /dev/null @@ -1,50 +0,0 @@ -.chroma { - background-color: var(--color-code-bg); -} - -/* LineTableTD */ -.chroma .lntd { - vertical-align: top; - padding: 0; - margin: 0; - border: 0; -} - -/* LineTable */ -.chroma .lntable { - border-spacing: 0; - padding: 0; - margin: 0; - border: 0; - width: auto; - overflow: auto; - display: block; -} - -/* LineHighlight */ -.chroma .hl { - display: block; - width: 100%; -} - -/* LineNumbersTable */ -.chroma .lnt { - margin-right: .4em; - padding: 0 .4em; -} - -/* LineNumbers */ -.chroma .ln { - margin-right: .4em; - padding: 0 .4em; -} - -/* GenericStrong */ -.chroma .gs { - font-weight: 600; -} - -/* GenericUnderline */ -.chroma .gl { - text-decoration: underline; -} diff --git a/web_src/less/chroma/chroma-style-diff.go b/web_src/less/chroma/chroma-style-diff.go deleted file mode 100644 index 4243259689..0000000000 --- a/web_src/less/chroma/chroma-style-diff.go +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2023 The Gitea Authors. All rights reserved. -// SPDX-License-Identifier: MIT - -//go:build ignore - -/* -This tool is used to compare the CSS names in a chroma builtin styles with the Gitea theme CSS names. - -It outputs the difference between the two sets of CSS names, eg: - -``` -CSS names not in builtin: -.chroma .ln ----- -Builtin CSS names not in file: -.chroma .vm -``` - -Developers could use this tool to re-sync the CSS names in the Gitea theme. -*/ - -package main - -import ( - "os" - "regexp" - "strings" - - "github.com/alecthomas/chroma/v2" -) - -func main() { - if len(os.Args) != 2 { - println("Usage: chroma-style-diff css-or-less-file") - os.Exit(1) - } - - data, err := os.ReadFile(os.Args[1]) - if err != nil { - println(err.Error()) - os.Exit(1) - } - - content := string(data) - - // a simple CSS parser to collect CSS names - content = regexp.MustCompile("//.*\r?\n").ReplaceAllString(content, "\n") - content = regexp.MustCompile("/\\*.*?\\*/").ReplaceAllString(content, "") - matches := regexp.MustCompile("\\s*([-.#:\\w\\s]+)\\s*\\{[^}]*}").FindAllStringSubmatch(content, -1) - - cssNames := map[string]bool{} - for _, matchGroup := range matches { - cssName := strings.TrimSpace(matchGroup[1]) - cssNames[cssName] = true - } - - // collect Chroma builtin CSS names - builtin := map[string]bool{} - for tokenType, cssName := range chroma.StandardTypes { - if tokenType > 0 && cssName != "" { - builtin[".chroma ."+cssName] = true - } - } - - // show the diff - println("CSS names not in builtin:") - for cssName := range cssNames { - if !builtin[cssName] { - println(cssName) - } - } - println("----") - println("Builtin CSS names not in file:") - for cssName := range builtin { - if !cssNames[cssName] { - println(cssName) - } - } -} diff --git a/web_src/less/chroma/dark.less b/web_src/less/chroma/dark.less deleted file mode 100644 index 1b0c722a16..0000000000 --- a/web_src/less/chroma/dark.less +++ /dev/null @@ -1,74 +0,0 @@ -.chroma .bp { color: #fabd2f; } /* NameBuiltinPseudo */ -.chroma .c { color: #777e94; } /* Comment */ -.chroma .c1 { color: #777e94; } /* CommentSingle */ -.chroma .ch { color: #777e94; } /* CommentHashbang */ -.chroma .cm { color: #777e94; } /* CommentMultiline */ -.chroma .cp { color: #8ec07c; } /* CommentPreproc */ -.chroma .cpf { color: #649bc4; } /* CommentPreprocFile */ -.chroma .cs { color: #9075cd; } /* CommentSpecial */ -.chroma .dl { color: #649bc4; } /* LiteralStringDelimiter */ -.chroma .fm {} /* NameFunctionMagic */ -.chroma .g {} /* Generic */ -.chroma .gd { color: #ffffff; background-color: #5f3737; } /* GenericDeleted */ -.chroma .ge { color: #ddee30; } /* GenericEmph */ -.chroma .gh { color: #ffaa10; } /* GenericHeading */ -.chroma .gi { color: #ffffff; background-color: #3a523a; } /* GenericInserted */ -.chroma .gl {} /* GenericUnderline */ -.chroma .go { color: #777e94; } /* GenericOutput */ -.chroma .gp { color: #ebdbb2; } /* GenericPrompt */ -.chroma .gr { color: #ff4433; } /* GenericError */ -.chroma .gs { color: #ebdbb2; } /* GenericStrong */ -.chroma .gt { color: #ff7540; } /* GenericTraceback */ -.chroma .gu { color: #b8bb26; } /* GenericSubheading */ -.chroma .il { color: #649bc4; } /* LiteralNumberIntegerLong */ -.chroma .k { color: #ff7540; } /* Keyword */ -.chroma .kc { color: #649bc4; } /* KeywordConstant */ -.chroma .kd { color: #ff7540; } /* KeywordDeclaration */ -.chroma .kn { color: #ffaa10; } /* KeywordNamespace */ -.chroma .kp { color: #5f8700; } /* KeywordPseudo */ -.chroma .kr { color: #ff7540; } /* KeywordReserved */ -.chroma .kt { color: #ff7b72; } /* KeywordType */ -.chroma .l {} /* Literal */ -.chroma .ld {} /* LiteralDate */ -.chroma .m { color: #649bc4; } /* LiteralNumber */ -.chroma .mb { color: #649bc4; } /* LiteralNumberBin */ -.chroma .mf { color: #649bc4; } /* LiteralNumberFloat */ -.chroma .mh { color: #649bc4; } /* LiteralNumberHex */ -.chroma .mi { color: #649bc4; } /* LiteralNumberInteger */ -.chroma .mo { color: #649bc4; } /* LiteralNumberOct */ -.chroma .n { color: #c9d1d9; } /* Name */ -.chroma .na { color: #b8bb26; } /* NameAttribute */ -.chroma .nb { color: #fabd2f; } /* NameBuiltin */ -.chroma .nc { color: #ffaa10; } /* NameClass */ -.chroma .nd { color: #8ec07c; } /* NameDecorator */ -.chroma .ne { color: #ff7540; } /* NameException */ -.chroma .nf { color: #fabd2f; } /* NameFunction */ -.chroma .ni { color: #fabd2f; } /* NameEntity */ -.chroma .nl { color: #ff7540; } /* NameLabel */ -.chroma .nn { color: #ffaa10; } /* NameNamespace */ -.chroma .no { color: #649bc4; } /* NameConstant */ -.chroma .nt { color: #ff7540; } /* NameTag */ -.chroma .nv { color: #ebdbb2; } /* NameVariable */ -.chroma .nx { color: #b6bac5; } /* NameOther */ -.chroma .o { color: #ff7540; } /* Operator */ -.chroma .ow { color: #5f8700; } /* OperatorWord */ -.chroma .p { color: #d2d4db; } /* Punctuation */ -.chroma .py {} /* NameProperty */ -.chroma .s { color: #b8bb26; } /* LiteralString */ -.chroma .s1 { color: #b8bb26; } /* LiteralStringSingle */ -.chroma .s2 { color: #b8bb26; } /* LiteralStringDouble */ -.chroma .sa { color: #649bc4; } /* LiteralStringAffix */ -.chroma .sb { color: #b8bb26; } /* LiteralStringBacktick */ -.chroma .sc { color: #649bc4; } /* LiteralStringChar */ -.chroma .sd { color: #777e94; } /* LiteralStringDoc */ -.chroma .se { color: #ff7540; } /* LiteralStringEscape */ -.chroma .sh { color: #649bc4; } /* LiteralStringHeredoc */ -.chroma .si { color: #ffaa10; } /* LiteralStringInterpol */ -.chroma .sr { color: #9075cd; } /* LiteralStringRegex */ -.chroma .ss { color: #ff7540; } /* LiteralStringSymbol */ -.chroma .sx { color: #ffaa10; } /* LiteralStringOther */ -.chroma .vc { color: #ff7540; } /* NameVariableClass */ -.chroma .vg { color: #ffaa10; } /* NameVariableGlobal */ -.chroma .vi { color: #ffaa10; } /* NameVariableInstance */ -.chroma .vm {} /* NameVariableMagic */ -.chroma .w { color: #7f8699; } /* TextWhitespace */ diff --git a/web_src/less/chroma/light.less b/web_src/less/chroma/light.less deleted file mode 100644 index 4bfce8fe71..0000000000 --- a/web_src/less/chroma/light.less +++ /dev/null @@ -1,74 +0,0 @@ -.chroma .bp { color: #999999; } /* NameBuiltinPseudo */ -.chroma .c { color: #6a737d; } /* Comment */ -.chroma .c1 { color: #6a737d; } /* CommentSingle */ -.chroma .ch { color: #6a737d; } /* CommentHashbang */ -.chroma .cm { color: #999988; } /* CommentMultiline */ -.chroma .cp { color: #109295; } /* CommentPreproc */ -.chroma .cpf { color: #4c4dbc; } /* CommentPreprocFile */ -.chroma .cs { color: #999999; } /* CommentSpecial */ -.chroma .dl { color: #106303; } /* LiteralStringDelimiter */ -.chroma .fm {} /* NameFunctionMagic */ -.chroma .g {} /* Generic */ -.chroma .gd { color: #000000; background-color: #ffdddd; } /* GenericDeleted */ -.chroma .ge { color: #000000; } /* GenericEmph */ -.chroma .gh { color: #999999; } /* GenericHeading */ -.chroma .gi { color: #000000; background-color: #ddffdd; } /* GenericInserted */ -.chroma .gl {} /* GenericUnderline */ -.chroma .go { color: #888888; } /* GenericOutput */ -.chroma .gp { color: #555555; } /* GenericPrompt */ -.chroma .gr { color: #aa0000; } /* GenericError */ -.chroma .gs {} /* GenericStrong */ -.chroma .gt { color: #aa0000; } /* GenericTraceback */ -.chroma .gu { color: #aaaaaa; } /* GenericSubheading */ -.chroma .il { color: #009999; } /* LiteralNumberIntegerLong */ -.chroma .k { color: #d73a49; } /* Keyword */ -.chroma .kc { color: #d73a49; } /* KeywordConstant */ -.chroma .kd { color: #d73a49; } /* KeywordDeclaration */ -.chroma .kn { color: #d73a49; } /* KeywordNamespace */ -.chroma .kp { color: #d73a49; } /* KeywordPseudo */ -.chroma .kr { color: #d73a49; } /* KeywordReserved */ -.chroma .kt { color: #445588; } /* KeywordType */ -.chroma .l {} /* Literal */ -.chroma .ld {} /* LiteralDate */ -.chroma .m { color: #009999; } /* LiteralNumber */ -.chroma .mb { color: #009999; } /* LiteralNumberBin */ -.chroma .mf { color: #009999; } /* LiteralNumberFloat */ -.chroma .mh { color: #009999; } /* LiteralNumberHex */ -.chroma .mi { color: #009999; } /* LiteralNumberInteger */ -.chroma .mo { color: #009999; } /* LiteralNumberOct */ -.chroma .n {} /* Name */ -.chroma .na { color: #d73a49; } /* NameAttribute */ -.chroma .nb { color: #005cc5; } /* NameBuiltin */ -.chroma .nc { color: #445588; } /* NameClass */ -.chroma .nd { color: #3c5d5d; } /* NameDecorator */ -.chroma .ne { color: #990000; } /* NameException */ -.chroma .nf { color: #005cc5; } /* NameFunction */ -.chroma .ni { color: #6f42c1; } /* NameEntity */ -.chroma .nl { color: #990000; } /* NameLabel */ -.chroma .nn { color: #555555; } /* NameNamespace */ -.chroma .no { color: #008080; } /* NameConstant */ -.chroma .nt { color: #22863a; } /* NameTag */ -.chroma .nv { color: #008080; } /* NameVariable */ -.chroma .nx { color: #24292e; } /* NameOther */ -.chroma .o { color: #d73a49; } /* Operator */ -.chroma .ow { color: #d73a49; } /* OperatorWord */ -.chroma .p {} /* Punctuation */ -.chroma .py {} /* NameProperty */ -.chroma .s { color: #106303; } /* LiteralString */ -.chroma .s1 { color: #cc7a00; } /* LiteralStringSingle */ -.chroma .s2 { color: #106303; } /* LiteralStringDouble */ -.chroma .sa { color: #106303; } /* LiteralStringAffix */ -.chroma .sb { color: #106303; } /* LiteralStringBacktick */ -.chroma .sc { color: #106303; } /* LiteralStringChar */ -.chroma .sd { color: #106303; } /* LiteralStringDoc */ -.chroma .se { color: #106303; } /* LiteralStringEscape */ -.chroma .sh { color: #106303; } /* LiteralStringHeredoc */ -.chroma .si { color: #106303; } /* LiteralStringInterpol */ -.chroma .sr { color: #22863a; } /* LiteralStringRegex */ -.chroma .ss { color: #106303; } /* LiteralStringSymbol */ -.chroma .sx { color: #106303; } /* LiteralStringOther */ -.chroma .vc { color: #008080; } /* NameVariableClass */ -.chroma .vg { color: #008080; } /* NameVariableGlobal */ -.chroma .vi { color: #008080; } /* NameVariableInstance */ -.chroma .vm {} /* NameVariableMagic */ -.chroma .w { color: #bbbbbb; } /* TextWhitespace */ diff --git a/web_src/less/code/linebutton.less b/web_src/less/code/linebutton.less deleted file mode 100644 index a2956ffc1f..0000000000 --- a/web_src/less/code/linebutton.less +++ /dev/null @@ -1,24 +0,0 @@ -.code-view .lines-num:hover { - color: var(--color-text-dark) !important; -} - -.code-line-menu { - width: auto !important; -} - -.code-line-button { - background-color: var(--color-menu); - color: var(--color-text-light); - border: 1px solid var(--color-secondary); - border-radius: var(--border-radius); - padding: 1px 10px; - position: absolute; - font-family: var(--fonts-regular); - left: 0; - transform: translateX(-70%); - cursor: pointer; - - &:hover { - color: var(--color-primary); - } -} diff --git a/web_src/less/codemirror/base.less b/web_src/less/codemirror/base.less deleted file mode 100644 index db0a93f4c7..0000000000 --- a/web_src/less/codemirror/base.less +++ /dev/null @@ -1,45 +0,0 @@ -.ui .field:not(:last-child) .EasyMDEContainer .editor-statusbar { - margin-bottom: -1em; // when there is a statusbar, the "margin-bottom: 1em" of the "field" is not needed, because the statusbar is likely a blank line -} - -.EasyMDEContainer .CodeMirror { - color: var(--color-input-text); - background-color: var(--color-input-background); - border-color: var(--color-secondary); - font: 14px var(--fonts-monospace); - - &.cm-s-default { - border-radius: var(--border-radius); - padding: 0 !important; - } - - &.CodeMirror-fullscreen.CodeMirror-focused { - border-right: 1px solid var(--color-primary) !important; - } -} - -.CodeMirror-cursor { - border-color: var(--color-caret) !important; -} - -.CodeMirror .cm-comment { - background: inherit !important; -} - -.CodeMirror .CodeMirror-code { - font: 14px var(--fonts-monospace); -} - -.CodeMirror-selected { - background: var(--color-primary-light-1) !important; - color: var(--color-white) !important; -} - -.CodeMirror-placeholder { - color: var(--color-placeholder-text) !important; - opacity: 1 !important; -} - -.CodeMirror-focused { - border-color: var(--color-primary) !important; -} diff --git a/web_src/less/codemirror/dark.less b/web_src/less/codemirror/dark.less deleted file mode 100644 index d0e954df58..0000000000 --- a/web_src/less/codemirror/dark.less +++ /dev/null @@ -1,89 +0,0 @@ -.CodeMirror { - &.cm-s-default, - &.cm-s-paper { - .cm-property { - color: #a0cc75; - } - - .cm-header { - color: #9daccc; - } - - .cm-quote { - color: #009900; - } - - .cm-keyword { - color: #cc8a61; - } - - .cm-atom { - color: #ef5e77; - } - - .cm-number { - color: #ff5656; - } - - .cm-def { - color: #e4e4e4; - } - - .cm-variable-2 { - color: #00bdbf; - } - - .cm-variable-3 { - color: #008855; - } - - .cm-comment { - color: #8e9ab3; - } - - .cm-string { - color: #a77272; - } - - .cm-string-2 { - color: #ff5500; - } - - .cm-meta, - .cm-qualifier { - color: #ffb176; - } - - .cm-builtin { - color: #b7c951; - } - - .cm-bracket { - color: #999977; - } - - .cm-tag { - color: #f1d273; - } - - .cm-attribute { - color: #bfcc70; - } - - .cm-hr { - color: #999999; - } - - .cm-url { - color: #c5cfd0; - } - - .cm-link { - color: #d8c792; - } - - .cm-error { - color: #dbdbeb; - } - } -} diff --git a/web_src/less/codemirror/light.less b/web_src/less/codemirror/light.less deleted file mode 100644 index aa89263bc1..0000000000 --- a/web_src/less/codemirror/light.less +++ /dev/null @@ -1 +0,0 @@ -/* Placeholder, there is no light theme, it uses CM defaults */ diff --git a/web_src/less/console/console.less b/web_src/less/console/console.less deleted file mode 100644 index db25a35bac..0000000000 --- a/web_src/less/console/console.less +++ /dev/null @@ -1,299 +0,0 @@ -// Based on https://github.com/buildkite/terminal-to-html/blob/697ff23bd8dc48b9d23f11f259f5256dae2455f0/assets/terminal.css - -.console { - background: var(--color-console-bg); - color: var(--color-console-fg); - font-family: var(--fonts-monospace); - border-radius: 5px; - word-break: break-word; - overflow-wrap: break-word; -} - -.console img { max-width: 100%; } - -.console a { - color: inherit; - text-decoration: underline; - text-decoration-style: dashed; -} -.console a:hover { color: var(--color-primary); } - -@keyframes blink-animation { - to { - visibility: hidden; - } -} - -.term-fg2 { color: #838887; } /* faint (decreased intensity) - same as gray really */ -.term-fg3 { font-style: italic; } /* italic */ -.term-fg4 { text-decoration: underline; } /* underline */ -.term-fg5 { animation: blink-animation 1s steps(3, start) infinite; } /* blink */ -.term-fg9 { text-decoration: line-through; } /* crossed-out */ - -.term-fg30 { color: #666666; } /* black (but we can't use black, so a diff color) */ -.term-fg31 { color: #ff7070; } /* red */ -.term-fg32 { color: #b0f986; } /* green */ -.term-fg33 { color: #c6c502; } /* yellow */ -.term-fg34 { color: #8db7e0; } /* blue */ -.term-fg35 { color: #f271fb; } /* magenta */ -.term-fg36 { color: #6bf7ff; } /* cyan */ - -/* high intense colors */ -.term-fgi1 { color: #5ef765; } -.term-fgi90 { color: #838887; } /* grey */ -.term-fgi91 { color: #ff3333; } /* red */ -.term-fgi92 { color: #00ff00; } /* green */ -.term-fgi93 { color: #fffc67; } /* yellow */ -.term-fgi94 { color: #6871ff; } /* blue */ -.term-fgi95 { color: #ff76ff; } /* magenta */ -.term-fgi96 { color: #60fcff; } /* cyan */ - -/* background colors */ -.term-bg40 { background: #676767; } /* grey */ -.term-bg41 { background: #ff4343; } /* red */ -.term-bg42 { background: #99ff5f; } /* green */ - -/* custom foreground/background combos for readability */ -.term-fg31.term-bg40 { color: #f8a39f; } - -/* xterm colors */ -.term-fgx16 { color: #000000; } -.term-fgx17 { color: #00005f; } -.term-fgx18 { color: #000087; } -.term-fgx19 { color: #0000af; } -.term-fgx20 { color: #0000d7; } -.term-fgx21 { color: #0000ff; } -.term-fgx22 { color: #005f00; } -.term-fgx23 { color: #005f5f; } -.term-fgx24 { color: #005f87; } -.term-fgx25 { color: #005faf; } -.term-fgx26 { color: #005fd7; } -.term-fgx27 { color: #005fff; } -.term-fgx28 { color: #008700; } -.term-fgx29 { color: #00875f; } -.term-fgx30 { color: #008787; } -.term-fgx31 { color: #0087af; } -.term-fgx32 { color: #0087d7; } -.term-fgx33 { color: #0087ff; } -.term-fgx34 { color: #00af00; } -.term-fgx35 { color: #00af5f; } -.term-fgx36 { color: #00af87; } -.term-fgx37 { color: #00afaf; } -.term-fgx38 { color: #00afd7; } -.term-fgx39 { color: #00afff; } -.term-fgx40 { color: #00d700; } -.term-fgx41 { color: #00d75f; } -.term-fgx42 { color: #00d787; } -.term-fgx43 { color: #00d7af; } -.term-fgx44 { color: #00d7d7; } -.term-fgx45 { color: #00d7ff; } -.term-fgx46 { color: #00ff00; } -.term-fgx47 { color: #00ff5f; } -.term-fgx48 { color: #00ff87; } -.term-fgx49 { color: #00ffaf; } -.term-fgx50 { color: #00ffd7; } -.term-fgx51 { color: #00ffff; } -.term-fgx52 { color: #5f0000; } -.term-fgx53 { color: #5f005f; } -.term-fgx54 { color: #5f0087; } -.term-fgx55 { color: #5f00af; } -.term-fgx56 { color: #5f00d7; } -.term-fgx57 { color: #5f00ff; } -.term-fgx58 { color: #5f5f00; } -.term-fgx59 { color: #5f5f5f; } -.term-fgx60 { color: #5f5f87; } -.term-fgx61 { color: #5f5faf; } -.term-fgx62 { color: #5f5fd7; } -.term-fgx63 { color: #5f5fff; } -.term-fgx64 { color: #5f8700; } -.term-fgx65 { color: #5f875f; } -.term-fgx66 { color: #5f8787; } -.term-fgx67 { color: #5f87af; } -.term-fgx68 { color: #5f87d7; } -.term-fgx69 { color: #5f87ff; } -.term-fgx70 { color: #5faf00; } -.term-fgx71 { color: #5faf5f; } -.term-fgx72 { color: #5faf87; } -.term-fgx73 { color: #5fafaf; } -.term-fgx74 { color: #5fafd7; } -.term-fgx75 { color: #5fafff; } -.term-fgx76 { color: #5fd700; } -.term-fgx77 { color: #5fd75f; } -.term-fgx78 { color: #5fd787; } -.term-fgx79 { color: #5fd7af; } -.term-fgx80 { color: #5fd7d7; } -.term-fgx81 { color: #5fd7ff; } -.term-fgx82 { color: #5fff00; } -.term-fgx83 { color: #5fff5f; } -.term-fgx84 { color: #5fff87; } -.term-fgx85 { color: #5fffaf; } -.term-fgx86 { color: #5fffd7; } -.term-fgx87 { color: #5fffff; } -.term-fgx88 { color: #870000; } -.term-fgx89 { color: #87005f; } -.term-fgx90 { color: #870087; } -.term-fgx91 { color: #8700af; } -.term-fgx92 { color: #8700d7; } -.term-fgx93 { color: #8700ff; } -.term-fgx94 { color: #875f00; } -.term-fgx95 { color: #875f5f; } -.term-fgx96 { color: #875f87; } -.term-fgx97 { color: #875faf; } -.term-fgx98 { color: #875fd7; } -.term-fgx99 { color: #875fff; } -.term-fgx100 { color: #878700; } -.term-fgx101 { color: #87875f; } -.term-fgx102 { color: #878787; } -.term-fgx103 { color: #8787af; } -.term-fgx104 { color: #8787d7; } -.term-fgx105 { color: #8787ff; } -.term-fgx106 { color: #87af00; } -.term-fgx107 { color: #87af5f; } -.term-fgx108 { color: #87af87; } -.term-fgx109 { color: #87afaf; } -.term-fgx110 { color: #87afd7; } -.term-fgx111 { color: #87afff; } -.term-fgx112 { color: #87d700; } -.term-fgx113 { color: #87d75f; } -.term-fgx114 { color: #87d787; } -.term-fgx115 { color: #87d7af; } -.term-fgx116 { color: #87d7d7; } -.term-fgx117 { color: #87d7ff; } -.term-fgx118 { color: #87ff00; } -.term-fgx119 { color: #87ff5f; } -.term-fgx120 { color: #87ff87; } -.term-fgx121 { color: #87ffaf; } -.term-fgx122 { color: #87ffd7; } -.term-fgx123 { color: #87ffff; } -.term-fgx124 { color: #af0000; } -.term-fgx125 { color: #af005f; } -.term-fgx126 { color: #af0087; } -.term-fgx127 { color: #af00af; } -.term-fgx128 { color: #af00d7; } -.term-fgx129 { color: #af00ff; } -.term-fgx130 { color: #af5f00; } -.term-fgx131 { color: #af5f5f; } -.term-fgx132 { color: #af5f87; } -.term-fgx133 { color: #af5faf; } -.term-fgx134 { color: #af5fd7; } -.term-fgx135 { color: #af5fff; } -.term-fgx136 { color: #af8700; } -.term-fgx137 { color: #af875f; } -.term-fgx138 { color: #af8787; } -.term-fgx139 { color: #af87af; } -.term-fgx140 { color: #af87d7; } -.term-fgx141 { color: #af87ff; } -.term-fgx142 { color: #afaf00; } -.term-fgx143 { color: #afaf5f; } -.term-fgx144 { color: #afaf87; } -.term-fgx145 { color: #afafaf; } -.term-fgx146 { color: #afafd7; } -.term-fgx147 { color: #afafff; } -.term-fgx148 { color: #afd700; } -.term-fgx149 { color: #afd75f; } -.term-fgx150 { color: #afd787; } -.term-fgx151 { color: #afd7af; } -.term-fgx152 { color: #afd7d7; } -.term-fgx153 { color: #afd7ff; } -.term-fgx154 { color: #afff00; } -.term-fgx155 { color: #afff5f; } -.term-fgx156 { color: #afff87; } -.term-fgx157 { color: #afffaf; } -.term-fgx158 { color: #afffd7; } -.term-fgx159 { color: #afffff; } -.term-fgx160 { color: #d70000; } -.term-fgx161 { color: #d7005f; } -.term-fgx162 { color: #d70087; } -.term-fgx163 { color: #d700af; } -.term-fgx164 { color: #d700d7; } -.term-fgx165 { color: #d700ff; } -.term-fgx166 { color: #d75f00; } -.term-fgx167 { color: #d75f5f; } -.term-fgx168 { color: #d75f87; } -.term-fgx169 { color: #d75faf; } -.term-fgx170 { color: #d75fd7; } -.term-fgx171 { color: #d75fff; } -.term-fgx172 { color: #d78700; } -.term-fgx173 { color: #d7875f; } -.term-fgx174 { color: #d78787; } -.term-fgx175 { color: #d787af; } -.term-fgx176 { color: #d787d7; } -.term-fgx177 { color: #d787ff; } -.term-fgx178 { color: #d7af00; } -.term-fgx179 { color: #d7af5f; } -.term-fgx180 { color: #d7af87; } -.term-fgx181 { color: #d7afaf; } -.term-fgx182 { color: #d7afd7; } -.term-fgx183 { color: #d7afff; } -.term-fgx184 { color: #d7d700; } -.term-fgx185 { color: #d7d75f; } -.term-fgx186 { color: #d7d787; } -.term-fgx187 { color: #d7d7af; } -.term-fgx188 { color: #d7d7d7; } -.term-fgx189 { color: #d7d7ff; } -.term-fgx190 { color: #d7ff00; } -.term-fgx191 { color: #d7ff5f; } -.term-fgx192 { color: #d7ff87; } -.term-fgx193 { color: #d7ffaf; } -.term-fgx194 { color: #d7ffd7; } -.term-fgx195 { color: #d7ffff; } -.term-fgx196 { color: #ff0000; } -.term-fgx197 { color: #ff005f; } -.term-fgx198 { color: #ff0087; } -.term-fgx199 { color: #ff00af; } -.term-fgx200 { color: #ff00d7; } -.term-fgx201 { color: #ff00ff; } -.term-fgx202 { color: #ff5f00; } -.term-fgx203 { color: #ff5f5f; } -.term-fgx204 { color: #ff5f87; } -.term-fgx205 { color: #ff5faf; } -.term-fgx206 { color: #ff5fd7; } -.term-fgx207 { color: #ff5fff; } -.term-fgx208 { color: #ff8700; } -.term-fgx209 { color: #ff875f; } -.term-fgx210 { color: #ff8787; } -.term-fgx211 { color: #ff87af; } -.term-fgx212 { color: #ff87d7; } -.term-fgx213 { color: #ff87ff; } -.term-fgx214 { color: #ffaf00; } -.term-fgx215 { color: #ffaf5f; } -.term-fgx216 { color: #ffaf87; } -.term-fgx217 { color: #ffafaf; } -.term-fgx218 { color: #ffafd7; } -.term-fgx219 { color: #ffafff; } -.term-fgx220 { color: #ffd700; } -.term-fgx221 { color: #ffd75f; } -.term-fgx222 { color: #ffd787; } -.term-fgx223 { color: #ffd7af; } -.term-fgx224 { color: #ffd7d7; } -.term-fgx225 { color: #ffd7ff; } -.term-fgx226 { color: #ffff00; } -.term-fgx227 { color: #ffff5f; } -.term-fgx228 { color: #ffff87; } -.term-fgx229 { color: #ffffaf; } -.term-fgx230 { color: #ffffd7; } -.term-fgx231 { color: #ffffff; } -.term-fgx232 { color: #080808; } -.term-fgx233 { color: #121212; } -.term-fgx234 { color: #1c1c1c; } -.term-fgx235 { color: #262626; } -.term-fgx236 { color: #303030; } -.term-fgx237 { color: #3a3a3a; } -.term-fgx238 { color: #444444; } -.term-fgx239 { color: #4e4e4e; } -.term-fgx240 { color: #585858; } -.term-fgx241 { color: #626262; } -.term-fgx242 { color: #6c6c6c; } -.term-fgx243 { color: #767676; } -.term-fgx244 { color: #808080; } -.term-fgx245 { color: #8a8a8a; } -.term-fgx246 { color: #949494; } -.term-fgx247 { color: #9e9e9e; } -.term-fgx248 { color: #a8a8a8; } -.term-fgx249 { color: #b2b2b2; } -.term-fgx250 { color: #bcbcbc; } -.term-fgx251 { color: #c6c6c6; } -.term-fgx252 { color: #d0d0d0; } -.term-fgx253 { color: #dadada; } -.term-fgx254 { color: #e4e4e4; } -.term-fgx255 { color: #eeeeee; } diff --git a/web_src/less/features/codeeditor.less b/web_src/less/features/codeeditor.less deleted file mode 100644 index f7e7777409..0000000000 --- a/web_src/less/features/codeeditor.less +++ /dev/null @@ -1,33 +0,0 @@ -.monaco-editor-container, -.editor-loading.is-loading { - width: 100%; - min-height: 200px; - height: 90vh; -} - -.edit.githook .monaco-editor-container { - border: 1px solid var(--color-secondary); - height: 70vh; -} - -/* overwrite conflicting styles from fomantic */ -.monaco-editor-container .inputarea { - min-height: 0 !important; - margin: 0 !important; - padding: 0 !important; - resize: none !important; - border: none !important; - color: transparent !important; - background-color: transparent !important; -} - -/* these seem unthemeable */ -.monaco-scrollable-element > .scrollbar > .slider { - background: var(--color-primary) !important; -} -.monaco-scrollable-element > .scrollbar > .slider:hover { - background: var(--color-primary-dark-1) !important; -} -.monaco-scrollable-element > .scrollbar > .slider:active { - background: var(--color-primary-dark-2) !important; -} diff --git a/web_src/less/features/dropzone.less b/web_src/less/features/dropzone.less deleted file mode 100644 index ee7a5f1b65..0000000000 --- a/web_src/less/features/dropzone.less +++ /dev/null @@ -1,54 +0,0 @@ -.ui .field { - .dropzone { - border: 2px dashed var(--color-secondary); - background: none; - box-shadow: none; - padding: 0; - border-radius: 4px; - min-height: 0; - .dz-message { - margin: 10px 0; - } - } -} - -.dropzone .dz-button { - color: var(--color-text-light) !important; -} - -.dropzone:hover .dz-button { - color: var(--color-text) !important; -} - -.dropzone .dz-error-message { - top: 145px !important; -} - -.dropzone .dz-image { - display: flex !important; - align-items: center !important; - justify-content: center !important; - border-radius: 0 !important; -} - -.dropzone .dz-image img { - max-width: 100% !important; - max-height: 100% !important; - object-fit: contain !important; -} - -.dropzone .dz-preview.dz-image-preview, -.dropzone-attachments .thumbnails img { - background: transparent !important; -} - -.dropzone-attachments .thumbnails img { - height: 120px !important; - width: 120px !important; - object-fit: contain !important; - margin-bottom: 0 !important; -} - -.dropzone .dz-preview:hover .dz-image img { - filter: opacity(.5) !important; -} diff --git a/web_src/less/features/gitgraph.less b/web_src/less/features/gitgraph.less deleted file mode 100644 index f6b1be5ba6..0000000000 --- a/web_src/less/features/gitgraph.less +++ /dev/null @@ -1,325 +0,0 @@ -#git-graph-container { - overflow-x: auto; - width: 100%; - min-height: 350px; - - > .ui.segment.loading { - border: 0; - z-index: 1; - min-height: 246px; - } - - h2 { - display: flex; - justify-content: space-between; - align-items: center; - } - - .color-buttons { - margin-right: 0; - } - - .ui.header.dividing { - padding-bottom: 10px; - } - - #flow-select-refs-dropdown { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - min-width: 250px; - border-right: none; - - .ui.label { - max-width: 180px; - display: inline-flex !important; - align-items: center; - - .truncate { - display: inline-block; - max-width: 140px; - overflow: hidden; - text-overflow: ellipsis; - vertical-align: top; - white-space: nowrap; - } - } - - .dropdown.icon { - display: none; - } - - .default.text { - padding-top: 4px; - padding-bottom: 4px; - } - - input.search { - position: relative; - top: 1px; - } - } - - li { - list-style-type: none; - height: 24px; - line-height: 24px; - white-space: nowrap; - display: flex; - align-items: center; - - .node-relation { - font-family: var(--fonts-monospace); - } - - .author { - color: var(--color-text-light); - } - - .time { - color: var(--color-text-light-3); - font-size: 80%; - } - - a:not(.ui):hover { - text-decoration: underline; - } - - a em { - color: var(--color-red); - border-bottom: 1px dotted var(--color-secondary); - text-decoration: none; - font-style: normal; - } - } - - #rel-container { - max-width: 30%; - overflow-x: auto; - float: left; - } - - #rev-container { - width: 100%; - } - - #rev-list { - margin: 0; - padding: 0; - width: 100%; - - li.highlight.hover { - background-color: var(--color-secondary-alpha-30); - } - - .tags a.button { - padding: 2px 4px; - } - - .sha.label { - padding-top: 5px; - padding-bottom: 3px; - } - - .sha.label .shortsha { - padding-top: 0; - } - - .sha.label .shortsha-pad { - padding-right: 10px; - } - - .sha.label .ui.detail.icon.button { - padding-top: 3px; - margin-top: -5px; - padding-bottom: 1px; - } - - .author img.ui.avatar { - width: auto; - height: 18px; - max-width: none; - } - } - - #graph-raw-list { - margin: 0; - } - - &.monochrome #rel-container { - .flow-group { - stroke: var(--color-secondary-dark-5); - fill: var(--color-secondary-dark-5); - } - - .flow-group.highlight { - stroke: var(--color-secondary-dark-12); - fill: var(--color-secondary-dark-12); - } - } - - &:not(.monochrome) #rel-container { - .flow-group { - &.flow-color-16-1 { - stroke: #499a37; - fill: #499a37; - } - - &.flow-color-16-2 { - stroke: #ce4751; - fill: #ce4751; - } - - &.flow-color-16-3 { - stroke: #8f9121; - fill: #8f9121; - } - - &.flow-color-16-4 { - stroke: #ac32a6; - fill: #ac32a6; - } - - &.flow-color-16-5 { - stroke: #7445e9; - fill: #7445e9; - } - - &.flow-color-16-6 { - stroke: #c67d28; - fill: #c67d28; - } - - &.flow-color-16-7 { - stroke: #4db392; - fill: #4db392; - } - - &.flow-color-16-8 { - stroke: #aa4d30; - fill: #aa4d30; - } - - &.flow-color-16-9 { - stroke: #2a6f84; - fill: #2a6f84; - } - - &.flow-color-16-10 { - stroke: #c45327; - fill: #c45327; - } - - &.flow-color-16-11 { - stroke: #3d965c; - fill: #3d965c; - } - - &.flow-color-16-12 { - stroke: #792a93; - fill: #792a93; - } - - &.flow-color-16-13 { - stroke: #439d73; - fill: #439d73; - } - - &.flow-color-16-14 { - stroke: #103aad; - fill: #103aad; - } - - &.flow-color-16-15 { - stroke: #982e85; - fill: #982e85; - } - - &.flow-color-16-0 { - stroke: #7db233; - fill: #7db233; - } - } - - .flow-group.highlight { - &.flow-color-16-1 { - stroke: #5ac144; - fill: #5ac144; - } - - &.flow-color-16-2 { - stroke: #ed5a8b; - fill: #ed5a8b; - } - - &.flow-color-16-3 { - stroke: #ced049; - fill: #ced048; - } - - &.flow-color-16-4 { - stroke: #db61d7; - fill: #db62d6; - } - - &.flow-color-16-5 { - stroke: #8455f9; - fill: #8455f9; - } - - &.flow-color-16-6 { - stroke: #e6a151; - fill: #e6a151; - } - - &.flow-color-16-7 { - stroke: #44daaa; - fill: #44daaa; - } - - &.flow-color-16-8 { - stroke: #dd7a5c; - fill: #dd7a5c; - } - - &.flow-color-16-9 { - stroke: #38859c; - fill: #38859c; - } - - &.flow-color-16-10 { - stroke: #d95520; - fill: #d95520; - } - - &.flow-color-16-11 { - stroke: #42ae68; - fill: #42ae68; - } - - &.flow-color-16-12 { - stroke: #9126b5; - fill: #9126b5; - } - - &.flow-color-16-13 { - stroke: #4ab080; - fill: #4ab080; - } - - &.flow-color-16-14 { - stroke: #284fb8; - fill: #284fb8; - } - - &.flow-color-16-15 { - stroke: #971c80; - fill: #971c80; - } - - &.flow-color-16-0 { - stroke: #87ca28; - fill: #87ca28; - } - } - } -} diff --git a/web_src/less/features/heatmap.less b/web_src/less/features/heatmap.less deleted file mode 100644 index a6280e8b51..0000000000 --- a/web_src/less/features/heatmap.less +++ /dev/null @@ -1,67 +0,0 @@ -#user-heatmap { - width: 100%; - font-size: 9px; - position: relative; - min-height: 125px; - - text { - fill: currentcolor !important; - } - - // for the "Less" and "More" legend - .vch__legend .vch__legend { - display: flex; - font-size: 11px; - align-items: center; - justify-content: right; - } - .vch__legend .vch__legend div:first-child, - .vch__legend .vch__legend div:last-child { - display: inline-block; - padding: 0 5px; - } - - // move the "? contributions in the last ? months" text from top to bottom - .total-contributions { - font-size: 11px; - position: absolute; - bottom: 0; - left: 25px; - } - - @media @mediaLgAndDown { - & { - min-height: 105px; - } - .total-contributions { - left: 21px; - } - } - - @media (max-width: 1000px) { - & { - min-height: 80px; - } - .total-contributions { - font-size: 10px; - left: 17px; - bottom: -4px; - } - } -} - -.user.profile #user-heatmap { - min-height: 135px; -} - -@media @mediaLgAndDown { - .user.profile #user-heatmap { - min-height: 115px; - } -} - -@media (max-width: 1000px) { - .user.profile #user-heatmap { - min-height: 90px; - } -} diff --git a/web_src/less/features/imagediff.less b/web_src/less/features/imagediff.less deleted file mode 100644 index 07763c15e1..0000000000 --- a/web_src/less/features/imagediff.less +++ /dev/null @@ -1,105 +0,0 @@ -.image-diff-container { - text-align: center; - padding: 1em 0; - - img { - border: 1px solid var(--color-primary-light-7); - background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAG0lEQVQYlWN4+vTpf3SMDTAMBYXYBLFpHgoKAeiOf0SGE9kbAAAAAElFTkSuQmCC") right bottom var(--color-primary-light-7); - } - - .before-container { - border: 1px solid var(--color-red); - display: block; - } - - .after-container { - border: 1px solid var(--color-green); - display: block; - } - - .diff-side-by-side { - .side { - display: inline-block; - line-height: 0; - vertical-align: top; - margin: 0 1em; - - .side-header { - font-weight: bold; - } - } - } - - .diff-swipe { - margin: auto; - - .swipe-frame { - position: absolute; - - .before-container { - position: absolute; - } - - .swipe-container { - position: absolute; - right: 0; - display: block; - border-left: 2px solid var(--color-secondary-dark-8); - height: 100%; - overflow: hidden; - - .after-container { - position: absolute; - right: 0; - } - } - - .swipe-bar { - position: absolute; - height: 100%; - top: 0; - left: 0; - - .handle { - background: var(--color-secondary-dark-8); - left: -5px; - height: 12px; - width: 12px; - position: absolute; - transform: rotate(45deg); - box-sizing: border-box; - display: flex; - justify-content: center; - align-items: center; - cursor: pointer; - } - - .top-handle { - top: -12px; - } - - .bottom-handle { - bottom: -14px; - } - } - } - } - - .diff-overlay { - margin: 0 auto; - - .overlay-frame { - margin: 0 auto; - position: relative; - } - - .before-container, - .after-container { - position: absolute; - } - - input { - max-width: 300px; - } - } -} diff --git a/web_src/less/features/projects.less b/web_src/less/features/projects.less deleted file mode 100644 index cbdb1a3c9f..0000000000 --- a/web_src/less/features/projects.less +++ /dev/null @@ -1,147 +0,0 @@ -.board { - display: flex; - flex-direction: row; - flex-wrap: nowrap; - overflow-x: auto; - margin: 0 .5em; -} - -.board-column { - background-color: var(--color-project-board-bg) !important; - border: 1px solid var(--color-secondary) !important; - margin: 0 .5rem !important; - padding: .5rem !important; - width: 320px; - height: calc(100vh - 450px); - min-height: 60vh; - overflow-y: scroll; - flex: 0 0 auto; - overflow: visible; - display: flex; - flex-direction: column; -} - -.board-column-header { - display: flex; - justify-content: space-between; - - &.dark-label { - color: var(--color-project-board-dark-label) !important; - - .board-label { - color: var(--color-project-board-dark-label) !important; - } - } - &.light-label { - color: var(--color-project-board-light-label) !important; - - .board-label { - color: var(--color-project-board-light-label) !important; - } - } -} - -.board-label { - background: none !important; - line-height: 1.25 !important; -} - -.board-column > .cards { - flex: 1; - display: flex; - align-content: baseline; - margin: 0 !important; - padding: 0 !important; - flex-wrap: nowrap !important; - flex-direction: column; -} - -.project-board-title { - word-break: break-word; -} - -.board-column > .divider { - margin: 5px 0; -} - -.board-column:first-child { - margin-left: auto !important; -} - -.board-column:last-child { - margin-right: auto !important; -} - -.board-column .ui.cards > .card > .content { - border: none; -} - -.board-card { - margin: 4px 2px !important; - border-radius: 5px !important; - cursor: move; - width: calc(100% - 4px) !important; - padding: .5rem !important; - min-height: auto !important; -} - -.board-card .meta * { - margin-right: 0 !important; -} - -.board-card .header { - margin-top: 0 !important; - font-size: 16px !important; -} - -.board-card .card-attachment-images { - display: inline-block; - white-space: nowrap; - overflow: hidden; - text-align: center; -} - -.board-card .card-attachment-images img { - display: inline-block; - max-height: 50px; - border-radius: var(--border-radius); - margin-right: 2px; -} - -.board-card .card-attachment-images img:only-child { - max-height: 90px; - margin: auto; -} - -.card-ghost { - border-style: dashed !important; - background: none !important; -} - -.card-ghost * { - opacity: 0; -} - -.color-field .minicolors.minicolors-theme-default { - display: block; - - .minicolors-input { - height: 38px; - padding-left: 2rem; - } - - .minicolors-swatch { - top: 10px; - } -} - -.edit-project-board, -.new-board-modal { - .color.picker.column { - display: flex; - - .minicolors { - flex: 1; - } - } -} diff --git a/web_src/less/helpers.less b/web_src/less/helpers.less deleted file mode 100644 index 91ea2268e2..0000000000 --- a/web_src/less/helpers.less +++ /dev/null @@ -1,216 +0,0 @@ -.gt-df { display: flex !important; } -.gt-di { display: inline !important; } -.gt-dif { display: inline-flex !important; } -.gt-dib { display: inline-block !important; } -.gt-ac { align-items: center !important; } -.gt-ab { align-items: baseline !important; } -.gt-tc { text-align: center !important; } -.gt-tl { text-align: left !important; } -.gt-tdn { text-decoration: none !important; } -.gt-jc { justify-content: center !important; } -.gt-js { justify-content: flex-start !important; } -.gt-je { justify-content: flex-end !important; } -.gt-sb { justify-content: space-between !important; } -.gt-fc { flex-direction: column !important; } -.gt-f1 { flex: 1 !important; } -.gt-fw { flex-wrap: wrap !important; } -.gt-vm { vertical-align: middle !important; } -.gt-w-100 { width: 100% !important; } -.gt-h-100 { height: 100% !important; } -.gt-br-0 { border-radius: 0 !important; } - -/* below class names match Tailwind CSS */ -.gt-pointer-events-none { pointer-events: none !important; } -.gt-relative { position: relative !important; } - -.gt-mono { - font-family: var(--fonts-monospace) !important; - font-size: .9em !important; /* compensate for monospace fonts being usually slightly larger */ -} - -.gt-bold { font-weight: 600 !important; } - -.gt-word-break { - word-wrap: break-word !important; - word-break: break-word; /* compat: Safari */ - overflow-wrap: anywhere; -} - -.gt-ellipsis { - overflow: hidden !important; - white-space: nowrap !important; - text-overflow: ellipsis !important; -} - -.gt-full-screen-width { width: 100vw !important; } -.gt-full-screen-height { height: 100vh !important; } - -.gt-rounded { border-radius: var(--border-radius) !important; } -.gt-rounded-top { border-radius: var(--border-radius) var(--border-radius) 0 0 !important; } -.gt-rounded-bottom { border-radius: 0 0 var(--border-radius) var(--border-radius) !important; } -.gt-rounded-left { border-radius: var(--border-radius) 0 0 var(--border-radius) !important; } -.gt-rounded-right { border-radius: 0 var(--border-radius) var(--border-radius) 0 !important; } - -.gt-border-secondary { border: 1px solid var(--color-secondary) !important; } -.gt-border-secondary-top { border-top: 1px solid var(--color-secondary) !important; } -.gt-border-secondary-bottom { border-bottom: 1px solid var(--color-secondary) !important; } -.gt-border-secondary-left { border-left: 1px solid var(--color-secondary) !important; } -.gt-border-secondary-right { border-right: 1px solid var(--color-secondary) !important; } - -.gt-no-transition { transition: none !important; } - -.gt-bg-red { background: var(--color-red) !important; } -.gt-bg-orange { background: var(--color-orange) !important; } -.gt-bg-yellow { background: var(--color-yellow) !important; } -.gt-bg-olive { background: var(--color-olive) !important; } -.gt-bg-green { background: var(--color-green) !important; } -.gt-bg-teal { background: var(--color-teal) !important; } -.gt-bg-blue { background: var(--color-blue) !important; } -.gt-bg-violet { background: var(--color-violet) !important; } -.gt-bg-purple { background: var(--color-purple) !important; } -.gt-bg-pink { background: var(--color-pink) !important; } -.gt-bg-brown { background: var(--color-brown) !important; } -.gt-bg-grey { background: var(--color-grey) !important; } -.gt-bg-gold { background: var(--color-gold) !important; } - -.gt-text-white { color: var(--color-white) !important; } - -.gt-m-0 { margin: 0 !important; } -.gt-m-1 { margin: .125rem !important; } -.gt-m-2 { margin: .25rem !important; } -.gt-m-3 { margin: .5rem !important; } -.gt-m-4 { margin: 1rem !important; } -.gt-m-5 { margin: 2rem !important; } - -.gt-ml-0 { margin-left: 0 !important; } -.gt-ml-1 { margin-left: .125rem !important; } -.gt-ml-2 { margin-left: .25rem !important; } -.gt-ml-3 { margin-left: .5rem !important; } -.gt-ml-4 { margin-left: 1rem !important; } -.gt-ml-5 { margin-left: 2rem !important; } - -.gt-mr-0 { margin-right: 0 !important; } -.gt-mr-1 { margin-right: .125rem !important; } -.gt-mr-2 { margin-right: .25rem !important; } -.gt-mr-3 { margin-right: .5rem !important; } -.gt-mr-4 { margin-right: 1rem !important; } -.gt-mr-5 { margin-right: 2rem !important; } - -.gt-mt-0 { margin-top: 0 !important; } -.gt-mt-1 { margin-top: .125rem !important; } -.gt-mt-2 { margin-top: .25rem !important; } -.gt-mt-3 { margin-top: .5rem !important; } -.gt-mt-4 { margin-top: 1rem !important; } -.gt-mt-5 { margin-top: 2rem !important; } - -.gt-mb-0 { margin-bottom: 0 !important; } -.gt-mb-1 { margin-bottom: .125rem !important; } -.gt-mb-2 { margin-bottom: .25rem !important; } -.gt-mb-3 { margin-bottom: .5rem !important; } -.gt-mb-4 { margin-bottom: 1rem !important; } -.gt-mb-5 { margin-bottom: 2rem !important; } - -.gt-mx-0 { margin-left: 0 !important; margin-right: 0 !important; } -.gt-mx-1 { margin-left: .125rem !important; margin-right: .125rem !important; } -.gt-mx-2 { margin-left: .25rem !important; margin-right: .25rem !important; } -.gt-mx-3 { margin-left: .5rem !important; margin-right: .5rem !important; } -.gt-mx-4 { margin-left: 1rem !important; margin-right: 1rem !important; } -.gt-mx-5 { margin-left: 2rem !important; margin-right: 2rem !important; } - -.gt-my-0 { margin-top: 0 !important; margin-bottom: 0 !important; } -.gt-my-1 { margin-top: .125rem !important; margin-bottom: .125rem !important; } -.gt-my-2 { margin-top: .25rem !important; margin-bottom: .25rem !important; } -.gt-my-3 { margin-top: .5rem !important; margin-bottom: .5rem !important; } -.gt-my-4 { margin-top: 1rem !important; margin-bottom: 1rem !important; } -.gt-my-5 { margin-top: 2rem !important; margin-bottom: 2rem !important; } - -.gt-p-0 { padding: 0 !important; } -.gt-p-1 { padding: .125rem !important; } -.gt-p-2 { padding: .25rem !important; } -.gt-p-3 { padding: .5rem !important; } -.gt-p-4 { padding: 1rem !important; } -.gt-p-5 { padding: 2rem !important; } - -.gt-pl-0 { padding-left: 0 !important; } -.gt-pl-1 { padding-left: .125rem !important; } -.gt-pl-2 { padding-left: .25rem !important; } -.gt-pl-3 { padding-left: .5rem !important; } -.gt-pl-4 { padding-left: 1rem !important; } -.gt-pl-5 { padding-left: 2rem !important; } - -.gt-pr-0 { padding-right: 0 !important; } -.gt-pr-1 { padding-right: .125rem !important; } -.gt-pr-2 { padding-right: .25rem !important; } -.gt-pr-3 { padding-right: .5rem !important; } -.gt-pr-4 { padding-right: 1rem !important; } -.gt-pr-5 { padding-right: 2rem !important; } - -.gt-pt-0 { padding-top: 0 !important; } -.gt-pt-1 { padding-top: .125rem !important; } -.gt-pt-2 { padding-top: .25rem !important; } -.gt-pt-3 { padding-top: .5rem !important; } -.gt-pt-4 { padding-top: 1rem !important; } -.gt-pt-5 { padding-top: 2rem !important; } - -.gt-pb-0 { padding-bottom: 0 !important; } -.gt-pb-1 { padding-bottom: .125rem !important; } -.gt-pb-2 { padding-bottom: .25rem !important; } -.gt-pb-3 { padding-bottom: .5rem !important; } -.gt-pb-4 { padding-bottom: 1rem !important; } -.gt-pb-5 { padding-bottom: 2rem !important; } - -.gt-px-0 { padding-left: 0 !important; padding-right: 0 !important; } -.gt-px-1 { padding-left: .125rem !important; padding-right: .125rem !important; } -.gt-px-2 { padding-left: .25rem !important; padding-right: .25rem !important; } -.gt-px-3 { padding-left: .5rem !important; padding-right: .5rem !important; } -.gt-px-4 { padding-left: 1rem !important; padding-right: 1rem !important; } -.gt-px-5 { padding-left: 2rem !important; padding-right: 2rem !important; } - -.gt-py-0 { padding-top: 0 !important; padding-bottom: 0 !important; } -.gt-py-1 { padding-top: .125rem !important; padding-bottom: .125rem !important; } -.gt-py-2 { padding-top: .25rem !important; padding-bottom: .25rem !important; } -.gt-py-3 { padding-top: .5rem !important; padding-bottom: .5rem !important; } -.gt-py-4 { padding-top: 1rem !important; padding-bottom: 1rem !important; } -.gt-py-5 { padding-top: 2rem !important; padding-bottom: 2rem !important; } - -.gt-gap-0 { gap: 0 !important; } -.gt-gap-1 { gap: .125rem !important; } -.gt-gap-2 { gap: .25rem !important; } -.gt-gap-3 { gap: .5rem !important; } -.gt-gap-4 { gap: 1rem !important; } -.gt-gap-5 { gap: 2rem !important; } - -.gt-gap-x-0 { column-gap: 0 !important; } -.gt-gap-x-1 { column-gap: .125rem !important; } -.gt-gap-x-2 { column-gap: .25rem !important; } -.gt-gap-x-3 { column-gap: .5rem !important; } -.gt-gap-x-4 { column-gap: 1rem !important; } -.gt-gap-x-5 { column-gap: 2rem !important; } - -.gt-gap-y-0 { row-gap: 0 !important; } -.gt-gap-y-1 { row-gap: .125rem !important; } -.gt-gap-y-2 { row-gap: .25rem !important; } -.gt-gap-y-3 { row-gap: .5rem !important; } -.gt-gap-y-4 { row-gap: 1rem !important; } -.gt-gap-y-5 { row-gap: 2rem !important; } - -.gt-content-center { align-content: center !important; } - -@media @mediaSm { - .gt-db-small { display: block !important; } - .gt-w-100-small { width: 100% !important; } - .gt-js-small { justify-content: flex-start !important; } -} - -/* -gt-hidden must be placed after all other "display: xxx !important" classes to win the chance -do not use: -* "[hidden]" attribute: it's too weak, can not be applied to an element with "display: flex" -* ".hidden" class: it has been polluted by Fomantic UI in many cases -* inline style="display: none": it's difficult to tweak -* jQuery's show/hide/toggle: it can not show/hide elements with "display: xxx !important" -only use: -* this ".gt-hidden" class -* showElem/hideElem/toggleElem functions in "utils/dom.js" -*/ -.gt-hidden { display: none !important; } diff --git a/web_src/less/index.less b/web_src/less/index.less deleted file mode 100644 index 5d55b9291f..0000000000 --- a/web_src/less/index.less +++ /dev/null @@ -1,42 +0,0 @@ -@import "font-awesome/css/font-awesome.css"; - -@import "./variables.less"; -@import "./animations.less"; -@import "./shared/issuelist.less"; -@import "./features/dropzone.less"; -@import "./features/gitgraph.less"; -@import "./features/heatmap.less"; -@import "./features/imagediff.less"; -@import "./features/codeeditor.less"; -@import "./features/projects.less"; -@import "./modules/tippy.less"; -@import "./markup/content.less"; -@import "./markup/codecopy.less"; -@import "./code/linebutton.less"; -@import "./markup/asciicast.less"; - -@import "./chroma/base.less"; -@import "./chroma/light.less"; -@import "./codemirror/base.less"; -@import "./codemirror/light.less"; -@import "./console/console.less"; - -@import "_svg"; -@import "_tribute"; -@import "_font_i18n"; -@import "_base"; -@import "_home"; -@import "_install"; -@import "_form"; -@import "_repository"; -@import "_editor"; -@import "_organization"; -@import "_user"; -@import "_dashboard"; -@import "_admin"; -@import "_explore"; -@import "_review"; -@import "_package"; -@import "_runner"; - -@import "./helpers.less"; diff --git a/web_src/less/markup/asciicast.less b/web_src/less/markup/asciicast.less deleted file mode 100644 index a52b2ae12e..0000000000 --- a/web_src/less/markup/asciicast.less +++ /dev/null @@ -1,8 +0,0 @@ -.asciinema-player-container { - width: 100%; - height: auto; -} - -.asciinema-terminal { - overflow: hidden !important; -} diff --git a/web_src/less/markup/codecopy.less b/web_src/less/markup/codecopy.less deleted file mode 100644 index f6f9894fc1..0000000000 --- a/web_src/less/markup/codecopy.less +++ /dev/null @@ -1,34 +0,0 @@ -.markup .code-block, -.markup .mermaid-block { - position: relative; -} - -.markup .code-copy { - position: absolute; - top: 8px; - right: 6px; - padding: 9px; - visibility: hidden; - animation: fadeout .2s both; -} - -/* adjustments for comment content having only 14px font size */ -.repository.view.issue .comment-list .comment .markup .code-copy { - right: 5px; - padding: 8px; -} - -/* can not use regular transparent button colors for hover and active states because - we need opaque colors here as code can appear behind the button */ -.markup .code-copy:hover { - background: var(--color-secondary) !important; -} -.markup .code-copy:active { - background: var(--color-secondary-dark-1) !important; -} - -.markup .code-block:hover .code-copy, -.markup .mermaid-block:hover .code-copy { - visibility: visible; - animation: fadein .2s both; -} diff --git a/web_src/less/markup/content.less b/web_src/less/markup/content.less deleted file mode 100644 index 725a3d9886..0000000000 --- a/web_src/less/markup/content.less +++ /dev/null @@ -1,559 +0,0 @@ -.markup { - overflow: hidden; - font-size: 16px; - line-height: 1.5 !important; - word-wrap: break-word; - - &.ui.segment { - padding: 3em; - } - - &.file-view { - padding: 2em !important; - } - - > *:first-child { - margin-top: 0 !important; - } - - > *:last-child { - margin-bottom: 0 !important; - } - - a:not([href]) { - color: inherit; - text-decoration: none; - } - - .absent { - color: var(--color-red); - } - - .anchor { - padding-right: 4px; - margin-left: -20px; - line-height: 1; - color: inherit; - } - - .anchor .svg { - vertical-align: middle; - } - - .anchor:focus { - outline: none; - } - - h1 .anchor .svg, - h2 .anchor .svg, - h3 .anchor .svg, - h4 .anchor .svg, - h5 .anchor .svg, - h6 .anchor .svg { - visibility: hidden; - } - - h1:hover .anchor .svg, - h2:hover .anchor .svg, - h3:hover .anchor .svg, - h4:hover .anchor .svg, - h5:hover .anchor .svg, - h6:hover .anchor .svg { - visibility: visible; - } - - h2 .anchor .svg, - h3 .anchor .svg, - h4 .anchor .svg { - position: relative; - top: -2px; - } - - h1, - h2, - h3, - h4, - h5, - h6 { - margin-top: 24px; - margin-bottom: 16px; - font-weight: 600; - line-height: 1.25; - } - - h1 tt, - h1 code, - h2 tt, - h2 code, - h3 tt, - h3 code, - h4 tt, - h4 code, - h5 tt, - h5 code, - h6 tt, - h6 code { - font-size: inherit; - } - - h1 { - padding-bottom: .3em; - font-size: 2em; - border-bottom: 1px solid var(--color-secondary); - } - - h2 { - padding-bottom: .3em; - font-size: 1.5em; - border-bottom: 1px solid var(--color-secondary); - } - - h3 { - font-size: 1.25em; - } - - h4 { - font-size: 1em; - } - - h5 { - font-size: .875em; - } - - h6 { - font-size: .85em; - color: var(--color-text-light-2); - } - - p, - blockquote, - details, - ul, - ol, - dl, - table, - pre { - margin-top: 0; - margin-bottom: 16px; - } - - hr { - height: 4px; - padding: 0; - margin: 16px 0; - background-color: var(--color-secondary); - border: 0; - } - - ul, - ol { - padding-left: 2em; - } - - ul.no-list, - ol.no-list { - padding: 0; - list-style-type: none; - } - - .task-list-item { - list-style-type: none; - position: relative; - line-height: 1.5rem; - min-height: 1.5rem; // to render a checkbox list without content `- [ ]`, we need this min-height to make sure the <li> can be visible - - input[type="checkbox"] { - position: absolute; - top: .25em; - left: -1.6em; - } - - p { - line-height: 1.5rem; - } - } - - .task-list-item + .task-list-item { - margin-top: 3px; - } - - input[type="checkbox"] { - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - position: relative; - border: 1px solid var(--color-secondary); - border-radius: 2px; - background: var(--color-input-background); - height: 14px; - width: 14px; - opacity: 1 !important; // override fomantic on edit preview - pointer-events: auto !important; // override fomantic on edit preview - vertical-align: middle !important; // override fomantic on edit preview - -webkit-print-color-adjust: exact; - color-adjust: exact; - } - - input[type="checkbox"]:not([disabled]):hover, - input[type="checkbox"]:not([disabled]):active { - border-color: var(--color-primary); - } - - input[type="checkbox"]::after { - position: absolute; - left: 0; - top: 0; - bottom: 0; - right: 0; - pointer-events: none; - background: var(--color-text); - mask-size: cover; - -webkit-mask-size: cover; - } - - input[type="checkbox"]:checked::after { - content: ""; - mask-image: var(--checkbox-mask-checked); - -webkit-mask-image: var(--checkbox-mask-checked); - -webkit-print-color-adjust: exact; - color-adjust: exact; - } - - input[type="checkbox"]:indeterminate::after { - content: ""; - mask-image: var(--checkbox-mask-indeterminate); - -webkit-mask-image: var(--checkbox-mask-indeterminate); - } - - ul ul, - ul ol, - ol ol, - ol ul { - margin-top: 0; - margin-bottom: 0; - } - - ol ol, - ul ol { - list-style-type: lower-roman; - } - - li > p { - margin-top: 16px; - } - - li + li { - margin-top: .25em; - } - - dl { - padding: 0; - } - - dl dt { - padding: 0; - margin-top: 16px; - font-size: 1em; - font-style: italic; - font-weight: 600; - } - - dl dd { - padding: 0 16px; - margin-bottom: 16px; - } - - blockquote { - margin-left: 0; - padding: 0 15px; - color: var(--color-text-light-2); - border-left: 4px solid var(--color-secondary); - } - - blockquote > :first-child { - margin-top: 0; - } - - blockquote > :last-child { - margin-bottom: 0; - } - - table { - display: block; - width: 100%; - width: max-content; - max-width: 100%; - overflow: auto; - } - - table th { - font-weight: 600; - } - - table th, - table td { - padding: 6px 13px !important; - border: 1px solid var(--color-secondary) !important; - } - - table tr { - border-top: 1px solid var(--color-secondary); - } - - table tr:nth-child(2n) { - background-color: var(--color-markup-table-row); - } - - img { - max-width: 100%; - box-sizing: initial; - } - - img[align="right"] { - padding-left: 20px; - } - - img[align="left"] { - padding-right: 20px; - } - - .emoji { - max-width: none; - vertical-align: text-top; - } - - span.frame { - display: block; - overflow: hidden; - } - - span.frame > span { - display: block; - float: left; - width: auto; - padding: 7px; - margin: 13px 0 0; - overflow: hidden; - border: 1px solid var(--color-secondary); - } - - span.frame span img { - display: block; - float: left; - } - - span.frame span span { - display: block; - padding: 5px 0 0; - clear: both; - color: var(--color-text); - } - - span.align-center { - display: block; - overflow: hidden; - clear: both; - } - - span.align-center > span { - display: block; - margin: 13px auto 0; - overflow: hidden; - text-align: center; - } - - span.align-center span img { - margin: 0 auto; - text-align: center; - } - - span.align-right { - display: block; - overflow: hidden; - clear: both; - } - - span.align-right > span { - display: block; - margin: 13px 0 0; - overflow: hidden; - text-align: right; - } - - span.align-right span img { - margin: 0; - text-align: right; - } - - span.float-left { - display: block; - float: left; - margin-right: 13px; - overflow: hidden; - } - - span.float-left span { - margin: 13px 0 0; - } - - span.float-right { - display: block; - float: right; - margin-left: 13px; - overflow: hidden; - } - - span.float-right > span { - display: block; - margin: 13px auto 0; - overflow: hidden; - text-align: right; - } - - code, - tt { - padding: .2em .4em; - margin: 0; - font-size: 85%; - white-space: break-spaces; - background-color: var(--color-markup-code-block); - border-radius: 4px; - } - - code br, - tt br { - display: none; - } - - del code { - text-decoration: inherit; - } - - pre > code { - padding: 0; - margin: 0; - font-size: 100%; - white-space: pre-wrap; - word-break: break-all; - overflow-wrap: break-word; - background: transparent; - border: 0; - } - - .highlight { - margin-bottom: 16px; - } - - .highlight pre, - pre { - padding: 16px; - font-size: 85%; - line-height: 1.45; - background-color: var(--color-markup-code-block); - border-radius: 4px; - } - - .highlight pre { - margin-bottom: 0; - word-break: normal; - } - - pre { - word-wrap: normal; - } - - pre code, - pre tt { - display: inline; - max-width: initial; - padding: 0; - margin: 0; - overflow: initial; - line-height: inherit; - word-wrap: normal; - background-color: transparent; - border: 0; - } - - pre code::before, - pre code::after, - pre tt::before, - pre tt::after { - content: normal; - } - - kbd { - display: inline-block; - padding: 3px 5px; - font-size: 11px; - line-height: 10px; - color: var(--color-text-light); - vertical-align: middle; - background-color: var(--color-markup-code-block); - border: 1px solid var(--color-secondary); - border-radius: 3px; - box-shadow: inset 0 -1px 0 var(--color-secondary); - } - - .ui.list .list, - ol.ui.list ol, - ul.ui.list ul { - padding-left: 2em; - } -} - -.repository.wiki.revisions { - .ui.container > .ui.stackable.grid { - -ms-flex-direction: row-reverse; - flex-direction: row-reverse; - - > .header { - margin-top: 0; - - .sub.header { - padding-left: 52px; - word-break: break-word; - } - } - } -} - -.file-revisions-btn { - display: block; - float: left; - margin-bottom: 2px !important; - padding: 11px !important; - margin-right: 10px !important; - - i { - &:extend(.unselectable); - } -} - -.markup-render { - display: block; - border: none; - width: 100%; - height: var(--height-loading); // actual height is set in JS after loading - overflow: hidden; - color-scheme: normal; // match the value inside the iframe to allow it to become transparent -} - -.markup-block-error { - border: 1px solid var(--color-error-border) !important; - margin-bottom: 0 !important; - border-bottom-left-radius: 0 !important; - border-bottom-right-radius: 0 !important; - box-shadow: none !important; - font-size: 85% !important; - white-space: pre-wrap !important; - padding: .5rem 1rem !important; - text-align: left !important; -} - -.markup-block-error + pre { - border-top: none !important; - margin-top: 0 !important; - border-top-left-radius: 0 !important; - border-top-right-radius: 0 !important; -} diff --git a/web_src/less/modules/tippy.less b/web_src/less/modules/tippy.less deleted file mode 100644 index 68d6eb7fa3..0000000000 --- a/web_src/less/modules/tippy.less +++ /dev/null @@ -1,116 +0,0 @@ -/* styles are based on node_modules/tippy.js/dist/tippy.css */ - -// class to hide tippy target elements on page load -.tippy-target { - display: none !important; -} - -[data-tippy-root] { - max-width: calc(100vw - 10px); -} - -.tippy-box { - position: relative; - background-color: var(--color-body); - color: var(--color-secondary-dark-6); - border: 1px solid var(--color-secondary); - border-radius: var(--border-radius); - font-size: 1rem; -} - -.tippy-box[data-theme="tooltip"] { - background-color: var(--color-tooltip-bg); - color: var(--color-tooltip-text); - border: none; -} - -.tippy-box[data-theme="menu"] { - background-color: transparent; - color: var(--color-tooltip-text); -} - -.tippy-box[data-theme="menu"] .ui.menu { - border: none; -} - -.tippy-content { - position: relative; - padding: 1rem; - z-index: 1; -} - -.tippy-box[data-theme="tooltip"] .tippy-content { - padding: .5rem 1rem; -} - -.tippy-box[data-theme="menu"] .tippy-content { - padding: 0; -} - -.tippy-box[data-placement^="top"] > .tippy-svg-arrow { - bottom: 0; -} - -.tippy-box[data-placement^="top"] > .tippy-svg-arrow::after, -.tippy-box[data-placement^="top"] > .tippy-svg-arrow > svg { - top: 16px; - transform: rotate(180deg); -} - -.tippy-box[data-placement^="bottom"] > .tippy-svg-arrow { - top: 0; -} - -.tippy-box[data-placement^="bottom"] > .tippy-svg-arrow > svg { - bottom: 16px; -} - -.tippy-box[data-placement^="left"] > .tippy-svg-arrow { - right: 0; -} - -.tippy-box[data-placement^="left"] > .tippy-svg-arrow::after, -.tippy-box[data-placement^="left"] > .tippy-svg-arrow > svg { - transform: rotate(90deg); - top: calc(50% - 3px); - left: 11px; -} - -.tippy-box[data-placement^="right"] > .tippy-svg-arrow { - left: 0; -} - -.tippy-box[data-placement^="right"] > .tippy-svg-arrow::after, -.tippy-box[data-placement^="right"] > .tippy-svg-arrow > svg { - transform: rotate(-90deg); - top: calc(50% - 3px); - right: 11px; -} - -.tippy-svg-arrow { - width: 16px; - height: 16px; - text-align: initial; -} - -.tippy-svg-arrow, -.tippy-svg-arrow > svg { - position: absolute; -} - -.tippy-svg-arrow-outer { - fill: var(--color-secondary); -} - -.tippy-svg-arrow-inner { - fill: var(--color-body); -} - -.tippy-box[data-theme="tooltip"] .tippy-svg-arrow-inner, -.tippy-box[data-theme="tooltip"] .tippy-svg-arrow-outer { - fill: var(--color-tooltip-bg); -} - -.tippy-box[data-theme="menu"] .tippy-svg-arrow-inner { - fill: var(--color-menu); -} diff --git a/web_src/less/shared/issuelist.less b/web_src/less/shared/issuelist.less deleted file mode 100644 index 9f69d6bb3a..0000000000 --- a/web_src/less/shared/issuelist.less +++ /dev/null @@ -1,167 +0,0 @@ -.issue.list { - list-style: none; - margin-top: 1rem; - - a:not(.label):hover { - color: var(--color-primary) !important; - } - - > .item { - .issue-checkbox { - margin-top: 1px; - } - - .issue-item-icon svg { - margin-right: .75rem; - margin-top: 1px; - } - - .issue-item-icons-right > * + * { - margin-left: .5rem; - } - - .issue-item-main { - width: 100%; - } - - .action-item-main { - width: 80%; - } - - .issue-item-right { - width: 15%; - } - - .issue-item-top-row { - max-width: 100%; - color: var(--color-text); - font-size: 16px; - min-width: 0; - font-weight: 600; - a.index { - max-width: fit-content; - display: -webkit-box; - -webkit-box-orient: vertical; - -webkit-line-clamp: 2; - overflow: hidden; - word-break:break-all; - } - } - - .labels-list { - position: relative; - top: -1.5px; - } - - .issue-item-bottom-row { - font-size: 13px; - } - - .title { - color: var(--color-text); - word-break: break-word; - } - - .issue-item-icon-right { - min-width: 2rem; - } - - .assignee { - position: relative; - top: -2px; - } - - .assignee img { - width: 20px; - height: 20px; - margin-right: 2px; - } - - .desc { - color: var(--color-text-light-2); - - a { - color: inherit; - } - - .time-since, - a { - margin-left: .25rem; - margin-right: .25rem; - } - - .waiting, - .approvals, - .rejects { - padding-left: 5px; - } - - .checklist { - padding-left: 5px; - - progress { - margin-left: 2px; - width: 80px; - height: 6px; - display: inline-block; - border-radius: 3px; - vertical-align: 2px !important; - } - - progress::-webkit-progress-value { - background-color: var(--color-secondary-dark-4); - } - - progress::-moz-progress-bar { - background-color: var(--color-secondary-dark-4); - } - } - - .conflicting { - padding-left: 5px; - } - - .due-date { - padding-left: 5px; - } - - a.milestone, - a.project { - margin-left: 5px; - } - - a.ref { - margin-left: 8px; - - span { - margin-right: -4px; - } - } - - .overdue { - color: var(--color-red); - } - } - } - - .branches { - display: inline-flex; - padding: 0 4px; - - .branch { - background-color: var(--color-secondary); - border-radius: 3px; - } - - .truncated-name { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - max-width: 10em; - } - } - - > .item + .item { - border-top: 1px solid var(--color-secondary); - } -} diff --git a/web_src/less/standalone/swagger.less b/web_src/less/standalone/swagger.less deleted file mode 100644 index 3b902483d8..0000000000 --- a/web_src/less/standalone/swagger.less +++ /dev/null @@ -1,31 +0,0 @@ -html { - box-sizing: border-box; - overflow-y: scroll; -} - -*, -*::before, -*::after { - box-sizing: inherit; -} - -body { - margin: 0; - background: #fff; -} - -.swagger-back-link { - color: #1f69c0; - text-decoration: none; - position: absolute; - top: 1rem; - right: 1.5rem; - display: flex; - align-items: center; -} - -.swagger-back-link svg { - color: inherit; - fill: currentcolor; - margin-right: .5rem; -} diff --git a/web_src/less/themes/theme-arc-green.less b/web_src/less/themes/theme-arc-green.less deleted file mode 100644 index 17b8f9bae0..0000000000 --- a/web_src/less/themes/theme-arc-green.less +++ /dev/null @@ -1,200 +0,0 @@ -@import "../chroma/base.less"; -@import "../chroma/dark.less"; -@import "../codemirror/dark.less"; - -:root { - --is-dark-theme: true; - --color-primary: #87ab63; - --color-primary-contrast: #ffffff; - --color-primary-dark-1: #93b373; - --color-primary-dark-2: #9fbc82; - --color-primary-dark-3: #abc492; - --color-primary-dark-4: #b7cda1; - --color-primary-dark-5: #cfddc1; - --color-primary-dark-6: #e7eee0; - --color-primary-dark-7: #f8faf6; - --color-primary-light-1: #7a9e55; - --color-primary-light-2: #6c8c4c; - --color-primary-light-3: #5f7b42; - --color-primary-light-4: #516939; - --color-primary-light-5: #364626; - --color-primary-light-6: #1b2313; - --color-primary-light-7: #080b06; - --color-primary-alpha-10: #87ab6319; - --color-primary-alpha-20: #87ab6333; - --color-primary-alpha-30: #87ab634b; - --color-primary-alpha-40: #87ab6366; - --color-primary-alpha-50: #87ab6380; - --color-primary-alpha-60: #87ab6399; - --color-primary-alpha-70: #87ab63b3; - --color-primary-alpha-80: #87ab63cc; - --color-primary-alpha-90: #87ab63e1; - --color-secondary: #454a57; - --color-secondary-dark-1: #505665; - --color-secondary-dark-2: #5b6273; - --color-secondary-dark-3: #71798e; - --color-secondary-dark-4: #7f8699; - --color-secondary-dark-5: #8c93a4; - --color-secondary-dark-6: #9aa0af; - --color-secondary-dark-7: #a8adba; - --color-secondary-dark-8: #b6bac5; - --color-secondary-dark-9: #c4c7d0; - --color-secondary-dark-10: #d2d4db; - --color-secondary-dark-11: #dfe1e6; - --color-secondary-dark-12: #edeef1; - --color-secondary-dark-13: #fbfbfc; - --color-secondary-light-1: #373b46; - --color-secondary-light-2: #292c34; - --color-secondary-light-3: #1c1e23; - --color-secondary-light-4: #0e0f11; - --color-secondary-alpha-10: #454a5719; - --color-secondary-alpha-20: #454a5733; - --color-secondary-alpha-30: #454a574b; - --color-secondary-alpha-40: #454a5766; - --color-secondary-alpha-50: #454a5780; - --color-secondary-alpha-60: #454a5799; - --color-secondary-alpha-70: #454a57b3; - --color-secondary-alpha-80: #454a57cc; - --color-secondary-alpha-90: #454a57e1; - /* colors */ - --color-red: #cc4848; - --color-orange: #cc580c; - --color-yellow: #cc9903; - --color-olive: #91a313; - --color-green: #87ab63; - --color-teal: #00918a; - --color-blue: #3a8ac6; - --color-violet: #906ae1; - --color-purple: #b259d0; - --color-pink: #d22e8b; - --color-brown: #a47252; - --color-grey: #9ea2aa; - --color-black: #1e222e; - /* light variants - produced via Sass scale-color(color, $lightness: -10%) */ - --color-red-light: #c23636; - --color-orange-light: #b84f0b; - --color-yellow-light: #b88a03; - --color-olive-light: #839311; - --color-green-light: #7a9e55; - --color-teal-light: #00837c; - --color-blue-light: #347cb3; - --color-violet-light: #7b4edb; - --color-purple-light: #a742c9; - --color-pink-light: #be297d; - --color-brown-light: #94674a; - --color-grey-light: #8d919b; - --color-black-light: #1b1f29; - /* other colors */ - --color-gold: #b1983b; - --color-white: #ffffff; - --color-diff-removed-word-bg: #6f3333; - --color-diff-added-word-bg: #3c653c; - --color-diff-removed-row-bg: #3c2626; - --color-diff-moved-row-bg: #818044; - --color-diff-added-row-bg: #283e2d; - --color-diff-removed-row-border: #634343; - --color-diff-moved-row-border: #bcca6f; - --color-diff-added-row-border: #314a37; - --color-diff-inactive: #353846; - --color-error-border: #a04141; - --color-error-bg: #522; - --color-error-bg-active: #744; - --color-error-bg-hover: #633; - --color-error-text: #f9cbcb; - --color-success-border: #458a57; - --color-success-bg: #284034; - --color-success-text: #6cc664; - --color-warning-border: #bb9d00; - --color-warning-bg: #3a3a30; - --color-warning-text: #fbbd08; - --color-info-border: #306090; - --color-info-bg: #26354c; - --color-info-text: #38a8e8; - --color-red-badge: #db2828; - --color-red-badge-bg: #db28281a; - --color-red-badge-hover-bg: #db28284d; - --color-green-badge: #21ba45; - --color-green-badge-bg: #21ba451a; - --color-green-badge-hover-bg: #21ba454d; - --color-yellow-badge: #fbbd08; - --color-yellow-badge-bg: #fbbd081a; - --color-yellow-badge-hover-bg: #fbbd084d; - --color-orange-badge: #f2711c; - --color-orange-badge-bg: #f2711c1a; - --color-orange-badge-hover-bg: #f2711c4d; - --color-git: #f05133; - /* target-based colors */ - --color-body: #383c4a; - --color-box-header: #404652; - --color-box-body: #2a2e3a; - --color-box-body-highlight: #353945; - --color-text-dark: #dbe0ea; - --color-text: #bbc0ca; - --color-text-light: #a6aab5; - --color-text-light-1: #979ba6; - --color-text-light-2: #8a8e99; - --color-text-light-3: #707687; - --color-footer: #2e323e; - --color-timeline: #4c525e; - --color-input-text: #d5dbe6; - --color-input-background: #232933; - --color-input-toggle-background: #454a57; - --color-input-border: #454a57; - --color-input-border-hover: #505667; - --color-navbar: #2a2e3a; - --color-navbar-transparent: #2a2e3a00; - --color-light: #00000028; - --color-light-mimic-enabled: rgba(0, 0, 0, calc(40 / 255 * 222 / 255 / var(--opacity-disabled))); - --color-light-border: #ffffff28; - --color-hover: #ffffff10; - --color-active: #ffffff16; - --color-menu: #2e323e; - --color-card: #2e323e; - --color-markup-table-row: #ffffff06; - --color-markup-code-block: #ffffff0d; - --color-button: #353846; - --color-code-bg: #2a2e3a; - --color-code-sidebar-bg: #2e323e; - --color-shadow: #00000060; - --color-secondary-bg: #2a2e3a; - --color-text-focus: #fff; - --color-expand-button: #3c404d; - --color-placeholder-text: #6a737d; - --color-editor-line-highlight: var(--color-primary-light-5); - --color-project-board-bg: var(--color-secondary-light-2); - --color-caret: var(--color-text); /* should ideally be --color-text-dark, see #15651 */ - --color-reaction-bg: #ffffff12; - --color-reaction-active-bg: var(--color-primary-alpha-40); - --color-header-bar: #2e323e; - --color-label-active-bg: #4c525e; - --color-accent: var(--color-primary-light-1); - --color-small-accent: var(--color-primary-light-5); - --color-active-line: #534d1b; - - accent-color: var(--color-accent); - color-scheme: dark; -} - -/* invert emojis that are hard to read otherwise */ -.emoji[aria-label="check mark"], -.emoji[aria-label="currency exchange"], -.emoji[aria-label="TOP arrow"], -.emoji[aria-label="END arrow"], -.emoji[aria-label="ON! arrow"], -.emoji[aria-label="SOON arrow"], -.emoji[aria-label="heavy dollar sign"], -.emoji[aria-label="copyright"], -.emoji[aria-label="registered"], -.emoji[aria-label="trade mark"], -.emoji[aria-label="multiply"], -.emoji[aria-label="plus"], -.emoji[aria-label="minus"], -.emoji[aria-label="divide"], -.emoji[aria-label="curly loop"], -.emoji[aria-label="double curly loop"], -.emoji[aria-label="wavy dash"], -.emoji[aria-label="paw prints"], -.emoji[aria-label="musical note"], -.emoji[aria-label="musical notes"] { - filter: invert(100%) hue-rotate(180deg); -} diff --git a/web_src/less/themes/theme-auto.less b/web_src/less/themes/theme-auto.less deleted file mode 100644 index f49e194e1d..0000000000 --- a/web_src/less/themes/theme-auto.less +++ /dev/null @@ -1,3 +0,0 @@ -@media (prefers-color-scheme: dark) { - @import "theme-arc-green.less"; -} diff --git a/web_src/less/variables.less b/web_src/less/variables.less deleted file mode 100644 index 23f6ac6de9..0000000000 --- a/web_src/less/variables.less +++ /dev/null @@ -1,14 +0,0 @@ -// here a standard set of media queries is defined, that is compatible with the -// responsive grid used in fomantic css. As there only is a precompiled build -// of fomantic checked in (since 946bbbe), we can't use their less variables -// here, but these breakpoints shouldn't change in the foreseeable future. - -@mediaMdAndUp: ~"(min-width: 768px)"; -@mediaMdAndDown: ~"(max-width: 991px)"; -@mediaLgAndUp: ~"(min-width: 992px)"; -@mediaLgAndDown: ~"(max-width: 1200px)"; - -@mediaSm: ~"(max-width: 767px)"; -@mediaMd: @mediaMdAndUp and @mediaMdAndDown; -@mediaLg: @mediaLgAndUp and @mediaLgAndDown; -@mediaXl: ~"(min-width: 1201px)"; |