0.2.0 — a notebook in your pocket, ready to be hosted #3
@@ -373,6 +373,19 @@ pub fn create_note(conn: &Connection, input: &NoteCreateInput) -> rusqlite::Resu
|
|||||||
load_note(conn, &id)
|
load_note(conn, &id)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn snapshot_revision(conn: &Connection, id: &str) -> rusqlite::Result<()> {
|
||||||
|
let (title, body): (Option<String>, String) =
|
||||||
|
conn.query_row("SELECT title, body FROM notes WHERE id = ?1", [id], |r| {
|
||||||
|
Ok((r.get(0)?, r.get(1)?))
|
||||||
|
})?;
|
||||||
|
conn.execute(
|
||||||
|
"INSERT INTO note_revisions (id, note_id, title, body, created_at) VALUES (?1, ?2, ?3, ?4, ?5)",
|
||||||
|
params![new_id(), id, title, body, now()],
|
||||||
|
)?;
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|
||||||
|
/// PATCH semantics: apply exactly the fields present in `changes`.
|
||||||
pub fn update_note(conn: &Connection, id: &str, changes: &Value) -> rusqlite::Result<Note> {
|
pub fn update_note(conn: &Connection, id: &str, changes: &Value) -> rusqlite::Result<Note> {
|
||||||
let obj = changes
|
let obj = changes
|
||||||
.as_object()
|
.as_object()
|
||||||
|
|||||||
@@ -69,7 +69,6 @@ pub struct Change {
|
|||||||
#[serde(skip_serializing_if = "Option::is_none")]
|
#[serde(skip_serializing_if = "Option::is_none")]
|
||||||
pub color: Option<String>,
|
pub color: Option<String>,
|
||||||
#[serde(skip_serializing_if = "Option::is_none")]
|
#[serde(skip_serializing_if = "Option::is_none")]
|
||||||
#[serde(skip_serializing_if = "Option::is_none")]
|
|
||||||
pub pinned: Option<bool>,
|
pub pinned: Option<bool>,
|
||||||
#[serde(skip_serializing_if = "Option::is_none")]
|
#[serde(skip_serializing_if = "Option::is_none")]
|
||||||
pub archived: Option<bool>,
|
pub archived: Option<bool>,
|
||||||
|
|||||||
@@ -627,7 +627,6 @@ function revPreview(rev: NoteRevision): string {
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
@@ -750,6 +749,5 @@ function revPreview(rev: NoteRevision): string {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</Transition>
|
</Transition>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
Reference in New Issue
Block a user