Files
rspade_system/app/RSpade/Components/js_tree_debug_component.scss
root 84ca3dfe42 Fix code quality violations and rename select input components
Move small tasks from wishlist to todo, update npm packages
Replace #[Auth] attributes with manual auth checks and code quality rule
Remove on_jqhtml_ready lifecycle method from framework
Complete ACL system with 100-based role indexing and /dev/acl tester
WIP: ACL system implementation with debug instrumentation
Convert rsx:check JS linting to RPC socket server
Clean up docs and fix $id→$sid in man pages, remove SSR/FPC feature
Reorganize wishlists: priority order, mark sublayouts complete, add email
Update model_fetch docs: mark MVP complete, fix enum docs, reorganize
Comprehensive documentation overhaul: clarity, compression, and critical rules
Convert Contacts/Projects CRUD to Model.fetch() and add fetch_or_null()
Add JS ORM relationship lazy-loading and fetch array handling
Add JS ORM relationship fetching and CRUD documentation
Fix ORM hydration and add IDE resolution for Base_* model stubs
Rename Json_Tree_Component to JS_Tree_Debug_Component and move to framework
Enhance JS ORM infrastructure and add Json_Tree class name badges

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-23 21:39:43 +00:00

151 lines
2.9 KiB
SCSS
Executable File

.js-tree-debug {
font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;
font-size: 13px;
line-height: 1.4;
text-align: left;
width: 800px;
max-width: 100%;
height: 250px;
overflow: auto;
resize: both;
padding: 20px;
border: 1px solid #777;
border-radius: 4px;
background: #fafafa;
.js-tree-debug-node {
margin-left: 0;
}
.js-tree-debug-children {
margin-left: 20px;
border-left: 1px solid #e0e0e0;
padding-left: 8px;
}
.js-tree-debug-leaf {
padding: 1px 0;
}
.js-tree-debug-toggle {
display: inline-block;
width: 16px;
cursor: pointer;
user-select: none;
.js-tree-debug-arrow {
font-size: 10px;
color: #666;
transition: transform 0.15s ease; // @SCSS-ANIM-01-EXCEPTION
display: inline-block;
}
&:not(.js-tree-debug-collapsed) .js-tree-debug-arrow {
transform: rotate(90deg);
}
&:hover .js-tree-debug-arrow {
color: #333;
}
}
.js-tree-debug-key {
color: #881391;
}
.js-tree-debug-colon {
color: #666;
}
.js-tree-debug-preview {
color: #666;
}
.js-tree-debug-preview-collapsed {
color: #999;
font-style: italic;
}
.js-tree-debug-bracket-close {
color: #666;
}
// Value type colors
.js-tree-debug-string {
color: #c41a16;
}
.js-tree-debug-number {
color: #1c00cf;
}
.js-tree-debug-boolean {
color: #0d22aa;
}
.js-tree-debug-null,
.js-tree-debug-undefined {
color: #808080;
font-style: italic;
}
.js-tree-debug-value {
word-break: break-word;
}
.js-tree-debug-class-badge {
display: inline-block;
font-size: 10px;
padding: 0 4px;
margin-left: 4px;
border: 1px solid #ccc;
border-radius: 3px;
background: #f5f5f5;
vertical-align: middle;
line-height: 1.4;
.js-tree-debug-class-name {
color: #881391; // Same as keys
}
.js-tree-debug-class-paren {
color: #666; // Same as colons/symbols
}
.js-tree-debug-class-id {
color: #1c00cf; // Same as numbers
}
}
// Relationship nodes (lazy-loaded)
.js-tree-debug-relationship {
.js-tree-debug-rel-key {
color: #0066cc;
font-style: italic;
}
}
// Loading state
.js-tree-debug-loading {
color: #888;
font-style: italic;
}
// Error state
.js-tree-debug-error {
color: #cc0000;
}
// Empty/no data state
.js-tree-debug-empty {
color: #888;
font-style: italic;
}
// Pending (not yet loaded)
.js-tree-debug-pending {
color: #999;
font-style: italic;
}
}