v3.1.0
What's Changed
- Adds
withIdentifier()builder method for custom vanity short URL slugs with validation (empty, max length, invalid characters, duplicates) - Adds
ShortUrlCreated,ShortUrlClicked, andShortUrlExpiredevents dispatched during URL build, click tracking, and expired redirect flows - Adds
UrlService::delete()/UrlService::restore()for soft deleting and restoring short URLs by identifier - Adds 12 new tests across 3 test files covering all new functionality
Full Changelog: v3.0.0...v3.1.0