Files
portal/app/resources/js/utils/prospectSite.ts
T
Дмитрий b0750dce53 @
feat(sales): сайт кандидата ссылкой прямо на плитке доски

Менеджеру удобно глянуть на клиента перед звонком, не открывая карточку.

- На плитке колонки сайт выводится ссылкой (target=_blank, rel=noopener),
  click.stop — иначе клик по ссылке заодно открывал бы диалог карточки.
- Расчёт ссылки вынесен в utils/prospectSite.ts и переиспользован в карточке:
  домен получает https, готовый адрес не трогаем, пусто → строки нет.

Гейты: Vitest 55/55 по воронке (4 новых теста доски), vue-tsc чисто.
TDD RED→GREEN.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@
2026-07-18 12:36:14 +03:00

13 lines
679 B
TypeScript

/**
* Ссылка на сайт кандидата. Поиск отдаёт сайт то доменом («omdent.ru»), то
* готовым адресом («http://vitadent-omsk.ru») — домену дописываем https,
* готовый адрес не трогаем. Пусто → null (ссылку не рисуем).
*
* Используется и на плитке доски, и в карточке — расчёт один на оба места.
*/
export function siteHref(site: string | null | undefined): string | null {
const s = (site ?? '').trim();
if (s === '') return null;
return s.startsWith('http') ? s : `https://${s}`;
}