spr migrated books, and tester

This commit is contained in:
buenosairesam
2025-12-31 09:07:27 -03:00
parent 21b8eab3cb
commit cccc6b5a93
136 changed files with 15763 additions and 472 deletions

View File

@@ -1,6 +1,6 @@
// Soleprint Wrapper - Sidebar Logic
// Pawprint Wrapper - Sidebar Logic
class SoleprintSidebar {
class PawprintSidebar {
constructor() {
this.config = null;
this.currentUser = null;
@@ -30,12 +30,12 @@ class SoleprintSidebar {
try {
const response = await fetch('/wrapper/config.json');
this.config = await response.json();
console.log('[Soleprint] Config loaded:', this.config.room_name);
console.log('[Pawprint] Config loaded:', this.config.nest_name);
} catch (error) {
console.error('[Soleprint] Failed to load config:', error);
console.error('[Pawprint] Failed to load config:', error);
// Use default config
this.config = {
room_name: 'default',
nest_name: 'default',
wrapper: {
environment: {
backend_url: 'http://localhost:8000',
@@ -49,7 +49,7 @@ class SoleprintSidebar {
createSidebar() {
const sidebar = document.createElement('div');
sidebar.id = 'soleprint-sidebar';
sidebar.id = 'pawprint-sidebar';
sidebar.innerHTML = this.getSidebarHTML();
document.body.appendChild(sidebar);
this.sidebar = sidebar;
@@ -59,7 +59,7 @@ class SoleprintSidebar {
const button = document.createElement('button');
button.id = 'sidebar-toggle';
button.innerHTML = '<span class="icon">◀</span>';
button.title = 'Toggle Soleprint Sidebar (Ctrl+Shift+P)';
button.title = 'Toggle Pawprint Sidebar (Ctrl+Shift+P)';
document.body.appendChild(button);
this.toggleBtn = button;
}
@@ -69,8 +69,8 @@ class SoleprintSidebar {
return `
<div class="sidebar-header">
<h2>🐾 Soleprint</h2>
<div class="room-name">${this.config.room_name}</div>
<h2>🐾 Pawprint</h2>
<div class="nest-name">${this.config.nest_name}</div>
</div>
<div class="sidebar-content">
@@ -83,7 +83,7 @@ class SoleprintSidebar {
<div id="current-user-display" style="display: none;">
<div class="current-user">
Logged in as: <strong id="current-username"></strong>
<button class="logout-btn" onclick="soleprintSidebar.logout()">
<button class="logout-btn" onclick="pawprintSidebar.logout()">
Logout
</button>
</div>
@@ -91,7 +91,7 @@ class SoleprintSidebar {
<div class="user-cards">
${users.map(user => `
<div class="user-card" data-user-id="${user.id}" onclick="soleprintSidebar.loginAs('${user.id}')">
<div class="user-card" data-user-id="${user.id}" onclick="pawprintSidebar.loginAs('${user.id}')">
<div class="icon">${user.icon}</div>
<div class="info">
<span class="label">${user.label}</span>
@@ -119,7 +119,7 @@ class SoleprintSidebar {
</div>
<div class="sidebar-footer">
Soleprint Dev Tools
Pawprint Dev Tools
</div>
`;
}
@@ -144,11 +144,11 @@ class SoleprintSidebar {
saveSidebarState() {
const isExpanded = this.sidebar.classList.contains('expanded');
localStorage.setItem('soleprint_sidebar_expanded', isExpanded);
localStorage.setItem('pawprint_sidebar_expanded', isExpanded);
}
loadSidebarState() {
const isExpanded = localStorage.getItem('soleprint_sidebar_expanded') === 'true';
const isExpanded = localStorage.getItem('pawprint_sidebar_expanded') === 'true';
if (isExpanded) {
this.sidebar.classList.add('expanded');
}
@@ -214,7 +214,7 @@ class SoleprintSidebar {
}, 1000);
} catch (error) {
console.error('[Soleprint] Login error:', error);
console.error('[Pawprint] Login error:', error);
this.showStatus(`✗ Login failed: ${error.message}`, 'error');
}
}
@@ -241,7 +241,7 @@ class SoleprintSidebar {
this.currentUser = JSON.parse(userInfo);
this.updateCurrentUserDisplay();
} catch (error) {
console.error('[Soleprint] Failed to parse user info:', error);
console.error('[Pawprint] Failed to parse user info:', error);
}
}
}
@@ -275,12 +275,12 @@ class SoleprintSidebar {
}
// Initialize sidebar when DOM is ready
const soleprintSidebar = new SoleprintSidebar();
const pawprintSidebar = new PawprintSidebar();
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', () => soleprintSidebar.init());
document.addEventListener('DOMContentLoaded', () => pawprintSidebar.init());
} else {
soleprintSidebar.init();
pawprintSidebar.init();
}
console.log('[Soleprint] Sidebar script loaded');
console.log('[Pawprint] Sidebar script loaded');