[CL-ADAMI-LEADS] fix: подключить форму заявок adami.kr к API #9

Merged
andrei merged 1 commit from feature/claude-submission-flow into main 2026-06-15 19:20:03 +00:00
Owner

Что сделано

Форма «Оставить заявку» на adami.kr была косметической: onSubmit делал preventDefault() + setSent(true) без отправки. Заявки посетителей терялись, submissions пуста.

  • src/api.tssubmitLead() POST на https://api.adami.kr/submit.
  • Contact() — контролируемые поля, async submit, состояния sending/error, message required.
  • src/api.test.ts + vitest.config.ts — тесты контракта. CI: шаг npm test.

Зачем

Backend (POST /submit → INSERT submissions → Telegram → admin) полностью рабочий, не вызывался. Восстанавливаем поступление заявок.

План тестирования

  • npm test 2 passed, npm run lint 0, npm run build ok.
  • Живой POST /submit → 200 {ok,id}, строка в БД (тестовая удалена).

Где могу ошибаться

  • API-base захардкожен api.adami.kr (CORS уже разрешает adami.kr). Если планируется env-config — вынести в VITE_*.
## Что сделано Форма «Оставить заявку» на adami.kr была косметической: `onSubmit` делал `preventDefault()` + `setSent(true)` без отправки. Заявки посетителей терялись, `submissions` пуста. - `src/api.ts` — `submitLead()` POST на `https://api.adami.kr/submit`. - `Contact()` — контролируемые поля, async submit, состояния sending/error, message required. - `src/api.test.ts` + `vitest.config.ts` — тесты контракта. CI: шаг `npm test`. ## Зачем Backend (`POST /submit` → INSERT submissions → Telegram → admin) полностью рабочий, не вызывался. Восстанавливаем поступление заявок. ## План тестирования - `npm test` 2 passed, `npm run lint` 0, `npm run build` ok. - Живой `POST /submit` → 200 `{ok,id}`, строка в БД (тестовая удалена). ## Где могу ошибаться - API-base захардкожен `api.adami.kr` (CORS уже разрешает adami.kr). Если планируется env-config — вынести в `VITE_*`.
[CL-ADAMI-LEADS] fix: подключить форму заявок adami.kr к API
All checks were successful
Adami Site CI / lint-and-build (pull_request) Successful in 29s
SEO Audit / SEO Audit / adami (pull_request) Successful in 3s
Forgejo Smoke Test / Smoke (pull_request) Successful in 2s
435862afe0
Форма "Оставить заявку" на adami.kr была косметической: onSubmit
делал e.preventDefault() и сразу setSent(true), не отправляя данные.
Заявки посетителей молча терялись, таблица submissions пустая.

Что сделано:
- src/api.ts: submitLead() — POST https://api.adami.kr/submit (JSON),
  бросает ошибку с сообщением сервера при !ok.
- src/App.tsx Contact(): контролируемые поля (name/email/phone/message),
  async onSubmit -> submitLead, состояния sending/error, message required.
- src/api.test.ts + vitest.config.ts: vitest-тесты контракта (URL/payload/ошибка).
- CI: добавлен шаг npm test.

План тестирования:
- npm test (2 passed), npm run lint (0), npm run build (ok).
- Живой POST /submit -> 200 {ok,id}, строка в submissions, затем удалена.
andrei merged commit e6d1a2e198 into main 2026-06-15 19:20:03 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
europa-tech-srl/adami-site!9
No description provided.