feat: deselect all button, static serving for production, cloudflare tunnel setup

This commit is contained in:
2026-08-03 23:50:06 +01:00
parent 46906c46b3
commit 0c0daf947e
6 changed files with 26 additions and 2 deletions

View File

@@ -419,7 +419,7 @@ function initSearch() {
// Presets
function initPresets() {
document.querySelectorAll('.preset-btn').forEach(btn => {
document.querySelectorAll('.preset-btn[data-preset]').forEach(btn => {
btn.addEventListener('click', () => {
const preset = presets[btn.dataset.preset];
if (!preset) return;
@@ -433,6 +433,15 @@ function initPresets() {
updateUrlState();
});
});
document.getElementById('deselect-all-btn').addEventListener('click', () => {
state.selected.clear();
renderAppGrid();
checkDependencies();
checkPortConflicts();
updatePreview();
updateUrlState();
});
}
// Mode switching (builder vs analyser vs gallery)

View File

@@ -202,6 +202,8 @@ body {
transition: all 0.2s ease;
}
.preset-btn:hover { border-color: var(--accent); color: var(--accent); background: var(--accent-glow); }
.preset-btn.preset-clear { border-color: rgba(239,68,68,0.3); color: var(--danger); }
.preset-btn.preset-clear:hover { background: rgba(239,68,68,0.1); border-color: var(--danger); }
.dependency-warnings, .port-conflicts { margin-bottom: 1rem; }
.dep-warning, .port-conflict {
background: rgba(245,158,11,0.06);