overleaf/services/web/frontend/stylesheets/app/editor/logs.less
Antoine Clausse 30860ae9f9 [web] Migrate PDF Logs to BS5 (#21062)
* [web] Migrate Logs components JSX to Bootstrap 5

* [web] Migrate logs.less to logs.scss

* [web] Remove unused class names

* [storybook] Define default Bootstrap version in Storybook

This prevents some warning in the console

* [storybook] Update pdf-preview.stories.jsx

* [storybook] Add pdf-log-entry.stories.tsx

* [storybook] Force re-renders when switching BS version

* [web] Keep files dropdown menu in bounds

* [web] Make files dropdown items not bold in BS5

* [web] Revert unrelated change

* [web] Fixup PreviewLogsPaneMaxEntries

* [web] Add style for log-entry-content-link

* [web] Replace log-entry by OLNotification in `PdfCodeCheckFailedNotice`

* [web] Use `BootstrapVersionSwitcher` instead of `isBootstrap5`

* [web] Rename `DropdownBS3` to `BS3Dropdown`

* [web] Reuse variables for `toolbar-height` and `toolbar-small-height`

* [web] Set `id` on `DropdownToggle` not `Dropdown`

* [web] Set `log-entry-btn-expand-collapse` in BS3 only

* [web] Remove `block: true` from StartFreeTrialButton in BS3

* [web] Remove unnecessary CSS in `.log-entry-header-link`

* [web] Use semantic color names

* Migrate the downloadable pdf file list to Bootstrap 5

* Remove nested BootstrapVersionSwitcher, fix "key" prop

* Update roles to: `<li role="menuitem">` `<a role="link">`

* Update `log-entry-header-link`: variant ghost and fix colors

---------

Co-authored-by: Rebeka <o.dekany@gmail.com>
GitOrigin-RevId: 89848970ab5d8a8c135335386caf24363f69a34c
2024-10-23 08:06:32 +00:00

189 lines
3.4 KiB
Text

.logs-pane {
.full-size;
top: @pdf-top-offset;
overflow-y: auto;
background-color: @logs-pane-bg;
z-index: 11; // above the PDF viewer + controls
}
.logs-pane-content {
display: flex;
flex-direction: column;
padding: @padding-sm;
min-height: 100%;
}
.logs-pane-actions {
display: flex;
justify-content: flex-end;
padding: @padding-sm 0;
flex-grow: 1;
align-items: flex-end;
}
.logs-pane-actions-clear-cache {
.no-outline-ring-on-click;
margin-right: @margin-sm;
}
.log-entry {
margin-bottom: @margin-sm;
border-radius: @border-radius-base;
overflow: hidden;
}
.log-entry-header {
padding: 3px @padding-sm;
display: flex;
align-items: flex-start;
border-radius: @border-radius-base @border-radius-base 0 0;
color: #fff;
}
.log-entry-header-error {
background-color: @ol-red;
}
.log-entry-header-link-error {
.btn-alert-variant(@ol-red);
}
.log-entry-header-warning {
background-color: @orange;
}
.log-entry-header-link-warning {
.btn-alert-variant(@orange);
}
.log-entry-header-typesetting {
background-color: @ol-blue;
}
.log-entry-header-link-typesetting {
.btn-alert-variant(@ol-blue);
}
.log-entry-header-raw,
.log-entry-header-info {
background-color: @ol-blue-gray-4;
}
.log-entry-header-link-raw,
.log-entry-header-link-info {
.btn-alert-variant(@ol-blue-gray-4);
}
.log-entry-header-success {
background-color: @green;
}
.log-entry-header-link-success {
.btn-alert-variant(@green);
}
.log-entry-header-title,
.log-entry-header-link {
font-family: @font-family-sans-serif;
font-size: @font-size-base;
line-height: @line-height-base;
font-weight: 700;
flex-grow: 1;
margin: 0;
color: #fff;
}
.log-entry-header-icon-container {
margin-right: @margin-sm;
}
.log-entry-header-link {
display: flex;
align-items: center;
border-radius: 9999px;
border-width: 0;
flex-grow: 0;
text-align: right;
margin-left: @margin-sm;
max-width: 33%;
padding: 0 @padding-xs;
&:hover,
&:focus {
text-decoration: none;
outline: 0;
color: #fff;
}
&:focus {
text-decoration: none;
}
}
.log-entry-header-link-location {
white-space: nowrap;
direction: rtl;
text-overflow: ellipsis;
overflow: hidden;
padding: 0 @padding-xs;
}
.log-entry-content {
background-color: #fff;
padding: @padding-sm;
}
.log-entry-content-raw-container {
background-color: @ol-blue-gray-1;
border-radius: @border-radius-base;
overflow: hidden;
margin-top: @margin-sm;
}
.log-entry-content-raw {
font-size: @font-size-extra-small;
color: @ol-blue-gray-4;
padding: @padding-sm;
margin: 0;
white-space: pre-wrap;
}
.log-entry-content-button-container {
position: relative;
height: 40px;
margin-top: 0;
transition:
margin 0.15s ease-in-out,
opacity 0.15s ease-in-out;
padding-bottom: @padding-sm;
text-align: center;
background-image: linear-gradient(0, @ol-blue-gray-1, transparent);
border-radius: 0 0 @border-radius-base @border-radius-base;
}
.log-entry-content-button-container-collapsed {
margin-top: -40px;
}
.log-entry-btn-expand-collapse {
position: relative;
z-index: 1;
.no-outline-ring-on-click;
}
.log-entry-formatted-content,
.log-entry-content-link {
font-size: @font-size-small;
margin-top: @margin-xs;
&:first-of-type {
margin-top: 0;
}
}
.log-location-tooltip {
word-break: break-all;
&.tooltip.in {
opacity: 1;
}
& > .tooltip-inner {
max-width: 450px;
text-align: left;
}
}