Maharshi Gor
Reduces white spaces in panel gaps and tab margins.
97fcd0c
leaderboard_css = """
.markdown-text {
font-size: 16px !important;
}
#models-to-add-text {
font-size: 18px !important;
}
#citation-button span {
font-size: 16px !important;
}
#citation-button textarea {
font-size: 16px !important;
}
#citation-button > label > button {
margin: 6px;
transform: scale(1.3);
}
#leaderboard-table {
margin-top: 15px
}
#leaderboard-table-lite {
margin-top: 15px
}
#search-bar-table-box > div:first-child {
background: none;
border: none;
}
#search-bar {
padding: 0px;
}
/* Limit the width of the first AutoEvalColumn so that names don't expand too much */
#leaderboard-table td:nth-child(2),
#leaderboard-table th:nth-child(2) {
max-width: 400px;
overflow: auto;
white-space: nowrap;
}
#scale-logo {
border-style: none !important;
box-shadow: none;
display: block;
margin-left: auto;
margin-right: auto;
max-width: 600px;
}
#scale-logo .download {
display: none;
}
#filter_type{
border: 0;
padding-left: 0;
padding-top: 0;
}
#filter_type label {
display: flex;
}
#filter_type label > span{
margin-top: var(--spacing-lg);
margin-right: 0.5em;
}
#filter_type label > .wrap{
width: 103px;
}
#filter_type label > .wrap .wrap-inner{
padding: 2px;
}
#filter_type label > .wrap .wrap-inner input{
width: 1px
}
#filter-columns-type{
border:0;
padding:0.5;
}
#filter-columns-size{
border:0;
padding:0.5;
}
#box-filter > .form{
border: 0
}
"""
workflow_json_css = """
/* Workflow JSON styling */
.workflow-json-container {
margin-top: 20px;
margin-bottom: 30px;
}
.workflow-json {
border: 1px solid #ddd;
border-radius: 8px;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
.workflow-json pre {
max-height: 500px;
overflow-y: auto;
}
"""
get_window_url_params = """
function(url_params) {
const params = new URLSearchParams(window.location.search);
url_params = Object.fromEntries(params);
return url_params;
}
"""
fonts_header = """
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Shantell+Sans:ital,wght@0,300..800;1,300..800&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&display=swap" rel="stylesheet">
"""
js_head = """
<script>
const gradioApp = document.getElementsByTagName('gradio-app')[0];
console.log("Gradio app:", gradioApp);
console.log(gradioApp.querySelectorAll('.token'));
console.log(document.querySelectorAll('.token'));
// Function to trigger Python callback
const setHiddenIndex = (index) => {
console.log("Setting hidden index to:", index);
const hiddenIndex = gradioApp.querySelector("#hidden-index textarea");
if (hiddenIndex) {
hiddenIndex.value = index;
let event = new Event("input", { bubbles: true});
Object.defineProperty(event, "target", { value: hiddenIndex});
hiddenIndex.dispatchEvent(event);
}
};
// Add event listeners to all tokens
function setupTokenListeners() {
const tokens = gradioApp.querySelectorAll('.token');
console.log("Tokens:", tokens);
tokens.forEach(token => {
token.addEventListener('mouseover', function() {
const index = parseInt(this.getAttribute('data-index'));
console.log("Mouseover token index:", index);
// Reset all tokens
gradioApp.querySelectorAll('.token').forEach(el => {
el.classList.remove('highlighted');
});
// Highlight this token
this.classList.add('highlighted');
// Update the hidden index to trigger the Python callback
setHiddenIndex(index);
});
});
}
console.log("Preamble complete");
document.addEventListener("DOMContentLoaded", function() {
// Setup initial listeners
console.log("DOM fully loaded and parsed");
setupTokenListeners();
// Setup a mutation observer to handle dynamically added tokens
const observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
if (mutation.addedNodes.length) {
setupTokenListeners();
}
});
});
// Start observing the token container for changes
const tokenContainer = gradioApp.querySelector('.token-container');
console.log("Token container:", tokenContainer);
if (tokenContainer) {
observer.observe(tokenContainer.parentNode, { childList: true, subtree: true });
}
console.log("Listener setup complete");
});
</script>
"""