Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
aazuspan committed Nov 25, 2022
2 parents d887864 + 80ed21d commit d99ad16
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 34 deletions.
12 changes: 6 additions & 6 deletions eerepr/html.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,11 @@ def convert_to_html(obj: Any, key=None) -> str:
elif isinstance(obj, dict):
return dict_to_html(obj, key)

key_html = f"<span class='eerepr-key'>{key}:</span>" if key is not None else ""
key_html = f"<span class='ee-k'>{key}:</span>" if key is not None else ""
return (
"<li class='eerepr-terminal'>"
"<li>"
f"{key_html}"
f"<span class='eerepr-val'>{obj}</span>"
f"<span class='ee-v'>{obj}</span>"
"</li>"
)

Expand Down Expand Up @@ -80,9 +80,9 @@ def _make_collapsible_li(header, children) -> str:
"""Package a header and children into a collapsible list element"""
return (
"<li>"
f"<label class='eerepr-header-closed'>{header}"
f"<input type='checkbox' class='eerepr-collapser'></label>"
f"<ul class='eerepr-list'>{''.join(children)}</ul>"
f"<label class='ee-shut'>{header}"
f"<input type='checkbox' class='ee-toggle'></label>"
f"<ul>{''.join(children)}</ul>"
"</li>"
)

Expand Down
2 changes: 1 addition & 1 deletion eerepr/repr.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ def _repr_html_(obj: Union[ee.Element, ee.ComputedObject]) -> str:
return (
"<div>"
f"<style>{css}</style>"
f"<div class='eerepr'>"
f"<div class='ee'>"
f"<ul>{body}</ul>"
"</div>"
f"<script>{js}</script>"
Expand Down
38 changes: 15 additions & 23 deletions eerepr/static/css/style.css
Original file line number Diff line number Diff line change
@@ -1,10 +1,3 @@
/*
This file was modified from the xarray stylesheet, which is licensed under the
Apache License, Version 2.0 (the "License").
https://github.com/pydata/xarray/blob/main/xarray/static/css/style.css
*/

:root {
--font-color-primary: var(--jp-content-font-color0, rgba(0, 0, 0, 1));
--font-color-secondary: var(--jp-content-font-color2, rgba(0, 0, 0, 0.6));
Expand All @@ -27,7 +20,7 @@ body.vscode-dark {
--background-color-row-odd: #313131;
}

.eerepr {
.ee {
padding: 1em;
line-height: 1.5em;
min-width: 300px;
Expand All @@ -38,62 +31,61 @@ body.vscode-dark {
font-family: monospace;
}

.eerepr li {
.ee li {
list-style-type: none;
}

.eerepr ul {
.ee ul {
padding-left: 1.5em !important;
margin: 0;
}

/* Prevent indenting on the root node */
.eerepr > ul {
.ee > ul {
padding-left: 0 !important;
}

.eerepr-header-open,
.eerepr-header-closed {
.ee-open,
.ee-shut {
color: var(--font-color-secondary);
cursor: pointer;
margin: 0;
}

.eerepr-header-open:hover,
.eerepr-header-closed:hover {
.ee-open:hover,
.ee-shut:hover {
color: var(--font-color-primary);
}

.eerepr-key {
.ee-k {
color: var(--font-color-accent);
margin-right: 6px;
}

.eerepr-val {
.ee-v {
color: var(--font-color-primary);
}

.eerepr-collapser {
.ee-toggle {
display: none;
}

.eerepr-header-closed + .eerepr-list {
.ee-shut + ul {
display: none;
}

.eerepr-header-open + .eerepr-list {
.ee-open + ul {
display: block;
}

.eerepr-header-closed::before {
.ee-shut::before {
display: inline-block;
content: "▼";
margin-right: 6px;
transform: rotate(-90deg);
transition: transform 0.2s;
}

.eerepr-header-open::before {
.ee-open::before {
transform: rotate(0deg);
display: inline-block;
content: "▼";
Expand Down
6 changes: 2 additions & 4 deletions eerepr/static/js/script.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
function toggleHeader() {
const parent = this.parentElement;
const open = "eerepr-header-open";
const closed = "eerepr-header-closed";
parent.className = parent.className === open ? closed : open;
parent.className = parent.className === "ee-open" ? "ee-shut" : "ee-open";
}

for (let c of document.getElementsByClassName("eerepr-collapser")) {
for (let c of document.getElementsByClassName("ee-toggle")) {
c.onclick = toggleHeader;
}

0 comments on commit d99ad16

Please sign in to comment.