feat(meetings): editable title header above the transcript/notes pane
Nothing in the UI displayed or let you change a meeting's title outside the sidebar list — recordings default to "Untitled meeting" with no way to fix that. Adds an inline-editable header; blur/change commits the rename.
This commit is contained in:
1 parent
3cd267f737
commit
2efe29558a
1 file changed
+37
-1
@@ -43,6 +43,19 @@
|
||||
}
|
||||
});
|
||||
|
||||
// Recordings default to "Untitled meeting" (T2.2) — this is the only
|
||||
// rename affordance, since nothing else in the UI shows the title at all.
|
||||
async function onTitleChange(e: Event) {
|
||||
const m = meetings.selected;
|
||||
const value = (e.target as HTMLInputElement).value.trim();
|
||||
if (!m) return;
|
||||
if (!value) {
|
||||
(e.target as HTMLInputElement).value = m.title; // revert an empty edit
|
||||
return;
|
||||
}
|
||||
if (value !== m.title) await meetings.renameMeeting(m.id, value);
|
||||
}
|
||||
|
||||
function scheduleSave() {
|
||||
const id = meetings.selected?.id;
|
||||
if (!id) return;
|
||||
@@ -128,6 +141,12 @@
|
||||
<div class="wrap">
|
||||
{#if meetings.selected}
|
||||
{@const m = meetings.selected}
|
||||
<input
|
||||
class="meeting-title"
|
||||
value={m.title}
|
||||
onchange={onTitleChange}
|
||||
aria-label="Meeting title"
|
||||
/>
|
||||
<div class="split">
|
||||
<div class="pane transcript">
|
||||
<h4><MessageSquareText size={14} aria-hidden="true" /> Transcript</h4>
|
||||
@@ -229,6 +248,22 @@
|
||||
<style>
|
||||
.wrap {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.meeting-title {
|
||||
flex: none;
|
||||
border: none;
|
||||
background: transparent;
|
||||
font-size: 1.05rem;
|
||||
font-weight: 600;
|
||||
padding: 0.75rem 1rem 0.25rem;
|
||||
color: inherit;
|
||||
}
|
||||
.meeting-title:hover,
|
||||
.meeting-title:focus {
|
||||
background: var(--border);
|
||||
outline: none;
|
||||
}
|
||||
.pad {
|
||||
padding: 1rem;
|
||||
@@ -249,7 +284,8 @@
|
||||
.split {
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
height: 100%;
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
}
|
||||
.pane {
|
||||
overflow: auto;
|
||||
|
||||
Reference in new issue
Block a user