recappi 0.1.67 → 0.1.68

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1235,6 +1235,7 @@ function RecordingDetailView({
1235
1235
  scrollable ? " \xB7 \u2191\u2193 scroll" : "",
1236
1236
  ready ? " \xB7 " : "",
1237
1237
  `o open \xB7 d download \xB7 f finder`,
1238
+ " \xB7 T re-transcribe",
1238
1239
  item.activeTranscriptId ? " \xB7 t full" : "",
1239
1240
  links.webUrl ? " \xB7 w web" : "",
1240
1241
  " \xB7 esc back"
@@ -2385,6 +2386,23 @@ function AppShell({
2385
2386
  setNotice("Re-transcription failed. Press T to retry.");
2386
2387
  }
2387
2388
  }, [liveRecord, onRetranscribe, refresh]);
2389
+ const retranscribeExistingRecording = useCallback(
2390
+ async (recordingId) => {
2391
+ if (!onRetranscribe) {
2392
+ setNotice("Re-transcribe is not available in this CLI session.");
2393
+ return;
2394
+ }
2395
+ setNotice("Re-transcribe started\u2026");
2396
+ try {
2397
+ await onRetranscribe(recordingId);
2398
+ setNotice("Re-transcribe started \u2014 track it in Jobs.");
2399
+ await refresh({ resetRecordings: true });
2400
+ } catch (error51) {
2401
+ setNotice(transcribeHandoffErrorCopy(error51));
2402
+ }
2403
+ },
2404
+ [onRetranscribe, refresh]
2405
+ );
2388
2406
  useEffect4(() => {
2389
2407
  if (liveRecord?.kind !== "stopped") return;
2390
2408
  const artifact = liveRecord.artifact;
@@ -2646,7 +2664,8 @@ function AppShell({
2646
2664
  if (screen.kind === "recordingDetail") {
2647
2665
  const rec = recordings.find((r) => r.recordingId === screen.recordingId);
2648
2666
  const links = rec ? resolveRecordingLinks(rec.recordingId, rec.origin) : {};
2649
- if (input === "t" && rec?.activeTranscriptId) void openTranscript(rec.activeTranscriptId);
2667
+ if (input === "T" && rec) void retranscribeExistingRecording(rec.recordingId);
2668
+ else if (input === "t" && rec?.activeTranscriptId) void openTranscript(rec.activeTranscriptId);
2650
2669
  else if (input === "o" && rec) void runAudio(rec.recordingId, "open");
2651
2670
  else if (input === "d" && rec) void runAudio(rec.recordingId, "download");
2652
2671
  else if (input === "f" && rec) void runAudio(rec.recordingId, "finder");