Current section
Files
Jump to
Current section
Files
priv/lib-src/css/development.scss
#trace-status span {
display: none;
}
.trace-stopped #trace-status span.trace-stopped {
display: inline-block;
}
.trace-stopped .trace-loading {
visibility: hidden;
}
.trace-session #trace-status span.trace-session {
display: inline-block;
}
.trace-all #trace-status span.trace-all {
display: inline-block;
}
.trace-other #trace-status span.trace-other {
display: inline-block;
}
#graphviz_svg {
.node {
cursor: pointer;
&:hover {
polygon {
fill: #f0f0fe;
}
}
}
}
#trace-frame {
position: absolute;
top: 0;
left: -1000px;
width: 800px;
height: 800px;
}
/* Template code highlighting */
body:has(.development-template-overlay) {
overflow: hidden;
}
body.template-debug-resizing {
cursor: col-resize;
user-select: none;
}
.development-template-overlay {
.modal-overlay-close {
position: absolute;
background-color: white;
color: black;
border: 1px solid black;
border-radius: 24px;
right: 4px;
top: 4px;
height: 48px;
width: 48px;
font-size: 48px;
line-height: 40px;
font-weight: 100;
cursor: pointer;
display: table-cell;
vertical-align: middle;
text-align: center;
&:hover {
background-color: #ccf;
}
}
.template-debug {
width: 100%;
height: 100%;
display: grid;
grid-template-columns: minmax(260px, 2fr) 8px minmax(280px, 1fr);
grid-template-rows: auto 1fr;
.template-debug-filename {
grid-row: 1;
grid-column: 1 / 4;
display: flex;
align-items: center;
gap: 8px;
min-width: 0;
overflow: visible;
padding: 4px 10px;
font-size: 12px;
font-family: monospace;
background-color: black;
color: white;
.template-debug-filename-path {
flex: 1 1 auto;
min-width: 0;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.template-debug-back {
order: 0;
flex: 0 0 28px;
max-width: 28px;
}
.template-debug-nav {
order: 1;
flex: 0 0 36px;
max-width: 36px;
}
.template-debug-filename-path {
order: 2;
}
}
.template-debug-source {
grid-row: 2;
grid-column: 1;
min-height: 0;
min-width: 0;
overflow: scroll;
.template-compiler-highlight {
min-height: 100%;
margin: 0;
box-sizing: border-box;
border-radius: 0 !important;
}
.template-compiler-line.highlighted {
background-color: rgba(255, 255, 0, 0.7);
}
.template-compiler-nav-anchor {
display: inline-block;
vertical-align: middle;
position: relative;
}
}
.template-debug-splitter {
grid-row: 2;
grid-column: 2;
cursor: col-resize;
touch-action: none;
background: #d0d7e2;
border-left: 1px solid #bbc4d1;
border-right: 1px solid #bbc4d1;
&:hover {
background: #b9c6d8;
}
}
.template-debug-data {
grid-row: 2;
grid-column: 3;
min-height: 0;
min-width: 0;
overflow: scroll;
.template-debug-data-options {
padding: 10px;
}
}
#template-debug-data {
border-top: 1px solid #ddd;
> p {
padding: 10px;
}
> details > summary {
color: white;
background-color: black;
padding: 2px 8px;
}
table + table {
border-top: 4px dashed #999;
}
table {
margin: 0;
border-bottom: none;
}
pre {
border: none;
background: transparent;
padding: 0;
margin: 0;
}
.template-debug-value {
font-family: monospace;
font-size: 12px;
line-height: 1.45;
details {
margin: 0;
}
summary {
cursor: pointer;
list-style-position: inside;
&::-webkit-details-marker {
margin-right: 4px;
}
}
}
.template-debug-term {
word-break: break-word;
&.is-atom,
&.is-number {
color: #1a3d7c;
}
&.is-binary,
&.is-string {
color: #0d6b3c;
}
&.is-tag,
&.is-punctuation,
&.is-key {
color: #6a3fb0;
}
&.is-special {
color: #a53a18;
}
&.is-null {
color: #777;
font-style: italic;
}
}
.template-debug-term-children {
margin-left: 18px;
padding: 6px 0 0;
}
.template-debug-term-row {
display: flex;
align-items: flex-start;
gap: 8px;
padding: 1px 0;
}
.template-debug-term-label {
flex: 0 0 auto;
color: #666;
}
.template-debug-term-value {
min-width: 0;
}
}
.template-debug-dropdown {
position: relative;
min-width: 0;
margin-right: 4px;
&.is-open {
.template-debug-dropdown-menu {
display: block;
}
}
}
.template-debug-nav,
.template-debug-line-nav,
.template-debug-back {
min-width: 0;
}
.template-debug-dropdown-toggle,
.template-debug-back {
min-width: 0;
width: 100%;
font-family: monospace;
font-size: 10px;
line-height: 1.2;
height: 20px;
padding: 0 14px 0 4px;
border: 1px solid #777;
border-radius: 3px;
background: #fff;
color: #111;
text-align: left;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
position: relative;
}
.template-debug-back {
text-align: center;
padding: 0 4px;
&:disabled {
color: #999;
cursor: default;
}
}
.template-debug-dropdown-toggle {
&:after {
content: "▾";
position: absolute;
right: 4px;
top: 2px;
color: #666;
pointer-events: none;
}
}
.template-debug-dropdown-menu {
display: none;
position: absolute;
top: calc(100% + 2px);
left: 0;
z-index: 20;
min-width: 170px;
max-width: 320px;
max-height: 260px;
overflow: auto;
padding: 3px 0;
background: #fff;
border: 1px solid #777;
border-radius: 3px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}
.template-debug-dropdown-item,
.template-debug-dropdown-empty,
.template-debug-dropdown-header {
display: block;
width: 100%;
padding: 3px 6px;
font-family: monospace;
font-size: 10px;
line-height: 1.35;
text-align: left;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.template-debug-dropdown-item {
border: 0;
background: transparent;
color: #111;
&:hover {
background: #e8eefc;
}
}
.template-debug-dropdown-empty {
color: #666;
}
.template-debug-dropdown-header {
color: #666;
font-weight: 700;
border-top: 1px solid #e2e8f0;
margin-top: 2px;
padding-top: 5px;
&:first-child {
border-top: 0;
margin-top: 0;
padding-top: 3px;
}
}
.template-debug-line-nav {
margin-left: 6px;
width: 34px;
max-width: 34px;
vertical-align: middle;
}
}
}