feat(database): inline embed + Open button + side peek + title placeholder
FlowDeck CI / test (push) Failing after 4s
FlowDeck CI / docker (push) Has been skipped

- Page title placeholder: new pages created with empty title, CSS :empty::before shows 'New page' in gray
- Database is now inline embed within page (not full-page replacement)
- Embed block 'collection' renders database table via FlowDeckDB.renderInto()
- Open button in column 1 of each row opens page in side peek panel
- Side peek: iframe loading /pages/{id}?embed=1, close/fullscreen/resize
- DB scripts refactored as reusable DBInstance + global FlowDeckDB API
This commit is contained in:
2026-07-22 16:52:19 -04:00
parent a7289db621
commit c586513b03
7 changed files with 331 additions and 494 deletions
+30
View File
@@ -3952,3 +3952,33 @@ button.breadcrumb-current { max-width: 260px; }
.db-th-property { min-width: 120px; }
.db-td-cell { min-width: 120px; }
}
/* ── Database Side Peek Panel ── */
.db-side-peek {
position: fixed; top: 0; right: 0;
width: 560px; height: 100vh;
background: var(--bg-primary);
box-shadow: -4px 0 20px rgba(0,0,0,0.12);
z-index: 900;
display: flex; flex-direction: column;
}
.db-side-peek-resize {
position: absolute; top: 0; left: 0;
width: 6px; height: 100%;
cursor: col-resize;
z-index: 2;
}
.db-side-peek-resize:hover { background: var(--accent, #2383E2); }
.db-side-peek-header {
display: flex; align-items: center; justify-content: space-between;
padding: 8px 12px; border-bottom: 1px solid var(--border);
flex-shrink: 0;
}
.db-side-peek-close, .db-side-peek-full {
display: flex; align-items: center; justify-content: center;
width: 28px; height: 28px; border-radius: 6px;
border: none; background: transparent; cursor: pointer;
font-size: 18px; color: var(--text-dim);
}
.db-side-peek-close:hover, .db-side-peek-full:hover { background: var(--bg-hover); }
.db-side-peek iframe { flex: 1; }