feat(es/transformer): Implement nullish coalescing pass
Implement the nullish coalescing operator (??) and nullish coalescing assignment (??=) transformation following the new hook-based architecture.
Key features:
- Implements VisitMutHook<TraverseCtx> instead of VisitMut
- Transforms `a ?? b` to conditional expressions with proper null/undefined checks
- Handles nullish coalescing assignment `a ??= b`
- Uses temporary variables to avoid side effects in complex expressions
- Supports no_document_all assumption for simplified transformations
- Properly tracks statement addresses for variable injection
The implementation is based on the Babel plugin and passes all existing tests.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>