@ai-matrx/capture 0.2.0 → 0.2.1

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/CHANGELOG.md CHANGED
@@ -45,3 +45,7 @@ The package-completeness release: the whole capture loop now lives in the box (A
45
45
  - Chrome: a photo countdown is cancelled by a mode switch (it used to fire a photo mid-video); the dead `CaptureCloudPort.onSaveEdited` port is removed — the editor saves through `media.onReplacePhoto` only.
46
46
  - Editor: rotate/flip BAKE into the working bitmap immediately (full-res canvas re-encode), so the crop frame always matches the pixels on screen — the CSS-transform approach diverged at 90°/270°; Save failures surface an inline error instead of silently doing nothing; baked object URLs are revoked on replace/close.
47
47
  - Track controls: capabilities poll on a widening ladder (0.5s→5s) until torch/zoom/exposure appear — iPhones that report late now get their pills.
48
+
49
+ ## 0.2.1 — 2026-08-29
50
+
51
+ - `CameraCapture.onReviewOpenChange` — hosts pause feed-watchers (QR scanning) while the package viewer/editor covers the camera.
package/dist/react.cjs CHANGED
@@ -1292,6 +1292,7 @@ function CameraCapture({
1292
1292
  onModeChange,
1293
1293
  preview,
1294
1294
  media,
1295
+ onReviewOpenChange,
1295
1296
  onClose,
1296
1297
  blockedSheet,
1297
1298
  controlsHidden = false,
@@ -1309,6 +1310,10 @@ function CameraCapture({
1309
1310
  const [blockedDismissed, setBlockedDismissed] = (0, import_react5.useState)(false);
1310
1311
  const countdownRef = (0, import_react5.useRef)(null);
1311
1312
  const controls = useTrackControls(engine.stream);
1313
+ const reviewOpen = viewerKey !== null || editTarget !== null;
1314
+ (0, import_react5.useEffect)(() => {
1315
+ onReviewOpenChange?.(reviewOpen);
1316
+ }, [reviewOpen, onReviewOpenChange]);
1312
1317
  const clearCountdown = (0, import_react5.useCallback)(() => {
1313
1318
  if (countdownRef.current) clearInterval(countdownRef.current);
1314
1319
  countdownRef.current = null;