diff options
| author | Ellie Huxtable <ellie@elliehuxtable.com> | 2024-01-17 09:58:09 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-01-17 09:58:09 +0000 |
| commit | d9317a1a9c14dd1919f3e04537b01d5a14f8aaea (patch) | |
| tree | 8a338df6a2e534a3f694fd93852abbf716e1fbcc /atuin-client/src/history | |
| parent | Stop control characters being printed to terminal (#1576) (diff) | |
| download | atuin-d9317a1a9c14dd1919f3e04537b01d5a14f8aaea.zip | |
feat: make deleting from the UI work with record store sync (#1580)
* feat: make deleting from the UI work with record store sync
* sort cli delete too
* teeny bit more logs
Diffstat (limited to 'atuin-client/src/history')
| -rw-r--r-- | atuin-client/src/history/store.rs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/atuin-client/src/history/store.rs b/atuin-client/src/history/store.rs index a7785452..ab88182a 100644 --- a/atuin-client/src/history/store.rs +++ b/atuin-client/src/history/store.rs @@ -114,7 +114,7 @@ impl HistoryStore { } } - async fn push_record(&self, record: HistoryRecord) -> Result<RecordIdx> { + async fn push_record(&self, record: HistoryRecord) -> Result<(RecordId, RecordIdx)> { let bytes = record.serialize()?; let idx = self .store @@ -130,20 +130,22 @@ impl HistoryStore { .data(bytes) .build(); + let id = record.id; + self.store .push(&record.encrypt::<PASETO_V4>(&self.encryption_key)) .await?; - Ok(idx) + Ok((id, idx)) } - pub async fn delete(&self, id: HistoryId) -> Result<RecordIdx> { + pub async fn delete(&self, id: HistoryId) -> Result<(RecordId, RecordIdx)> { let record = HistoryRecord::Delete(id); self.push_record(record).await } - pub async fn push(&self, history: History) -> Result<RecordIdx> { + pub async fn push(&self, history: History) -> Result<(RecordId, RecordIdx)> { // TODO(ellie): move the history store to its own file // it's tiny rn so fine as is let record = HistoryRecord::Create(history); |
