This commit is contained in:
Luiz Silva 2026-01-09 13:59:40 -03:00
parent fd5c49071c
commit 5bfde6ee66
7 changed files with 45 additions and 14 deletions

View file

@ -2,13 +2,13 @@
<div class="eli-data-hora">
<!--
Implementação propositalmente simples e estável:
- Usa o input nativo `datetime-local` dentro do v-text-field.
- Usa o input nativo `datetime-local` (ou `date`) dentro do v-text-field.
- Evita depender de componentes experimentais (labs) do Vuetify.
- Mantém v-model como string ISO local: `YYYY-MM-DDTHH:mm`.
- Recebe ISO 8601 (UTC/offset) e emite ISO 8601 com offset local.
Observação importante:
- `datetime-local` NÃO armazena timezone.
- Se o projeto precisar persistir em UTC, converta no consumidor.
- Este componente converte a entrada para local para exibir ao usuário.
-->
<v-text-field
v-model="valor"
@ -43,9 +43,9 @@ import type { CampoDensidade, CampoVariante } from "../../tipos";
* Campo para entrada de data + hora.
*
* Modelo:
* - O componente **recebe** `modelValue` em ISO 8601 (UTC `Z` ou com offset).
* - Converte para horário local para exibir no `datetime-local`.
* - Ao editar, **emite** ISO 8601 com o **offset local**.
* - O componente **recebe** `modelValue` em ISO 8601 (UTC `Z` ou com offset)
* - Converte para horário local para exibir (`date` ou `datetime-local`)
* - Ao editar, **emite** ISO 8601 com o **offset local**
*/
export default defineComponent({
name: "EliDataHora",