add-camera
Shared instructions: shared-instructions.md — read first.
References:
- dataverse-reference.md — File/image column upload patterns (Step 7–8)
Add Camera
Internal helper. Users should invoke /add-native camera, /add-native image-picker, /add-native barcode-scanner, or /add-native qr-scanner; /add-native routes here after resolving the capability.
Generate typed camera + image-picker wrappers, an optional barcode/QR scanner control, and optional custom-upload guidance for Dataverse image/file workflows.
This skill only writes JS files under src/native/. It does not install modules and does not touch package.json or app.config.js — the underlying Expo modules (expo-camera, expo-image-picker) and their config plugins must already be shipped by the upstream pa-wrap-tools/templates/expo-app-standalone template. If they're missing, STOP and tell the user the template doesn't ship them yet.
Why: customer binaries are built from a pre-built rewrap base, not from the customer's package.json. Adding a native module here would compile against modules the binary doesn't actually contain, causing runtime crashes after rewrap. See /add-native for the same hard rules.
Two modules are required (must already be in package.json):
expo-camera— live viewfinder, barcode scanningexpo-image-picker— gallery selection + quick camera capture (simpler API, no viewfinder)