molecule
BQ25792 Charger
Public Made by Adomby adom
Buck-boost 1S-4S battery charger board (TI BQ25792) with 14 Adom machine pins, by Adonis
← Commit history
toolbar: icon-only buttons (labels removed, too heavy) + beautiful 800ms hover tooltips on all controls
3 files changed
+46−8
package.json+1−1@@ -2,7 +2,7 @@ "slug": "bq25792-charger", "title": "BQ25792 Charger", "type": "component",- "version": "0.1.59",+ "version": "0.1.60", "description": "BQ25792 Charger - buck-boost 1S-4S battery charger board by Adonis, with real 3D copper traces and measured stackup.", "tags": [ "hardware"
page.json+10−3@@ -4,9 +4,16 @@ "slug": "bq25792-charger", "title": "BQ25792 Charger", "brief": "Buck-boost 1S-4S battery charger board (TI BQ25792) with 14 Adom machine pins, by Adonis",- "version": "0.1.59",+ "version": "0.1.60", "tags": [- "hardware"+ "adom",+ "adom-modular",+ "component",+ "charger",+ "battery",+ "bq25792",+ "power",+ "usb-c" ], "license": "proprietary", "component": {@@ -49,7 +56,7 @@ "email": "[email protected]" }, "visibility": "public",- "description": "BQ25792 Charger - buck-boost 1S-4S battery charger board by Adonis, with real 3D copper traces and measured stackup.",+ "description": "BQ25792 Charger - a buck-boost 1S-4S battery charger board (Texas Instruments BQ25792) designed by Adonis in Fusion 360, with 14 Adom machine pins for the modular stack. Interactive colored 3D model, schematic and layout views.", "dependencies": {}, "files": [ "README.md",
readme.html+35−4@@ -37,9 +37,8 @@ #floaty { position:absolute; top:14px; left:14px; z-index:30; display:flex; gap:6px; background:rgba(13,17,23,0.55); backdrop-filter:blur(8px); border:1px solid rgba(48,54,61,0.8); border-radius:10px; padding:6px; }- .fbtn { font-size:12.5px; padding:6px 11px; border-radius:7px; border:1px solid transparent;- background:transparent; color:#c9d1d9; cursor:pointer; display:inline-flex; align-items:center; gap:6px; }- .fbtn svg { width:15px; height:15px; flex:none; stroke:currentColor; fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }+ .fbtn { padding:7px; border-radius:8px; border:1px solid transparent; background:transparent; color:#c9d1d9; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; }+ .fbtn svg { width:16px; height:16px; flex:none; stroke:currentColor; fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; } .fbtn:hover { background:rgba(48,54,61,0.7); } .fbtn.active { background:#0b3d33; border-color:#00b8b1; color:#5ff5e8; } #vstatus { position:absolute; right:14px; bottom:10px; z-index:30; font-size:12px; color:#8b949e;@@ -59,6 +58,14 @@ width:46%; display:flex; align-items:center; gap:8px; background:rgba(13,17,23,0.55); backdrop-filter:blur(8px); border:1px solid rgba(48,54,61,0.8); border-radius:10px; padding:7px 12px; } #scrub { flex:1; accent-color:#00b8b1; }+ #tt { position:fixed; z-index:100; pointer-events:none; opacity:0; transform:translateY(4px);+ transition:opacity .14s ease, transform .14s ease; background:rgba(13,17,23,0.96);+ color:#e6edf3; font-size:11.5px; font-weight:500; letter-spacing:.2px; padding:5px 9px;+ border:1px solid rgba(0,184,177,0.35); border-radius:7px; white-space:nowrap;+ box-shadow:0 6px 20px rgba(0,0,0,0.5); }+ #tt.show { opacity:1; transform:translateY(0); }+ #tt::after { content:""; position:absolute; top:-5px; left:50%; transform:translateX(-50%);+ border:5px solid transparent; border-bottom-color:rgba(0,184,177,0.35); border-top:0; } .lp-iso { width:16px; height:16px; padding:0; margin-right:2px; border:1px solid #30363d; border-radius:4px; background:transparent; color:#6e7681; font-size:11px; line-height:1; cursor:pointer; flex:none; } .lp-iso:hover { color:#5ff5e8; border-color:#00b8b1; }@@ -168,7 +175,8 @@ exported bodies + design rules.</p> Object.keys(I).forEach(function(id){ const b=document.getElementById(id); if(!b) return; const label=b.textContent.trim();- b.innerHTML='<svg viewBox="0 0 16 16" aria-hidden="true">'+I[id]+'</svg><span>'+label+'</span>';+ b.setAttribute("data-tip",label); b.removeAttribute("title");+ b.innerHTML='<svg viewBox="0 0 16 16" aria-hidden="true">'+I[id]+'</svg>'; }); })(); const R="/blob/component/bq25792-charger/";@@ -542,6 +550,29 @@ exported bodies + design rules.</p> makeDraggable(document.getElementById("floaty")); makeDraggable(document.getElementById("layers-panel")); + // Beautiful hover tooltips (800ms delay) for every control carrying data-tip.+ (function(){+ const tt=document.createElement("div"); tt.id="tt"; document.body.appendChild(tt);+ let timer=null;+ function place(el){+ const r=el.getBoundingClientRect();+ tt.style.left=(r.left+r.width/2-tt.offsetWidth/2)+"px";+ tt.style.top=(r.bottom+9)+"px";+ }+ function show(el){ const t=el.getAttribute("data-tip"); if(!t) return; tt.textContent=t; tt.style.left="-9999px"; tt.classList.add("show"); place(el); }+ function hide(){ tt.classList.remove("show"); }+ document.addEventListener("mouseover",function(e){+ const el=e.target.closest("[data-tip]"); if(!el) return;+ clearTimeout(timer); timer=setTimeout(function(){ show(el); },800);+ });+ document.addEventListener("mouseout",function(e){+ const el=e.target.closest("[data-tip]"); if(!el) return;+ clearTimeout(timer); hide();+ });+ document.addEventListener("click",hide,true);+ window.__ttReady=true;+ })();+ build().then(function(){ const sc=viewer.getScene(); let last=performance.now();