- Add project constitution with vision, principles, and autonomy settings - Add 15 feature specifications covering full app scope - Configure agent entry points (AGENTS.md, CLAUDE.md) - Add build prompt and speckit command for spec creation - Include comprehensive .gitignore for iOS development Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1.2 KiB
1.2 KiB
Image Import
Description
Import photos from Photo Library or Files app.
Acceptance Criteria
- Import button opens
PHPickerViewController - Limited photo library access supported (no full access required)
- Selected photo loaded into editor
- PHAsset
localIdentifierstored for Photos-sourced images - Files app import supported via document picker
- File-imported images embedded in project data
- Supported formats: JPEG, PNG, HEIC
- Large images (>12MP) handled with appropriate warnings
- Loading indicator shown during import
- Import errors handled gracefully with user feedback
- Privacy: no photo library write permission requested at import time
Technical Notes
- Use
PHPickerViewController(notUIImagePickerController) for modern API - Configure picker:
filter: .images,selectionLimit: 1 - For Files: use
UIDocumentPickerViewControllerwithUTType.image - Store original at full resolution, generate preview separately
Edge Cases
- User cancels picker: return to previous state, no error
- Corrupted/unreadable image: show "Unable to load image" error
- Very large image (48MP+): warn about potential memory issues
- Permission denied: show guidance to enable in Settings