Some checks are pending
E2E / Playwright e2e (push) Waiting to run
- Introduced new ContactAvatar and ContactAvatarPicker components for enhanced avatar management in contact views. - Updated ContactDetailView and ContactFormView to utilize the new avatar components, improving user experience when adding or editing contacts. - Enhanced ContactHoverCard and ContactRow components to display avatars, providing a more visually appealing interface. - Added loading and error states in ContactsListView for better user feedback during data fetching. - Implemented a new ContactsLoadState component to handle loading and error scenarios in the contacts list. - Updated package.json to include @formkit/auto-animate for improved UI animations.
11 lines
361 B
TypeScript
11 lines
361 B
TypeScript
import type { FullContact } from '@/lib/contacts/types'
|
|
|
|
/** Chemin API CardDAV pour PUT/DELETE (sans slash initial). */
|
|
export function contactApiPath(contact: Pick<FullContact, 'path' | 'id'>): string {
|
|
let path = (contact.path ?? contact.id).replace(/^\/+/, '')
|
|
if (path.startsWith('cloud/')) {
|
|
path = path.slice('cloud/'.length)
|
|
}
|
|
return path
|
|
}
|