teqo-backup/src
Francisco Solla 86595ca123 feat(C139): ficha mobile de contatos em bottom sheet (Fase 5)
Create/edit sheets (ContactFormSheet + ContactFormFields) e cards mobile
(ContactMobileCard/ContactMobileList), FAB de criar (ContactCreateFab,
z-40 sobre o bottom nav) e a ladder updateContactFullFormAction.

- Form sheets com campos controlados + dispatch manual: React 19 reseta
  campos nao controlados apos qualquer action assentada, apagando o que
  o usuario digitou em erro de validacao/conflito de nome; startTransition
  mantem isPending correto e o state.message vira banner role=alert.
- state de acao da sessao anterior e descartado ao reabrir o sheet
  (sessionId), evitando banner/conflito fantasma.
- CreateRow usa o mesmo dispatch manual (mesma classe de bug).
- updateContactFull: escrita atomica da ficha em transacao com gates de
  escopo e invariante de nome (decisao F do plano).
2026-08-13 15:06:20 -03:00
..
app feat(C139): ficha mobile de contatos em bottom sheet (Fase 5) 2026-08-13 15:06:20 -03:00
collections feat(C139): schemas e actions de contato — criação staff e edição por célula 2026-08-13 14:12:53 -03:00
components feat(C139): ficha mobile de contatos em bottom sheet (Fase 5) 2026-08-13 15:06:20 -03:00
globals security: lock public globals update to payloadAdminOnly (Pass 4 P0) 2026-07-31 20:57:18 -03:00
hooks feat(C95): seletor de modo de visualização no header do app (agenda) 2026-08-09 12:34:04 -03:00
lib feat(C139): ficha mobile de contatos em bottom sheet (Fase 5) 2026-08-13 15:06:20 -03:00
migrations feat(C129): nome de legenda da dobradinha — campo ballotName + display discreto sob o nome (Closes #696) 2026-08-12 12:52:35 -03:00
utilities feat(C139): página /campanha/contatos — lista desktop com células editáveis, criação e filtros 2026-08-13 14:29:11 -03:00
css-modules.d.ts Adopt TypeScript 6 for tooling and TypeScript 7 for typecheck. 2026-07-21 20:32:15 -03:00
payload-types.ts feat(C129): nome de legenda da dobradinha — campo ballotName + display discreto sob o nome (Closes #696) 2026-08-12 12:52:35 -03:00
payload.config.ts feat(C114): agenda da campanha espelhada no Google Calendar com notificação (push Teqo → Google) 2026-08-11 13:53:51 -03:00